diff options
author | Hynek Schlawack <hs@ox.cx> | 2012-12-10 15:29:57 (GMT) |
---|---|---|
committer | Hynek Schlawack <hs@ox.cx> | 2012-12-10 15:29:57 (GMT) |
commit | 87f9b46f15797efab3fc859112b3e8b0c3d893db (patch) | |
tree | 81072d04cf6777cfd90b84d3d47b061674f1b317 | |
parent | b9e9f3e70d3e5c115d179331ce640b0610c5a243 (diff) | |
download | cpython-87f9b46f15797efab3fc859112b3e8b0c3d893db.zip cpython-87f9b46f15797efab3fc859112b3e8b0c3d893db.tar.gz cpython-87f9b46f15797efab3fc859112b3e8b0c3d893db.tar.bz2 |
#15872: Some more Windows related tuning to shutil.rmtree tests
Turns out, the snakebite bots behave also their peculiarities.
I'm really not proud of this stream of commits. :(
-rw-r--r-- | Lib/test/test_shutil.py | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py index 9509d2a..a9b4676 100644 --- a/Lib/test/test_shutil.py +++ b/Lib/test/test_shutil.py @@ -132,13 +132,12 @@ class TestShutil(unittest.TestCase): filename = os.path.join(tmpdir, "tstfile") with self.assertRaises(OSError) as cm: shutil.rmtree(filename) - if cm.exception.filename.endswith('*.*'): - rm_name = os.path.join(filename, '*.*') - else: - rm_name = filename - self.assertEqual(cm.exception.filename, rm_name) + # The reason for this rather odd construct is that Windows sprinkles + # a \*.* at the end of file names. But only sometimes on some buildbots + possible_args = [filename, os.path.join(filename, '*.*')] + self.assertIn(cm.exception.filename, possible_args) self.assertTrue(os.path.exists(filename)) - # test that ignore_errors option is honoured + # test that ignore_errors option is honored shutil.rmtree(filename, ignore_errors=True) self.assertTrue(os.path.exists(filename)) errors = [] @@ -149,11 +148,11 @@ class TestShutil(unittest.TestCase): self.assertIs(errors[0][0], os.listdir) self.assertEqual(errors[0][1], filename) self.assertIsInstance(errors[0][2][1], OSError) - self.assertEqual(errors[0][2][1].filename, rm_name) + self.assertIn(errors[0][2][1].filename, possible_args) self.assertIs(errors[1][0], os.rmdir) self.assertEqual(errors[1][1], filename) self.assertIsInstance(errors[1][2][1], OSError) - self.assertEqual(errors[1][2][1].filename, rm_name) + self.assertIn(errors[1][2][1].filename, possible_args) # See bug #1071513 for why we don't run this on cygwin # and bug #1076467 for why we don't run this as root. |