"""Functional tests for GET full-artists handler.""" import json from tests.factories.artist import ArtistFactory from tests.testutils import db @db.test_schema def test_get_full_artist_by_id_json(client): """Test the response body for fetch_full_artists endpoint.""" artist_id = 1 artist = { 'artist_id': 1, 'name': 'One', 'vendor_id': 1234 } releases = [ { 'release_id': 1, 'artist_id': 1, 'genre_id': 1, 'last_updated': '2000-01-01' }, { 'release_id': 2, 'artist_id': 2, 'genre_id': 2, 'last_updated': '2000-01-01' }, { 'release_id': 3, 'artist_id': 2, 'genre_id': 3, 'last_updated': '2000-01-01' } ] for release in releases: db.seed_release(release) genres = [ {'genre_id': 1, 'genre': 'Rock'}, {'genre_id': 2, 'genre': 'Blues'}, {'genre_id': 3, 'genre': 'Jazz'} ] seed_artist = ArtistFactory.build(**artist) db.seed_models(seed_artist) for genre in genres: db.seed_genre(genre) account_type = 'vendor' account_id = '1234' res = client.get( '/{0}/{1}/artist/{2}'.format(account_type, account_id, artist_id)) res_json = json.loads(res.data.decode('utf-8')) print(res_json) assert res_json.get('name') == 'One' assert res_json.get('genres') == ['Rock'] assert res_json.get('id') == 1