This fixes a number of tests on windows, where being in a directory prevents it from being deleted.
Signed-off-by: Dylan Baker <dylanx.c.ba...@intel.com> --- unittests/core_tests.py | 18 ++++++------------ unittests/junit_backends_tests.py | 12 +++++------- unittests/utils/nose.py | 7 +------ 3 files changed, 12 insertions(+), 25 deletions(-) diff --git a/unittests/core_tests.py b/unittests/core_tests.py index 341663d..9c5949f 100644 --- a/unittests/core_tests.py +++ b/unittests/core_tests.py @@ -158,12 +158,10 @@ def test_config_home_fallback(): def test_local(): """core.get_config() finds ./piglit.conf""" with utils.nose.tempdir() as tdir: - os.chdir(tdir) - - with open(os.path.join(tdir, 'piglit.conf'), 'w') as f: - f.write(_CONF_FILE) - - core.get_config() + with utils.nose.chdir(tdir): + with open(os.path.join(tdir, 'piglit.conf'), 'w') as f: + f.write(_CONF_FILE) + core.get_config() nt.ok_(core.PIGLIT_CONFIG.has_section('nose-test'), msg='./piglit.conf not found') @@ -174,12 +172,8 @@ def test_piglit_root(): """core.get_config() finds "piglit root"/piglit.conf""" with open('piglit.conf', 'w') as f: f.write(_CONF_FILE) - return_dir = getcwd() - try: - os.chdir('..') - core.get_config() - finally: - os.chdir(return_dir) + with utils.nose.chdir('..'): + core.get_config() os.unlink('piglit.conf') nt.ok_(core.PIGLIT_CONFIG.has_section('nose-test'), diff --git a/unittests/junit_backends_tests.py b/unittests/junit_backends_tests.py index aaad5bf..d5f753a 100644 --- a/unittests/junit_backends_tests.py +++ b/unittests/junit_backends_tests.py @@ -323,12 +323,10 @@ def test_load_folder_name(): def test_load_default_name(): """backends.junit._load: uses 'junit result' for name as fallback""" with utils.nose.tempdir() as tdir: - os.chdir(tdir) - - filename = 'results.xml' - with open(filename, 'w') as f: - f.write(_XML) - - test = backends.junit.REGISTRY.load(filename, 'none') + with utils.nose.chdir(tdir): + filename = 'results.xml' + with open(filename, 'w') as f: + f.write(_XML) + test = backends.junit.REGISTRY.load(filename, 'none') nt.assert_equal(test.name, 'junit result') diff --git a/unittests/utils/nose.py b/unittests/utils/nose.py index 701b567..1d1ba93 100644 --- a/unittests/utils/nose.py +++ b/unittests/utils/nose.py @@ -339,16 +339,11 @@ def test_in_tempdir(func): returns to the original directory after the test completes. """ - original_dir = getcwd() - @functools.wraps(func) def wrapper(*args, **kwargs): with tempdir() as tdir: - try: - os.chdir(tdir) + with chdir(tdir): return func(*args, **kwargs) - finally: - os.chdir(original_dir) return wrapper -- 2.8.3 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit