public async Task CommitAsync_InsertNewEntity_AffectedOneRow() { // Arrange var dbContextOptionsBuilder = new DbContextOptionsBuilder <DbContext>().UseInMemoryDatabase(nameof(CommitAsync_InsertNewEntity_AffectedOneRow)); var unitOfWork = new FakeUnitOfWork( dbContext => new FakeRepository(dbContext), dbContextOptionsBuilder.Options, "dbo" ); var entity = new FakeEntity(); await unitOfWork.FakeEntityRepository.InsertAsync(entity); // Act & Assert Assert.Equal(1, await unitOfWork.CommitAsync()); }
public async Task CommitAsync_UpdateNonexistentEntity_DataStorageException() { // Arrange var dbContextOptionsBuilder = new DbContextOptionsBuilder <DbContext>().UseInMemoryDatabase(nameof(CommitAsync_UpdateNonexistentEntity_DataStorageException)); var unitOfWork = new FakeUnitOfWork( dbContext => new FakeRepository(dbContext), dbContextOptionsBuilder.Options, "dbo" ); var entity = new FakeEntity { Id = -1 }; unitOfWork.FakeEntityRepository.Update(entity); // Act & Assert await Assert.ThrowsAsync <DataStorageException>(async() => await unitOfWork.CommitAsync()); }