protected function createNodes() { $node = new Tag(array(), 'div', array()); $this->assertFalse($node->hasChilds()); $nodeB = new Tag(array(), 'div', array()); $node->addChild($nodeB); $this->assertTrue($node->hasChilds()); $this->assertSame($node, $nodeB->getParent()); $nodeC = new Tag(array(), 'div', array()); $node->addChild($nodeC); $this->assertSame(2, count($node->getChilds())); $this->assertSame($node, $nodeC->getParent()); $this->assertSame(null, $nodeB->getPreviousSibling()); $this->assertSame($nodeC, $nodeB->getNextSibling()); $this->assertSame($nodeB, $nodeC->getPreviousSibling()); $this->assertSame(null, $nodeC->getNextSibling()); $nodeD = new Tag(array(), 'div', array()); $node->addChild($nodeD); $this->assertSame($nodeB, $nodeC->getPreviousSibling()); $this->assertSame($nodeD, $nodeC->getNextSibling()); return compact('node', 'nodeB', 'nodeC', 'nodeD'); }