def test_start(mock_rabbit, mocker): # ARRANGE eventListener = EventListener() spy = mocker.spy(eventListener.rabbitClient, "listen") # ACT eventListener.start() # ASSERT spy.assert_called_with(eventListener.handle_message)
def test_get_fragment(event_listener): # ARRANGE json = resources.load_json_resource("mediahaven_response") el = EventListener() # ACT fragment = el._get_fragment(json["MediaDataList"], None) # ASSERT assert ( fragment["Internal"]["FragmentId"] == "4885061ab2e047728558d24411dd44b8d89c983031994cec9d774270fb807f9697c9ac524f1a471da54c731ceac09bb0" )
def test_handle_invalid_message(mock_rabbit, mocker, capsys): # ARRANGE eventListener = EventListener() xml = "<broken></roken>" spy = mocker.spy(eventListener.rabbitClient, "send_message") channel_mock = mocker.MagicMock() method_mock = mocker.MagicMock() method_mock.delivery_tag = 1 # ACT eventListener.handle_message(channel_mock, method_mock, None, xml) captured = capsys.readouterr() # ASSERT assert not spy.called assert "error" in captured.out
def test_handle_message(event, mock_rabbit, mocker): # ARRANGE eventListener = EventListener() xml = resources.load_xml_resource(event) spy = mocker.spy(eventListener.rabbitClient, "send_message") channel_mock = mocker.MagicMock() method_mock = mocker.MagicMock() method_mock.delivery_tag = 1 method_mock.routing_key = "test_key" expected_key = f"test_key.{event}" # ACT eventListener.handle_message(channel_mock, method_mock, None, xml) # ASSERT spy.assert_called_with(xml, expected_key)
def event_listener(mock_ftp, mock_rabbit, mock_mediahaven): """ Creates an event listener with mocked rabbit client, MH client and FTP client. """ return EventListener()
#!/usr/bin/env python3 # -*- coding: utf-8 -*- from signal import signal, SIGTERM from app.app import EventListener if __name__ == "__main__": event_listener = EventListener() signal(SIGTERM, event_listener.exit_gracefully) event_listener.start()
def event_listener(self, rabbit_client, mh_client, pid_service): """ Creates an event listener with mocked rabbit client, MH client and PID Service. """ return EventListener()
def event_listener(rabbit_client_mock): return EventListener()