summaryrefslogtreecommitdiff
path: root/core/tests/Menu_Test.php
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2008-12-08 06:14:34 +0000
committerBharat Mediratta <bharat@menalto.com>2008-12-08 06:14:34 +0000
commitb878ed174d9e8628098931156d526b3fc028d905 (patch)
treeae355456ce164d46a36d1a01b93f9c46a758d780 /core/tests/Menu_Test.php
parent655581f3c996a6404f07486ade64d30cab335e8e (diff)
Refactor Menu code to create allow you to create menus using a
chainable factory interface and retrieve them by ids. Streamlined the HTML creation code a little bit in the process, moved the basic menu functionality into Theme_View and created the option to have different menus other than site_navigation().
Diffstat (limited to 'core/tests/Menu_Test.php')
-rw-r--r--core/tests/Menu_Test.php56
1 files changed, 8 insertions, 48 deletions
diff --git a/core/tests/Menu_Test.php b/core/tests/Menu_Test.php
index c2d68c03..82e8301d 100644
--- a/core/tests/Menu_Test.php
+++ b/core/tests/Menu_Test.php
@@ -19,54 +19,14 @@
*/
class Menu_Test extends Unit_Test_Case {
public function find_menu_item_test() {
- $test_menu = new Menu();
- $test_menu->append(new Menu_Link("test1"));
- $test_menu->append(new Menu_Link("test2"));
- $expected = new Menu_Link("test3");
- $test_menu->append($expected);
- $test_menu->append(new Menu_Link("test4"));
+ $menu = new Menu(true);
+ $menu
+ ->append(Menu::factory("link")->id("element_1"))
+ ->append(Menu::factory("dialog")->id("element_2"))
+ ->append(Menu::factory("submenu")->id("element_3")
+ ->append(Menu::factory("link")->id("element_3_1")));
- $menu_item = $test_menu->get("test3");
- $this->assert_equal($expected, $menu_item);
- }
-
- public function insert_before_test() {
- $expected = new Menu();
- $expected->append(new Menu_Link("test-2"));
- $expected->append(new Menu_Link("test0"));
- $expected->append(new Menu_Link("test1"));
- $expected->append(new Menu_Link("test1b"));
- $expected->append(new Menu_Link("test2"));
- $expected->append(new Menu_Link("test4"));
-
- $test_menu = new Menu();
- $test_menu->append(new Menu_Link("test1"));
- $test_menu->append(new Menu_Link("test2"));
- $test_menu->append(new Menu_Link("test4"));
- $test_menu->insert_before("test2", new Menu_Link("test1b"));
- $test_menu->insert_before("test1", new Menu_Link("test0"));
- $test_menu->insert_before("test-1", new Menu_Link("test-2"));
-
- $this->assert_equal($expected, $test_menu);
- }
-
- public function insert_after_test() {
- $expected = new Menu();
- $expected->append(new Menu_Link("test1"));
- $expected->append(new Menu_Link("test2"));
- $expected->append(new Menu_Link("test3"));
- $expected->append(new Menu_Link("test4"));
- $expected->append(new Menu_Link("test5"));
- $expected->append(new Menu_Link("test7"));
-
- $test_menu = new Menu();
- $test_menu->append(new Menu_Link("test1"));
- $test_menu->append(new Menu_Link("test2"));
- $test_menu->append(new Menu_Link("test4"));
- $test_menu->insert_after("test2", new Menu_Link("test3"));
- $test_menu->insert_after("test4", new Menu_Link("test5"));
- $test_menu->insert_after("test6", new Menu_Link("test7"));
-
- $this->assert_equal($expected, $test_menu);
+ $this->assert_equal("element_2", $menu->get("element_2")->id);
+ $this->assert_equal("element_3_1", $menu->get("element_3")->get("element_3_1")->id);
}
} \ No newline at end of file