VTX-License-Server / tools /test_openapi.py
Vintendopower's picture
Upload 9 files
a38ca42 verified
Raw
History Blame Contribute Delete
840 Bytes
"""Verify OpenAPI documents ValidateRequest for Swagger."""
import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parents[1]))
from app import app
schema = app.openapi()
request_schema = (
schema["paths"]["/api/validate"]["post"]
.get("requestBody", {})
.get("content", {})
.get("application/json", {})
.get("schema", {})
)
ref = request_schema.get("$ref", "")
assert ref.endswith("/ValidateRequest"), ref
model = schema["components"]["schemas"]["ValidateRequest"]
props = model.get("properties", {})
assert "beta_key" in props, props
examples = props["beta_key"].get("examples") or []
if not examples:
example = props["beta_key"].get("example")
assert example == "VTX-BETA-XXXX-XXXX", props["beta_key"]
else:
assert "VTX-BETA-XXXX-XXXX" in examples, examples
print("OK")