def get_reviews_for_movie(movie_rank, repo: AbstractRepository): movie = repo.get_movie(movie_rank) if movie is None: raise NonExistentMovieException reviews = repo.get_reviews() review_list = [] for review in reviews: if review.movie == movie: review_list.append(review) return reviews_to_dict(review_list)
def add_review(movie_rank: int, review_text: str, rating: int, username: str, repo: AbstractRepository): # Check that the movie exists. movie = repo.get_movie(movie_rank) if movie is None: raise NonExistentMovieException user = repo.get_user(username) if user is None: raise UnknownUserException # Create review. review = Review(movie, review_text, rating) # Update the repository. repo.add_review(review)
def get_movie(movie_rank: int, repo: AbstractRepository): movie = repo.get_movie(movie_rank) if movie is None: raise NonExistentMovieException return movie_to_dict(movie)