from unittest.mock import patch from tests.test_utils import FixtureLoader from models import models from tests import BaseTestCase, mock_for_user from tests.label_permissions.fixtures.label_permissions_artists_fixture import fixture user1 = mock_for_user(1, "dev-marketing-user-1@example.com", "sme-dna|5cf0091d6c91d310fe6fcdc6", is_admin=True) @patch("auth.atlas.atlas_token_decoder.jwt.decode", user1.jwt_decode) class TestLabelArtists(BaseTestCase): url = "/labels/{}/permissions/artists" def setUp(self): super().setUp() FixtureLoader(models=models).import_as_sql(fixture) def test_get_permissions_artists(self): response = self.execute_get(self.url.format(1), headers=self.headers) self.assertEqual(200, response.status_code) artists = response.json self.soft_assert_equal(len(artists), 3) self.soft_assert_equal(artists[0]['artist']['id'], 'GRAS_20') self.soft_assert_equal(artists[0]['teamMembers'], []) self.soft_assert_equal(artists[1]['artist']['id'], 'GRAS_30') self.soft_assert_equal([user.get("id") for user in artists[1]['teamMembers']], [1]) self.soft_assert_equal(artists[2]['artist']['id'], 'GRAS_10') self.soft_assert_equal(artists[2]['teamMembers'], []) self.assert_all()