Skip to content

Commit 896a784

Browse files
committed
amend! Removes unnecessarily complicated local timezone in test
Sets UTC timezone on MockArchives in helpers_test Is more true to how real archive timestamps are instantiated, as per `parse_timestamp` in time.py, which defaults to overriding tzinfo with timezone.utc.
1 parent 9b5c590 commit 896a784

File tree

1 file changed

+19
-18
lines changed

1 file changed

+19
-18
lines changed

src/borg/testsuite/helpers_test.py

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,8 @@ def test_invalid_make_path_safe(path):
449449

450450
class MockArchive:
451451
def __init__(self, ts, id):
452-
self.ts = ts
452+
# Real archive objects have UTC zoned timestamps
453+
self.ts = ts.replace(tzinfo=timezone.utc)
453454
self.id = id
454455

455456
def __repr__(self):
@@ -475,23 +476,23 @@ def subset(lst, ids):
475476

476477
archives = [
477478
# years apart
478-
MockArchive(datetime(2015, 1, 1, 10, 0, 0, tzinfo=None), 1),
479-
MockArchive(datetime(2016, 1, 1, 10, 0, 0, tzinfo=None), 2),
480-
MockArchive(datetime(2017, 1, 1, 10, 0, 0, tzinfo=None), 3),
479+
MockArchive(datetime(2015, 1, 1, 10, 0, 0), 1),
480+
MockArchive(datetime(2016, 1, 1, 10, 0, 0), 2),
481+
MockArchive(datetime(2017, 1, 1, 10, 0, 0), 3),
481482
# months apart
482-
MockArchive(datetime(2017, 2, 1, 10, 0, 0, tzinfo=None), 4),
483-
MockArchive(datetime(2017, 3, 1, 10, 0, 0, tzinfo=None), 5),
483+
MockArchive(datetime(2017, 2, 1, 10, 0, 0), 4),
484+
MockArchive(datetime(2017, 3, 1, 10, 0, 0), 5),
484485
# days apart
485-
MockArchive(datetime(2017, 3, 2, 10, 0, 0, tzinfo=None), 6),
486-
MockArchive(datetime(2017, 3, 3, 10, 0, 0, tzinfo=None), 7),
487-
MockArchive(datetime(2017, 3, 4, 10, 0, 0, tzinfo=None), 8),
486+
MockArchive(datetime(2017, 3, 2, 10, 0, 0), 6),
487+
MockArchive(datetime(2017, 3, 3, 10, 0, 0), 7),
488+
MockArchive(datetime(2017, 3, 4, 10, 0, 0), 8),
488489
# minutes apart
489-
MockArchive(datetime(2017, 10, 1, 9, 45, 0, tzinfo=None), 9),
490-
MockArchive(datetime(2017, 10, 1, 9, 55, 0, tzinfo=None), 10),
490+
MockArchive(datetime(2017, 10, 1, 9, 45, 0), 9),
491+
MockArchive(datetime(2017, 10, 1, 9, 55, 0), 10),
491492
# seconds apart
492-
MockArchive(datetime(2017, 10, 1, 10, 0, 1, tzinfo=None), 11),
493-
MockArchive(datetime(2017, 10, 1, 10, 0, 3, tzinfo=None), 12),
494-
MockArchive(datetime(2017, 10, 1, 10, 0, 5, tzinfo=None), 13),
493+
MockArchive(datetime(2017, 10, 1, 10, 0, 1), 11),
494+
MockArchive(datetime(2017, 10, 1, 10, 0, 3), 12),
495+
MockArchive(datetime(2017, 10, 1, 10, 0, 5), 13),
495496
]
496497
kept_because = {}
497498
keep = prune_split(archives, rule, num_to_keep, None, kept_because)
@@ -507,12 +508,12 @@ def subset(lst, ids):
507508

508509
archives = [
509510
# oldest backup, but not last in its year
510-
MockArchive(datetime(2018, 1, 1, 10, 0, 0, tzinfo=None), 1),
511+
MockArchive(datetime(2018, 1, 1, 10, 0, 0), 1),
511512
# an interim backup
512-
MockArchive(datetime(2018, 12, 30, 10, 0, 0, tzinfo=None), 2),
513+
MockArchive(datetime(2018, 12, 30, 10, 0, 0), 2),
513514
# year-end backups
514-
MockArchive(datetime(2018, 12, 31, 10, 0, 0, tzinfo=None), 3),
515-
MockArchive(datetime(2019, 12, 31, 10, 0, 0, tzinfo=None), 4),
515+
MockArchive(datetime(2018, 12, 31, 10, 0, 0), 3),
516+
MockArchive(datetime(2019, 12, 31, 10, 0, 0), 4),
516517
]
517518

518519
# Keep oldest when retention target can't otherwise be met

0 commit comments

Comments
 (0)