Browse Source

ConfigureExtraProperties for test aggregate roots.

pull/640/head
Halil ibrahim Kalkan 7 years ago
parent
commit
0c1aaccebb
  1. 7
      framework/test/Volo.Abp.EntityFrameworkCore.Tests.SecondContext/Volo/Abp/EntityFrameworkCore/TestApp/SecondContext/SecondDbContext.cs
  2. 8
      framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Domain/ConcurrencyStamp_Tests.cs
  3. 21
      framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs
  4. 16
      framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs
  5. 26
      framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Testing/ConcurrencyStamp_Tests.cs

7
framework/test/Volo.Abp.EntityFrameworkCore.Tests.SecondContext/Volo/Abp/EntityFrameworkCore/TestApp/SecondContext/SecondDbContext.cs

@ -1,4 +1,5 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Modeling;
namespace Volo.Abp.EntityFrameworkCore.TestApp.SecondContext
{
@ -20,6 +21,12 @@ namespace Volo.Abp.EntityFrameworkCore.TestApp.SecondContext
modelBuilder.Entity<PhoneInSecondDbContext>(b =>
{
b.HasKey(p => new { p.PersonId, p.Number });
b.ConfigureExtraProperties();
});
modelBuilder.Entity<BookInSecondDbContext>(b =>
{
b.ConfigureExtraProperties();
});
}
}

8
framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/Domain/ConcurrencyStamp_Tests.cs

@ -0,0 +1,8 @@
using Volo.Abp.TestApp.Testing;
namespace Volo.Abp.EntityFrameworkCore.Domain
{
public class ConcurrencyStamp_Tests : ConcurrencyStamp_Tests<AbpEntityFrameworkCoreTestModule>
{
}
}

21
framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/EntityFrameworkCore/TestMigrationsDbContext.cs

@ -1,4 +1,5 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Modeling;
using Volo.Abp.EntityFrameworkCore.TestApp.SecondContext;
using Volo.Abp.EntityFrameworkCore.TestApp.ThirdDbContext;
using Volo.Abp.TestApp.Domain;
@ -29,6 +30,26 @@ namespace Volo.Abp.EntityFrameworkCore
{
b.HasKey(p => new { p.PersonId, p.Number });
});
modelBuilder.Entity<Person>(b =>
{
b.ConfigureExtraProperties();
});
modelBuilder.Entity<City>(b =>
{
b.ConfigureExtraProperties();
});
modelBuilder.Entity<ThirdDbContextDummyEntity>(b =>
{
b.ConfigureExtraProperties();
});
modelBuilder.Entity<BookInSecondDbContext>(b =>
{
b.ConfigureExtraProperties();
});
}
}
}

16
framework/test/Volo.Abp.EntityFrameworkCore.Tests/Volo/Abp/TestApp/EntityFrameworkCore/TestAppDbContext.cs

@ -1,5 +1,6 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Modeling;
using Volo.Abp.EntityFrameworkCore.TestApp.ThirdDbContext;
using Volo.Abp.TestApp.Domain;
@ -23,10 +24,25 @@ namespace Volo.Abp.TestApp.EntityFrameworkCore
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Person>(b =>
{
b.ConfigureExtraProperties();
});
modelBuilder.Entity<Phone>(b =>
{
b.HasKey(p => new {p.PersonId, p.Number});
});
modelBuilder.Entity<City>(b =>
{
b.ConfigureExtraProperties();
});
modelBuilder.Entity<ThirdDbContextDummyEntity>(b =>
{
b.ConfigureExtraProperties();
});
}
}
}

26
framework/test/Volo.Abp.TestApp/Volo/Abp/TestApp/Testing/ConcurrencyStamp_Tests.cs

@ -0,0 +1,26 @@
using System.Threading.Tasks;
using Volo.Abp.Modularity;
using Volo.Abp.TestApp.Domain;
using Xunit;
namespace Volo.Abp.TestApp.Testing
{
public class ConcurrencyStamp_Tests<TStartupModule> : TestAppTestBase<TStartupModule>
where TStartupModule : IAbpModule
{
protected readonly ICityRepository CityRepository;
public ConcurrencyStamp_Tests()
{
CityRepository = GetRequiredService<ICityRepository>();
}
[Fact]
public async Task Should_Not_Allow_To_Update_If_The_Entity_Has_Changed()
{
var london = await CityRepository.FindByNameAsync("London");
london.Name = "London-1";
await CityRepository.UpdateAsync(london);
}
}
}
Loading…
Cancel
Save