예제 #1
0
def test_transform_event_to_sirius_request(
    default_supporting_doc_request_body,
    default_request_case_ref,
    default_request_report_id,
    default_sirius_supporting_docs_request,
    default_sirius_supporting_docs_request_with_parent_id,
):

    path_params = {
        "caseref": default_request_case_ref,
        "id": default_request_report_id
    }
    event = build_aws_event(
        event_body=json.dumps(default_supporting_doc_request_body),
        event_path_parementers=path_params,
        as_json=False,
    )

    payload = transform_event_to_sirius_post_request(event)

    assert is_valid_schema(json.loads(payload),
                           "sirius_documents_payload_schema.json")
    assert payload == json.dumps(default_sirius_supporting_docs_request)

    payload2 = transform_event_to_sirius_post_request(
        event, parent_id="5783a7ad-9251-4cc7-80e3-c411c3bd87e0")

    assert is_valid_schema(json.loads(payload2),
                           "sirius_documents_payload_schema.json")
    assert payload2 == json.dumps(
        default_sirius_supporting_docs_request_with_parent_id)
예제 #2
0
def test_lambda_handler(patched_requests, patched_get_secret,
                        patched_validate_event_success):
    event = load_data("supporting_docs_event.json", as_json=False)
    context = None

    result = lambda_handler(event=event, context=context)
    assert result["statusCode"] == 201
    assert is_valid_schema(result, "standard_lambda_response_schema.json")
    assert is_valid_schema(json.loads(result["body"]),
                           "201_created_schema.json")
def test_format_sirius_response(example_sirius_response_code,
                                example_sirius_response, expected_result):
    result = format_sirius_response(example_sirius_response,
                                    example_sirius_response_code)

    assert result == expected_result
    if example_sirius_response_code == 201:
        assert is_valid_schema(result, "201_created_schema.json")
    else:
        assert is_valid_schema(result, "standard_error_schema.json")
예제 #4
0
def test_lambda_handler_fail(patched_requests, patched_get_secret,
                             patched_validate_event_fail):
    event = load_data("supporting_docs_event.json", as_json=False)
    context = None

    result = lambda_handler(event=event, context=context)
    assert result["statusCode"] == 400
    assert is_valid_schema(result, "standard_lambda_response_schema.json")
예제 #5
0
def test_lambda_handler_valid_event(
    patched_requests,
    patched_get_secret,
    default_request_case_ref,
    default_report_request_body,
    patched_validate_event_success,
):
    path_params = {"caseref": default_request_case_ref}
    event = build_aws_event(
        event_body=json.dumps(default_report_request_body),
        event_path_parementers=path_params,
        as_json=False,
    )

    context = None

    result = lambda_handler(event=event, context=context)

    assert result["statusCode"] == 201
    assert is_valid_schema(result, "standard_lambda_response_schema.json")
    assert is_valid_schema(json.loads(result["body"]),
                           "201_created_schema.json")
예제 #6
0
def test_transform_event_to_sirius_request(
    default_report_request_body,
    default_request_case_ref,
    default_sirius_reports_request,
):
    path_params = {"caseref": default_request_case_ref}
    event = build_aws_event(
        event_body=json.dumps(default_report_request_body),
        event_path_parementers=path_params,
        as_json=False,
    )

    payload = transform_event_to_sirius_request(event)

    assert is_valid_schema(json.loads(payload),
                           "sirius_documents_payload_schema.json")
    assert payload == json.dumps(default_sirius_reports_request)
예제 #7
0
def test_transform_event_to_sirius_request_with_no_report_submission(
    default_request_case_ref,
    nondigital_request_report_id,
    checklists_request_body_with_no_report_submission,
    sirius_checklists_request_with_no_report_submission,
):
    path_params = {
        "caseref": default_request_case_ref,
        "id": nondigital_request_report_id,
    }
    event = build_aws_event(
        event_body=json.dumps(
            checklists_request_body_with_no_report_submission),
        event_path_parementers=path_params,
        as_json=False,
    )

    payload = transform_event_to_sirius_payload(event)

    assert is_valid_schema(json.loads(payload),
                           "sirius_documents_payload_schema.json")
    assert payload == json.dumps(
        sirius_checklists_request_with_no_report_submission)
예제 #8
0
def test_get_response_success(mock_service_status):

    response = healthcheck.lambda_handler(event=None, context=None)
    is_valid_schema(response, "standard_lambda_response_schema.json")
    assert response["statusCode"] == 200
    assert len(response["body"]) == 4