"""Tests Meta DDEX generation.""" from textwrap import dedent from unittest.mock import patch from src.ddex import generate from src.ddex.e import E from soundrecording_utils.metadata.types import OrchardSoundRecording @patch('src.ddex.generate.generate_release_deal') @patch('src.ddex.generate.generate_release') @patch('src.ddex.generate.generate_sound_recording_resource') @patch('src.ddex.generate.generate_header') def test_header_creates_correctly( mock_generate_header, mock_generate_sound_recording_resource, mock_generate_release, mock_generate_release_deal, mock_orchard_sound_recording: OrchardSoundRecording, execution_meta, ): """Test that header is created as expected.""" mock_generate_header.return_value = E('MockedMessageHeader') mock_generate_sound_recording_resource.return_value = E( 'MockSoundRecording', ) mock_generate_release.return_value = E('MockRelease') mock_generate_release_deal.return_value = E('MockReleaseDeal') result = generate.generate_ern_srr( mock_orchard_sound_recording, None, execution_meta, ) expected = """ """ # noqa: E501 assert result == dedent(expected).lstrip() mock_generate_header.assert_called_once_with(execution_meta) mock_generate_sound_recording_resource.assert_called_once_with( 'A1', mock_orchard_sound_recording, None ) mock_generate_release.assert_called_once_with( 'R1', 'A1', mock_orchard_sound_recording ) mock_generate_release_deal( 'R1', mock_orchard_sound_recording )