mirror of
https://github.com/fastapi/fastapi.git
synced 2026-04-04 23:23:38 -04:00
✨ Enable configuring Swagger UI parameters (#2568)
Co-authored-by: Artem Ivanov <artem@worklife.io> Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
from fastapi.testclient import TestClient
|
||||
|
||||
from docs_src.extending_openapi.tutorial003 import app
|
||||
|
||||
client = TestClient(app)
|
||||
|
||||
|
||||
def test_swagger_ui():
|
||||
response = client.get("/docs")
|
||||
assert response.status_code == 200, response.text
|
||||
assert (
|
||||
'"syntaxHighlight": false' in response.text
|
||||
), "syntaxHighlight should be included and converted to JSON"
|
||||
assert (
|
||||
'"dom_id": "#swagger-ui"' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert "presets: [" in response.text, "default configs should be preserved"
|
||||
assert (
|
||||
"SwaggerUIBundle.presets.apis," in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
"SwaggerUIBundle.SwaggerUIStandalonePreset" in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"layout": "BaseLayout",' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"deepLinking": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"showExtensions": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"showCommonExtensions": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
|
||||
|
||||
def test_get_users():
|
||||
response = client.get("/users/foo")
|
||||
assert response.status_code == 200, response.text
|
||||
assert response.json() == {"message": "Hello foo"}
|
||||
@@ -0,0 +1,44 @@
|
||||
from fastapi.testclient import TestClient
|
||||
|
||||
from docs_src.extending_openapi.tutorial004 import app
|
||||
|
||||
client = TestClient(app)
|
||||
|
||||
|
||||
def test_swagger_ui():
|
||||
response = client.get("/docs")
|
||||
assert response.status_code == 200, response.text
|
||||
assert (
|
||||
'"syntaxHighlight": false' not in response.text
|
||||
), "not used parameters should not be included"
|
||||
assert (
|
||||
'"syntaxHighlight.theme": "obsidian"' in response.text
|
||||
), "parameters with middle dots should be included in a JSON compatible way"
|
||||
assert (
|
||||
'"dom_id": "#swagger-ui"' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert "presets: [" in response.text, "default configs should be preserved"
|
||||
assert (
|
||||
"SwaggerUIBundle.presets.apis," in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
"SwaggerUIBundle.SwaggerUIStandalonePreset" in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"layout": "BaseLayout",' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"deepLinking": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"showExtensions": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"showCommonExtensions": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
|
||||
|
||||
def test_get_users():
|
||||
response = client.get("/users/foo")
|
||||
assert response.status_code == 200, response.text
|
||||
assert response.json() == {"message": "Hello foo"}
|
||||
@@ -0,0 +1,44 @@
|
||||
from fastapi.testclient import TestClient
|
||||
|
||||
from docs_src.extending_openapi.tutorial005 import app
|
||||
|
||||
client = TestClient(app)
|
||||
|
||||
|
||||
def test_swagger_ui():
|
||||
response = client.get("/docs")
|
||||
assert response.status_code == 200, response.text
|
||||
assert (
|
||||
'"deepLinking": false,' in response.text
|
||||
), "overridden configs should be preserved"
|
||||
assert (
|
||||
'"deepLinking": true' not in response.text
|
||||
), "overridden configs should not include the old value"
|
||||
assert (
|
||||
'"syntaxHighlight": false' not in response.text
|
||||
), "not used parameters should not be included"
|
||||
assert (
|
||||
'"dom_id": "#swagger-ui"' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert "presets: [" in response.text, "default configs should be preserved"
|
||||
assert (
|
||||
"SwaggerUIBundle.presets.apis," in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
"SwaggerUIBundle.SwaggerUIStandalonePreset" in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"layout": "BaseLayout",' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"showExtensions": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
assert (
|
||||
'"showCommonExtensions": true,' in response.text
|
||||
), "default configs should be preserved"
|
||||
|
||||
|
||||
def test_get_users():
|
||||
response = client.get("/users/foo")
|
||||
assert response.status_code == 200, response.text
|
||||
assert response.json() == {"message": "Hello foo"}
|
||||
Reference in New Issue
Block a user