From 755d6bb48477cebc3ee6ad7e2858b1127d582031 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Sun, 6 Apr 2008 01:57:49 +0000 Subject: [PATCH] ENHANCEMENT Added test suite (currently just testing menu generation) git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@52175 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- tests/LeftAndMainTest.php | 47 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 tests/LeftAndMainTest.php diff --git a/tests/LeftAndMainTest.php b/tests/LeftAndMainTest.php new file mode 100644 index 000000000..e4097c620 --- /dev/null +++ b/tests/LeftAndMainTest.php @@ -0,0 +1,47 @@ +assertTrue((empty($allMenuItems)), 'Menu can be cleared'); + + // populate defaults and check for "content" entry + LeftAndMain::populate_default_menu(); + $contentMenuItem = LeftAndMain::get_menu_item('content'); + $this->assertTrue((is_array($contentMenuItem)) && !empty($contentMenuItem), '"Content" menu entry exists'); + + // try duplicate adding + $duplicateAddSuccess = LeftAndMain::add_menu_item( + "content", + _t('LeftAndMain.SITECONTENT',"Site Content",PR_HIGH,"Menu title"), + "admin/", + "CMSMain" + ); + $this->assertTrue(($duplicateAddSuccess === false), '"Content" menu entry can\'t be readded through add_menu_item()'); + + // try replacing + $replaceSuccess = LeftAndMain::replace_menu_item( + "content", + 'My Custom Title', + "mycustomroute", + "MyCMSMain" + ); + $replacedMenuItem = LeftAndMain::get_menu_item("content"); + $this->assertEquals($replacedMenuItem['title'],'My Custom Title'); + $this->assertEquals($replacedMenuItem['url'],'mycustomroute'); + $this->assertEquals($replacedMenuItem['controllerClass'],'MyCMSMain'); + + // try removing + LeftAndMain::remove_menu_item("content"); + $removedMenuItem = LeftAndMain::get_menu_item("content"); + $this->assertTrue(($removedMenuItem === false), 'Menu item can be removed'); + + // restore default menu + LeftAndMain::populate_default_menu(); + } + +} +?> \ No newline at end of file