Running the Test Suite¶
django-treebeard
includes a comprehensive test suite. It is highly
recommended that you run and update the test suite when you send patches.
py.test¶
You will need pytest to run the test suite. It’s included with the development dependencies:
$ pip install -r requirements.txt
Then just run the test suite:
$ py.test
You can use all the features and plugins of pytest this way.
By default the test suite will run using a sqlite3 database in RAM, but you can change this setting environment variables:
-
DATABASE_ENGINE
¶
-
DATABASE_NAME
¶
-
DATABASE_USER
¶
-
DATABASE_PASSWORD
¶
-
DATABASE_HOST
¶
-
DATABASE_PORT
¶
Sets the database settings to be used by the test suite. Useful if you want to test the same database engine/version you use in production.
tox¶
django-treebeard
uses tox to run the test suite in all the supported
environments:
- py27-dj16-sqlite
- py27-dj16-mysql
- py27-dj16-pgsql
- py27-dj17-sqlite
- py27-dj17-mysql
- py27-dj17-pgsql
- py34-dj16-sqlite
- py34-dj16-pgsql
- py34-dj17-sqlite
- py34-dj17-pgsql
This means that the test suite will run 10 times to test every
environment supported by django-treebeard
. This takes a long time.
If you want to test only one or a few environments, please use the -e
option in tox, like:
$ tox -e py34-dj17-pgsql