public async void ShouldThrowValidationExceptionOnModifyWhenStudentGuardianIsNullAndLogItAsync() { //given StudentGuardian invalidStudentGuardian = null; var nullStudentGuardianException = new NullStudentGuardianException(); var expectedStudentGuardianValidationException = new StudentGuardianValidationException(nullStudentGuardianException); //when ValueTask <StudentGuardian> modifyStudentGuardianTask = this.studentGuardianService.ModifyStudentGuardianAsync(invalidStudentGuardian); //then await Assert.ThrowsAsync <StudentGuardianValidationException>(() => modifyStudentGuardianTask.AsTask()); this.loggingBrokerMock.Verify(broker => broker.LogError(It.Is(SameExceptionAs(expectedStudentGuardianValidationException))), Times.Once); this.loggingBrokerMock.VerifyNoOtherCalls(); this.storageBrokerMock.VerifyNoOtherCalls(); this.dateTimeBrokerMock.VerifyNoOtherCalls(); }
public async void ShouldThrowValidationExceptionOnAddWhenStudentGuardianIsNullAndLogItAsync() { // given StudentGuardian randomStudentGuardian = default; StudentGuardian nullStudentGuardian = randomStudentGuardian; var nullStudentGuardianException = new NullStudentGuardianException(); var expectedStudentGuardianValidationException = new StudentGuardianValidationException(nullStudentGuardianException); // when ValueTask <StudentGuardian> addStudentGuardianTask = this.studentGuardianService.AddStudentGuardianAsync(nullStudentGuardian); // then await Assert.ThrowsAsync <StudentGuardianValidationException>(() => addStudentGuardianTask.AsTask()); this.loggingBrokerMock.Verify(broker => broker.LogError(It.Is(SameExceptionAs(expectedStudentGuardianValidationException))), Times.Once); this.storageBrokerMock.Verify(broker => broker.InsertStudentGuardianAsync(It.IsAny <StudentGuardian>()), Times.Never); this.dateTimeBrokerMock.VerifyNoOtherCalls(); this.loggingBrokerMock.VerifyNoOtherCalls(); this.storageBrokerMock.VerifyNoOtherCalls(); }