Files
schengen-visa/SchengenVisaApi/VisaApiTests/Tests/Infrastructure/Database/InMemoryContextProvider.cs
2025-03-08 22:00:08 +03:00

23 lines
707 B
C#

using Infrastructure.Database;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Diagnostics;
namespace VisaApi.Tests.Infrastructure.Database;
public static class InMemoryContextProvider
{
private static DbContextOptions<DatabaseContext> opts = new DbContextOptionsBuilder<DatabaseContext>()
.UseInMemoryDatabase("VisaApiDB")
.ConfigureWarnings(b => b.Ignore(InMemoryEventId.TransactionIgnoredWarning))
.Options;
public static DatabaseContext GetDbContext()
{
var result = new DatabaseContext(opts);
result.Database.EnsureDeleted();
result.Database.EnsureCreated();
return result;
}
}