Databases fixtures plugin for py.test.
py.test clean fixtures for: postgresql, mysql, redis, mongo, elasticsearch and rabbitmq.
Starts specific database deamon and cleanup all data produced during tests.
$ pip install --upgrade pytest-dbfixtures
How to use
Please see documentation
- replaced MySQLdb with it’s fork mysqlclient - compatibility with python3
- renamed mysqldb fixture to mysql to keep it consistent with other client fixtures.
- replaced pika with python 3 compatible rabbitpy
- removed deprecated mysqldb_session/mysql_session
- bugfix of rabbitmq fixture: cast rabbitmq queues and exchanges to str due to pamq having problems
- internal changes: removed GentleKillingExecutor as mirakuru already implements same functionality
- syntax fixes for python 3
- moved postgresql starting code into it’s own executor
- xdist distributed hosts testing bugfix (but xdist parallelization on one host won’t work)
- make rabbitmq logs persistent
- update mirakuru to min 0.2
- os.killpg to terminate process
- add tests coverage on coveralls
- remove creating old RABBITMQ env variables
- remove elasticsearch home folder at process teardown
- set elasticsearch index.store.type to memory by default
- localized elasticsearch instance by default
- replaced summon_process with mirakuru
- RabbitMQ process fixture is session scoped
- rabbitmq fixture factory accepts custom teardown
- StopRunningExecutor to simply return if process had been already killed.
- MongoDB fixtures can be now initialized by factories
- Bugfix: params in redis fixture
- Add params to mysql fixture
- Client fixtures now check if process (process fixture) is running before every test and starts process if it was terminated after previous test.
- Bugfix: Now we don’t overwrite postgresql config in postgres_proc
- Bugfix of rabbitmq_proc fixture - now it works with scope=function
- Overrides SimpleExecutor’s behavior with a try of more gentle terminating subprocess before killing it.
- Deprecate scope for mysqldb fixture and change it to function by default.
- RabbitMQ factories support (multiple rabbit fixtures).
- Postgresql multiple versions proper support
- Default timeouts and waits for process executors
- introduced Elasticsearch fixture
- mysql fixture now uses factories
- postgresql fixtures and fixture factories
- small code quality improvements
- pylama code check
- splits rabbitmq fixture into process/client fixtures
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|pytest_dbfixtures-0.6.0-py2-none-any.whl (29.4 kB) Copy SHA256 hash SHA256||Wheel||2.7|
|pytest_dbfixtures-0.6.0-py3-none-any.whl (29.4 kB) Copy SHA256 hash SHA256||Wheel||3.3|
|pytest-dbfixtures-0.6.0.tar.gz (14.8 kB) Copy SHA256 hash SHA256||Source||None|