diff options
author | Nick Coghlan <ncoghlan@gmail.com> | 2009-10-17 08:21:21 (GMT) |
---|---|---|
committer | Nick Coghlan <ncoghlan@gmail.com> | 2009-10-17 08:21:21 (GMT) |
commit | b6edf193fbe069e6c1ff3acd4e32dab01c818d7b (patch) | |
tree | 0c01cea292eb082c3392e9630f8e2aff261188b6 | |
parent | a3e97ad5bac9439f82c86a355775238655b5be87 (diff) | |
download | cpython-b6edf193fbe069e6c1ff3acd4e32dab01c818d7b.zip cpython-b6edf193fbe069e6c1ff3acd4e32dab01c818d7b.tar.gz cpython-b6edf193fbe069e6c1ff3acd4e32dab01c818d7b.tar.bz2 |
Check and revert expected sys.path alterations
-rw-r--r-- | Lib/test/test_unittest.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/Lib/test/test_unittest.py b/Lib/test/test_unittest.py index de687e2..726ac85 100644 --- a/Lib/test/test_unittest.py +++ b/Lib/test/test_unittest.py @@ -3609,12 +3609,12 @@ class TestDiscovery(TestCase): os.path.isfile = lambda path: False self.addCleanup(restore_isfile) - full_path = os.path.abspath(os.path.normpath('/foo')) - def clean_path(): - if sys.path[-1] == full_path: - sys.path.pop(-1) - self.addCleanup(clean_path) + orig_sys_path = sys.path[:] + def restore_path(): + sys.path[:] = orig_sys_path + self.addCleanup(restore_path) + full_path = os.path.abspath(os.path.normpath('/foo')) with self.assertRaises(ImportError): loader.discover('/foo/bar', top_level_dir='/foo') @@ -3636,6 +3636,7 @@ class TestDiscovery(TestCase): self.assertEqual(suite, "['tests']") self.assertEqual(loader._top_level_dir, top_level_dir) self.assertEqual(_find_tests_args, [(start_dir, 'pattern')]) + self.assertIn(top_level_dir, sys.path) def test_discover_with_modules_that_fail_to_import(self): loader = unittest.TestLoader() @@ -3644,12 +3645,15 @@ class TestDiscovery(TestCase): os.listdir = lambda _: ['test_this_does_not_exist.py'] isfile = os.path.isfile os.path.isfile = lambda _: True + orig_sys_path = sys.path[:] def restore(): os.path.isfile = isfile os.listdir = listdir + sys.path[:] = orig_sys_path self.addCleanup(restore) suite = loader.discover('.') + self.assertIn(os.getcwd(), sys.path) self.assertEqual(suite.countTestCases(), 1) test = list(list(suite)[0])[0] # extract test from suite |