Beispiel #1
0
def test_spectree_init():
    spec = SpecTree(path='docs')
    conf = Config()

    assert spec.config.TITLE == conf.TITLE
    assert spec.config.PATH == 'docs'

    with pytest.raises(NotImplementedError):
        SpecTree(app=conf)
Beispiel #2
0
def _get_spec(name, app, **kwargs):
    api = SpecTree(name, app=app, title=f"{name}", **kwargs)
    if name == "flask":
        with app.app_context():
            spec = api.spec
    else:
        spec = api.spec

    return spec
Beispiel #3
0
def test_spec_generate(name, app):
    api = SpecTree(name, app=app, title=f"{name}")
    if name == "flask":
        with app.app_context():
            spec = api.spec
    else:
        spec = api.spec

    assert spec["info"]["title"] == name
    assert spec["paths"] == {}
Beispiel #4
0
def test_spec_generate(name, app):
    api = SpecTree(
        name,
        app=app,
        title=f"{name}",
        info={
            "title": "override",
            "description": "api level description"
        },
        tags=[{
            "name": "lone",
            "description": "a lone api"
        }],
    )
    spec = api.spec

    assert spec["info"]["title"] == name
    assert spec["info"]["description"] == "api level description"
    assert spec["paths"] == {}
    assert spec["tags"] == []
Beispiel #5
0
def test_spec_generate(name, app):
    api = SpecTree(name, app=app, title=f'{name}')
    spec = api.spec

    assert spec['info']['title'] == name
    assert spec['paths'] == {}
Beispiel #6
0
def test_register(name, app):
    api = SpecTree(name)
    api.register(app)
Beispiel #7
0
@pytest.mark.parametrize('name, app', backend_app())
def test_register(name, app):
    api = SpecTree(name)
    api.register(app)


@pytest.mark.parametrize('name, app', backend_app())
def test_spec_generate(name, app):
    api = SpecTree(name, app=app, title=f'{name}')
    spec = api.spec

    assert spec['info']['title'] == name
    assert spec['paths'] == {}


api = SpecTree('flask')
api_strict = SpecTree('flask', mode='strict')
api_greedy = SpecTree('flask', mode='greedy')
api_customize_backend = SpecTree(backend=FlaskPlugin)


def create_app():
    app = Flask(__name__)

    @app.route('/foo')
    @api.validate()
    def foo():
        pass

    @app.route('/bar')
    @api_strict.validate()
Beispiel #8
0
import pytest

from spectree.utils import (parse_comments, parse_request, parse_params,
                            parse_resp, has_model, parse_code, parse_name)
from spectree.spec import SpecTree
from spectree.response import Response

from .common import DemoModel

api = SpecTree()


def undecorated_func():
    """summary
    description"""
    pass


@api.validate(json=DemoModel, resp=Response(HTTP_200=DemoModel))
def demo_func():
    """
    summary

    description"""
    pass


class DemoClass:
    @api.validate(query=DemoModel)
    def demo_method(self):
        """summary
Beispiel #9
0

@pytest.mark.parametrize("name, app", backend_app())
def test_spec_generate(name, app):
    api = SpecTree(name, app=app, title=f"{name}")
    if name == "flask":
        with app.app_context():
            spec = api.spec
    else:
        spec = api.spec

    assert spec["info"]["title"] == name
    assert spec["paths"] == {}


api = SpecTree("flask")
api_strict = SpecTree("flask", mode="strict")
api_greedy = SpecTree("flask", mode="greedy")
api_customize_backend = SpecTree(backend=FlaskPlugin)


def create_app():
    app = Flask(__name__)

    @app.route("/foo")
    @api.validate()
    def foo():
        pass

    @app.route("/bar")
    @api_strict.validate()
Beispiel #10
0
def test_spectree_init():
    spec = SpecTree(path="docs")
    conf = Config()

    assert spec.config.TITLE == conf.TITLE
    assert spec.config.PATH == "docs"
Beispiel #11
0
            "name": "lone",
            "description": "a lone api"
        }],
    )
    spec = api.spec

    assert spec["info"]["title"] == name
    assert spec["info"]["description"] == "api level description"
    assert spec["paths"] == {}
    assert spec["tags"] == []


api = SpecTree(
    "flask",
    tags=[{
        "name": "lone",
        "description": "a lone api"
    }],
    validation_error_code=400,
)
api_strict = SpecTree("flask", mode="strict")
api_greedy = SpecTree("flask", mode="greedy")
api_customize_backend = SpecTree(backend=FlaskBackend)


def create_app():
    app = Flask(__name__)

    @app.route("/foo")
    @api.validate()
    def foo():
        pass
Beispiel #12
0
@pytest.mark.parametrize('name, app', backend_app())
def test_register(name, app):
    api = SpecTree(name)
    api.register(app)


@pytest.mark.parametrize('name, app', backend_app())
def test_spec_generate(name, app):
    api = SpecTree(name, app, title=f'{name}')
    spec = api.spec

    assert spec['info']['title'] == name
    assert spec['paths'] == {}


api = SpecTree('flask')
api_strict = SpecTree('flask', mode='strict')
api_greedy = SpecTree('flask', mode='greedy')


def create_app():
    app = Flask(__name__)

    @app.route('/foo')
    @api.validate()
    def foo():
        pass

    @app.route('/baz')
    @api.doc()
    def baz():
Beispiel #13
0
def test_spec_generate(name, app):
    api = SpecTree(name, app=app, title=f"{name}")
    spec = api.spec

    assert spec["info"]["title"] == name
    assert spec["paths"] == {}