public async Task <IActionResult> FindMovie( [FromRoute] Guid movieId, [FromServices] MovieReadModelFacade readModelFacade) { MovieDto movie = await readModelFacade.FindMovie(movieId); return(movie == null?NotFound() : (IActionResult)Ok(movie)); }
public async Task given_movie_not_found_then_FindMovie_returns_NotFoundResult( Guid movieId, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { var facade = new MovieReadModelFacade(readerStub); IActionResult actual = await sut.FindMovie(movieId, facade); actual.Should().BeOfType <NotFoundResult>(); }
public async Task given_movie_found_then_FindMovie_returns_OkObjectResult( Movie movie, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { readerStub.Data[movie.Id] = movie; var facade = new MovieReadModelFacade(readerStub); IActionResult actual = await sut.FindMovie(movie.Id, facade); actual.Should().BeOfType <OkObjectResult>(); }
public async Task GetAllMovies_returns_transfer_objects_as_content( Movie[] movies, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { movies.ForEach(t => readerStub.Data[t.Id] = t); var facade = new MovieReadModelFacade(readerStub); var actual = (OkObjectResult)await sut.GetAllMovies(facade); actual.Value.Should().BeEquivalentTo(await facade.GetAllMovies()); }
public async Task GetAllMovies_returns_OkObjectResult( Movie[] movies, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { movies.ForEach(t => readerStub.Data[t.Id] = t); var facade = new MovieReadModelFacade(readerStub); IActionResult actual = await sut.GetAllMovies(facade); actual.Should().BeOfType <OkObjectResult>(); }
public async Task given_screening_not_found_then_FindScreening_returns_NotFoundResult( Movie movie, Guid screeningId, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { readerStub.Data[movie.Id] = movie; var facade = new MovieReadModelFacade(readerStub); IActionResult actual = await sut.FindScreening(movie.Id, screeningId, facade); actual.Should().BeOfType <NotFoundResult>(); }
public async Task <IActionResult> FindScreening( [FromRoute] Guid movieId, [FromRoute] Guid screeningId, [FromServices] MovieReadModelFacade readModelFacade) { MovieDto movie = await readModelFacade.FindMovie(movieId); ScreeningDto screening = movie? .Screenings .SingleOrDefault(s => s.Id == screeningId); return(screening == null ? NotFound() : (IActionResult)Ok(screening)); }
public async Task given_movie_found_then_FindMovie_returns_transfer_object_as_content( Movie movie, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { readerStub.Data[movie.Id] = movie; var facade = new MovieReadModelFacade(readerStub); IActionResult result = await sut.FindMovie(movie.Id, facade); object actual = result.As <OkObjectResult>().Value; actual.Should().BeOfType <MovieDto>(); actual.Should().BeEquivalentTo(new { movie.Id, movie.Title, movie.CreatedAt, }); }
public async Task given_screening_found_then_FindScreening_returns_transfer_object_as_content( Movie movie, InMemoryMovieRepository readerStub, [NoAutoProperties] QueriesController sut) { // Arrange readerStub.Data[movie.Id] = movie; var facade = new MovieReadModelFacade(readerStub); Screening screening = movie.Screenings.Shuffle().First(); // Act dynamic result = await sut.FindScreening(movie.Id, screening.Id, facade); // Assert object actual = result.Value; actual.Should().BeOfType <ScreeningDto>(); actual.Should().BeEquivalentTo( expectation: screening, config: c => c.ExcludingMissingMembers()); }
public async Task <IActionResult> GetAllMovies( [FromServices] MovieReadModelFacade readModelFacade) { return(Ok(await readModelFacade.GetAllMovies())); }