[Python-checkins] r76103 - in python/branches/py3k: Lib/test/test_shutil.py

antoine.pitrou python-checkins at python.org
Wed Nov 4 01:57:15 CET 2009


Author: antoine.pitrou
Date: Wed Nov  4 01:57:15 2009
New Revision: 76103

Log:
Merged revisions 76101 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76101 | antoine.pitrou | 2009-11-04 01:50:26 +0100 (mer., 04 nov. 2009) | 3 lines
  
  Make test_shutil clean up after itself
........


Modified:
   python/branches/py3k/   (props changed)
   python/branches/py3k/Lib/test/test_shutil.py

Modified: python/branches/py3k/Lib/test/test_shutil.py
==============================================================================
--- python/branches/py3k/Lib/test/test_shutil.py	(original)
+++ python/branches/py3k/Lib/test/test_shutil.py	Wed Nov  4 01:57:15 2009
@@ -118,7 +118,7 @@
                 if os.path.exists(path):
                     os.remove(path)
             for path in (src_dir,
-                    os.path.abspath(os.path.join(dst_dir, os.path.pardir))
+                    os.path.dirname(dst_dir)
                 ):
                 if os.path.exists(path):
                     shutil.rmtree(path)
@@ -140,65 +140,69 @@
         join = os.path.join
         exists = os.path.exists
         src_dir = tempfile.mkdtemp()
-        dst_dir = join(tempfile.mkdtemp(), 'destination')
-        write_data(join(src_dir, 'test.txt'), '123')
-        write_data(join(src_dir, 'test.tmp'), '123')
-        os.mkdir(join(src_dir, 'test_dir'))
-        write_data(join(src_dir, 'test_dir', 'test.txt'), '456')
-        os.mkdir(join(src_dir, 'test_dir2'))
-        write_data(join(src_dir, 'test_dir2', 'test.txt'), '456')
-        os.mkdir(join(src_dir, 'test_dir2', 'subdir'))
-        os.mkdir(join(src_dir, 'test_dir2', 'subdir2'))
-        write_data(join(src_dir, 'test_dir2', 'subdir', 'test.txt'), '456')
-        write_data(join(src_dir, 'test_dir2', 'subdir2', 'test.py'), '456')
+        try:
+            dst_dir = join(tempfile.mkdtemp(), 'destination')
+            write_data(join(src_dir, 'test.txt'), '123')
+            write_data(join(src_dir, 'test.tmp'), '123')
+            os.mkdir(join(src_dir, 'test_dir'))
+            write_data(join(src_dir, 'test_dir', 'test.txt'), '456')
+            os.mkdir(join(src_dir, 'test_dir2'))
+            write_data(join(src_dir, 'test_dir2', 'test.txt'), '456')
+            os.mkdir(join(src_dir, 'test_dir2', 'subdir'))
+            os.mkdir(join(src_dir, 'test_dir2', 'subdir2'))
+            write_data(join(src_dir, 'test_dir2', 'subdir', 'test.txt'), '456')
+            write_data(join(src_dir, 'test_dir2', 'subdir2', 'test.py'), '456')
 
 
-        # testing glob-like patterns
-        try:
-            patterns = shutil.ignore_patterns('*.tmp', 'test_dir2')
-            shutil.copytree(src_dir, dst_dir, ignore=patterns)
-            # checking the result: some elements should not be copied
-            self.assertTrue(exists(join(dst_dir, 'test.txt')))
-            self.assertTrue(not exists(join(dst_dir, 'test.tmp')))
-            self.assertTrue(not exists(join(dst_dir, 'test_dir2')))
-        finally:
-            if os.path.exists(dst_dir):
-                shutil.rmtree(dst_dir)
-        try:
-            patterns = shutil.ignore_patterns('*.tmp', 'subdir*')
-            shutil.copytree(src_dir, dst_dir, ignore=patterns)
-            # checking the result: some elements should not be copied
-            self.assertTrue(not exists(join(dst_dir, 'test.tmp')))
-            self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir2')))
-            self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir')))
-        finally:
-            if os.path.exists(dst_dir):
-                shutil.rmtree(dst_dir)
+            # testing glob-like patterns
+            try:
+                patterns = shutil.ignore_patterns('*.tmp', 'test_dir2')
+                shutil.copytree(src_dir, dst_dir, ignore=patterns)
+                # checking the result: some elements should not be copied
+                self.assertTrue(exists(join(dst_dir, 'test.txt')))
+                self.assertTrue(not exists(join(dst_dir, 'test.tmp')))
+                self.assertTrue(not exists(join(dst_dir, 'test_dir2')))
+            finally:
+                if os.path.exists(dst_dir):
+                    shutil.rmtree(dst_dir)
+            try:
+                patterns = shutil.ignore_patterns('*.tmp', 'subdir*')
+                shutil.copytree(src_dir, dst_dir, ignore=patterns)
+                # checking the result: some elements should not be copied
+                self.assertTrue(not exists(join(dst_dir, 'test.tmp')))
+                self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir2')))
+                self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir')))
+            finally:
+                if os.path.exists(dst_dir):
+                    shutil.rmtree(dst_dir)
 
-        # testing callable-style
-        try:
-            def _filter(src, names):
-                res = []
-                for name in names:
-                    path = os.path.join(src, name)
-
-                    if (os.path.isdir(path) and
-                        path.split()[-1] == 'subdir'):
-                        res.append(name)
-                    elif os.path.splitext(path)[-1] in ('.py'):
-                        res.append(name)
-                return res
-
-            shutil.copytree(src_dir, dst_dir, ignore=_filter)
-
-            # checking the result: some elements should not be copied
-            self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir2',
-                                    'test.py')))
-            self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir')))
+            # testing callable-style
+            try:
+                def _filter(src, names):
+                    res = []
+                    for name in names:
+                        path = os.path.join(src, name)
+
+                        if (os.path.isdir(path) and
+                            path.split()[-1] == 'subdir'):
+                            res.append(name)
+                        elif os.path.splitext(path)[-1] in ('.py'):
+                            res.append(name)
+                    return res
+
+                shutil.copytree(src_dir, dst_dir, ignore=_filter)
+
+                # checking the result: some elements should not be copied
+                self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir2',
+                                        'test.py')))
+                self.assertTrue(not exists(join(dst_dir, 'test_dir2', 'subdir')))
 
+            finally:
+                if os.path.exists(dst_dir):
+                    shutil.rmtree(dst_dir)
         finally:
-            if os.path.exists(dst_dir):
-                shutil.rmtree(dst_dir)
+            shutil.rmtree(src_dir)
+            shutil.rmtree(os.path.dirname(dst_dir))
 
     if hasattr(os, "symlink"):
         def test_dont_copy_file_onto_link_to_itself(self):


More information about the Python-checkins mailing list