Browse Source
Co-authored-by: Artem Ivanov <[email protected]> Co-authored-by: Sebastián Ramírez <[email protected]>pull/4436/head
committed by
GitHub
12 changed files with 251 additions and 6 deletions
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 11 KiB |
@ -0,0 +1,8 @@ |
|||
from fastapi import FastAPI |
|||
|
|||
app = FastAPI(swagger_ui_parameters={"syntaxHighlight": False}) |
|||
|
|||
|
|||
@app.get("/users/{username}") |
|||
async def read_user(username: str): |
|||
return {"message": f"Hello {username}"} |
@ -0,0 +1,8 @@ |
|||
from fastapi import FastAPI |
|||
|
|||
app = FastAPI(swagger_ui_parameters={"syntaxHighlight.theme": "obsidian"}) |
|||
|
|||
|
|||
@app.get("/users/{username}") |
|||
async def read_user(username: str): |
|||
return {"message": f"Hello {username}"} |
@ -0,0 +1,8 @@ |
|||
from fastapi import FastAPI |
|||
|
|||
app = FastAPI(swagger_ui_parameters={"deepLinking": False}) |
|||
|
|||
|
|||
@app.get("/users/{username}") |
|||
async def read_user(username: str): |
|||
return {"message": f"Hello {username}"} |
@ -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"} |
Loading…
Reference in new issue