Merge pull request #7473 from Michael-Girma/forward_port/pr-7471

Resolved mode bug and added sleep clause for darwin systems. Fixes #7470
This commit is contained in:
TW 2023-03-24 12:10:06 +01:00 committed by GitHub
commit 276c5f3ff6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -6,7 +6,7 @@
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 @@ def test_time_diffs(self):
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)