[docs]def success(function):
"""Mock https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service, respond with HTTP 200"""
import requests_mock
from argus_api.helpers.tests import fake_response
def mock_response(*args, **kwargs):
with requests_mock.Mocker(real_http=True) as mock:
mock.register_uri(
"GET",
r"https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service",
status_code=200,
json=fake_response({'offset': {'type': 'int', 'name': 'offset'}, 'limit': {'type': 'int', 'name': 'limit'}, 'responseCode': {'type': 'int', 'name': 'responseCode'}, 'count': {'type': 'int', 'name': 'count'}, 'data': {'type': 'list', 'items': {'id': {'type': 'int'}, 'shortName': {'type': 'str'}, 'name': {'type': 'str'}, 'description': {'type': 'str'}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['DELETED', 'HANDLED_BY_SOC', 'MONITORED_BY_SOC_OUTSIDE_OFFICEHOURS', 'NOTIFICATION_ON_CREATE', 'NOTIFICATION_ON_UPDATE', 'NOTIFICATION_ON_CLOSE', 'NOTIFICATION_FORMAT_FULL']}}, 'logoURL': {'type': 'str'}, 'notificationEmail': {'type': 'str'}, 'readFunction': {'id': {'type': 'int'}, 'name': {'type': 'str', 'position': 0, 'description': 'Function name '}, 'description': {'type': 'str', 'position': 0, 'description': 'Function description '}, 'securityLevel': {'type': 'str', 'position': 0, 'description': 'Function security level ', 'enum': ['DEFAULT', 'ADMINISTRATIVE', 'EXTERNAL']}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['ROLE']}}}, 'readDetailedFunction': {'id': {'type': 'int'}, 'name': {'type': 'str', 'position': 0, 'description': 'Function name '}, 'description': {'type': 'str', 'position': 0, 'description': 'Function description '}, 'securityLevel': {'type': 'str', 'position': 0, 'description': 'Function security level ', 'enum': ['DEFAULT', 'ADMINISTRATIVE', 'EXTERNAL']}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['ROLE']}}}, 'writeFunction': {'id': {'type': 'int'}, 'name': {'type': 'str', 'position': 0, 'description': 'Function name '}, 'description': {'type': 'str', 'position': 0, 'description': 'Function description '}, 'securityLevel': {'type': 'str', 'position': 0, 'description': 'Function security level ', 'enum': ['DEFAULT', 'ADMINISTRATIVE', 'EXTERNAL']}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['ROLE']}}}, 'techFunction': {'id': {'type': 'int'}, 'name': {'type': 'str', 'position': 0, 'description': 'Function name '}, 'description': {'type': 'str', 'position': 0, 'description': 'Function description '}, 'securityLevel': {'type': 'str', 'position': 0, 'description': 'Function security level ', 'enum': ['DEFAULT', 'ADMINISTRATIVE', 'EXTERNAL']}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['ROLE']}}}, 'adminFunction': {'id': {'type': 'int'}, 'name': {'type': 'str', 'position': 0, 'description': 'Function name '}, 'description': {'type': 'str', 'position': 0, 'description': 'Function description '}, 'securityLevel': {'type': 'str', 'position': 0, 'description': 'Function security level ', 'enum': ['DEFAULT', 'ADMINISTRATIVE', 'EXTERNAL']}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['ROLE']}}}, 'defineFunction': {'id': {'type': 'int'}, 'name': {'type': 'str', 'position': 0, 'description': 'Function name '}, 'description': {'type': 'str', 'position': 0, 'description': 'Function description '}, 'securityLevel': {'type': 'str', 'position': 0, 'description': 'Function security level ', 'enum': ['DEFAULT', 'ADMINISTRATIVE', 'EXTERNAL']}, 'flags': {'type': 'list', 'position': 0, 'description': 'Flags assigned to the object. ', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['ROLE']}}}, 'createdTimestamp': {'type': 'int'}, 'createdByUser': {'id': {'type': 'int'}, 'customerID': {'type': 'int'}, 'domain': {'$ref': '#/definitions/DomainInfo'}, 'userName': {'type': 'str'}, 'name': {'type': 'str'}, 'type': 'str', 'options': ['user', 'group']}, 'lastUpdatedTimestamp': {'type': 'int'}, 'lastUpdatedByUser': {'id': {'type': 'int'}, 'customerID': {'type': 'int'}, 'domain': {'$ref': '#/definitions/DomainInfo'}, 'userName': {'type': 'str'}, 'name': {'type': 'str'}, 'type': 'str', 'options': ['user', 'group']}, 'domain': {'id': {'type': 'int'}, 'name': {'type': 'str'}}, 'caseTypes': {'type': 'list', 'uniqueItems': True, 'items': {'type': 'str', 'enum': ['securityIncident', 'operationalIncident', 'informational', 'change']}}}, 'name': 'data'}, 'metaData': {'type': 'dict', 'additionalProperties': {'type': 'dict'}, 'name': 'metaData'}, 'messages': {'type': 'list', 'items': {'message': {'type': 'str'}, 'messageTemplate': {'type': 'str'}, 'type': 'str', 'field': {'type': 'str'}, 'parameter': {'type': 'dict'}, 'timestamp': {'type': 'int'}, 'options': ['FIELD_ERROR', 'ACTION_ERROR', 'WARNING', 'NOTIFICATION', 'INFO']}, 'name': 'messages'}, 'currentPage': {'type': 'int', 'name': 'currentPage'}, 'size': {'type': 'int', 'name': 'size'}})
)
return function(*args, **kwargs)
return mock_response
return decorator
[docs]def unauthorized(function):
"""Mock https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service, respond with HTTP 401"""
import requests_mock
from argus_api.helpers.tests import fake_response
def mock_response(*args, **kwargs):
with requests_mock.Mocker(real_http=True) as mock:
mock.register_uri(
"GET",
r"https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service",
status_code=401,
json=None
)
return function(*args, **kwargs)
return mock_response
return decorator
[docs]def forbidden(function):
"""Mock https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service, respond with HTTP 403"""
import requests_mock
from argus_api.helpers.tests import fake_response
def mock_response(*args, **kwargs):
with requests_mock.Mocker(real_http=True) as mock:
mock.register_uri(
"GET",
r"https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service",
status_code=403,
json=None
)
return function(*args, **kwargs)
return mock_response
return decorator
[docs]def not_found(function):
"""Mock https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service, respond with HTTP 404"""
import requests_mock
from argus_api.helpers.tests import fake_response
def mock_response(*args, **kwargs):
with requests_mock.Mocker(real_http=True) as mock:
mock.register_uri(
"GET",
r"https://osl-argus-trunk-web1.mnemonic.no/web/api/cases/v2/service",
status_code=404,
json=None
)
return function(*args, **kwargs)
return mock_response
return decorator