public void UpdateLecturesOrders_WhenCalled_UpdateLecturesOrders() { // Arrange var lecture1 = new ArticleLecture("lecture1", "moduleId", 1, "content"); var lecture2 = new VideoLecture("lecture2", "moduleId", 2); var lecturesToUpdateOrders = new List <Lecture> { lecture1, lecture2 }; var lecturesNewOrders = new[] { new LectureOrderDto { LectureId = lecture1.Id, Order = 2 }, new LectureOrderDto { LectureId = lecture2.Id, Order = 1 } }; // Act _sut.UpdateLecturesOrders(lecturesToUpdateOrders, lecturesNewOrders); // Assert Assert.That(lecture1.Order, Is.EqualTo(2)); Assert.That(lecture2.Order, Is.EqualTo(1)); }
public void UpdateLectureRepo_WhenCalled_UpdateLectureRepo() { var lecture = new ArticleLecture("lecture", "moduleId", 1, "content"); _sut.UpdateLectureRepo(lecture); _repo.Verify(x => x.UpdateLecture(lecture)); }
public void RemoveLectureFromRepo_WhenCalled_RemoveLectureFromRepo() { var lecture = new ArticleLecture("lecture", "moduleId", 1, "content"); _sut.RemoveLectureFromRepo(lecture); _repo.Verify(x => x.RemoveLecture(lecture)); }
public void AddLectureToRepo_WhenCalled_AddTheLectureToRepo() { var lecture = new ArticleLecture("lecture", "moduleId", 1, "content"); _sut.AddLectureToRepo(lecture, default); _repo.Verify(x => x.AddLecture(lecture, default)); }
public void GetLectureFromRepo_LectureDoesExist_ReturnCorrectLecture() { var lecture = new ArticleLecture("title", "moduleId", 1, "content"); _repo.Setup(x => x.GetLectureWithCourse("lectureId", "organizationId", default)) .ReturnsAsync(lecture); var result = _sut.GetLectureFromRepo("lectureId", default).Result; Assert.That(result, Is.EqualTo(lecture)); }
public void CheckCourseStatusForModification_CourseIsEditable_NotThrowException() { // Arrange var course = new Mock <Course>("title", "creatorId", DateTime.Now); course.Setup(x => x.IsEditable).Returns(true); var module = new Module("module", course.Object, 1); var lecture = new ArticleLecture("lecture", module, 1, "content"); // Act & Assert Assert.That(() => _sut.CheckCourseStatusForModification(lecture), Throws.Nothing); }
public void SetUp() { _service = new Mock <ICreateLectureService>(); _unitOfWork = new Mock <IUnitOfWork>(); _command = new CreateLectureCommand(); _createdLecture = new ArticleLecture(_command.Title, _command.ModuleId, _command.Order, _command.Content); _service.Setup(x => x.CreateLecture(_command)) .Returns(_createdLecture); _sut = new CreateLectureCommandHandler(_service.Object, _unitOfWork.Object); }
public void GivenACourseThatHasNoErrors() { var course = new Course("course", _instructorId, DateTime.Now); _courseId = course.Id; _factory.CreateCourse(course); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var lecture = new ArticleLecture("lecture title", module.Id, 1, "article content"); _factory.CreateLecture(lecture); }
public void GivenALectureBelongingToADraftCourse() { var course = new Course("course", _instructorId, DateTime.Now); _factory.CreateCourse(course); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var lecture = new ArticleLecture("lecture title", module.Id, 1, "article content"); _factory.CreateLecture(lecture); _lectureToDeleteId = lecture.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 WhenIDeleteALectureWhileTheCourseIsPublished() { var course = new Course("course", _instructorId, DateTime.Now); course.ChangeCourseStatus(PublishedStatus.Instance); _factory.CreateCourse(course); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var lecture = new ArticleLecture("lecture title", module.Id, 1, "article content"); _factory.CreateLecture(lecture); _response = await _client.DeleteAsync($@"{BaseUrl}/{lecture.Id}"); }
public void GivenALectureBelongingToADraftCourseWith(Table table) { var course = new Course("course", _instructorId, DateTime.Now); _factory.CreateCourse(course); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var lecture = new ArticleLecture("old title", module.Id, 1, "old content"); lecture.UpdateDuration(60); _factory.CreateLecture(lecture); _command = new UpdateLectureCommand { LectureId = lecture.Id }; }
public async Task WhenIUpdateALectureWhileTheCourseIsPublished() { var course = new Course("course", _instructorId, DateTime.Now); course.ChangeCourseStatus(PublishedStatus.Instance); _factory.CreateCourse(course); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var lecture = new ArticleLecture("lecture title", module.Id, 1, "article content"); _factory.CreateLecture(lecture); _command = new UpdateLectureCommand { LectureId = lecture.Id, Title = "lecture title" }; _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 void GivenADraftCourseAndAModuleHavingTheFollowingLecturesOrders(Table table) { var course = new Course("course", _instructorId, DateTime.Now); _factory.CreateCourse(course); var module = new Module("module", course.Id, 1); _factory.CreateModule(module); var lecture1 = new ArticleLecture("lecture 1", module.Id, 1, "lecture 1 content"); _factory.CreateLecture(lecture1); var lecture2 = new VideoLecture("lecture 2", module.Id, 2); _factory.CreateLecture(lecture2); _command = new UpdateLecturesOrdersCommand { ModuleId = module.Id }; _lecturesIds = new[] { lecture1.Id, lecture2.Id }; }
public void GivenAnExistingTrainingCourse() { _courseToGetInfoAbout = new Course("course", _instructorId, DateTime.Now); _factory.CreateCourse(_courseToGetInfoAbout); _courseToGetInfoAbout.AddLearnedSkill("skill1"); _courseToGetInfoAbout.AddLearnedSkill("skill2"); _courseId = _courseToGetInfoAbout.Id; var module = new Module("module", _courseToGetInfoAbout.Id, 1); _factory.CreateModule(module); var article = new ArticleLecture("article", module.Id, 1, "article content"); article.UpdateDuration(60); _factory.CreateLecture(article); var video = new VideoLecture("video", module.Id, 2); video.SetUrl("videoUrl"); video.UpdateDuration(100); _factory.CreateLecture(video); }
public void UpdateArticleContent(ArticleLecture article, string content) { article.UpdateContent(content); }