public void should_fail_validation_when_dates_are_same_as_original_hearing() { var originalHearing = new VideoHearingBuilder().Build(); var request = new CloneHearingRequest { Dates = new List <DateTime> { originalHearing.ScheduledDateTime } }; var validator = new CloneHearingRequestValidation(originalHearing); var result = validator.ValidateDates(request); result.IsValid.Should().BeFalse(); result.Errors.Count.Should().Be(1); result.Errors.Any(x => x.ErrorMessage == CloneHearingRequestValidation.InvalidDateRangeErrorMessage) .Should().BeTrue(); }
public void should_fail_validation_when_list_contains_duplicate_dates() { var originalHearing = new VideoHearingBuilder().Build(); var date = originalHearing.ScheduledDateTime.GetNextWorkingDay(); var request = new CloneHearingRequest { Dates = new List <DateTime> { date, date } }; var validator = new CloneHearingRequestValidation(originalHearing); var result = validator.ValidateDates(request); result.IsValid.Should().BeFalse(); result.Errors.Count.Should().Be(1); result.Errors.Any(x => x.ErrorMessage == CloneHearingRequestValidation.DuplicateDateErrorMessage) .Should().BeTrue(); }
public void should_pass_validation_when_dates_are_ahead_of_original_hearing() { var originalHearing = new VideoHearingBuilder().Build(); var date1 = originalHearing.ScheduledDateTime.GetNextWorkingDay(); var date2 = date1.GetNextWorkingDay(); var date3 = date2.GetNextWorkingDay(); var dates = new List <DateTime> { date1, date2, date3 }; var request = new CloneHearingRequest { Dates = dates }; var validator = new CloneHearingRequestValidation(originalHearing); var result = validator.ValidateDates(request); result.IsValid.Should().BeTrue(); }