Skip to content

antennaio/laravel-codeception-dbdump

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Codeception DbDump

Create database dumps ready to be used with Codeception

Codeception comes with a nice Db module that keeps the test database clean before each test is run. To use it you are expected to put a database dump in tests/_data directory. This is a major pain, because each time the database changes, a new dump is required. This package adds a single command to your project that will migrate, seed and dump a test database making it ready to be used in Codeception tests.

Installation

Install through composer:

composer require antennaio/laravel-codeception-dbdump:~0.0.1

Add the service provider to config:

// config/app.php
'provider' => [
    ...
    Antennaio\Codeception\DbDumpServiceProvider::class,
    ...
];

Usage

Run the command with a single argument connection, which is one of the connections defined in config/database.php.

php artisan codeception:dbdump connection

Optionally, you can specify a path to the dump file:

php artisan codeception:dbdump connection --dump=tests/_data/test.sql

All available options:

Option Description
--dump[=DUMP] Choose the path for your dump file [default: "tests/_data/dump.sql"]
--empty-database Delete all database tables before any other action
--no-seeding Disable seeding in the dump process
--seeder-class[=SEEDER-CLASS] Choose the seeder class [default: "DatabaseSeeder"]
--binary[=BINARY] Specify the path to mysqldump (if using mysql driver) or sqlite3 (if using sqlite driver)

Run the command whenever your tests run

It's possible to have this command run automatically before any of your tests are executed by adding it to tests/_bootstrap.php:

exec('php artisan codeception:dbdump connection');

Compatibility

The codeception:dbdump command is currently compatible with MySQL and SQLite drivers.

About

Create database dumps ready to be used with Codeception

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages