/**
  * @param BaseFixtureInterface $fixture
  */
 public function addFixture(BaseFixtureInterface $fixture)
 {
     if (!$fixture instanceof FixtureInterface || $this->hasFixture($fixture)) {
         return;
     }
     $fixture->setContainer($this->getContainer());
     $searchPaths = FixturePaths::create()->cartesianProductFromPaths([$this->container->getParameter('kernel.root_dir')], ...$this->container->getParameter('s.arthur_doctrine_fixtures.fixture_search_parts'));
     $fixture->loadFixtureMetadata($searchPaths);
     parent::addFixture($fixture);
 }
 public function testValidAndInvalidPaths()
 {
     $input = ['bad/bad/path', 'bin', 'src', 'invalid-path', 'tests/DataFixtures/Locator'];
     $expected = ['bin', 'src', 'tests/DataFixtures/Locator'];
     $locator = new FixtureLocator($input);
     static::assertEquals([], $locator->locate('FixtureLocator.php'));
     $locator->setPaths(FixturePaths::create(...$input));
     $resultingPaths = $locator->locateValidPaths(null, FixturePaths::create(...$input));
     foreach ($resultingPaths as $i => $p) {
         static::assertEquals($expected[$i], substr($p, strlen($p) - strlen($expected[$i])));
     }
 }
 public function setUp()
 {
     $this->c = $this->getMockBuilder('Symfony\\Component\\DependencyInjection\\Container')->setMethods(['getParameter'])->getMock();
     $this->c->expects($this->any())->method('getParameter')->will($this->returnValue('./tests/fixtures/'));
     $this->f = $this->getMockBuilder('Scribe\\Arthur\\DoctrineFixturesBundle\\DataFixtures\\YamlFixture')->setMethods(['getFixtureFileSearchPaths'])->getMock();
     $this->f->expects($this->any())->method('getFixtureFileSearchPaths')->will($this->returnValue(FixturePaths::create()->cartesianProductFromPaths(['tests/fixtures'])));
     $reflectionF = new \ReflectionClass('Scribe\\Arthur\\DoctrineFixturesBundle\\DataFixtures\\YamlFixture');
     $reflectionContainer = $reflectionF->getProperty('container');
     $reflectionContainer->setAccessible(true);
     $reflectionContainer->setValue($this->f, $this->c);
     $this->paths = $searchPaths = FixturePaths::create()->cartesianProductFromPaths([$this->c->getParameter('kernel.root_dir')]);
     parent::setUp();
 }