diff --git a/setup.py b/setup.py index 9a56647f4f..81c81675a0 100755 --- a/setup.py +++ b/setup.py @@ -74,6 +74,7 @@ tests_require = [get_require_version('proteus'), get_require_version('trytond_account_stock_continental'), get_require_version('trytond_account_stock_anglo_saxon'), get_require_version('trytond_purchase')] +extras_require['test'] = tests_require dependency_links = [] if minor_version % 2: dependency_links.append( @@ -154,7 +155,4 @@ setup(name=name, [trytond.modules] purchase_shipment_cost = trytond.modules.purchase_shipment_cost """, - test_suite='tests', - test_loader='trytond.test_loader:Loader', - tests_require=tests_require, ) diff --git a/tests/__init__.py b/tests/__init__.py index 9b2d721cbf..4effdfa4a2 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -1,10 +1,2 @@ # This file is part of Tryton. The COPYRIGHT file at the top level of # this repository contains the full copyright notices and license terms. - -try: - from trytond.modules.purchase_shipment_cost.tests.test_purchase_shipment_cost import \ - suite # noqa: E501 -except ImportError: - from .test_purchase_shipment_cost import suite - -__all__ = ['suite'] diff --git a/tests/test_module.py b/tests/test_module.py new file mode 100644 index 0000000000..e10fc0c064 --- /dev/null +++ b/tests/test_module.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +# This file is part of Tryton. The COPYRIGHT file at the top level of +# this repository contains the full copyright notices and license terms. + +from trytond.tests.test_tryton import ModuleTestCase + + +class PurchaseShipmentCostTestCase(ModuleTestCase): + 'Test Purchase Shipment Cost module' + module = 'purchase_shipment_cost' + + +del ModuleTestCase diff --git a/tests/test_purchase_shipment_cost.py b/tests/test_purchase_shipment_cost.py deleted file mode 100644 index 3dba3fd177..0000000000 --- a/tests/test_purchase_shipment_cost.py +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env python -# This file is part of Tryton. The COPYRIGHT file at the top level of -# this repository contains the full copyright notices and license terms. -import doctest -import unittest - -import trytond.tests.test_tryton -from trytond.tests.test_tryton import ( - ModuleTestCase, doctest_checker, doctest_teardown) - - -class PurchaseShipmentCostTestCase(ModuleTestCase): - 'Test Purchase Shipment Cost module' - module = 'purchase_shipment_cost' - - -def suite(): - suite = trytond.tests.test_tryton.suite() - suite.addTests(unittest.TestLoader().loadTestsFromTestCase( - PurchaseShipmentCostTestCase)) - suite.addTests(doctest.DocFileSuite('scenario_purchase_shipment_cost.rst', - tearDown=doctest_teardown, encoding='utf-8', - checker=doctest_checker, - optionflags=doctest.REPORT_ONLY_FIRST_FAILURE)) - suite.addTests(doctest.DocFileSuite( - 'scenario_purchase_shipment_cost_invoice_stock.rst', - tearDown=doctest_teardown, encoding='utf-8', - checker=doctest_checker, - optionflags=doctest.REPORT_ONLY_FIRST_FAILURE)) - suite.addTests(doctest.DocFileSuite( - 'scenario_purchase_shipment_cost_with_account_stock.rst', - tearDown=doctest_teardown, encoding='utf-8', - checker=doctest_checker, - optionflags=doctest.REPORT_ONLY_FIRST_FAILURE)) - suite.addTests(doctest.DocFileSuite( - 'scenario_purchase_shipment_cost_' - 'with_account_stock_anglo_saxon.rst', - tearDown=doctest_teardown, encoding='utf-8', - checker=doctest_checker, - optionflags=doctest.REPORT_ONLY_FIRST_FAILURE)) - return suite diff --git a/tests/test_scenario.py b/tests/test_scenario.py new file mode 100644 index 0000000000..c80e682a7f --- /dev/null +++ b/tests/test_scenario.py @@ -0,0 +1,22 @@ +# This file is part of Tryton. The COPYRIGHT file at the top level of +# this repository contains the full copyright notices and license terms. + +import doctest +import glob +import os + +from trytond.tests.test_tryton import doctest_checker, doctest_teardown + + +def load_tests(loader, tests, pattern): + cwd = os.getcwd() + try: + os.chdir(os.path.dirname(__file__)) + for scenario in glob.glob('*.rst'): + tests.addTests(doctest.DocFileSuite( + scenario, tearDown=doctest_teardown, encoding='utf-8', + checker=doctest_checker, + optionflags=doctest.REPORT_ONLY_FIRST_FAILURE)) + finally: + os.chdir(cwd) + return tests diff --git a/tox.ini b/tox.ini index 8752e86e65..1f66e05ec7 100644 --- a/tox.ini +++ b/tox.ini @@ -2,8 +2,9 @@ envlist = {py37,py38,py39,py310}-{sqlite,postgresql} [testenv] +extras = test commands = - coverage run --include=.*/purchase_shipment_cost/* setup.py test + coverage run --include=.*/purchase_shipment_cost/* -m unittest discover -s tests coverage report --include=.*/purchase_shipment_cost/* --omit=*/tests/* deps = coverage