public async Task Create_LessonIsValid_ShouldCreateNewLesson() { // arrange var fixture = new Fixture(); var expectedLessonId = fixture.Create <int>(); var newLesson = fixture.Create <Lesson>(); var lessonsRepositoryMock = new Mock <ILessonsRepository>(); var service = new LessonsService(lessonsRepositoryMock.Object); lessonsRepositoryMock .Setup(x => x.Add(newLesson)) .ReturnsAsync(expectedLessonId); lessonsRepositoryMock .Setup(x => x.Get(newLesson.YouTubeBroadcastId)) .ReturnsAsync(() => null); // act var createdLessonId = await service.Create(newLesson); // assert createdLessonId.Should().Be(expectedLessonId); lessonsRepositoryMock.Verify(x => x.Add(newLesson), Times.Once); lessonsRepositoryMock.Verify(x => x.Get(newLesson.YouTubeBroadcastId), Times.Once); }
public async Task Create_LessonIsValid_ShouldCreateNewLesson() { //arrange var expectedLessonId = _fixture.Create <int>(); var newLesson = _fixture.Create <Lesson>(); _lessonsRepositoryMock .Setup(x => x.Add(newLesson)) .ReturnsAsync(expectedLessonId); _lessonsRepositoryMock .Setup(x => x.Get(newLesson.YouTubeBroadcastId)) .ReturnsAsync(() => null); //act var createdLessonId = await _service.Create(newLesson); //assets createdLessonId.Should().Be(expectedLessonId); _lessonsRepositoryMock.Verify(x => x.Add(newLesson), Times.Once); _lessonsRepositoryMock.Verify(x => x.Get(newLesson.YouTubeBroadcastId), Times.Once); }
public ActionResult Create([FromBody] Lesson lesson) { return(new JsonResult(lessonsService.Create(lesson))); }