public function testRetrieveRoot() { $this->assertTrue(method_exists('Table9Peer', 'retrieveRoot'), 'nested_set adds a retrieveRoot() method'); Table9Peer::doDeleteAll(); $this->assertNull(Table9Peer::retrieveRoot(), 'retrieveRoot() returns null as long as no root node is defined'); $t1 = new Table9(); $t1->setLeftValue(123); $t1->setRightValue(456); $t1->save(); $this->assertNull(Table9Peer::retrieveRoot(), 'retrieveRoot() returns null as long as no root node is defined'); $t2 = new Table9(); $t2->setLeftValue(1); $t2->setRightValue(2); $t2->save(); $this->assertEquals(Table9Peer::retrieveRoot(), $t2, 'retrieveRoot() retrieves the root node'); }
public function testFindRoot() { $this->assertTrue(method_exists('Table9Query', 'findRoot'), 'nested_set adds a findRoot() method'); Table9Query::create()->deleteAll(); $this->assertNull(Table9Query::create()->findRoot(), 'findRoot() returns null as long as no root node is defined'); $t1 = new Table9(); $t1->setLeftValue(123); $t1->setRightValue(456); $t1->save(); $this->assertNull(Table9Query::create()->findRoot(), 'findRoot() returns null as long as no root node is defined'); $t2 = new Table9(); $t2->setLeftValue(1); $t2->setRightValue(2); $t2->save(); $this->assertEquals(Table9Query::create()->findRoot(), $t2, 'findRoot() retrieves the root node'); }
public function testInsertAsNextSiblingOfExistingObject() { Table9Query::create()->deleteAll(); $t = new Table9(); $t->makeRoot(); $t->save(); $t1 = new Table9(); $t1->insertAsFirstChildOf($t); $t1->save(); $this->assertEquals(1, $t->getLeftValue()); $this->assertEquals(4, $t->getRightValue()); $this->assertEquals(0, $t->getLevel()); $this->assertEquals(2, $t1->getLeftValue()); $this->assertEquals(3, $t1->getRightValue()); $this->assertEquals(1, $t1->getLevel()); $t2 = new Table9(); $t2->save(); $t2->insertAsNextSiblingOf($t1); $this->assertEquals(4, $t2->getLeftValue()); $this->assertEquals(5, $t2->getRightValue()); $this->assertEquals(1, $t2->getLevel()); $t2->save(); $this->assertEquals(1, $t->getLeftValue()); $this->assertEquals(6, $t->getRightValue()); $this->assertEquals(0, $t->getLevel()); $this->assertEquals(2, $t1->getLeftValue()); $this->assertEquals(3, $t1->getRightValue()); $this->assertEquals(1, $t1->getLevel()); $this->assertEquals(4, $t2->getLeftValue()); $this->assertEquals(5, $t2->getRightValue()); $this->assertEquals(1, $t2->getLevel()); }
public function testAddChild() { Table9Peer::doDeleteAll(); $t1 = new Table9(); $t1->setTitle('t1'); $t1->makeRoot(); $t1->save(); $t2 = new Table9(); $t2->setTitle('t2'); $t1->addChild($t2); $t2->save(); $t3 = new Table9(); $t3->setTitle('t3'); $t1->addChild($t3); $t3->save(); $t4 = new Table9(); $t4->setTitle('t4'); $t2->addChild($t4); $t4->save(); $expected = array('t1' => array(1, 8, 0), 't2' => array(4, 7, 1), 't3' => array(2, 3, 1), 't4' => array(5, 6, 2)); $this->assertEquals($expected, $this->dumpTree(), 'addChild() adds the child and saves it'); }