Пример #1
0
def test_post_schema_swagger(parameter_post_schema, context):
    assert get_swagger_parameters(parameter_post_schema, context)[0].to_primitive() == {
        "in": "body",
        "name": "body",
        "required": True,
        "description": "",
        "schema": {
            "type": "integer"
        }
    }
Пример #2
0
def test_header_only_schema(context):
    params = Parameters(path=ParamSet({
        "path":
        Param(argument_name="path", arginfo=Argument("path", NoDefault, int))
    }), )
    assert get_swagger_parameters(params, context)[0].to_primitive() == {
        "in": "path",
        "name": "path",
        "required": True,
        "type": "integer"
    }
Пример #3
0
def test_additional_type_info(context, inp, expected):
    """
    query parameter should have additional type data
    (like format) added to it.
    """
    assert get_swagger_parameters(inp, context)[0].to_primitive() == expected
Пример #4
0
def test_swagger_parameters():
    parameters = Parameters(
        query=ParamSet({
            "query":
            Param(argument_name="query", arginfo=Argument("query", None, int))
        }),
        body=ParamSet({
            "left":
            Param(argument_name="left",
                  arginfo=Argument("left", NoDefault, int)),
            "right":
            Param(argument_name="right", arginfo=Argument("right", 2, int))
        }),
        header=ParamSet({
            "header":
            Param(argument_name="header",
                  arginfo=Argument("header", NoDefault, int))
        }),
        path=ParamSet({
            "path":
            Param(argument_name="path",
                  arginfo=Argument("path", NoDefault, int))
        }),
    )
    params = get_swagger_parameters(parameters, default_context)
    params = [p.to_primitive() for p in params]
    assert {
        "in": "query",
        "name": "query",
        "required": False,
        "type": "integer",
        "collectionFormat": "multi"
    } in params
    assert {
        "in": "body",
        "name": "body",
        "schema": {
            "type": "object",
            "required": ["left"],
            "properties": {
                "left": {
                    "type": "integer"
                },
                "right": {
                    "type": "integer"
                }
            }
        },
        "required": True,
    } in params
    assert {
        "in": "header",
        "name": "header",
        "type": "integer",
        "required": True,
    } in params
    assert {
        "in": "path",
        "name": "path",
        "type": "integer",
        "required": True,
    } in params