/**
  * @covers Navinator\Collection::sortNodeArray
  */
 public function testSortNodeArray()
 {
     $nodeData = array('alpha-3' => 3, 'alpha-2' => 2, 'alpha-1' => 1, 'alpha-4' => 4, 'alpha-1/beta-3' => 3, 'alpha-1/beta-1' => 1, 'alpha-1/beta-2' => 2, 'alpha-1/beta-4' => 4);
     $nodes = array();
     $c = new Collection();
     foreach ($nodeData as $path => $displayOrder) {
         $n = new Node($path);
         $nodes[$path] = $n;
         $c->addNode($n, $displayOrder);
     }
     $rootNodes = $c->getRootNodes();
     $expected = array($nodes['alpha-1'], $nodes['alpha-2'], $nodes['alpha-3'], $nodes['alpha-4']);
     $result = $c->sortNodeArray($rootNodes);
     $this->assertEquals($expected, $result);
     // check for samse display orders
     $c->setNodeDisplayOrder($c->getNode('alpha-1/beta-4'), 3, false);
     $expected = array($nodes['alpha-1/beta-1'], $nodes['alpha-1/beta-2'], $nodes['alpha-1/beta-4'], $nodes['alpha-1/beta-3']);
     $result = $c->sortNodeArray($c->getNode('alpha-1')->getChildren($c));
     $this->assertEquals($expected, $result);
 }