public void TestGetRelationalModelOutputOk() { //SETUP var options = this.CreateUniqueClassOptions<OwnedTypeDbContext>( builder => builder.ReplaceService<IModelCacheKeyFactory, OwnedTypeModelCacheKeyFactory>()); using var context = new OwnedTypeDbContext(options, OwnedTypeDbContext.Configs.NestedNull); //ATTEMPT var modelString = context.GetService<IDesignTimeModel>().Model.ToDebugString(MetadataDebugStringOptions.LongDefault); //VERIFY _output.WriteLine(modelString); }
public void TestContextModelGetRelationalModelColumnsOk() { //SETUP var options = this.CreateUniqueClassOptions <OwnedTypeDbContext>( builder => builder.ReplaceService <IModelCacheKeyFactory, OwnedTypeModelCacheKeyFactory>()); using var contextNNull = new OwnedTypeDbContext(options, OwnedTypeDbContext.Configs.NestedNull); using var contextNNot = new OwnedTypeDbContext(options, OwnedTypeDbContext.Configs.NestedNotNull); //ATTEMPT var relationalNNull = contextNNull.Model.GetRelationalModel().Tables.Single().Columns.ToList(); var relationalNNot = contextNNot.Model.GetRelationalModel().Tables.Single().Columns.ToList(); //VERIFY }
public void CompareOwnedTypeSeparateTable() { //SETUP var options = this.CreateUniqueClassOptions<OwnedTypeDbContext>( builder => builder.ReplaceService<IModelCacheKeyFactory, OwnedTypeModelCacheKeyFactory>()); using var context = new OwnedTypeDbContext(options, OwnedTypeDbContext.Configs.SeparateTable); context.Database.EnsureClean(); var comparer = new CompareEfSql(); //ATTEMPT var hasErrors = comparer.CompareEfWithDb(context); //VERIFY hasErrors.ShouldBeFalse(comparer.GetAllErrors); }
public void TestContextModelGetRelationalModelOk() { //SETUP var options = this.CreateUniqueClassOptions<OwnedTypeDbContext>( builder => builder.ReplaceService<IModelCacheKeyFactory, OwnedTypeModelCacheKeyFactory>()); using var contextNNull = new OwnedTypeDbContext(options, OwnedTypeDbContext.Configs.NestedNull); using var contextNNot = new OwnedTypeDbContext(options, OwnedTypeDbContext.Configs.NestedNotNull); //ATTEMPT var relationalNNull = contextNNull.Model.GetRelationalModel().Tables.Single(); var relationalNNot = contextNNot.Model.GetRelationalModel().Tables.Single(); //VERIFY var comparer = new CompareHierarchical(); comparer.CompareTwoSimilarClasses(relationalNNull, relationalNNot); foreach (var log in comparer.LoggedDiffs.Where(x => x.Status != CompareStatuses.CouldNotCompare)) { _output.WriteLine(log.ToString()); } }