// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using EntityFrameworkCore.Jet.FunctionalTests.TestUtilities; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Conventions; using Microsoft.EntityFrameworkCore.TestModels.ConcurrencyModel; using Microsoft.EntityFrameworkCore.TestUtilities; namespace EntityFrameworkCore.Jet.FunctionalTests { public class F1JetFixture : F1RelationalFixture { protected override ITestStoreFactory TestStoreFactory => JetTestStoreFactory.Instance; public override ModelBuilder CreateModelBuilder() => new ModelBuilder(JetConventionSetBuilder.Build()); protected override void BuildModelExternal(ModelBuilder modelBuilder) { base.BuildModelExternal(modelBuilder); modelBuilder.Entity().Property("Version").IsRowVersion(); modelBuilder.Entity().Property("Version").IsRowVersion(); modelBuilder.Entity().Property("Version") .ValueGeneratedOnAddOrUpdate() .IsConcurrencyToken(); modelBuilder.Entity( eb => { eb.Property("Version").IsRowVersion().HasColumnName("Version"); eb.Property(Sponsor.ClientTokenPropertyName).HasColumnName(Sponsor.ClientTokenPropertyName); }); modelBuilder.Entity() .OwnsOne( s => s.Details, eb => { eb.Property(d => d.Space).HasColumnType("decimal(18,2)"); eb.Property("Version").IsRowVersion().HasColumnName("Version"); eb.Property(Sponsor.ClientTokenPropertyName).IsConcurrencyToken() .HasColumnName(Sponsor.ClientTokenPropertyName); }); } } }