예제 #1
0
        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));
 }