def test_make_review_multiple(movie, user): review_text = 'Best movie ever!' review = make_review(review_text, user, movie, 10) review_text = 'Actually nevermind!!' review = make_review(review_text, user, movie,0) assert len(movie.reviews) == 2
def test_repository_can_retrieve_reviews(in_memory_repo): x = memory_repository.MemoryRepository() user = User('dave', '123456789') x.add_user(user) movie = Movie( "Prometheus", 2010, ) another_movie = Movie("It Follows",2014) review = make_review("Not good", user, movie, 4, datetime.today()) in_memory_repo.add_review(review) another_review = make_review("awesome", user, another_movie, 10, datetime.today()) in_memory_repo.add_review(another_review) assert len(in_memory_repo.get_reviews()) == 2
def test_repository_does_not_add_a_review_without_a_user(): movie = Movie( "Prometheus", 2010, ) with pytest.raises(ReviewException): review = make_review("Not good", None, movie, 4, datetime.today())
def test_repository_can_get_review_of_movie(): a_movie = Movie("Guardians of the Galaxy", 2014) review_text = "not good" rating = 2 user = User("daneln", "Dane1337") review = Review(a_movie, "not good", 2) a_review = make_review(review_text, user, a_movie, rating) x.add_review(a_review) a_reviewer = x.get_review_for_movie(a_movie) assert a_reviewer[0] == review
def test_repository_can_add_a_review(): x = memory_repository.MemoryRepository() user = User('dave', '123456789') x.add_user(user) movie = Movie( "Prometheus", 2010, ) review = make_review("Not good", user, movie, 4, datetime.today()) x.add_review(review) assert review in x.get_reviews()
def test_make_review_establishes_relationships(movie, user): review_text = 'Best movie ever!' review = make_review(review_text, user, movie,10,datetime.today()) # Check that the User object knows about the review. assert review in user.reviews # Check that the review knows about the User. assert review.user is user # Check that movie knows about the review. assert review in movie.reviews # Check that the review knows about the movie. assert review.movie is movie assert review in user.reviews