Fix: report no unapplied migrations when the applied migrations cannot be read

This commit is contained in:
stumpylog committed 2026-10-30 11:06:00 -07:00
1 parent e5bb3f7dbb
commit 853d64328e
2 files changed
+23

No files matched your search

+22
View File
@@ -564,3 +564,25 @@ class TestSystemStatus(APITestCase):
database["migration_status"],
{"latest_migration": None, "unapplied_migrations": []},
)
def test_system_status_migration_query_error(self) -> None:
"""
GIVEN:
- The migration graph loads but reading the applied migrations fails
WHEN:
- The system status is requested
THEN:
- No migrations are reported as unapplied, since the state is unknown
"""
self.client.force_login(self.user)
with mock.patch("documents.views.MigrationRecorder") as recorder:
recorder.Migration.objects.all.side_effect = Exception("query failed")
response = self.client.get(self.ENDPOINT)
self.assertEqual(response.status_code, status.HTTP_200_OK)
database = response.data["database"]
self.assertEqual(database["status"], "ERROR")
self.assertEqual(
database["migration_status"],
{"latest_migration": None, "unapplied_migrations": []},
)
+1
View File
@@ -5357,6 +5357,7 @@ class SystemStatusView(PassUserMixin):
for m in MigrationRecorder.Migration.objects.all().order_by("id")
]
except Exception as e:
all_migrations = []
applied_migrations = []
db_status = "ERROR"
logger.exception(