public void RemoveWeekCount_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new WeekCountRepository(dbContext); var weekCount = new WeekCount(); A.CallTo(() => dbContext.WeekCounts.Remove(A <WeekCount> .Ignored)).Returns(weekCount); // Act var result = repository.RemoveEntity(weekCount); // Assert A.CallTo(() => dbContext.WeekCounts.Remove(weekCount)).MustHaveHappenedOnceExactly(); Assert.AreSame(weekCount, result); }
public void RemoveWeekCount_ExceptionCaught_LogsAndRethrowsException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new WeekCountRepository(dbContext); var weekCount = new WeekCount(); A.CallTo(() => dbContext.WeekCounts.Remove(A <WeekCount> .Ignored)).Throws <Exception>(); // Act WeekCount result = null; Assert.Throws <Exception>(() => result = repository.RemoveEntity(weekCount)); // Assert Assert.IsNull(result); }