fix: restore MaintenanceRunner patch targets in TestMaybeRunDbBackup

ff7917e incorrectly changed all test patches from
`scheduler.maintenance.run_db_backup` to `scheduler._run_db_backup`,
and rewrote `_setup` to bypass the delegation architecture upstream uses.

- Restore `_setup` to use `scheduler.maintenance.get_maint` side_effect
- Restore all 6 tests to patch `scheduler.maintenance.run_db_backup`
- Add `patch.object(scheduler.maintenance, "_get_current_time")` to
  `test_weekly_on_wrong_day_does_not_run` to prevent Monday flakiness
  in UTC CI environments (maintenance captures `_get_current_time` as a
  bound method, so patching only `scheduler.get_current_time` is not
  sufficient)
This commit is contained in:
Stacy Olivas
2026-04-05 20:11:49 -07:00
parent a4cc667d93
commit aa75ed3c12
+3 -2
View File
@@ -372,8 +372,9 @@ class TestMaybeRunDbBackup:
fake_now.strftime = now.strftime
fake_now.isocalendar.return_value = (2026, 11, 2)
with patch.object(scheduler, "get_current_time", return_value=fake_now):
with patch.object(scheduler.maintenance, "run_db_backup") as mock_run:
scheduler._maybe_run_db_backup()
with patch.object(scheduler.maintenance, "_get_current_time", return_value=fake_now):
with patch.object(scheduler.maintenance, "run_db_backup") as mock_run:
scheduler._maybe_run_db_backup()
mock_run.assert_not_called()