intraworlds/phpunit-db-fixtures

Loading DB fixtures with ease

v0.4.10 2022-07-18 12:53 UTC

README

Simple DB fixtures loading, replacement for phpunit/dbunit

Usage

use IW\PHPUnit\DbFixtures\DbFixturesTrait;

final class MyTest extends TestCase
{
  use DbFixturesTrait;

  // returns connections to your DB, implementation is up to you, a singleton should be returned probably
  protected function getConnections(): array {
    return [
      // key is name of DB, use it for distinction between multiple DBs
      'mysql' => new \PDO(...),
      'elastic' => new Elasticsearch\Client(...),
    ];
  }
  
  /**
   * @fixtures mysql read-only fixtures.yml
   */
  public function testWithFixtures() {
    // before test data from fixtures.yml will be loaded into mysql
  }
}