public async void ShouldThrowValidationExceptionOnAddWhenCalendarIsNullAndLogItAsync() { // given Calendar randomCalendar = null; Calendar nullCalendar = randomCalendar; var nullCalendarException = new NullCalendarException(); var expectedCalendarValidationException = new CalendarValidationException(nullCalendarException); // when ValueTask <Calendar> registerCalendarTask = this.calendarService.AddCalendarAsync(nullCalendar); // then await Assert.ThrowsAsync <CalendarValidationException>(() => registerCalendarTask.AsTask()); this.loggingBrokerMock.Verify(broker => broker.LogError(It.Is(SameExceptionAs(expectedCalendarValidationException))), Times.Once); this.storageBrokerMock.Verify(broker => broker.InsertCalendarAsync(It.IsAny <Calendar>()), Times.Never); this.dateTimeBrokerMock.VerifyNoOtherCalls(); this.loggingBrokerMock.VerifyNoOtherCalls(); this.storageBrokerMock.VerifyNoOtherCalls(); }
public async Task ShouldThrowValidationExceptionOnModifyWhenCalendarIsNullAndLogItAsync() { //given Calendar invalidCalendar = null; var nullCalendarException = new NullCalendarException(); var expectedCalendarValidationException = new CalendarValidationException(nullCalendarException); //when ValueTask <Calendar> modifyCalendarTask = this.calendarService.ModifyCalendarAsync(invalidCalendar); //then await Assert.ThrowsAsync <CalendarValidationException>(() => modifyCalendarTask.AsTask()); this.loggingBrokerMock.Verify(broker => broker.LogError(It.Is(SameExceptionAs(expectedCalendarValidationException))), Times.Once); this.loggingBrokerMock.VerifyNoOtherCalls(); this.storageBrokerMock.VerifyNoOtherCalls(); this.dateTimeBrokerMock.VerifyNoOtherCalls(); }