示例#1
0
def test_path_items():
    get_op = swagger.GET(
        operation_id="testGetExample",
        description="Get Example",
        tags=["example"],
        parameters=[swagger.QueryParameter(name="p1", description="page")],
        responses=None,
    )
    post_op = swagger.POST(operation_id="testPostExample",
                           description="POST Example",
                           responses=None)
    path_item = swagger.PathItem(parameters=[swagger.PathParameter(name="v1")],
                                 get=get_op,
                                 post=post_op)

    swag = path_item.to_dict()
    assert swag["parameters"][0]["name"] == "v1"
    assert swag["get"]["parameters"][0]["name"] == "p1"
示例#2
0
def test_sample_swagger():
    paths = swagger.Paths()
    item = swagger.PathItem(
        summary="Nonsense Path",
        get=swagger.GET(
            summary="Sample GET request",
            description="Test",
            tags=["sample", "rest"],
            parameters=[
                swagger.QueryParameter(name="search", required=True, description="Search Param")
            ],
            responses={},
        ),
    )

    paths.add("/echo", item)
    api = swagger.OpenApi(info_block, paths)

    swagger_json = api.to_dict()
    assert swagger_json
示例#3
0
文件: mocks.py 项目: kulgan/flaskdoc
simple_get = swagger.GET(
    summary="Simplistic Get",
    tags=["test", "user", "sample"],
    description="Proof of concept",
    parameters=[
        swagger.PathParameter(
            name="id",
            description="root id",
            allow_empty_value=True,
            schema=swagger.Schema(
                type="string",
                format="email",
            ),
        ),
        swagger.QueryParameter(name="age",
                               description="age of user",
                               schema=swagger.Integer()),
    ],
    responses={"200": swagger.ResponseObject(description="Echos whatever")},
)

info = swagger.Info(
    title="Test",
    version="1.2.2",
    contact=swagger.Contact(name="nuke",
                            email="*****@*****.**",
                            url="https://github.com/kulgan"),
    license=swagger.License(name="Apache 2.0",
                            url="https://www.example.com/license"),
)
示例#4
0
    responses={"405": swagger.ResponseObject(description="Invalid input")},
    security=[{"petstore_auth": ["write:pets", "read:pets"]}],
    extensions={"x-codegen-request-body-name": "body"},
)


find_by_status_spec = swagger.GET(
    tags=["pet"],
    summary="Finds Pets by status",
    description="Multiple status values can be provided with comma separated strings",
    operation_id="findPetsByStatus",
    parameters=[
        swagger.QueryParameter(
            name="status",
            explode=True,
            required=True,
            description="Status values need to be considered for filter",
            schema=[swagger.String(enum=Status._member_names_, default="available")],
        )
    ],
    responses={
        "200": swagger.ResponseObject(
            description="Successful operation",
            content=[swagger.JsonType(schema=[Pet]), swagger.XmlType(schema=[Pet])],
        ),
        "400": swagger.ResponseObject(description="Invalid status value"),
    },
    security=[{"petstore_auth": ["write:pets", "read:pets"]}],
)

find_by_tags_spec = swagger.GET(
示例#5
0
    release_date = jo.string(str_format="date-time",
                             example="2016-08-29T09:12:33.001Z",
                             required=True)


search_inventory_docs = swagger.GET(
    tags=["developers"],
    operation_id="searchInventory",
    summary="searches inventory",
    description=
    "By passing in the appropriate options, you can search for available inventory in the system",
    parameters=[
        swagger.QueryParameter(
            required=False,
            name="searchString",
            schema=str,
            description=
            "pass an optional search string for looking up inventory",
        ),
        swagger.QueryParameter(
            name="skip",
            schema=int,
            description="number of records to skip for pagination",
        ),
        swagger.QueryParameter(
            name="limit",
            schema=swagger.Integer(maximum=50),
            description="maximum number of records to return",
        ),
    ],
    responses={
示例#6
0
文件: specs.py 项目: kulgan/flaskdoc
                "repositoryPullRequest":
                swagger.LinkReference("RepositoryPullRequest")
            },
        ),
    },
)

get_pull_requests_by_repository = swagger.GET(
    operation_id="getPullRequestByRepository",
    parameters=[
        swagger.PathParameter(
            name="username",
            schema=str,
        ),
        swagger.PathParameter(name="slug", schema=str),
        swagger.QueryParameter(name="state", schema=schemas.RepositoryState),
    ],
    responses={
        "200":
        swagger.ResponseObject(
            description="an array of pull request objects",
            content=swagger.JsonType(schema=[schemas.PullRequest]),
        )
    },
)

get_pull_requests_by_id = swagger.GET(
    operation_id="getPullRequestsById",
    parameters=[
        swagger.PathParameter(
            name="username",