"""Integration API tests for ows-track.""" import pytest @pytest.mark.parametrize('endpoint', ['light', 'regular']) def test_get_all_tracks_by_product_id(api_client, product_id, endpoint): """Test get all tracks by product ID endpoint.""" if endpoint == 'regular': get_response = api_client.get_all_tracks_by_product_id(product_id) else: get_response = api_client.get_all_tracks_by_product_id_light(product_id) assert get_response.status_code == 200, \ 'Result of GET was {}, expected 200.'.format(get_response.status_code) assert len(get_response.json()['items']) == 2, \ 'Expected two items, got {}'.format(len(get_response.json()['items'])) assert get_response.json()['pagination']['total_records'] == 2, \ 'Expected two items, got {}'.format(get_response.json()['pagination']['total_records']) assert get_response.json()['items'][0]['tuid'], 'Expected tuid to be present.' if endpoint == 'regular': assert get_response.json()['items'][0]['explicit'] == 'N', \ 'Expected explicit to be "N", was {}'.format( get_response.json()['items'][0]['explicit']) assert get_response.json()['items'][0]['artists'][0]['name'] == 'test' def test_validate_tracks(api_client, product_id): """Test validate tracks endpoint.""" get_response = api_client.validate_tracks(product_id) assert get_response.status_code == 200, \ 'Result of GET was {}, expected 200.'.format(get_response.status_code) assert get_response.json().get('errors'), \ 'Expected errors to be present, got {}'.format(get_response.json())