[Python-checkins] r54689 - python/trunk/Lib/test/test_os.py
ziga.seilnacht
python-checkins at python.org
Wed Apr 4 20:38:47 CEST 2007
Author: ziga.seilnacht
Date: Wed Apr 4 20:38:47 2007
New Revision: 54689
Modified:
python/trunk/Lib/test/test_os.py
Log:
Fix WalkTests.test_traversal() on Windows. The cleanup in
MakedirTests.setUp() can now be removed.
Modified: python/trunk/Lib/test/test_os.py
==============================================================================
--- python/trunk/Lib/test/test_os.py (original)
+++ python/trunk/Lib/test/test_os.py Wed Apr 4 20:38:47 2007
@@ -313,9 +313,9 @@
f.close()
if hasattr(os, "symlink"):
os.symlink(os.path.abspath(t2_path), link_path)
+ sub2_tree = (sub2_path, ["link"], ["tmp3"])
else:
- # it must be a directory because the test expects that
- os.mkdir(link_path)
+ sub2_tree = (sub2_path, [], ["tmp3"])
# Walk top-down.
all = list(os.walk(walk_path))
@@ -328,7 +328,7 @@
self.assertEqual(all[0], (walk_path, ["SUB1", "SUB2"], ["tmp1"]))
self.assertEqual(all[1 + flipped], (sub1_path, ["SUB11"], ["tmp2"]))
self.assertEqual(all[2 + flipped], (sub11_path, [], []))
- self.assertEqual(all[3 - 2 * flipped], (sub2_path, ["link"], ["tmp3"]))
+ self.assertEqual(all[3 - 2 * flipped], sub2_tree)
# Prune the search.
all = []
@@ -340,7 +340,7 @@
dirs.remove('SUB1')
self.assertEqual(len(all), 2)
self.assertEqual(all[0], (walk_path, ["SUB2"], ["tmp1"]))
- self.assertEqual(all[1], (sub2_path, ["link"], ["tmp3"]))
+ self.assertEqual(all[1], sub2_tree)
# Walk bottom-up.
all = list(os.walk(walk_path, topdown=False))
@@ -353,27 +353,28 @@
self.assertEqual(all[3], (walk_path, ["SUB1", "SUB2"], ["tmp1"]))
self.assertEqual(all[flipped], (sub11_path, [], []))
self.assertEqual(all[flipped + 1], (sub1_path, ["SUB11"], ["tmp2"]))
- self.assertEqual(all[2 - 2 * flipped], (sub2_path, ["link"], ["tmp3"]))
+ self.assertEqual(all[2 - 2 * flipped], sub2_tree)
- # Walk, following symlinks.
- for root, dirs, files in os.walk(walk_path, followlinks=True):
- if root == link_path:
- self.assertEqual(dirs, [])
- self.assertEqual(files, ["tmp4"])
- break
- else:
- self.fail("Didn't follow symlink with followlinks=True")
-
+ if hasattr(os, "symlink"):
+ # Walk, following symlinks.
+ for root, dirs, files in os.walk(walk_path, followlinks=True):
+ if root == link_path:
+ self.assertEqual(dirs, [])
+ self.assertEqual(files, ["tmp4"])
+ break
+ else:
+ self.fail("Didn't follow symlink with followlinks=True")
+ def tearDown(self):
# Tear everything down. This is a decent use for bottom-up on
# Windows, which doesn't have a recursive delete command. The
# (not so) subtlety is that rmdir will fail unless the dir's
# kids are removed first, so bottom up is essential.
for root, dirs, files in os.walk(test_support.TESTFN, topdown=False):
for name in files:
- os.remove(join(root, name))
+ os.remove(os.path.join(root, name))
for name in dirs:
- dirname = join(root, name)
+ dirname = os.path.join(root, name)
if not os.path.islink(dirname):
os.rmdir(dirname)
else:
@@ -382,14 +383,6 @@
class MakedirTests (unittest.TestCase):
def setUp(self):
- try:
- os.rmdir(test_support.TESTFN)
- except OSError:
- pass
- try:
- os.unlink(test_support.TESTFN)
- except OSError:
- pass
os.mkdir(test_support.TESTFN)
def test_makedir(self):
More information about the Python-checkins
mailing list