|
14 | 14 | using NetTopologySuite; |
15 | 15 | using NetTopologySuite.Geometries; |
16 | 16 | using Xunit.Sdk; |
| 17 | +using static Microsoft.EntityFrameworkCore.DbLoggerCategory; |
17 | 18 |
|
18 | 19 | // ReSharper disable InconsistentNaming |
19 | 20 | // ReSharper disable UnusedAutoPropertyAccessor.Local |
@@ -547,16 +548,6 @@ private class EntityWithNullableEnumType |
547 | 548 | public Days? Day { get; set; } |
548 | 549 | } |
549 | 550 |
|
550 | | - private class BaseEntityWithIntDiscriminator |
551 | | - { |
552 | | - public int Id { get; set; } |
553 | | - } |
554 | | - |
555 | | - private class DerivedEntityWithIntDiscriminator : BaseEntityWithIntDiscriminator |
556 | | - { |
557 | | - public string Name { get; set; } |
558 | | - } |
559 | | - |
560 | 551 | private class ManyToManyLeft |
561 | 552 | { |
562 | 553 | public int Id { get; set; } |
@@ -2537,13 +2528,18 @@ public virtual void Converted_discriminator_annotations_are_stored_in_snapshot() |
2537 | 2528 | """), |
2538 | 2529 | o => |
2539 | 2530 | { |
| 2531 | + var baseEntityType = o.FindEntityType(typeof(BaseEntityWithStructDiscriminator)); |
2540 | 2532 | Assert.Equal( |
2541 | 2533 | "Discriminator", |
2542 | | - o.FindEntityType(typeof(BaseEntityWithStructDiscriminator))[CoreAnnotationNames.DiscriminatorProperty]); |
| 2534 | + baseEntityType[CoreAnnotationNames.DiscriminatorProperty]); |
2543 | 2535 |
|
2544 | 2536 | Assert.Equal( |
2545 | 2537 | "Base", |
2546 | | - o.FindEntityType(typeof(BaseEntityWithStructDiscriminator))[CoreAnnotationNames.DiscriminatorValue]); |
| 2538 | + baseEntityType[CoreAnnotationNames.DiscriminatorValue]); |
| 2539 | + |
| 2540 | + var discriminatorProperty = baseEntityType.FindDiscriminatorProperty(); |
| 2541 | + Assert.Equal(typeof(int), discriminatorProperty.ClrType); |
| 2542 | + Assert.Equal("Discriminator", discriminatorProperty.Name); |
2547 | 2543 |
|
2548 | 2544 | Assert.Equal( |
2549 | 2545 | "Another", |
@@ -3385,57 +3381,6 @@ public virtual void Discriminator_of_enum_to_string() |
3385 | 3381 | Assert.False(discriminatorProperty.IsNullable); |
3386 | 3382 | }); |
3387 | 3383 |
|
3388 | | - [ConditionalFact] |
3389 | | - public virtual void Discriminator_with_non_string_default_name_is_stored_in_snapshot() |
3390 | | - => Test( |
3391 | | - builder => |
3392 | | - { |
3393 | | - builder.Entity<DerivedEntityWithIntDiscriminator>().HasBaseType<BaseEntityWithIntDiscriminator>(); |
3394 | | - builder.Entity<BaseEntityWithIntDiscriminator>() |
3395 | | - .HasDiscriminator<int>("Discriminator") |
3396 | | - .HasValue<BaseEntityWithIntDiscriminator>(0) |
3397 | | - .HasValue<DerivedEntityWithIntDiscriminator>(1); |
3398 | | - }, |
3399 | | - AddBoilerPlate( |
3400 | | - GetHeading() |
3401 | | - + """ |
3402 | | - modelBuilder.Entity("Microsoft.EntityFrameworkCore.Migrations.Design.CSharpMigrationsGeneratorTest+BaseEntityWithIntDiscriminator", b => |
3403 | | - { |
3404 | | - b.Property<int>("Id") |
3405 | | - .ValueGeneratedOnAdd() |
3406 | | - .HasColumnType("int"); |
3407 | | -
|
3408 | | - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id")); |
3409 | | -
|
3410 | | - b.Property<int>("Discriminator") |
3411 | | - .HasColumnType("int"); |
3412 | | -
|
3413 | | - b.HasKey("Id"); |
3414 | | -
|
3415 | | - b.ToTable("BaseEntityWithIntDiscriminator", "DefaultSchema"); |
3416 | | -
|
3417 | | - b.HasDiscriminator<int>("Discriminator").HasValue(0); |
3418 | | -
|
3419 | | - b.UseTphMappingStrategy(); |
3420 | | - }); |
3421 | | -
|
3422 | | - modelBuilder.Entity("Microsoft.EntityFrameworkCore.Migrations.Design.CSharpMigrationsGeneratorTest+DerivedEntityWithIntDiscriminator", b => |
3423 | | - { |
3424 | | - b.HasBaseType("Microsoft.EntityFrameworkCore.Migrations.Design.CSharpMigrationsGeneratorTest+BaseEntityWithIntDiscriminator"); |
3425 | | -
|
3426 | | - b.Property<string>("Name") |
3427 | | - .HasColumnType("nvarchar(max)"); |
3428 | | -
|
3429 | | - b.HasDiscriminator().HasValue(1); |
3430 | | - }); |
3431 | | -"""), |
3432 | | - model => |
3433 | | - { |
3434 | | - var discriminatorProperty = model.GetEntityTypes().First().FindDiscriminatorProperty(); |
3435 | | - Assert.Equal(typeof(int), discriminatorProperty.ClrType); |
3436 | | - Assert.Equal("Discriminator", discriminatorProperty.Name); |
3437 | | - }); |
3438 | | - |
3439 | 3384 | [ConditionalFact] |
3440 | 3385 | public virtual void Temporal_table_information_is_stored_in_snapshot() |
3441 | 3386 | => Test( |
|
0 commit comments