def test_get_modified_data_command(mocker): """ Given: - Date string represents the last time we retrieved modified incidents for this integration. When - Before running get_remote_data_command Then - Returns a list of changed incidents """ from JiraV2 import get_modified_remote_data_command mocker.patch.object(demisto, "debug") mocker.patch.object(demisto, "info") mocker.patch("JiraV2.json", return_value={"timeZone": "Asia/Jerusalem"}) class Res: def __init__(self): self.status_code = 200 def json(self): return {"timeZone": "Asia/Jerusalem"} response = Res() response.json() mocker.patch("JiraV2.get_user_info_data", return_value=response) mocker.patch( "JiraV2.issue_query_command", return_value=(None, None, {"issues": [{"id": "123"}]}), ) modified_ids = get_modified_remote_data_command({"lastUpdate": "0"}) assert modified_ids.modified_incident_ids == ["123"]
def test_get_modified_data_command_when_getting_not_ok_status_code_for_get_user_info_data( mocker, ): """ Given: - Date string represents the last time we retrieved modified incidents for this integration. When - Getting '404' from get_user_info_data function. Then - An error is printed via demisto.error and returning an empty modified_incident_ids list """ from JiraV2 import get_modified_remote_data_command mocker.patch.object(demisto, "debug") mocker.patch.object(demisto, "info") mocker.patch("JiraV2.json", return_value={"timeZone": "Asia/Jerusalem"}) class res: def __init__(self): self.status_code = 404 self.reason = "Not Found" response = res() mocker.patch("JiraV2.get_user_info_data", return_value=response) mocked_demisto_error = mocker.patch.object(demisto, "error") modified_ids = get_modified_remote_data_command({"lastUpdate": "0"}) assert mocked_demisto_error.call_count == 1 assert modified_ids.modified_incident_ids == []
def test_get_modified_data_command_when_getting_exception_for_get_user_info_data( mocker, ): """ Given: - Date string represents the last time we retrieved modified incidents for this integration. When - Having an error in get_user_info_data function. Then - An error is printed via demisto.error and returning an empty modified_incident_ids list """ from JiraV2 import get_modified_remote_data_command mocker.patch.object(demisto, "debug") mocker.patch.object(demisto, "info") mocked_demisto_error = mocker.patch.object(demisto, "error") mocker.patch("JiraV2.get_user_info_data", side_effect=Mock(side_effect=Exception("Test"))) modified_ids = get_modified_remote_data_command({"lastUpdate": "0"}) assert mocked_demisto_error.call_count == 1 assert modified_ids.modified_incident_ids == []