dbstudios/symfony-phpunit-helpers

1.0.1 2017-07-07 16:34 UTC

This package is auto-updated.

Last update: 2020-07-19 00:52:56 UTC


README

Add the following to app/AppKernel.php.

<?php
    // app/AppKernel.php
    
    // ...
    class AppKernel extends Kernel {
        public function registerBundles() {
            // ...
            if (in_array($this->getEnvironment(), array('dev', 'test'), true)) {
                // ...
                if ($this->getEnvironment() === 'test') {
                    $bundles[] = new Liip\FunctionalTestBundle\LiipFunctionalTestBundle();
                }
            }
    
            return $bundles;
        }
    
        // ...
    }

Next, enable the Liip bundle. Additionally, you should also configure Doctrine to use a temporary SQLite database, in lieu of your normal database connection.

liip_functional_test:
    cache_sqlite_db: true

# Optional, but recommended; tells Doctrine to use a temporary SQLite database for testing
doctrine:
    dbal:
        driver: pdo_sqlite
        path: '%kernel.cache_dir%/test.db'

Please read the LiipFunctionalTestBundle documentation for more information on configuring the Liip bundle.

Usage

Simply have your test cases extend from DaybreakStudios\Utility\SymfonyPHPUnitHelpers\WebTestCase.

<?php
    use DaybreakStudios\Utility\SymfonyPHPUntHelpers\WebTestCase;

    class MyTestCase extends WebTestCase {
    	public function testItRespondsSuccessfully() {
    	    $this->client->request('GET', '/home');
    	    
    	    $response = $this->client->getResponse();
    	    
    	    $this->isSuccessful($response);
    	}
    }