def test_get_user_ratings(self, mock_urlopen): # run get_user_ratings() with urlopen() mocked with open(self._test_file, mode='rb') as mock_user_rss: mock_urlopen.return_value = mock_user_rss user_ratings = IMDBUserRatings().get_user_ratings("ur1234567") exp_items = [{ 'title': "Ex Machina", 'year_released': 2015, 'media_type': "movie", 'imdb_id': "tt0470752", 'rating': 7, 'date_rated': "2016-02-07" }, { 'title': "The Walking Dead", 'year_released': 2010, 'media_type': "tv-series", 'imdb_id': "tt1520211", 'rating': 8, 'date_rated': "2016-01-16" }, { 'title': "Hardhome", 'year_released': 2015, 'media_type': "tv-episode", 'imdb_id': "tt3866850", 'rating': 10, 'date_rated': "2015-05-31" }, { 'title': "Making a Murderer", 'year_released': 2015, 'media_type': "mini-series", 'imdb_id': "tt5189670", 'rating': 8, 'date_rated': "2016-01-16" }] self.assertEqual(len(user_ratings), 4) for idx, exp_item in enumerate(exp_items): self.assertEqual(exp_item, user_ratings[idx])
def test_empty_user_id(self): with self.assertRaises(InvalidIMDBUserID): user_ratings = IMDBUserRatings().get_user_ratings("")