[Python-checkins] r84862 - in python/branches/release27-maint: Lib/distutils/dir_util.py Lib/distutils/tests/test_dir_util.py

senthil.kumaran python-checkins at python.org
Fri Sep 17 18:40:01 CEST 2010


Author: senthil.kumaran
Date: Fri Sep 17 18:40:01 2010
New Revision: 84862

Log:
Merged revisions 84861 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r84861 | senthil.kumaran | 2010-09-17 22:05:37 +0530 (Fri, 17 Sep 2010) | 3 lines
  
  Fix Issue2236: Distutils' mkpath implementation ignoring the "mode" parameter
........


Modified:
   python/branches/release27-maint/   (props changed)
   python/branches/release27-maint/Lib/distutils/dir_util.py
   python/branches/release27-maint/Lib/distutils/tests/test_dir_util.py

Modified: python/branches/release27-maint/Lib/distutils/dir_util.py
==============================================================================
--- python/branches/release27-maint/Lib/distutils/dir_util.py	(original)
+++ python/branches/release27-maint/Lib/distutils/dir_util.py	Fri Sep 17 18:40:01 2010
@@ -68,7 +68,7 @@
 
         if not dry_run:
             try:
-                os.mkdir(head)
+                os.mkdir(head, mode)
                 created_dirs.append(head)
             except OSError, exc:
                 raise DistutilsFileError, \

Modified: python/branches/release27-maint/Lib/distutils/tests/test_dir_util.py
==============================================================================
--- python/branches/release27-maint/Lib/distutils/tests/test_dir_util.py	(original)
+++ python/branches/release27-maint/Lib/distutils/tests/test_dir_util.py	Fri Sep 17 18:40:01 2010
@@ -1,6 +1,7 @@
 """Tests for distutils.dir_util."""
 import unittest
 import os
+import stat
 import shutil
 
 from distutils.dir_util import (mkpath, remove_tree, create_tree, copy_tree,
@@ -48,6 +49,12 @@
         wanted = ["removing '%s' (and everything under it)" % self.root_target]
         self.assertEquals(self._logs, wanted)
 
+    def test_mkpath_with_custom_mode(self):
+        mkpath(self.target, 0o700)
+        self.assertEqual(stat.S_IMODE(os.stat(self.target).st_mode), 0o700)
+        mkpath(self.target2, 0o555)
+        self.assertEqual(stat.S_IMODE(os.stat(self.target2).st_mode), 0o555)
+
     def test_create_tree_verbosity(self):
 
         create_tree(self.root_target, ['one', 'two', 'three'], verbose=0)


More information about the Python-checkins mailing list