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