Exemplo n.º 1
0
 public function testDynamicInsertAndCursor()
 {
     $list = new Sabel_Util_HashList();
     $list->add("a", "1");
     $list->add("b", "2");
     $list->add("c", "3");
     $this->assertEquals("1", $list->next());
     $list->insertNext("b", "d", "4");
     // 1 2 4 3
     $this->assertEquals("2", $list->next());
     $this->assertEquals("4", $list->next());
     $list->insertPrevious("b", "e", "5");
     // 1 5 2 4 3
     $this->assertEquals("3", $list->next());
     $this->assertEquals("4", $list->previous());
     $list->insertPrevious("c", "f", "6");
     // 1 5 2 4 6 3
     $this->assertEquals("6", $list->next());
     $this->assertEquals("3", $list->next());
     $this->assertNull($list->next());
     $list->last();
     $list->insertNext("c", "g", "7");
     // 1 5 2 4 6 3 7
     $this->assertEquals("7", $list->previous());
     $this->assertEquals("3", $list->previous());
     $this->assertEquals("6", $list->previous());
     $this->assertEquals("4", $list->previous());
     $this->assertEquals("2", $list->previous());
     $this->assertEquals("5", $list->previous());
     $this->assertEquals("1", $list->previous());
     $this->assertNull($list->previous());
 }