public void Validate_NewStartDate_WhenNewStartDateIsAfterNewEndDate_ThenIsInvalid() { var command = new CreateChangeOfPartyRequestCommand { NewStartDate = DateTime.Today.AddYears(1), NewEndDate = DateTime.Today }; AssertValidationResult(r => r.NewStartDate, command, false); }
public void Validate_NewStartDate_WhenNewStartDateIsAfterCurrentAcademicYearPlusOneYear_ThenIsInvalid() { var command = new CreateChangeOfPartyRequestCommand { NewStartDate = _currentAcademicYearEndDate.AddYears(1).AddDays(1), NewEndDate = _currentAcademicYearEndDate.AddYears(2) }; AssertValidationResult(r => r.NewStartDate, command, false); }
public void Validate_NewStartDate_WhenNewStartDateIsBeforeNewEndDate_ThenIsValid() { var command = new CreateChangeOfPartyRequestCommand { NewStartDate = DateTime.Today, NewEndDate = DateTime.Today.AddYears(1) }; AssertValidationResult(r => r.NewStartDate, command, true); }
public void Validate_NewPrice_WhenNewStartDateOrNewEndDateHasValue(int?newPrice, bool hasNewStartDate, bool hasNewEndDate, bool isValid) { var command = new CreateChangeOfPartyRequestCommand { NewStartDate = hasNewStartDate ? new DateTime(2020, 1, 1) : (DateTime?)null, NewEndDate = hasNewEndDate ? new DateTime(2022, 1, 1) : (DateTime?)null, NewPrice = newPrice }; AssertValidationResult(r => r.NewPrice, command, isValid); }
private void AssertValidationResult <T>(Expression <Func <CreateChangeOfPartyRequestCommand, T> > property, CreateChangeOfPartyRequestCommand command, bool isValid) { var validator = new CreateChangeOfPartyRequestValidator(_mockAcademicYearDateProvider.Object); if (isValid) { validator.ShouldNotHaveValidationErrorFor(property, command); } else { validator.ShouldHaveValidationErrorFor(property, command); } }