How can I load fixtures from functional test in Symfony 2

Ousmane picture Ousmane · Jun 13, 2013 · Viewed 21.7k times · Source

My DoctrineFixturesBundle is installed and I can load fixture trough the command-line but , how can I load fixtures from my functional test ?

Answer

firstprophet picture firstprophet · Dec 5, 2013

If you use symfony's WebTestCase, there's actually a very easy way to load your fixtures. Your fixture has to implement the FixtureInterface; thus, you can call it's load() method directly in your test's setUp() method. You just have to pass an EntityManager to the load() method, which can be aquired from the symfony container:

public function setUp() {
    $client = static::createClient();
    $container = $client->getContainer();
    $doctrine = $container->get('doctrine');
    $entityManager = $doctrine->getManager();

    $fixture = new YourFixture();
    $fixture->load($entityManager);
}