Ejemplo n.º 1
0
    public virtual async Task Seeding_keyless_entity_throws_exception(bool async)
    {
        var exception = await Assert.ThrowsAsync <InvalidOperationException>(
            async() =>
        {
            using var context = CreateKeylessContextWithEmptyDatabase();
            TestStore.Clean(context);
            var _ = async
                    ? await context.Database.EnsureCreatedResilientlyAsync()
                    : context.Database.EnsureCreatedResiliently();
        });

        Assert.Equal(CoreStrings.SeedKeylessEntity(nameof(KeylessSeed)), exception.Message);
    }
Ejemplo n.º 2
0
        public virtual TContext CreateContext(
            Action <MySqlDbContextOptionsBuilder> jetOptions           = null,
            Action <IServiceProvider, DbContextOptionsBuilder> options = null,
            Action <ModelBuilder> model = null)
        {
            var context = new TContext();

            context.Initialize(
                TestStore.Name,
                command => SqlCommands.Add(command.CommandText),
                model: model,
                options: options,
                mySqlOptions: jetOptions);

            TestStore.Clean(context);

            return(context);
        }
Ejemplo n.º 3
0
    public virtual async Task Seeding_does_not_leave_context_contaminated(bool async)
    {
        using var context = CreateContextWithEmptyDatabase(async ? "1A" : "1S");
        TestStore.Clean(context);
        var _ = async
            ? await context.Database.EnsureCreatedResilientlyAsync()
            : context.Database.EnsureCreatedResiliently();

        Assert.Empty(context.ChangeTracker.Entries());

        var seeds = context.Set <Seed>().OrderBy(e => e.Id).ToList();

        Assert.Equal(2, seeds.Count);
        Assert.Equal(321, seeds[0].Id);
        Assert.Equal("Apple", seeds[0].Species);
        Assert.Equal(322, seeds[1].Id);
        Assert.Equal("Orange", seeds[1].Species);
    }