def test_get_movies_list(monkeypatch): mock_movies_list = ['Movie 1', 'Movie 2'] requests_mock = Mock() requests_mock.return_value.json.return_value = ['Movie 1', 'Movie 2'] monkeypatch.setattr("tmdb_client.requests.get", requests_mock) movies_list = tmdb_client.get_movies_list(list_type="popular") assert movies_list == mock_movies_list
def homepage(): selected_list = request.args.get('list_type', "popular") if selected_list not in movies_list_types: selected_list = "popular" movies = tmdb_client.get_movies_list(list_type=selected_list)["results"][:8] return render_template("homepage.html", movies=movies, current_list=selected_list, movies_list_types=movies_list_types)
def test_homepage(monkeypatch, test_input, expected): mock_result = [ 'Movie_1', 'Movie2', 'Movie3', 'Movie4', 'Movie5', 'Movie6', 'Movie7', 'Movie8', 'Movie9' ] #{'results': [],'cast': []} api_mock = Mock() response = api_mock.return_value response.json.return_value = mock_result monkeypatch.setattr(requests, "get", api_mock) with app.test_client() as client: r = client.get('/', query_string={'list_type': f'{test_input}'}) assert r.status_code == 200 api_mock.assert_called_once_with(test_input) # Lista, którą będzie zwracać przysłonięte "zapytanie do API" mock_movies_list = ['Movie 1', 'Movie 2'] requests_mock = Mock() # Wynik wywołania zapytania do API response = requests_mock.return_value # Przysłaniamy wynik wywołania metody .json() response.json.return_value = mock_movies_list monkeypatch.setattr('tmdb_client.requests.get', requests_mock) movies_list = tmdb_client.get_movies_list(list_type="popular") assert movies_list == mock_movies_list
def test_homepage_list_2(monkeypatch, test_input): mock_movies_list = [{'title': 'Movie1'}, {'title': 'Movie2'}] requests_mock = Mock() response = requests_mock.return_value response.json.return_value = mock_movies_list monkeypatch.setattr("tmdb_client.requests.get", requests_mock) movies_list = tc.get_movies_list(list_type=test_input) assert movies_list == mock_movies_list
def test_get_movies_list(monkeypatch): # Lista, którą będzie zwracać przysłonięte "zapytanie do API" mock_movies_list = ['Movie 1', 'Movie 2'] requests_mock = Mock() # Wynik wywołania zapytania do API response = requests_mock.return_value # Przysłaniamy wynik wywołania metody .json() response.json.return_value = mock_movies_list monkeypatch.setattr("tmdb_client.requests.get", requests_mock) movies_list = tmdb_client.get_movies_list(list_type="popular") assert movies_list == mock_movies_list
def test_get_movies_list(monkeypatch): list_type = ["popular", "upcoming", "top rated", "now playing"] for i in list_type: mock_movies_list = ['Movie 1', 'Movie 2'] requests_mock = Mock() response = requests_mock.return_value response.json.return_value = mock_movies_list monkeypatch.setattr("tmdb_client.requests.get", requests_mock) movies_list = tmdb_client.get_movies_list(list_type=i) assert movies_list == mock_movies_list
def homepage(): passed_list = request.args.get('list_type', '') if passed_list in LIST_TYPES: selected_list = passed_list else: selected_list = 'popular' movies = tmdb_client.get_movies_list(selected_list, 8) return render_template('homepage.html', movies=movies, list_types=LIST_TYPES, selected=selected_list)
def test_get_movies_list_type_popular(): movies_list = tmdb_client.get_movies_list(list_type="popular") assert movies_list is not None
def test_get_movies_list(monkeypatch): mock_movies_list = ['Movie 1', 'Movie 2'] call_tmdb_api(monkeypatch, mock_movies_list) movies_list = tmdb_client.get_movies_list(list_type="popular") assert movies_list == mock_movies_list
def test_get_movies_list(): movies_list = tmdb_client.get_movies_list("popular") assert movies_list is not None