diff --git a/src/Persistence/InMemory/InMemoryDbContext.cs b/src/Persistence/InMemory/InMemoryDbContext.cs index e27b3ba..3dc85f8 100644 --- a/src/Persistence/InMemory/InMemoryDbContext.cs +++ b/src/Persistence/InMemory/InMemoryDbContext.cs @@ -1,4 +1,5 @@ using cuqmbr.TravelGuide.Domain.Enums; +using cuqmbr.TravelGuide.Domain.Entities; using Microsoft.EntityFrameworkCore; using cuqmbr.TravelGuide.Persistence.TypeConverters; @@ -12,6 +13,15 @@ public class InMemoryDbContext : DbContext protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); + + builder + .Entity() + .ToTable("vehicles") + .UseTphMappingStrategy() + .HasDiscriminator(v => v.VehicleType) + .HasValue(VehicleType.Bus) + .HasValue(VehicleType.Aircraft) + .HasValue(VehicleType.Train); } protected override void ConfigureConventions( @@ -19,12 +29,26 @@ public class InMemoryDbContext : DbContext { builder .Properties() - .HaveColumnType("vehicle_type") + .HaveColumnType("varchar(16)") .HaveConversion(); builder .Properties() - .HaveColumnType("currency") + .HaveColumnType("varchar(8)") .HaveConversion(); + + builder + .Properties() + .HaveColumnType("varchar(64)") + .HaveConversion(); + + builder + .Properties() + .HaveColumnType("varchar(32)") + .HaveConversion(); + + builder + .Properties() + .HaveConversion(); } }