public function testFindPackagesByName()
 {
     $arrayRepoOne = new ArrayRepository();
     $arrayRepoOne->addPackage($this->getPackage('foo', '1'));
     $arrayRepoOne->addPackage($this->getPackage('foo', '2'));
     $arrayRepoOne->addPackage($this->getPackage('bat', '1'));
     $arrayRepoTwo = new ArrayRepository();
     $arrayRepoTwo->addPackage($this->getPackage('bar', '1'));
     $arrayRepoTwo->addPackage($this->getPackage('bar', '2'));
     $arrayRepoTwo->addPackage($this->getPackage('foo', '3'));
     $repo = new CompositeRepository(array($arrayRepoOne, $arrayRepoTwo));
     $bats = $repo->findPackagesByName('bat');
     $this->assertCount(1, $bats, "Should find one instance of 'bats' (defined in just one repository)");
     $this->assertEquals('bat', $bats[0]->getName(), "Should find packages named 'bat'");
     $bars = $repo->findPackagesByName('bar');
     $this->assertCount(2, $bars, "Should find two instances of 'bar' (both defined in the same repository)");
     $this->assertEquals('bar', $bars[0]->getName(), "Should find packages named 'bar'");
     $foos = $repo->findPackagesByName('foo');
     $this->assertCount(3, $foos, "Should find three instances of 'foo' (two defined in one repository, the third in the other)");
     $this->assertEquals('foo', $foos[0]->getName(), "Should find packages named 'foo'");
 }