changeset 2d014eb31d16 in modules/account_payment_braintree:default
details: 
https://hg.tryton.org/modules/account_payment_braintree?cmd=changeset&node=2d014eb31d16
description:
        Replace test setuptools command by unittest discover

        issue9215
        review389851002
diffstat:

 setup.py                                |   6 +++---
 tests/__init__.py                       |   8 --------
 tests/test_account_payment_braintree.py |  29 -----------------------------
 tests/test_module.py                    |  12 ++++++++++++
 tests/test_scenario.py                  |  25 +++++++++++++++++++++++++
 tox.ini                                 |   3 ++-
 6 files changed, 42 insertions(+), 41 deletions(-)

diffs (126 lines):

diff -r 3742bbb8982c -r 2d014eb31d16 setup.py
--- a/setup.py  Mon Apr 11 23:24:20 2022 +0200
+++ b/setup.py  Sat Apr 16 18:30:16 2022 +0200
@@ -142,13 +142,13 @@
     license='GPL-3',
     python_requires='>=3.7',
     install_requires=requires,
+    extras_require={
+        'test': tests_require,
+        },
     dependency_links=dependency_links,
     zip_safe=False,
     entry_points="""
     [trytond.modules]
     account_payment_braintree = trytond.modules.account_payment_braintree
     """,  # noqa: E501
-    test_suite='tests',
-    test_loader='trytond.test_loader:Loader',
-    tests_require=tests_require,
     )
diff -r 3742bbb8982c -r 2d014eb31d16 tests/__init__.py
--- a/tests/__init__.py Mon Apr 11 23:24:20 2022 +0200
+++ b/tests/__init__.py Sat Apr 16 18:30:16 2022 +0200
@@ -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.account_payment_braintree.tests.test_account_payment_braintree 
import \
-        suite  # noqa: E501
-except ImportError:
-    from .test_account_payment_braintree import suite
-
-__all__ = ['suite']
diff -r 3742bbb8982c -r 2d014eb31d16 tests/test_account_payment_braintree.py
--- a/tests/test_account_payment_braintree.py   Mon Apr 11 23:24:20 2022 +0200
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-# 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 os
-import unittest
-
-from trytond.tests.test_tryton import (
-    ModuleTestCase, doctest_checker, doctest_teardown)
-from trytond.tests.test_tryton import suite as test_suite
-
-
-class AccountPaymentBraintreeTestCase(ModuleTestCase):
-    'Test Account Payment Braintree module'
-    module = 'account_payment_braintree'
-
-
-def suite():
-    suite = test_suite()
-    suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
-            AccountPaymentBraintreeTestCase))
-    if (os.getenv('BRAINTREE_MERCHANT_ID')
-            and os.getenv('BRAINTREE_PUBLIC_KEY')
-            and os.getenv('BRAINTREE_PRIVATE_KEY')):
-        suite.addTests(doctest.DocFileSuite(
-                'scenario_account_payment_braintree.rst',
-                tearDown=doctest_teardown, encoding='utf-8',
-                checker=doctest_checker,
-                optionflags=doctest.REPORT_ONLY_FIRST_FAILURE))
-    return suite
diff -r 3742bbb8982c -r 2d014eb31d16 tests/test_module.py
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test_module.py      Sat Apr 16 18:30:16 2022 +0200
@@ -0,0 +1,12 @@
+# 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 AccountPaymentBraintreeTestCase(ModuleTestCase):
+    'Test Account Payment Braintree module'
+    module = 'account_payment_braintree'
+
+
+del ModuleTestCase
diff -r 3742bbb8982c -r 2d014eb31d16 tests/test_scenario.py
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test_scenario.py    Sat Apr 16 18:30:16 2022 +0200
@@ -0,0 +1,25 @@
+# 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):
+    if (os.getenv('BRAINTREE_MERCHANT_ID')
+            and os.getenv('BRAINTREE_PUBLIC_KEY')
+            and os.getenv('BRAINTREE_PRIVATE_KEY')):
+        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 -r 3742bbb8982c -r 2d014eb31d16 tox.ini
--- a/tox.ini   Mon Apr 11 23:24:20 2022 +0200
+++ b/tox.ini   Sat Apr 16 18:30:16 2022 +0200
@@ -2,8 +2,9 @@
 envlist = {py37,py38,py39,py310}-{sqlite,postgresql}
 
 [testenv]
+extras = test
 commands =
-    coverage run --include=.*/account_payment_braintree/* setup.py test
+    coverage run --include=.*/account_payment_braintree/* -m unittest discover 
-s tests
     coverage report --include=.*/account_payment_braintree/* --omit=*/tests/*
 deps =
     coverage

Reply via email to