public async Task DeleteAsync_ShouldReturnTrueIfSucceded() { //Arrange var options = InMemory.GetOptions("DeleteAsync_ShouldReturnTrueIfSucceded"); using (var context = new BOContext(options)) { var country = new Country() { Name = "Bulgaria" }; context.Countries.Add(country); await context.SaveChangesAsync(); } using (var context = new BOContext(options)) { //Act var sut = new CountriesService(context); var result = await sut.DeleteAsync(1); //Assert Assert.AreEqual(result, true); } }
public async Task DeleteAsync_ShouldDeleteCountryIfExist() { //Arrange var options = InMemory.GetOptions("DeleteAsync_ShouldDeleteCountryIfExist"); using (var context = new BOContext(options)) { var country = new Country() { Name = "Bulgaria" }; context.Countries.Add(country); await context.SaveChangesAsync(); } using (var context = new BOContext(options)) { //Act var sut = new CountriesService(context); await sut.DeleteAsync(1); var dbresult = await context.Countries.FirstOrDefaultAsync(c => c.Name == "Bulgaria"); //Assert Assert.AreEqual(dbresult.Name, "Bulgaria"); Assert.AreEqual(dbresult.DeletedOn, dbresult.ModifiedOn); Assert.AreEqual(dbresult.IsDeleted, true); } }
public async Task DeleteAsyncWorksCorrectlyWhenCountryExists() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options; var dbContext = new ApplicationDbContext(options); var addressesServiceMock = new Mock <IAddressesService>(); var citiesRepository = new EfDeletableEntityRepository <City>(dbContext); var repository = new EfDeletableEntityRepository <Country>(dbContext); var citiesServiceMock = new Mock <CitiesService>(citiesRepository, addressesServiceMock.Object); var service = new CountriesService(repository, citiesServiceMock.Object); var country = new Country() { Id = 1, }; dbContext.Add(country); await dbContext.SaveChangesAsync(); await service.DeleteAsync(1); var result = dbContext.Countries.Count(); Assert.Equal(0, result); }
public async Task DeleteAsync_RemovesEntity() { //Assert //Act await testedService.DeleteAsync(singleEntity.Id); //Assert Mock.Verify(c => c.Remove(anyEntity), Times.Once()); Mock.Verify(c => c.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Once()); }
public async Task DeleteAsync_ShouldReturnFalseIfCountryDoesntExistAsync() { //Arrange var options = InMemory.GetOptions("DeleteAsync_ShouldReturnFalseIfCountryDoesntExistAsync"); using (var context = new BOContext(options)) { } using (var context = new BOContext(options)) { //Act var sut = new CountriesService(context); var result = await sut.DeleteAsync(1); //Assert Assert.AreEqual(result, false); } }
public async Task DeleteAsync_ShouldDeleteRecordBreweriesIfExist() { //Arrange var options = InMemory.GetOptions("DeleteAsync_ShouldDeleteRecordBreweriesIfExist"); using (var context = new BOContext(options)) { var country = new Country() { Name = "Bulgaria", Breweries = new List <Brewery>() { new Brewery() { Name = "Brewery", Beers = new List <Beer>() } } }; context.Countries.Add(country); await context.SaveChangesAsync(); } using (var context = new BOContext(options)) { //Act var sut = new CountriesService(context); await sut.DeleteAsync(1); var dbresult = await context.Countries.FirstOrDefaultAsync(c => c.Name == "Bulgaria"); var dbBreweryResult = await context.Breweries.Include(b => b.Beers).FirstOrDefaultAsync(b => b.Name == "Brewery"); //Assert Assert.AreEqual(dbresult.Name, "Bulgaria"); Assert.AreEqual(dbresult.DeletedOn, dbresult.ModifiedOn); Assert.AreEqual(dbresult.IsDeleted, true); Assert.AreEqual(dbBreweryResult.Name, "Brewery"); Assert.AreEqual(dbBreweryResult.DeletedOn, dbBreweryResult.ModifiedOn); Assert.AreEqual(dbBreweryResult.IsDeleted, true); } }