public async Task StoreBenchMarkResultsAsync_Should_SaveChangesAsync_Once() { // Arrange var sourceList = new List <BenchMarkResult>(); var mockDbContext = new Mock <BenchMarkDbContext>(); var mockedDbSet = new Mock <DbSet <BenchMarkResult> >(); mockedDbSet.Setup(d => d.Add(It.IsAny <BenchMarkResult>())).Callback <BenchMarkResult>((s) => sourceList.Add(s)); mockDbContext.Setup(dbContext => dbContext.BenchMarkResult).Returns(mockedDbSet.Object); var benchMarkResults = new List <BenchMarkResult>() { new BenchMarkResult() }; var testService = new BenchMarkTypeService(null, mockDbContext.Object); // Act await testService.StoreBenchMarkResultsAsync(benchMarkResults); // Assert mockDbContext.Verify(dbContext => dbContext.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Once); }
public async Task StoreBenchMarkResultsAsync_Should_Return_When_No_Results_and_Not_Call_DbContext() { // Arrange var benchMarkResults = new List <BenchMarkResult>(); var mockDbContext = new Mock <BenchMarkDbContext>(); var testService = new BenchMarkTypeService(null, mockDbContext.Object); // Act await testService.StoreBenchMarkResultsAsync(benchMarkResults); // Assert mockDbContext.Verify(dbContext => dbContext.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Never); }