From 35eed29a650c36a71d90e92012b4e9463e936994 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Perrin?= Date: Mon, 30 Sep 2024 05:33:30 +0000 Subject: [PATCH 1/3] Respect `PURE_PYTHON=0` environment variable Setting to 0 should be equivalent to not setting the variable. Refs https://github.com/zopefoundation/meta/issues/283 --- CHANGES.rst | 2 ++ src/AccessControl/tests/testSecurityManager.py | 3 ++- src/AccessControl/tests/testZopeSecurityPolicy.py | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CHANGES.rst b/CHANGES.rst index 467d54c..edacea0 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -6,6 +6,8 @@ For changes before version 3.0, see ``HISTORY.rst``. 7.1 (unreleased) ---------------- +- Respect ``PURE_PYTHON`` environment variable set to ``0`` when running tests. + 7.0 (2024-05-30) ---------------- diff --git a/src/AccessControl/tests/testSecurityManager.py b/src/AccessControl/tests/testSecurityManager.py index 5a86d5d..0181afa 100644 --- a/src/AccessControl/tests/testSecurityManager.py +++ b/src/AccessControl/tests/testSecurityManager.py @@ -251,7 +251,8 @@ def _getTargetClass(self): return SecurityManager -@unittest.skipIf(os.environ.get('PURE_PYTHON'), reason="Test expects C impl.") +@unittest.skipIf(int(os.environ.get('PURE_PYTHON', '0')), + reason="Test expects C impl.") class C_SecurityManagerTests(SecurityManagerTestBase, ISecurityManagerConformance, unittest.TestCase): diff --git a/src/AccessControl/tests/testZopeSecurityPolicy.py b/src/AccessControl/tests/testZopeSecurityPolicy.py index 9b12a0f..103f948 100644 --- a/src/AccessControl/tests/testZopeSecurityPolicy.py +++ b/src/AccessControl/tests/testZopeSecurityPolicy.py @@ -772,7 +772,7 @@ def test_suite(): unittest.defaultTestLoader.loadTestsFromTestCase(Python_ZSPTests)) suite.addTest( unittest.defaultTestLoader.loadTestsFromTestCase(Python_SMTests)) - if not os.environ.get('PURE_PYTHON'): + if not int(os.environ.get('PURE_PYTHON', '0')): suite.addTest( unittest.defaultTestLoader.loadTestsFromTestCase(C_ZSPTests)) suite.addTest( From 1967ab7e8a6f4e4894ef9a4333a69f64fa47b19b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Perrin?= Date: Mon, 30 Sep 2024 07:12:11 +0000 Subject: [PATCH 2/3] fixup! Respect `PURE_PYTHON=0` environment variable --- src/AccessControl/tests/testSecurityManager.py | 5 +++-- src/AccessControl/tests/testZopeSecurityPolicy.py | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/AccessControl/tests/testSecurityManager.py b/src/AccessControl/tests/testSecurityManager.py index 0181afa..bdd9bca 100644 --- a/src/AccessControl/tests/testSecurityManager.py +++ b/src/AccessControl/tests/testSecurityManager.py @@ -17,6 +17,8 @@ import os import unittest +from ..Implementation import PURE_PYTHON + _THREAD_ID = 123 @@ -251,8 +253,7 @@ def _getTargetClass(self): return SecurityManager -@unittest.skipIf(int(os.environ.get('PURE_PYTHON', '0')), - reason="Test expects C impl.") +@unittest.skipIf(PURE_PYTHON, reason="Test expects C impl.") class C_SecurityManagerTests(SecurityManagerTestBase, ISecurityManagerConformance, unittest.TestCase): diff --git a/src/AccessControl/tests/testZopeSecurityPolicy.py b/src/AccessControl/tests/testZopeSecurityPolicy.py index 103f948..86293cb 100644 --- a/src/AccessControl/tests/testZopeSecurityPolicy.py +++ b/src/AccessControl/tests/testZopeSecurityPolicy.py @@ -27,6 +27,8 @@ from AccessControl.SecurityManagement import SecurityContext from AccessControl.userfolder import UserFolder +from ..Implementation import PURE_PYTHON + user_roles = ('RoleOfUser',) eo_roles = ('RoleOfExecutableOwner',) @@ -772,7 +774,7 @@ def test_suite(): unittest.defaultTestLoader.loadTestsFromTestCase(Python_ZSPTests)) suite.addTest( unittest.defaultTestLoader.loadTestsFromTestCase(Python_SMTests)) - if not int(os.environ.get('PURE_PYTHON', '0')): + if not PURE_PYTHON: suite.addTest( unittest.defaultTestLoader.loadTestsFromTestCase(C_ZSPTests)) suite.addTest( From a747ed576a29b40a53626daee5ca0fb955cd1179 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Perrin?= Date: Mon, 30 Sep 2024 07:16:38 +0000 Subject: [PATCH 3/3] fixup! fixup! Respect `PURE_PYTHON=0` environment variable --- src/AccessControl/tests/testSecurityManager.py | 1 - src/AccessControl/tests/testZopeSecurityPolicy.py | 1 - 2 files changed, 2 deletions(-) diff --git a/src/AccessControl/tests/testSecurityManager.py b/src/AccessControl/tests/testSecurityManager.py index bdd9bca..7087330 100644 --- a/src/AccessControl/tests/testSecurityManager.py +++ b/src/AccessControl/tests/testSecurityManager.py @@ -14,7 +14,6 @@ """Tests for the SecurityManager implementations """ -import os import unittest from ..Implementation import PURE_PYTHON diff --git a/src/AccessControl/tests/testZopeSecurityPolicy.py b/src/AccessControl/tests/testZopeSecurityPolicy.py index 86293cb..068c49b 100644 --- a/src/AccessControl/tests/testZopeSecurityPolicy.py +++ b/src/AccessControl/tests/testZopeSecurityPolicy.py @@ -12,7 +12,6 @@ ############################################################################## import _thread as thread -import os import sys import unittest from doctest import DocTestSuite