Fix quality metric persistence ordering
This commit is contained in:
@@ -39,6 +39,8 @@ class QualityService:
|
||||
completed_at=datetime.now(timezone.utc),
|
||||
)
|
||||
db.add(quality_check)
|
||||
if hasattr(db, "flush"):
|
||||
db.flush()
|
||||
|
||||
for key, value in (metrics or {}).items():
|
||||
db.add(
|
||||
|
||||
@@ -21,6 +21,7 @@ class FakeSession:
|
||||
self.objects = objects or {}
|
||||
self.commits = 0
|
||||
self.refreshes = []
|
||||
self.flushes = 0
|
||||
|
||||
def get(self, model, item_id):
|
||||
return self.objects.get((model, item_id))
|
||||
@@ -31,6 +32,9 @@ class FakeSession:
|
||||
def commit(self) -> None:
|
||||
self.commits += 1
|
||||
|
||||
def flush(self) -> None:
|
||||
self.flushes += 1
|
||||
|
||||
def refresh(self, item) -> None:
|
||||
self.refreshes.append(item)
|
||||
|
||||
@@ -178,6 +182,7 @@ def test_quality_service_persists_quality_check_and_metrics() -> None:
|
||||
"false_positive_count",
|
||||
]
|
||||
assert persisted_metrics[0].quality_check_id == quality_check.id
|
||||
assert db.flushes == 1
|
||||
assert db.commits == 1
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user