diff options
author | Giampaolo Rodola' <g.rodola@gmail.com> | 2012-05-16 14:01:59 (GMT) |
---|---|---|
committer | Giampaolo Rodola' <g.rodola@gmail.com> | 2012-05-16 14:01:59 (GMT) |
commit | e1266782160b0eef3726658480b83fa9fbcb6f0e (patch) | |
tree | c668f6e9a77defb8cf32bfcfb3602c25abb80dbb /Lib | |
parent | 12ea86adcea986c5572c597b72253d839f4d303a (diff) | |
download | cpython-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')
-rw-r--r-- | Lib/test/test_stat.py | 33 |
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): |