"""Conftest.""" import os from bulk_metadata_ingester_common.models.release_model import ( ProductFieldsModel, TrackFieldsModel ) import pytest KEY = os.environ.get('KEY', 'parsed_csv/ALL_DDEX_TO_CSV_2023-02-10_2023-03-01.json') # noqa BUCKET = os.environ.get('BUCKET', 'prod-orcd-fluve-drop') ITEM_INDEX = '7892920191004_____1362655' DATA_DIR = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'data',) @pytest.fixture def test_release_json(json_file='single_release.json'): """Parse given XML file using xmltodict.parse().""" with open(os.path.join(DATA_DIR, json_file)) as fd: return fd.read() @pytest.fixture def test_event(): """JSON representing a single release event.""" return { 'key': KEY, 'bucket': BUCKET, 'item_index': ITEM_INDEX, 'execution_name': 'exec-1234', 'state_machine_name': 'sfn-bulk-metadata-ingester', 'correlation_id': 'unittest-1234', 'metadata': { 'test_key': 'test_data' } } @pytest.fixture def test_model(): """Named Tuple model representing a release.""" return ProductFieldsModel( orch_label_id=None, subaccount_name=None, project_code=7892920191004, project_id=None, project_artist='Pedro Libe, Jorge & Mateus', project_artist_id=None, artist_country=None, artist_country_id=0, product_code=1362655, release_name='Nem Balancei', release_meta_language='pt', release_meta_language_id=0, artist_url=None, digital_upc=7892920191004, manufacturers_upc='GGL_UR_ID:1362655', c_info='2021 Conscient Music', p_line='2021 Conscient Music', release_version='Ao Vivo', original_release_date='2021-12-17', sale_start_date='2023-01-06', itunes_preorder=None, itunes_preorder_date=None, preorder_preview=None, album_pricing='Mid - Single', format_type='Album', imprint='Conscient Music', genre='SERTANEJO: SERTANEJO UNIVERSITÁRIO', subgenre=None, primary_artists='Pedro Libe|Jorge & Mateus', featurings=None, remixers=None, producers='Seu Jonas', composers='Alex Alves|Robson Lima|Lucas Papada', orchestras=None, ensembles=None, conductors=None, only_include='Exclude Only', territory_iso_codes=None, tracks={'BXOXJ2100016_1_1': TrackFieldsModel( file_name='7892920191004_1_1.wav', # noqa volume=1, track_no=1, track_name='Nem Balancei', track_audio_language=None, track_audio_language_id=0, track_version='Ao Vivo', tuid=0, artist='Pedro Libe|Jorge & Mateus', featurings=None, remixers=None, producers='Seu Jonas', composers='Alex Alves|Robson Lima|Lucas Papada', orchestras=None, ensembles=None, conductors=None, track_pricing='Mid', explicit='N', isrc='BXOXJ2100016', third_party_publisher=None, track_p_info='2021 Conscient Music', ownership_for_this_sound_recording=None, country_of_recording=None, country_of_recording_id=0, nationality_of_original_copyright_owner=None, nationality_of_original_copyright_owner_id=0, track_lyrics=None, songwriters='Alex Alves|Robson Lima|Lucas Papada', publishers=None, performer_1_type='Primary Performer', performer_1_legal_name='Pedro Libe', performer_1_main_role='LeadVocals', performer_2_type='Primary Performer', performer_2_legal_name='Jorge & Mateus', performer_2_main_role='LeadVocals', performer_3_type=None, performer_3_legal_name=None, performer_3_main_role=None, performer_4_type=None, performer_4_legal_name=None, performer_4_main_role=None, performer_5_type=None, performer_5_legal_name=None, performer_5_main_role=None )}, subaccount_id=None, participants=[], genre_id=0, subgenre_id=0)