summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
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):