Skip to main content

Databases fixtures plugin for py.test.

Project description

pytest-dbfixtures

Latest PyPI version Documentation Status Number of PyPI downloads Wheel Status Egg Status License

Package status

Tests Coverage Status Requirements Status

Overview

py.test clean fixtures for: postgresql, mysql, redis, mongo, elasticsearch and rabbitmq.

Starts specific database deamon and cleanup all data produced during tests.

Install

$ pip install --upgrade pytest-dbfixtures

How to use

Please see documentation

CHANGES

0.10.0

  • fix W503 pep8 errors, that appeared after new pylama got released

  • update to be able to use pytest-dbfixtures with pymongo 3

  • ability to properly use also beta versions of postgresql releases. (previously only stable versions were targeted)

0.9.0

  • add ability to set custom location for logs (might be useful for analysing logs from tests)

  • added postgresql 9.4 to supported versions.

0.8.2

  • Use port number in default RabbitMQ node name.

    This allows using just the port=’?’ argument to rabbitmq_proc to run multiple independent RabbitMQ instances for use with xdist to parallelize tests on a single machine.

  • Old versions of Redis notification

    displays a message about old version of redis

0.8.1

  • Feature: random ports selection Adds a possibility of passing ‘?’ in port= argument of process fixtures.

  • Removes ‘port’ from db fixtures

  • Fixes postgres missing host - previously using config.postgresql.unixsocketdir

0.7.0

  • redisdb fixture allows to specify client connection class

  • redisdb fixture uses now StrictRedis by default (backward incompatible)

0.6.0

  • 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

0.5.2

  • 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)

0.5.1

  • make rabbitmq logs persistent

0.5.0

  • update mirakuru to min 0.2

  • os.killpg to terminate process

  • add tests coverage on coveralls

0.4.22

  • remove creating old RABBITMQ env variables

0.4.21

  • 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

0.4.20

  • RabbitMQ process fixture is session scoped

  • rabbitmq fixture factory accepts custom teardown

0.4.19

  • StopRunningExecutor to simply return if process had been already killed.

0.4.18

  • MongoDB fixtures can be now initialized by factories

0.4.17

  • Bugfix: params in redis fixture

0.4.16

  • Add params to mysql fixture

0.4.15

  • Client fixtures now check if process (process fixture) is running before every test and starts process if it was terminated after previous test.

0.4.14

  • Bugfix: Now we don’t overwrite postgresql config in postgres_proc

0.4.13

  • Bugfix of rabbitmq_proc fixture - now it works with scope=function

0.4.12

  • 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).

0.4.10

  • Postgresql multiple versions proper support

  • Default timeouts and waits for process executors

0.4.8

  • introduced Elasticsearch fixture

0.4.6

  • mysql fixture now uses factories

0.4.4

  • postgresql fixtures and fixture factories

  • small code quality improvements

  • pylama code check

0.4.3

  • splits rabbitmq fixture into process/client fixtures

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytest-dbfixtures-0.10.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distributions

pytest_dbfixtures-0.10.0-py3-none-any.whl (33.9 kB view details)

Uploaded Python 3

pytest_dbfixtures-0.10.0-py2-none-any.whl (33.9 kB view details)

Uploaded Python 2

File details

Details for the file pytest-dbfixtures-0.10.0.tar.gz.

File metadata

File hashes

Hashes for pytest-dbfixtures-0.10.0.tar.gz
Algorithm Hash digest
SHA256 45686d3b759c4c7e3f9e2517e908fa2e7158151e7b480d9f55fa2de1059eb40b
MD5 d524a0b747679558dd6e23c0960b0cff
BLAKE2b-256 66db75770f9b80d761e8422386bb9f36a66035eaac4318bf230117eb91b4da8e

See more details on using hashes here.

File details

Details for the file pytest_dbfixtures-0.10.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pytest_dbfixtures-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 09b28d05dc0f6b66bf42feb0e035e6738419251cf2259c91e8be10b6d70d694c
MD5 9a2ba5c926cbab10592dfcd836907a49
BLAKE2b-256 66170699c8ed09e049b76d7730dc16ead6d73956e55e7e1dd7a796b27f5fd1ee

See more details on using hashes here.

File details

Details for the file pytest_dbfixtures-0.10.0-py2-none-any.whl.

File metadata

File hashes

Hashes for pytest_dbfixtures-0.10.0-py2-none-any.whl
Algorithm Hash digest
SHA256 7a81e689b46c47bb7a8d6e1a4d8744c0d181004e54a322fb2a3e88a9195009ba
MD5 00754f2a02c8fb763903f522a01bdf0e
BLAKE2b-256 94808c4824bab4fcdaf2e4739f5f27a0341fe7c73d8c9c91b4443c1966198bc2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page