public MoviesCommandModule(MovieHandlers movieHandlers) { For <TitleMovie>().Handle(async(message, _) => await movieHandlers.Handle(message.Command, message.CommandId)); For <DescribeMovie>().Handle(async(message, _) => await movieHandlers.Handle(message.Command, message.CommandId)); For <RateMovieByCrictics>().Handle(async(message, _) => await movieHandlers.Handle(message.Command, message.CommandId)); For <RateMovieByAudience>().Handle(async(message, _) => await movieHandlers.Handle(message.Command, message.CommandId)); For <AddDirectorToMovie>().Handle(async(message, _) => await movieHandlers.Handle(message.Command, message.CommandId)); }
public void Create_movie_without_title_command_should_fail() { var repository = new DummyRepository <Movie>(); var handler = new MovieHandlers(repository); handler.Awaiting(h => h.Handle(new TitleMovie { MovieId = Guid.NewGuid() }, Guid.NewGuid())) .ShouldThrow <ArgumentException>(); }
public async Task Create_movie_on_TitleMovie_command() { var repository = new DummyRepository <Movie>(); var handler = new MovieHandlers(repository); await handler.Handle(new TitleMovie { MovieId = Guid.NewGuid(), Title = "Some movie" }, Guid.NewGuid()); repository.Items.Count.Should().Be(1); }
public async Task Rating_movie_below_zero_should_fail() { var movieId = Guid.NewGuid(); var repository = new DummyRepository <Movie>(); await repository.Save(new Movie(movieId, "Some movie"), Guid.Empty); var handler = new MovieHandlers(repository); handler.Awaiting(h => h.Handle(new RateMovieByAudience { MovieId = movieId, Rating = -1 }, Guid.NewGuid())).ShouldThrow <ArgumentException>(); }
public async Task Rating_movie_50_should_pass() { var movieId = Guid.NewGuid(); var repository = new DummyRepository <Movie>(); await repository.Save(new Movie(movieId, "Some movie"), Guid.Empty); var handler = new MovieHandlers(repository); handler.Awaiting(h => h.Handle(new RateMovieByAudience { MovieId = movieId, Rating = 50 }, Guid.NewGuid())).ShouldNotThrow(); }
public async Task Can_add_director_to_movie() { var movieId = Guid.NewGuid(); var repository = new DummyRepository <Movie>(); await repository.Save(new Movie(movieId, "Some movie"), Guid.Empty); var handler = new MovieHandlers(repository); handler.Awaiting(h => h.Handle(new AddDirectorToMovie { MovieId = movieId, Director = "Jack" }, Guid.NewGuid())).ShouldNotThrow(); }
public async Task Critcis_rating_movie_above_100_should_fail() { var movieId = Guid.NewGuid(); var repository = new DummyRepository <Movie>(); await repository.Save(new Movie(movieId, "Some movie"), Guid.Empty); var handler = new MovieHandlers(repository); handler.Awaiting(h => h.Handle(new RateMovieByCrictics { MovieId = movieId, Rating = 101 }, Guid.NewGuid())).ShouldThrow <ArgumentException>(); }
public async Task Describing_an_exiting_movie_with_an_future_year_should_fail() { var movieId = Guid.NewGuid(); var repository = new DummyRepository <Movie>(); await repository.Save(new Movie(movieId, "Some movie"), Guid.Empty); var handler = new MovieHandlers(repository); handler.Awaiting(h => h.Handle(new DescribeMovie { MovieId = movieId, Synopsis = "Synopsis", CriticsConsensus = "CriticsConsensus", Year = DateTime.Now.Year + 1 }, Guid.NewGuid())) .ShouldThrow <ArgumentException>(); }
public async Task Describing_an_exiting_movie_should_pass() { var movieId = Guid.NewGuid(); var repository = new DummyRepository <Movie>(); await repository.Save(new Movie(movieId, "Some movie"), Guid.Empty); var handler = new MovieHandlers(repository); await handler.Handle(new DescribeMovie { MovieId = movieId, Synopsis = "Synopsis", CriticsConsensus = "CriticsConsensus", Year = 2014 }, Guid.NewGuid()); repository.Items.Count.Should().Be(1); }
public static void UpdateMovie(ObjectId movieToUpdateId, Movie updatedMovie) { MovieHandlers mh = new MovieHandlers(); mh.UpdateMovie(movieToUpdateId, updatedMovie); }
public static void SaveMovieToDB(Movie movie) { MovieHandlers mh = new MovieHandlers(); mh.SaveMovieToDB(movie); }
public static List<Movie> GetMovies() { MovieHandlers mh = new MovieHandlers(); return mh.GetMoviesFromDB(); }
public static Movie GetMovieById(ObjectId movieId) { MovieHandlers mh = new MovieHandlers(); return mh.GetMovieByIdFromDB(movieId); }
public static void DeleteMovie(ObjectId movieId) { MovieHandlers mh = new MovieHandlers(); mh.DeleteMovieById(movieId); }