Tests#

trytond.tests.test_tryton.DB_NAME#

The name of the database to use for testing. Its value is taken from the environment variable of the same name.

trytond.tests.test_tryton.USER#

The user id used to test the transactions

trytond.tests.test_tryton.CONTEXT#

The context used to test the transactions

trytond.tests.test_tryton.activate_module(name)#

Activate the named module for the tested database.

In case database does not exist and the DB_CACHE environment variable is set then Tryton restores a backup found in the directory pointed by DB_CACHE. DB_CACHE can also be set to the value postgresql://, in that case Tryton create the database using the template found on the server. Otherwise it procees to the creation of the database and the activation of the module.

DB_CACHE_JOBS environment variable defines the number of jobs used for dump and restore operations. The default value is the number of CPU.

ModuleTestCase#

class trytond.tests.test_tryton.ModuleTestCase#

A subclass of unittest.TestCase that tests a Tryton module. Some tests are included to ensure that the module works properly.

It creates a temporary database with the module activated in setUpClass and drops it in the tearDownClass method.

ModuleTestCase.module#

Name of the tested module.

ModuleTestCase.extras#

A list of extra modules to activate

ModuleTestCase.language#

The language to activate. Default value is en.

RouteTestCase#

class trytond.tests.test_tryton.RouteTestCase#

A subclass of unittest.TestCase to test Tryton routes.

It creates a temporary database with the module activated in setUpClass and drops it in the tearDownClass method.

RouteTestCase.module#

Name of the tested module.

RouteTestCase.extras#

A list of extra modules to activate

RouteTestCase.language#

The language to activate. Default value is en.

RouteTestCase.db_name#

Returns the name of the database

classmethod RouteTestCase.setUpDatabase()#

A method called by setUpClass after activating the modules in a Transaction. It is used to setup data in the database.

RouteTestCase.client()#

Return a client to simulate requests to the WSGI application.

Helpers#

trytond.tests.test_tryton.with_transaction(user=1, context=None)#

Return a decorator to run a test case inside a Transaction. It is rolled back and the cache cleared at the end of the test.

doctest helpers#

trytond.tests.test_tryton.doctest_setup()#

Prepare 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 since version 4.2: The doctest_setup function should not be used anymore to set up DocFileSuite(). New modules should use activate_modules() instead.

trytond.tests.test_tryton.doctest_teardown()#

Clean up after the run of the doctest by dropping the database. It should be used as tearDown parameter when creating a DocFileSuite.

trytond.tests.test_tryton.doctest_checker#

A specialized doctest checker to ensure the Python compatibility.

trytond.tests.test_tryton.load_doc_tests(name, path, loader, tests, pattern)#

An helper that follows the load_tests protocol to load as DocTest all *.rst files in directory, with the module name and the path to the module file from which the doc tests are registered. If a file with the same name but the extension .json exists, the test is registered for each globals defined in the JSON list.

trytond.tests.test_tryton.suite()#

A function returning a subclass of unittest.TestSuite that drops the database if it does not exist prior to the run of the tests.

Tools#

trytond.tests.tools.activate_modules(modules)#

Activate a list of modules for scenario based on proteus doctests.

trytond.tests.tools.set_user(user, config)#

Set the user of the config proteus connection to user.

The module exposes also all the assert methods of unittest.TestCase that can be run doctest scenario.