|
7 | 7 | import tempfile |
8 | 8 | import unittest |
9 | 9 |
|
| 10 | +from iptest import is_mono, is_osx |
| 11 | + |
10 | 12 | class ShutilTest(unittest.TestCase): |
11 | 13 | def setUp(self): |
12 | 14 | self.test_dir = tempfile.mkdtemp() |
@@ -62,10 +64,18 @@ def test_copystat(self): |
62 | 64 | to_stat = os.stat(to_filename) |
63 | 65 |
|
64 | 66 | self.assertEqual(from_stat.st_mode, to_stat.st_mode) |
65 | | - self.assertEqual(from_stat.st_atime, to_stat.st_atime) |
66 | | - self.assertEqual(from_stat.st_mtime, to_stat.st_mtime) |
67 | | - self.assertEqual(from_stat.st_atime_ns, to_stat.st_atime_ns) |
68 | | - self.assertEqual(from_stat.st_mtime_ns, to_stat.st_mtime_ns) |
| 67 | + if is_mono and is_osx and from_stat.st_atime_ns != to_stat.st_atime_ns: |
| 68 | + self.assertEqual(to_stat.st_atime, to_stat.st_atime_ns / 1e9) |
| 69 | + self.assertEqual(to_stat.st_mtime, to_stat.st_mtime_ns / 1e9) |
| 70 | + self.assertEqual(from_stat.st_atime_ns // 1000, to_stat.st_atime_ns // 1000) |
| 71 | + self.assertEqual(from_stat.st_mtime_ns // 1000, to_stat.st_mtime_ns // 1000) |
| 72 | + self.assertNotEqual(from_stat.st_atime_ns, to_stat.st_atime_ns) |
| 73 | + self.assertNotEqual(from_stat.st_mtime_ns, to_stat.st_mtime_ns) |
| 74 | + else: |
| 75 | + self.assertEqual(from_stat.st_atime, to_stat.st_atime) |
| 76 | + self.assertEqual(from_stat.st_mtime, to_stat.st_mtime) |
| 77 | + self.assertEqual(from_stat.st_atime_ns, to_stat.st_atime_ns) |
| 78 | + self.assertEqual(from_stat.st_mtime_ns, to_stat.st_mtime_ns) |
69 | 79 |
|
70 | 80 | def test_copy(self): |
71 | 81 | # TODO: implement me! |
|
0 commit comments