summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorHarmen Stoppels <harmenstoppels@gmail.com>2021-09-01 14:23:26 +0200
committerTodd Gamblin <tgamblin@llnl.gov>2021-09-03 07:27:19 -0700
commit64407e253c616ab87e17257ab0664fe2990b957b (patch)
tree7c8c496666ac7a82a6787ae59363b21b928d6bf9 /lib
parentde492e73d5677a666a50f91d04c5b5dd9c72173a (diff)
downloadspack-64407e253c616ab87e17257ab0664fe2990b957b.tar.gz
spack-64407e253c616ab87e17257ab0664fe2990b957b.tar.bz2
spack-64407e253c616ab87e17257ab0664fe2990b957b.tar.xz
spack-64407e253c616ab87e17257ab0664fe2990b957b.zip
Always disable leftover active environment after tests
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/test/conftest.py24
1 files changed, 12 insertions, 12 deletions
diff --git a/lib/spack/spack/test/conftest.py b/lib/spack/spack/test/conftest.py
index 3f7a9f3a47..9d9ab44516 100644
--- a/lib/spack/spack/test/conftest.py
+++ b/lib/spack/spack/test/conftest.py
@@ -92,24 +92,24 @@ def no_path_access(monkeypatch):
#
-# Disable any activate Spack environment BEFORE all tests
+# Disable any active Spack environment BEFORE all tests
#
@pytest.fixture(scope='session', autouse=True)
def clean_user_environment():
- env_var = ev.spack_env_var in os.environ
- active = ev._active_environment
+ spack_env_value = os.environ.pop(ev.spack_env_var, None)
+ with ev.deactivate_environment():
+ yield
+ if spack_env_value:
+ os.environ[ev.spack_env_var] = spack_env_value
- if env_var:
- spack_env_value = os.environ.pop(ev.spack_env_var)
- if active:
- ev.deactivate()
+#
+# Make sure global state of active env does not leak between tests.
+#
+@pytest.fixture(scope='function', autouse=True)
+def clean_test_environment():
yield
-
- if env_var:
- os.environ[ev.spack_env_var] = spack_env_value
- if active:
- ev.activate(active)
+ ev.deactivate()
def _verify_executables_noop(*args):