|
@@ -6,7 +6,7 @@ import unittest
|
|
|
|
|
|
from ...constants import * # NOQA
|
|
|
from .. import are_symlinks_supported, are_hardlinks_supported
|
|
|
-from ..platform import is_win32
|
|
|
+from ..platform import is_win32, is_darwin
|
|
|
from . import ArchiverTestCaseBase, RemoteArchiverTestCaseBase, ArchiverTestCaseBinaryBase, RK_ENCRYPTION, BORG_EXES
|
|
|
|
|
|
|
|
@@ -247,12 +247,16 @@ class ArchiverTestCase(ArchiverTestCaseBase):
|
|
|
if is_win32:
|
|
|
# Sleeping for 15s because Windows doesn't refresh ctime if file is deleted and recreated within 15 seconds.
|
|
|
time.sleep(15)
|
|
|
+ elif is_darwin:
|
|
|
+ time.sleep(1) # HFS has a 1s timestamp granularity
|
|
|
self.create_regular_file("test_file", size=15)
|
|
|
self.cmd(f"--repo={self.repository_location}", "create", "archive2", "input")
|
|
|
output = self.cmd(f"--repo={self.repository_location}", "diff", "archive1", "archive2")
|
|
|
self.assert_in("mtime", output)
|
|
|
self.assert_in("ctime", output) # Should show up on windows as well since it is a new file.
|
|
|
- os.chmod("input/test_file", 777)
|
|
|
+ if is_darwin:
|
|
|
+ time.sleep(1) # HFS has a 1s timestamp granularity
|
|
|
+ os.chmod("input/test_file", 0o777)
|
|
|
self.cmd(f"--repo={self.repository_location}", "create", "archive3", "input")
|
|
|
output = self.cmd(f"--repo={self.repository_location}", "diff", "archive2", "archive3")
|
|
|
self.assert_not_in("mtime", output)
|