diff options
Diffstat (limited to 'Lib/test/test_stat.py')
| -rw-r--r-- | Lib/test/test_stat.py | 29 | 
1 files changed, 29 insertions, 0 deletions
diff --git a/Lib/test/test_stat.py b/Lib/test/test_stat.py index af6ced4..f1a5938 100644 --- a/Lib/test/test_stat.py +++ b/Lib/test/test_stat.py @@ -1,5 +1,6 @@  import unittest  import os +import sys  from test.support import TESTFN, import_fresh_module  c_stat = import_fresh_module('stat', fresh=['_stat']) @@ -52,6 +53,26 @@ class TestFilemode:          'S_IWOTH': 0o002,          'S_IXOTH': 0o001} +    # defined by the Windows API documentation +    file_attributes = { +        'FILE_ATTRIBUTE_ARCHIVE': 32, +        'FILE_ATTRIBUTE_COMPRESSED': 2048, +        'FILE_ATTRIBUTE_DEVICE': 64, +        'FILE_ATTRIBUTE_DIRECTORY': 16, +        'FILE_ATTRIBUTE_ENCRYPTED': 16384, +        'FILE_ATTRIBUTE_HIDDEN': 2, +        'FILE_ATTRIBUTE_INTEGRITY_STREAM': 32768, +        'FILE_ATTRIBUTE_NORMAL': 128, +        'FILE_ATTRIBUTE_NOT_CONTENT_INDEXED': 8192, +        'FILE_ATTRIBUTE_NO_SCRUB_DATA': 131072, +        'FILE_ATTRIBUTE_OFFLINE': 4096, +        'FILE_ATTRIBUTE_READONLY': 1, +        'FILE_ATTRIBUTE_REPARSE_POINT': 1024, +        'FILE_ATTRIBUTE_SPARSE_FILE': 512, +        'FILE_ATTRIBUTE_SYSTEM': 4, +        'FILE_ATTRIBUTE_TEMPORARY': 256, +        'FILE_ATTRIBUTE_VIRTUAL': 65536} +      def setUp(self):          try:              os.remove(TESTFN) @@ -185,6 +206,14 @@ class TestFilemode:              self.assertTrue(callable(func))              self.assertEqual(func(0), 0) +    @unittest.skipUnless(sys.platform == "win32", +                         "FILE_ATTRIBUTE_* constants are Win32 specific") +    def test_file_attribute_constants(self): +        for key, value in sorted(self.file_attributes.items()): +            self.assertTrue(hasattr(self.statmod, key), key) +            modvalue = getattr(self.statmod, key) +            self.assertEqual(value, modvalue, key) +  class TestFilemodeCStat(TestFilemode, unittest.TestCase):      statmod = c_stat  | 
