forked from flasgger/flasgger
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathswag_from_merging.py
48 lines (39 loc) · 1.01 KB
/
swag_from_merging.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
from flask import Flask
from flask import jsonify
from flasgger import Swagger
from flasgger import swag_from
app = Flask(__name__)
swag = Swagger(app)
@app.route("/example")
@swag_from({
"responses": {
400: {
"description": "Invalid action"
},
401: {
"description": "Login required"
}
},
"tags": ["Tag 1", "Tag 2"]
})
def view():
"""
A test view
---
responses:
200:
description: OK
tags: [Tag 3, Tag 4]
"""
return jsonify(hello="world")
def test_swag(client, specs_data):
example_spec = specs_data["/apispec_1.json"]["paths"]["/example"]["get"]
assert "400" in example_spec["responses"]
assert "401" in example_spec["responses"]
assert "200" in example_spec["responses"]
assert "Tag 1" in example_spec["tags"]
assert "Tag 2" in example_spec["tags"]
assert "Tag 3" in example_spec["tags"]
assert "Tag 4" in example_spec["tags"]
if __name__ == "__main__":
app.run(debug=True)