From b5a20e5bfd2d0e650e991ff09efa36e56096d208 Mon Sep 17 00:00:00 2001
From: gloas <gloas@afi-sa.fr>
Date: Fri, 7 Apr 2017 19:36:19 +0200
Subject: [PATCH] CIP #57952 add tests to delete-menu

---
 .../admin/controllers/WidgetController.php    |  2 +-
 tests/scenarios/Widgets/WidgetsTest.php       | 31 +++++++++++++++++++
 2 files changed, 32 insertions(+), 1 deletion(-)

diff --git a/application/modules/admin/controllers/WidgetController.php b/application/modules/admin/controllers/WidgetController.php
index 56e9e07c74a..443b3ea7170 100644
--- a/application/modules/admin/controllers/WidgetController.php
+++ b/application/modules/admin/controllers/WidgetController.php
@@ -92,7 +92,7 @@ class Admin_WidgetController extends ZendAfi_Controller_Action {
     $id = $this->_getParam('id');
     $profil = Class_Profil::find($this->_getParam('id_profil'));
     $menus = $profil->getCfgMenusAsArray();
-    unset($menus[$id_menu]);
+    unset($menus[$id]);
 
     $message = $this->_('Une erreur c\'est produite, le menu n\'a pas pu être supprimé');
     if($profil->setCfgMenus($menus)->save())
diff --git a/tests/scenarios/Widgets/WidgetsTest.php b/tests/scenarios/Widgets/WidgetsTest.php
index c42f886c17c..313e03e008b 100644
--- a/tests/scenarios/Widgets/WidgetsTest.php
+++ b/tests/scenarios/Widgets/WidgetsTest.php
@@ -506,3 +506,34 @@ class WidgetsVerticalMenuWithDeepMenuTest extends WidgetsSimpleTestCase {
     $this->assertXPath('//ul//li//ul//li//a[contains(@href, "admin/widget/edit-menu/id/4/id_profil/2/parent/V/")][contains(@title, "Modifier l\'entrée")]');
   }
 }
+
+
+
+class WidgetsDeleteMenuTest extends WidgetsSimpleTestCase {
+
+  public function setUp() {
+    parent::setUp();
+    $profil = Class_Profil::getCurrentProfil();
+    $cfg = $profil->getCfgMenusAsArray();
+    $h = $cfg['H'];
+    $cfg['V'] = $h;
+
+    $profil->setCfgMenus($cfg)->save();
+
+    $this->dispatch('admin/widget/delete-menu/id/V/id_profil/2', true);
+  }
+
+
+  /** @test */
+  public function shouldRedirect() {
+    $this->assertRedirect();
+  }
+
+
+  /** @test */
+  public function verticalMenuShouldHaveBeenDeleted() {
+    Class_Profil::clearCache();
+    $cfg = Class_Profil::getCurrentProfil()->getCfgMenusAsArray();
+    $this->assertFalse(isset($cfg['V']));
+  }
+}
\ No newline at end of file
-- 
GitLab