def test_download_message_positive(mocker, request, requests_mock, client): """ Given: - GUID of existing message to download When: - Running download message commandd Then: - Ensure file name - Ensure file content """ mocker.patch.object(demisto, 'uniqueFile', return_value="test_file_result") mocker.patch.object(demisto, 'investigation', return_value={'id': '1'}) file_name = "1_test_file_result" def cleanup(): try: os.remove(file_name) except OSError: pass request.addfinalizer(cleanup) guid = 'guid' args = {'guid': guid} api_response = open('./test_data/download_message_response').read().encode( 'utf8') requests_mock.get(SERVER_URL + '/quarantine?' + urlencode(args), content=api_response) result = download_message(client=client, args=args) assert result['File'] == guid + '.eml' with open(file_name, 'rb') as f: assert f.read() == api_response
def test_download_message_negative(requests_mock, client): """ Given: - GUID of non-existing message to download When: - Running download message command Then: - Ensure command readable outputs """ args = {'guid': 'guid'} requests_mock.get(SERVER_URL + '/quarantine?' + urlencode(args), status_code=404) result = download_message(client=client, args=args) assert result.readable_output == 'No message found.'