Restructure Menu processing to respect the differnent types of menu items (Menu's, Menu_Link, Menu_Dialog)

This commit is contained in:
Tim Almdal
2008-12-08 00:23:33 +00:00
parent bd033cda8f
commit ee2299d6d0
5 changed files with 111 additions and 72 deletions

View File

@@ -20,11 +20,11 @@
class Menu_Test extends Unit_Test_Case {
public function find_menu_item_test() {
$test_menu = new Menu();
$test_menu->append(new Menu("test1"));
$test_menu->append(new Menu("test2"));
$expected = new Menu("test3");
$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("test4"));
$test_menu->append(new Menu_Link("test4"));
$menu_item = $test_menu->get("test3");
$this->assert_equal($expected, $menu_item);
@@ -32,42 +32,41 @@ class Menu_Test extends Unit_Test_Case {
public function insert_before_test() {
$expected = new Menu();
$expected->append(new Menu("test-2"));
$expected->append(new Menu("test0"));
$expected->append(new Menu("test1"));
$expected->append(new Menu("test1b"));
$expected->append(new Menu("test2"));
$expected->append(new Menu("test4"));
$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("test1"));
$test_menu->append(new Menu("test2"));
$test_menu->append(new Menu("test4"));
$test_menu->insert_before("test2", new Menu("test1b"));
$test_menu->insert_before("test1", new Menu("test0"));
$test_menu->insert_before("test-1", new Menu("test-2"));
$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("test1"));
$expected->append(new Menu("test2"));
$expected->append(new Menu("test3"));
$expected->append(new Menu("test4"));
$expected->append(new Menu("test5"));
$expected->append(new Menu("test7"));
$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("test1"));
$test_menu->append(new Menu("test2"));
$test_menu->append(new Menu("test4"));
$test_menu->insert_after("test2", new Menu("test3"));
$test_menu->insert_after("test4", new Menu("test5"));
$test_menu->insert_after("test6", new Menu("test7"));
$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);
}
}