Files
vigilcare-clinical/VigilCareClinicalAPI.Tests/Helpers/DbResetHelper.cs
T
voltsrage 93ea473d2b feature:
Full SOFA Score: Data Layer + Scoring Engine

Glasgow Coma Scale: Data Layer + Scoring Engine
2026-06-21 01:09:50 +08:00

37 lines
1.3 KiB
C#

using Microsoft.EntityFrameworkCore;
public static class DbResetHelper
{
// Truncate all data between tests — faster than dropping and re-creating
// the database, and preserves the schema (migrations do not re-run).
public static async Task ResetAsync(AppDbContext db)
{
for (var attempt = 0; ; attempt++)
{
try
{
await db.Database.ExecuteSqlRawAsync(@"
DELETE FROM medication_administrations;
DELETE FROM sepsis_bundle_elements;
DELETE FROM sepsis_bundles;
DELETE FROM reconciliation_alerts;
DELETE FROM outbox_events;
DELETE FROM orders;
DELETE FROM clinical_alerts;
DELETE FROM gcs_scores;
DELETE FROM sofa_scores;
DELETE FROM news2_scores;
DELETE FROM observations;
DELETE FROM encounters;
DELETE FROM alert_thresholds;
DELETE FROM patients;
");
return;
}
catch when (attempt < 5)
{
await Task.Delay(1000);
}
}
}
}