using Robust.Shared.Log;
using Robust.Shared.Maths;
using Robust.Shared.Network;
-using Robust.Shared.Prototypes;
using Robust.UnitTesting;
namespace Content.IntegrationTests.Tests.Preferences
await pair.CleanReturnAsync();
}
+ [Test]
+ public async Task TestNoPendingDatabaseChanges()
+ {
+ var pair = await PoolManager.GetServerClient();
+ var server = pair.Server;
+ var db = GetDb(server);
+ Assert.That(async () => await db.HasPendingModelChanges(), Is.False,
+ "The database has pending model changes. Add a new migration to apply them. See https://learn.microsoft.com/en-us/ef/core/managing-schemas/migrations");
+ await pair.CleanReturnAsync();
+ }
+
private static NetUserId NewUserId()
{
return new(Guid.NewGuid());
return time != null ? NormalizeDatabaseTime(time.Value) : time;
}
+ public async Task<bool> HasPendingModelChanges()
+ {
+ await using var db = await GetDb();
+ return db.DbContext.Database.HasPendingModelChanges();
+ }
+
protected abstract Task<DbGuard> GetDb([CallerMemberName] string? name = null);
protected void LogDbOp(string? name)