summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorGiampaolo Rodola' <g.rodola@gmail.com>2012-05-16 14:01:59 (GMT)
committerGiampaolo Rodola' <g.rodola@gmail.com>2012-05-16 14:01:59 (GMT)
commite1266782160b0eef3726658480b83fa9fbcb6f0e (patch)
treec668f6e9a77defb8cf32bfcfb3602c25abb80dbb /Lib/test
parent12ea86adcea986c5572c597b72253d839f4d303a (diff)
downloadcpython-e1266782160b0eef3726658480b83fa9fbcb6f0e.zip
cpython-e1266782160b0eef3726658480b83fa9fbcb6f0e.tar.gz
cpython-e1266782160b0eef3726658480b83fa9fbcb6f0e.tar.bz2
#14807: fix BB failures on Windows - avoid to to rely too many details of the mode string.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_stat.py33
1 files changed, 22 insertions, 11 deletions
diff --git a/Lib/test/test_stat.py b/Lib/test/test_stat.py
index 283e847..48d5e38 100644
--- a/Lib/test/test_stat.py
+++ b/Lib/test/test_stat.py
@@ -23,24 +23,35 @@ class TestFilemode(unittest.TestCase):
def test_mode(self):
with open(TESTFN, 'w'):
pass
- os.chmod(TESTFN, 0o700)
- self.assertEqual(get_mode(), '-rwx------')
- os.chmod(TESTFN, 0o070)
- self.assertEqual(get_mode(), '----rwx---')
- os.chmod(TESTFN, 0o007)
- self.assertEqual(get_mode(), '-------rwx')
- os.chmod(TESTFN, 0o444)
- self.assertEqual(get_mode(), '-r--r--r--')
+ if os.name == 'posix':
+ os.chmod(TESTFN, 0o700)
+ self.assertEqual(get_mode(), '-rwx------')
+ os.chmod(TESTFN, 0o070)
+ self.assertEqual(get_mode(), '----rwx---')
+ os.chmod(TESTFN, 0o007)
+ self.assertEqual(get_mode(), '-------rwx')
+ os.chmod(TESTFN, 0o444)
+ self.assertEqual(get_mode(), '-r--r--r--')
+ else:
+ os.chmod(TESTFN, 0o700)
+ self.assertEqual(get_mode()[:3], '-rw')
def test_directory(self):
os.mkdir(TESTFN)
os.chmod(TESTFN, 0o700)
- self.assertEqual(get_mode(), 'drwx------')
+ if os.name == 'posix':
+ self.assertEqual(get_mode(), 'drwx------')
+ else:
+ self.assertEqual(get_mode()[0], 'd')
@unittest.skipUnless(hasattr(os, 'symlink'), 'os.symlink not available')
def test_link(self):
- os.symlink(os.getcwd(), TESTFN)
- self.assertEqual(get_mode()[0], 'l')
+ try:
+ os.symlink(os.getcwd(), TESTFN)
+ except (OSError, NotImplementedError) as err:
+ raise unittest.SkipTest(str(err))
+ else:
+ self.assertEqual(get_mode()[0], 'l')
@unittest.skipUnless(hasattr(os, 'mkfifo'), 'os.mkfifo not available')
def test_fifo(self):