public function testShouldSetContainerOnContainerAwareFixture() { $container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerInterface'); $loader = new ContainerAwareLoader($container); $fixture = new ContainerAwareFixture(); $loader->addFixture($fixture); $this->assertSame($container, $fixture->container); }
/** * */ protected function fixtures() { $container = $this->getContainer(); $fixtures = func_get_args(); $loader = new ContainerAwareLoader($container); foreach ($fixtures as $fixture) { $loader->addFixture($fixture); } if ($this->isFixtureAwareAlreadyPurged) { $executor = new ORMExecutor($container->get('doctrine')->getManager()); $executor->execute($loader->getFixtures(), true); } else { $purger = new ORMPurger(); $executor = new ORMExecutor($container->get('doctrine')->getManager(), $purger); $executor->execute($loader->getFixtures()); $this->isFixtureAwareAlreadyPurged = true; } }
/** * Load a data fixture class. * * @param DataFixturesLoader $loader * @param string $className */ private function loadFixtureClass(DataFixturesLoader $loader, $className) { $fixture = new $className(); if ($loader->hasFixture($fixture)) { unset($fixture); return; } $loader->addFixture($fixture); if ($fixture instanceof DependentFixtureInterface) { foreach ($fixture->getDependencies() as $dependency) { $this->loadFixtureClass($loader, $dependency); } } }
/** * @param FixtureInterface|FixtureInterface[] $data */ private function loadTestData($data) { $loader = new ContainerAwareLoader(static::$kernel->getContainer()); if (!is_array($data)) { $data = array($data); } foreach ($data as $dataSet) { $loader->addFixture($dataSet); } $this->fixtures = $loader->getFixtures(); $purger = new ORMPurger(); $executor = new ORMExecutor(static::$em, $purger); $executor->execute($loader->getFixtures()); }