From 64407e253c616ab87e17257ab0664fe2990b957b Mon Sep 17 00:00:00 2001 From: Harmen Stoppels Date: Wed, 1 Sep 2021 14:23:26 +0200 Subject: Always disable leftover active environment after tests --- lib/spack/spack/test/conftest.py | 24 ++++++++++++------------ 1 file 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): -- cgit v1.2.3-70-g09d2