File tree Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -704,7 +704,7 @@ def match_to_datetime(self, match):
704704 except ValueError :
705705 timestamp = None
706706 if timestamp is None :
707- logger . notice ( "Ignoring %s due to invalid date (%s)." , value , match . group () )
707+ raise ValueError ( "%r could not be extracted as unix timestamp" )
708708 else :
709709 logger .verbose ("Extracted timestamp %r from %r" , timestamp , value )
710710 return timestamp
Original file line number Diff line number Diff line change @@ -145,6 +145,18 @@ def test_argument_validation(self):
145145 returncode , output = run_cli (main , '-n' , '/root' )
146146 assert returncode != 0
147147
148+ def test_timestamp_dates (self ):
149+ """Make sure filenames with unix timestamps don't cause an exception."""
150+ with TemporaryDirectory (prefix = 'rotate-backups-' , suffix = '-test-suite' ) as root :
151+ file_with_valid_date = os .path .join (root , 'snapshot-1612396800061.tar.gz' )
152+ file_with_invalid_date = os .path .join (root , 'snapshot-1807311501019237.tar.gz' )
153+ for filename in file_with_valid_date , file_with_invalid_date :
154+ touch (filename )
155+ program = RotateBackups (rotation_scheme = dict (monthly = 'always' ), timestamp_pattern = r"-(?P<unixtime>\d+)\.tar\.gz" )
156+ backups = program .collect_backups (root )
157+ assert len (backups ) == 1
158+ assert backups [0 ].pathname == file_with_valid_date
159+
148160 def test_invalid_dates (self ):
149161 """Make sure filenames with invalid dates don't cause an exception."""
150162 with TemporaryDirectory (prefix = 'rotate-backups-' , suffix = '-test-suite' ) as root :
You can’t perform that action at this time.
0 commit comments