.. _ref-test: .. module:: trytond.tests.test_tryton ==== Test ==== .. attribute:: DB_NAME The name of the database to use for testing. Its value is taken from the environment variable of the same name. .. attribute:: USER The user id used to test the transactions .. attribute:: CONTEXT The context used to test the transactions .. function:: activate_module(name) Activates the module `name` for the tested database. In case database does not exist and the `DB_CACHE` environment variable is set then Tryton will restore a backup found in the directory pointed by `DB_CACHE`. Otherwise it will proceed to the creation of the database and the activation of the module. ============== ModuleTestCase ============== .. class:: ModuleTestCase() A subclass of `unittest.TestCase`_ that tests a Tryton module. Some tests are included to ensure that the module works properly. This class creates a temporary database with the module activated in `setUpClass`_ and drops it in the `tearDownClass` method. .. attribute:: ModuleTestCase.module Name of the tested module. .. _`unittest.TestCase`: https://docs.python.org/library/unittest.html#test-cases .. _setUpClass: https://docs.python.org/library/unittest.html#unittest.TestCase.setUpClass .. _tearDownClass: https://docs.python.org/library/unittest.html#unittest.TestCase.tearDownClass ======= Helpers ======= .. function:: with_transaction(user=1, context=None) This function returns a decorator to run a test case inside a transaction. The transaction is rolled back and the cache cleared at the end of the test. doctest helpers --------------- .. function:: doctest_setup A function that prepares the run of the `doctest`_ by creating a database and dropping it beforehand if necessary. This function should be used as the `setUp` parameter .. deprecated:: The `doctest_setup` function should not be used anymore to set up `DocFileSuite`. New modules should use :func:`activate_modules` instead. .. _doctest: https://docs.python.org/library/doctest.html .. function:: doctest_teardown() A function that cleans up after the run of the doctest by dropping the database. It should be used as `tearDown` parameter when creating a `DocFileSuite`. .. attribute:: doctest_checker A specialized doctest checker to ensure the Python 2/3 compatibility .. function:: suite() A function returning a subclass of `unittest.TestSuite` that will drop the database if it does not exist prior to the run of the tests. .. module:: trytond.tests.tools =========== Tests tools =========== .. function:: activate_modules(modules) This function is used in proteus doctests to activate a list of `modules` in the scenario. .. function:: set_user(user, config) This function will set the user of the `config` proteus connection to `user`.