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.TEST_NETWORK#
If false, tests that requires network are skipped. Its value is taken from the environment variable of the same name.
- 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 byDB_CACHE
.DB_CACHE
can also be set to the valuepostgresql://
, 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.
TestCase#
- class trytond.tests.test_tryton.TestCase#
A subclass of unittest.TestCase for testing non-module Tryton.
It setups warning filters based on
TEST_PYTHONWARNINGS
environment variable.
ModuleTestCase#
- class trytond.tests.test_tryton.ModuleTestCase#
A subclass of
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
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.
ExtensionTestCase#
- class trytond.tests.test_tryton.ExtensionTestCase#
A subclass of
TestCase
to test a Tryton with an database extension activated.
- ExtensionTestCase.extension#
The name of the extension to activate.
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 upDocFileSuite()
. New modules should useactivate_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 aDocFileSuite
.
- 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[, skips])#
An helper that follows the
load_tests
protocol to load asDocTest
all*.rst
files indirectory
, with the modulename
and thepath
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.skips
constains the name of the scenario to skip.
- 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, \*setup)#
Activate a list of
modules
for scenario based on proteus doctests. The following arguments are functions sequentially called at the end of the activation with the proteus configuration asconfig
keyword argument.
- trytond.tests.tools.set_user(user, config)#
Set the user of the
config
proteus connection touser
.
The module exposes also all the assert methods of unittest.TestCase
that can be run doctest scenario.