public async Task ShouldNotCreateExamWithRegistrationEndDateAfterExamDate() { var examDateTime = UtcDateTime.Create(new DateTime(2020, 03, 10, 12, 00, 00, DateTimeKind.Utc)).Value; var registrationStartDate = UtcDate.Create(new DateTime(2020, 02, 08, 00, 00, 00, DateTimeKind.Utc)).Value; var registrationEndDate = UtcDate.Create(new DateTime(2020, 03, 12, 00, 00, 00, DateTimeKind.Utc)).Value; var examResult = await Exam.CreateAsync(_subjectId, _locationId, examDateTime, _capacity, registrationStartDate, registrationEndDate, _systemTimeProvider.Object, _examRepository.Object); examResult.IsSuccess.Should().BeFalse(); }
public async Task <Result <ExamId> > Handle(CreateExamCommand request, CancellationToken cancellationToken) { return(await Exam.CreateAsync(request.SubjectId, request.LocationId, request.ExamDateTime, request.Capacity, request.RegistrationStartDate, request.RegistrationEndDate, _systemTimeProvider, _examRepository) .OnSuccess(exam => exam.Id)); }