public void ValidCourseId_ShouldNotHaveError() { var command = new PublishCourseCommand { CourseId = "courseId" }; _sut.ShouldNotHaveValidationErrorFor(x => x.CourseId, command); }
public async Task WhenIPublishACourseWithAnEmptyOrANull(string courseId) { _command = new PublishCourseCommand { CourseId = courseId }; _response = await _client.PutAsync(BaseUrl, Utilities.GetRequestContent(_command)); }
public void EmptyOrNullCourseId_ShouldHaveError(string courseId) { var command = new PublishCourseCommand { CourseId = courseId }; _sut.ShouldHaveValidationErrorFor(x => x.CourseId, command); }
public async Task WhenIPublishAnInvalidCourseId() { _command = new PublishCourseCommand { CourseId = "invalidCourseId" }; _response = await _client.PutAsync(BaseUrl, Utilities.GetRequestContent(_command)); }
public void GivenADraftCourseThatHasNoModule() { var course = CreateDraftCourse(); _command = new PublishCourseCommand { CourseId = course.Id }; }
public void GivenADraftCourseThatOneOfItsModulesHasNoLecture() { var course = CreateDraftCourse(); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); _command = new PublishCourseCommand { CourseId = course.Id }; }
public void SetUp() { _service = new Mock <IPublishCourseService>(); _unitOfWork = new Mock <IUnitOfWork>(); _mediator = new Mock <IMediator>(); _command = new PublishCourseCommand { CourseId = "courseId" }; _sut = new PublishCourseCommandHandler(_service.Object, _unitOfWork.Object, _mediator.Object); _courseToPublish = new Course("name", "creatorId", DateTime.Now); _service.Setup(x => x.GetCourseWithDetailsFromRepo(_command.CourseId, default)) .ReturnsAsync(_courseToPublish); }
public void GivenADraftCourseThatOneOfItsMediasHasNoUrl() { var course = CreateDraftCourse(); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var video = new VideoLecture("video", module.Id, 1); _factory.CreateLecture(video); _command = new PublishCourseCommand { CourseId = course.Id }; }
public void GivenADraftCourseThatOneOfItsArticlesHasNoContent() { var course = CreateDraftCourse(); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var article = new ArticleLecture("article", module.Id, 1, content: null); _factory.CreateLecture(article); _command = new PublishCourseCommand { CourseId = course.Id }; }
public async Task WhenIPublishACourseBelongingToAnOtherOrganization() { var otherOrganization = new Organization("other organization", SubscriptionPlans.Free); _factory.CreateOrganization(otherOrganization); var otherInstructor = new User("*****@*****.**", otherOrganization.Id); _factory.CreateUser(otherInstructor); var course = new Course("course", otherInstructor.Id, DateTime.Now); _factory.CreateCourse(course); _command = new PublishCourseCommand { CourseId = course.Id }; _response = await _client.PutAsync(BaseUrl, Utilities.GetRequestContent(_command)); }
public void GivenADraftCourseWithAValidContent() { var course = CreateDraftCourse(); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var article = new ArticleLecture("article", module.Id, 1, content: "some content"); _factory.CreateLecture(article); var video = new VideoLecture("video", module.Id, 1); video.SetUrl("mediaUrl"); _factory.CreateLecture(video); _command = new PublishCourseCommand { CourseId = course.Id }; }
public async Task <ActionResult> PublishCourse(PublishCourseCommand command, CancellationToken token) { await Mediator.Send(command, token); return(NoContent()); }