Xqt has submitted this change. ( 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1181290?usp=email )

Change subject: Tests: recover unittest.skip in ScriptTestMeta
......................................................................

Tests: recover unittest.skip in ScriptTestMeta

Skipping tests is required if tests are collected with default collector.

Change-Id: I8c915e2ba74e77f3fc0ddc29bf67f35c6c8cf984
---
M tests/script_tests.py
1 file changed, 18 insertions(+), 1 deletion(-)

Approvals:
  jenkins-bot: Verified
  Xqt: Looks good to me, approved




diff --git a/tests/script_tests.py b/tests/script_tests.py
index 4827742..6c0128c 100755
--- a/tests/script_tests.py
+++ b/tests/script_tests.py
@@ -155,10 +155,15 @@
             yield f'tests.script_tests.{cls.__name__}.test_{name}'


+custom_loader = False
+
+
 def load_tests(loader: unittest.TestLoader = unittest.defaultTestLoader,
                standard_tests: unittest.TestSuite | None = None,
                pattern: str | None = None) -> unittest.TestSuite:
     """Load the default modules and return a TestSuite."""
+    global custom_loader
+    custom_loader = True
     suite = unittest.TestSuite()
     suite.addTests(loader.loadTestsFromNames(collector()))
     return suite
@@ -296,7 +301,11 @@

         arguments = dct['_arguments']

-        for script in dct['_script_list']:
+        if custom_loader:
+            collected_scripts = dct['_script_list']
+        else:
+            collected_scripts = filter_scripts(exclude_failed_dep=False)
+        for script in collected_scripts:

             # force login to be the first, alphabetically, so the login
             # message does not unexpectedly occur during execution of
@@ -309,6 +318,14 @@

             if script in dct['_expected_failures']:
                 dct[test] = unittest.expectedFailure(dct[test])
+            elif script in dct['_allowed_failures']:
+                dct[test] = unittest.skip(
+                    f'{script} is in _allowed_failures set'
+                )(dct[test])
+            elif script in failed_dep_script_set and arguments == '-simulate':
+                dct[test] = unittest.skip(
+                    f'{script} has dependencies; skipping'
+                )(dct[test])

         return super().__new__(cls, name, bases, dct)


--
To view, visit 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1181290?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.wikimedia.org/r/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I8c915e2ba74e77f3fc0ddc29bf67f35c6c8cf984
Gerrit-Change-Number: 1181290
Gerrit-PatchSet: 1
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to