# flake8: noqa
"""Conftest."""
import pytest
import index
@pytest.fixture(autouse=True)
def _mock_m2m_get_token(monkeypatch):
"""Prevent real Secrets Manager calls by returning a fake token."""
monkeypatch.setattr(
index.M2MTokenManager, 'get_token_string', lambda self: 'fake-token'
)
return None
@pytest.fixture
def product_by_upc_video():
"""Mock productByUpc response."""
return {
'data': {
'productByUpc': {
'productId': 3568346,
'label': {
'id': {
'subaccountId': 0,
'vendorId': 25824,
}
},
'project': {
'projectId': 4161969,
'projectName': 'Map Of The Soul: PERSONA',
'labelParticipant': {
'name': 'BTS',
'spotifyId': '3Nrfpe0tUJi4K4DXYWgMUX',
'appleMusicId': '883131348',
},
'description': None,
'projectCode': 'BHK105700',
'marketingHighlights': [
{
'marketingHighlight': 'UNITED STATES MARKETING HIGHLIGHTS',
'slogan': None,
'territory': {
'territoryCodeA2': 'US',
},
'syncHighlight': None,
'store': None,
},
{
'marketingHighlight': 'Test',
'slogan': None,
'territory': {
'territoryCodeA2': 'CA',
},
'syncHighlight': None,
'store': None,
},
{
'marketingHighlight': 'Global sync highlights \nTest how this is entered \n- ----\n-----\n-----',
'slogan': None,
'territory': None,
'syncHighlight': '',
'store': None,
},
{
'marketingHighlight': 'APPLE MUSIC HIGHLIGHTS',
'slogan': None,
'territory': None,
'syncHighlight': None,
'store': {'storeName': 'apple', 'storeId': 2},
},
{
'marketingHighlight': 'SPOTIFY MARKETING HIGHLIGHTS\n',
'slogan': None,
'territory': None,
'syncHighlight': None,
'store': {'storeName': 'spotify', 'storeId': 1},
},
],
},
'upc': '193483706238',
'deliveryLinks': [
{
'store_id': '286',
'link': 'https://open.spotify.com/album/1AvXa8xFEXtR3hb4bgihIK', # noqa
'store_name': 'Spotify',
'go_live_date': '2019-04-13T02:04:50Z',
},
{
'store_id': '999',
'link': 'https://www.deezer.com/album/92735082',
'store_name': 'Deezer',
'go_live_date': '2019-04-12T16:28:31Z',
},
{
'store_id': '1',
'link': 'https://itunes.apple.com/album/id/1458938366',
'store_name': 'iTunes/Apple',
'go_live_date': None,
},
],
'tracks': [
{
'isrc': 'QM6MZ1917907',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
{
'isrc': 'QM6MZ1917908',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
{
'isrc': 'QM6MZ1917909',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
{
'isrc': 'QM6MZ1917910',
'lyrics': '내가 날 눈치챘던 순간\n떠나야만 했어\n난 찾아내야 했어\nAll day all night\n\n사막과 바다들을 건너\n넓고 넓은 세계를\n헤매어 다녔어\nBaby I\n\nI could make it better\nI could hold you tighter\n그 먼 길 위에서\nOh you’re the light\n\n초대받지 못한\n환영받지 못한\n나를 알아줬던 단 한 사람\n\n끝도 보이지 않던 영원의 밤\n내게 아침을 선물한 건 너야\n이제 그 손 내가 잡아도 될까\nOh oh\nI can make it right\n\nAll right\nAll right\nOh I can make it right\n\nAll right\nAll right\nOh I can make it right\n\n이 세상 속에 영웅이 된 나\n나를 찾는 큰 환호와\n내 손, 트로피와 금빛 마이크\nAll day, everywhere\nBut 모든 게 너에게 닿기 위함인 걸\n내 여정의 답인 걸\n널 찾기 위해 노래해\nBaby to you\n\n전보다 조금 더 커진 키에\n좀 더 단단해진 목소리에\n모든 건 네게 돌아가기 위해\n이제 너라는 지도를 활짝 펼칠게\nMy rehab\n날 봐 왜 못 알아봐\n남들의 아우성 따위 나 듣고 싶지 않아\n너의 향기는 여전히 나를 꿰뚫어 무너뜨려\n되돌아가자 그때로\n\nBaby I know\nI can make it better\nI can hold you tighter\n그 모든 길은 널\n향한 거야\n\n다 소용없었어\n너 아닌 다른 건\n그때처럼 날 어루만져줘\n\n끝도 보이지 않던 영원의 밤\n내게 아침을 선물한 건 너야\n이제 그 손 내가 잡아도 될까\nOh oh\nI can make it right\n\nAll right\nAll right\nOh I can make it right\n\nAll right\nAll right\nOh I can make it right\n\n여전히 아름다운 너\n그날의 그때처럼 말없이 그냥 날 안아줘\n지옥에서 내가 살아 남은 건\n날 위했던 게 아닌 되려 너를 위한 거란 걸\n안다면 주저 말고 please save my life\n너 없이 헤쳐왔던 사막 위는 목말라\n그러니 어서 빨리 날 잡아줘\n너 없는 바다는 결국 사막과 같을 거란 걸 알아\n\nAll right\nI can make it better\nI can hold you tighter\nOh I can make it right\n\n다 소용없었어\n너 아닌 다른 건\nOh I can make it right\n', # noqa
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
{
'isrc': 'QM6MZ1917911',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
{
'isrc': 'QM6MZ1917912',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
{
'isrc': 'QM6MZ1917913',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 97,
'originalRightsHolderCountryId': 97,
'publishing': None,
},
],
'deliveryHistory': [
{'dateDelivered': '2019-12-23', 'store': {'storeId': 286}},
{'dateDelivered': '2020-01-11', 'store': {'storeId': 999}},
{'dateDelivered': '2019-09-13', 'store': {'storeId': 1}},
{'dateDelivered': '2018-01-01', 'store': {'storeId': 1}},
],
'videoProduct': {
'associatedTrack': {
'publishing': {'publisherNames': ['Big Bang Records']},
'tuid': '31985620',
'isrc': 'INB720000009',
'participations': [
{
'participatedAs': 'performer',
'participant': {
'name': 'MC Caverinha',
'spotifyId': '7tojcuXcZ7eBlQjbAc65Ee',
'appleMusicId': '1439666672',
},
},
{
'participatedAs': 'producer',
'participant': {
'name': 'CITA',
'spotifyId': None,
'appleMusicId': None,
},
},
{
'participatedAs': 'producer',
'participant': {
'name': 'Kalfani',
'spotifyId': None,
'appleMusicId': None,
},
},
{
'participatedAs': 'track_writer',
'participant': {
'name': 'Cita OQ',
'spotifyId': None,
'appleMusicId': None,
},
},
{
'participatedAs': 'track_writer',
'participant': {
'name': 'Marcela',
'spotifyId': None,
'appleMusicId': None,
},
},
{
'participatedAs': 'track_writer',
'participant': {
'name': 'Andrade',
'spotifyId': None,
'appleMusicId': None,
},
},
{
'participatedAs': 'track_writer',
'participant': {
'name': 'Belato',
'spotifyId': None,
'appleMusicId': None,
},
},
{
'participatedAs': 'track_writer',
'participant': {
'name': 'Kalfani',
'spotifyId': None,
'appleMusicId': None,
},
},
],
},
},
}
}
}
@pytest.fixture
def marketing_info():
"""Mock getProductMarketingProgramInfoByProgram response."""
return {
'data': {
'getProductMarketingProgramInfoByProgram': {
'marketingProgramInfos': [
{
'description': '
This is rem testing marketing blurb
' # noqa
},
{'description': 'Darren QA marketing blurb
'},
],
}
}
}
@pytest.fixture
def mock_xml_output():
"""Mock XML output for whole product."""
return '\n\n \n 4161969\n Map Of The Soul: PERSONA\n \n BTS\n spotify:artist:3Nrfpe0tUJi4K4DXYWgMUX\n 883131348\n \n \n \n \n Worldwide\n Global sync highlights \nTest how this is entered \n- ----\n-----\n-----\n \n \n \n apple\n \n APPLE MUSIC HIGHLIGHTS\n \n \n \n spotify\n \n SPOTIFY MARKETING HIGHLIGHTS\n\n \n \n US\n CA\n Test\n \n \n \n \n \n BHK105700\n 193483706238\n \n \n \n Spotify\n https://open.spotify.com/album/1AvXa8xFEXtR3hb4bgihIK\n 2019-12-23 00:00:00\n \n \n Deezer\n https://www.deezer.com/album/92735082\n 2020-01-11 00:00:00\n \n \n iTunes/Apple\n https://itunes.apple.com/album/id/1458938366\n 2019-09-13 00:00:00\n \n \n <p>This is rem testing marketing blurb</p>\n \n \n \n \n \n \n \n \n \n \n\n'
@pytest.fixture
def product_by_upc_audio():
"""Mock productByUpc response for audio product."""
return {
'data': {
'productByUpc': {
'productId': 3540438,
'label': {
'id': {
'subaccountId': None,
'vendorId': 12345,
}
},
'project': {
'projectId': 4771970,
'projectName': 'Re Mida',
'labelParticipant': {
'name': 'RIVA JD',
'spotifyId': '0rbpOE06ZUvf1GdNzQYiSQ',
'appleMusicId': '1548602669',
},
'description': None,
'projectCode': 'RMU212',
'marketingHighlights': [
{
'marketingHighlight': '',
'slogan': None,
'territory': None,
'syncHighlight': '',
'store': None,
}
],
},
'upc': '196292730043',
'deliveryLinks': [
{
'store_id': '286',
'link': 'https://open.spotify.com/album/1AvXa8xFEXtR3hb4bgihIK', # noqa
'store_name': 'Spotify',
'go_live_date': '2019-04-13T02:04:50Z',
},
{
'store_id': '999',
'link': 'https://www.deezer.com/album/92735082',
'store_name': 'Deezer',
'go_live_date': '2019-04-12T16:28:31Z',
},
{
'store_id': '1',
'link': 'https://itunes.apple.com/album/id/1458938366',
'store_name': 'iTunes/Apple',
'go_live_date': None,
},
],
'tracks': [
{
'isrc': 'QMDA62178970',
'lyrics': None,
'ownershipRights': 'original_owner',
'recordingCountryId': 12,
'originalRightsHolderCountryId': 12,
'publishing': {
'publisherNames': ['Pub One', 'Pub Two'],
'usPublishingObligation': 'CONTROLLED_BY_YOUR_LABEL',
},
}
],
'deliveryHistory': [
{'dateDelivered': '2021-10-25', 'store': {'storeId': 187}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 4}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1484}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1433}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1261}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1260}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 888}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 337}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 708}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 648}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 575}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 535}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 399}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 348}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 286}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 173}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 12}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 11}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1506}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1470}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1455}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1453}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1278}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1398}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1397}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1228}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 854}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 836}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 711}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 707}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 666}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 581}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 576}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 493}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 459}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 3}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 894}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 832}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 513}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 358}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1101}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 670}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 206}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 534}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 309}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 217}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1520}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 625}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 1378}},
{'dateDelivered': '2021-10-25', 'store': {'storeId': 115}},
{'dateDelivered': '2021-10-27', 'store': {'storeId': 365}},
{'dateDelivered': '2021-10-28', 'store': {'storeId': 1308}},
{'dateDelivered': '2021-10-28', 'store': {'storeId': 1308}},
{'dateDelivered': '2021-10-28', 'store': {'storeId': 1294}},
{'dateDelivered': '2021-10-28', 'store': {'storeId': 723}},
{'dateDelivered': '2021-10-28', 'store': {'storeId': 1279}},
{'dateDelivered': '2021-10-28', 'store': {'storeId': 412}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1309}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1394}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1331}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 553}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 453}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 538}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1105}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1438}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 838}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1454}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1389}},
{'dateDelivered': '2021-10-29', 'store': {'storeId': 1173}},
{'dateDelivered': '2021-10-30', 'store': {'storeId': 428}},
{'dateDelivered': '2021-10-30', 'store': {'storeId': 569}},
{'dateDelivered': '2021-11-02', 'store': {'storeId': 1308}},
{'dateDelivered': '2021-11-02', 'store': {'storeId': 412}},
{'dateDelivered': '2021-11-03', 'store': {'storeId': 1279}},
{'dateDelivered': '2021-11-03', 'store': {'storeId': 1438}},
{'dateDelivered': '2021-11-03', 'store': {'storeId': 1331}},
{'dateDelivered': '2021-11-05', 'store': {'storeId': 1394}},
{'dateDelivered': '2021-11-05', 'store': {'storeId': 1454}},
{'dateDelivered': '2021-11-05', 'store': {'storeId': 1105}},
{'dateDelivered': '2021-11-06', 'store': {'storeId': 838}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 648}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 575}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 569}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 538}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 459}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 348}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 286}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 217}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 12}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 11}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 4}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 3}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 1}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 549}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 1398}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 1397}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 1378}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 1228}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 1101}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 894}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 854}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 836}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 832}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 711}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 708}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 707}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 670}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 625}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 581}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 576}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 534}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 513}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 493}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 365}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 358}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 173}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 115}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 187}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 399}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 309}},
{'dateDelivered': '2021-11-12', 'store': {'storeId': 570}},
{'dateDelivered': '2021-11-15', 'store': {'storeId': 666}},
{'dateDelivered': '2021-11-15', 'store': {'storeId': 535}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1433}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1308}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1309}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1520}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1173}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 412}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 337}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 428}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 206}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 553}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 888}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1438}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1260}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 723}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1453}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1454}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1506}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1484}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1470}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1261}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1455}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1389}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1105}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1294}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 838}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1279}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1394}},
{'dateDelivered': '2021-11-17', 'store': {'storeId': 1331}},
{'dateDelivered': '2021-11-18', 'store': {'storeId': 1278}},
{'dateDelivered': '2021-11-19', 'store': {'storeId': 552}},
{'dateDelivered': '2021-11-23', 'store': {'storeId': 552}},
{'dateDelivered': '2021-11-23', 'store': {'storeId': 1548}},
{'dateDelivered': '2021-12-07', 'store': {'storeId': 1525}},
{'dateDelivered': '2021-12-10', 'store': {'storeId': 1548}},
],
'videoProduct': None,
}
}
}
@pytest.fixture
def vendor_sony_metadata_response():
"""Mock vendor with Sony financial metadata response."""
return {
'data': {
'vendor': {
'vendorId': 25824,
'name': 'Test Vendor',
'sonyFinancialMetadata': {
'financialLabelCode': 'FLC001',
'financialLabelName': 'Financial Label One',
'grasImprintCode': 'GIC001',
'grasImprintName': 'Columbia',
'repertoireOwnerCode': 'ROC001',
'repertoireOwnerName': 'Repertoire Owner XYZ',
'sapProfitCenterCode': 'SAP001',
'sapProfitCenterName': 'SAP Profit Center One',
},
}
}
}
@pytest.fixture
def subaccount_sony_metadata_response():
"""Mock subaccount with Sony financial metadata response."""
return {
'data': {
'subaccount': {
'subaccountId': 5678,
'name': 'Test Subaccount',
'sonyFinancialMetadata': {
'financialLabelCode': 'FLC002',
'financialLabelName': 'Financial Label Two',
'grasImprintCode': 'GIC002',
'grasImprintName': 'Epic',
'repertoireOwnerCode': 'ROC002',
'repertoireOwnerName': 'Repertoire Owner ABC',
'sapProfitCenterCode': 'SAP002',
'sapProfitCenterName': 'SAP Profit Center Two',
},
}
}
}
@pytest.fixture
def vendor_no_sony_metadata_response():
"""Mock vendor without Sony financial metadata."""
return {
'data': {
'vendor': {
'vendorId': 12345,
'name': 'Vendor Without Metadata',
'sonyFinancialMetadata': None,
}
}
}
@pytest.fixture
def product_by_upc_with_subaccount():
"""Mock productByUpc response with valid subaccount."""
return {
'data': {
'productByUpc': {
'productId': 6084046,
'label': {
'id': {
'subaccountId': 5678,
'vendorId': 25824,
}
},
'project': {
'projectId': 4161969,
'projectName': 'Subaccount Product',
'labelParticipant': {
'name': 'Test Artist',
'spotifyId': '123abc',
'appleMusicId': '456def',
},
'description': None,
'projectCode': 'TEST001',
'marketingHighlights': [],
},
'upc': '123456789012',
'deliveryLinks': [],
'tracks': [],
'deliveryHistory': [],
'videoProduct': None,
}
}
}