public async Task CreateAsyncShouldCreateCorrectly() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: "MembershipsCreateDb").Options; var dbContext = new ApplicationDbContext(options); var repository = new EfDeletableEntityRepository <Membership>(dbContext); var service = new MembershipsService(repository); this.InitializeMapper(); var expectedMembership = new Membership { Id = 1, Name = "Name", Price = 50, Duration = Duration.OneMonth, HaveATrainer = false, AmountOfPeopleLimit = AmountOfPeopleLimit.One, VisitLimit = VisitLimit.OnePerDay, }; await service.CreateAsync(new CreateMembershipInputModel { Name = "Name", Price = 50, Duration = Duration.OneMonth, HaveATrainer = false, AmountOfPeopleLimit = AmountOfPeopleLimit.One, VisitLimit = VisitLimit.OnePerDay, }); var actualMembership = dbContext.Memberships.FirstOrDefault(x => x.Name == "Name"); Assert.NotNull(actualMembership); Assert.Equal(expectedMembership.Id, actualMembership.Id); Assert.Equal(expectedMembership.Name, actualMembership.Name); Assert.Equal(expectedMembership.Price, actualMembership.Price); Assert.Equal(expectedMembership.HaveATrainer, actualMembership.HaveATrainer); Assert.Equal(expectedMembership.Duration, actualMembership.Duration); Assert.Equal(expectedMembership.AmountOfPeopleLimit, actualMembership.AmountOfPeopleLimit); Assert.Equal(expectedMembership.VisitLimit, actualMembership.VisitLimit); }