"""Lambda test module.""" from unittest.mock import patch from kafka_utils.consumer.deserializer.simple_json import JSONDeserializer from kafka_utils.consumer.source.mapping import EventSourceMessage from src.logic.event_handling import processing_logic @patch('src.logic.event_handling.get_matches_by_product_id') def test_processing_logic( mock_ows_assets, kafka_mock, mock_event, mock_ows_assets_response, mock_expected_publish_payloads ): """Test processing logic.""" mock_ows_assets.return_value = mock_ows_assets_response msk_message = EventSourceMessage(mock_event) mock_message = None for _, message in msk_message: mock_message = message.value break processing_logic( 'event.owsContentReview.review', mock_message, JSONDeserializer() ) mock_ows_assets.assert_called_once_with(4198335) kafka_mock.assert_messages([ { 'topic': 'event.owsAssets.acrCloudAudioInfringements', 'value': mock_expected_publish_payloads[0], 'key': b'asset_final_id_141142164' }, { 'topic': 'event.owsAssets.acrCloudAudioInfringements', 'value': mock_expected_publish_payloads[1], 'key': b'asset_final_id_141142164' }, { 'topic': 'event.owsAssets.acrCloudAudioInfringements', 'value': mock_expected_publish_payloads[2], 'key': b'asset_final_id_141142167' }, { 'topic': 'event.owsAssets.acrCloudAudioInfringements', 'value': mock_expected_publish_payloads[3], 'key': b'asset_final_id_141142167' } ])