コード例 #1
0
 public function testSlice()
 {
     $root = new RootNode();
     $nodes = [];
     for ($i = 0; $i < 5; $i++) {
         $node = $this->createNode();
         $root->append($node);
         $nodes[] = $node;
     }
     $collection = new NodeCollection($nodes, FALSE);
     $slice = $collection->slice(4);
     $this->assertCount(1, $slice);
     $slice = $collection->slice(2, 4);
     $this->assertCount(2, $slice);
     $slice = $collection->slice(1, -1);
     $this->assertCount(3, $slice);
     $slice = $collection->slice(1, -2);
     $this->assertCount(2, $slice);
     $slice = $collection->slice(-2, -1);
     $this->assertCount(1, $slice);
     $slice = $collection->slice(-3, -1);
     $this->assertCount(2, $slice);
 }