|
2 | 2 | from openapi_core.unmarshalling.schemas import (
|
3 | 3 | oas30_request_schema_unmarshallers_factory,
|
4 | 4 | )
|
| 5 | +from openapi_core.unmarshalling.schemas import ( |
| 6 | + oas31_schema_unmarshallers_factory, |
| 7 | +) |
| 8 | +from openapi_core.validation.request.proxies import DetectRequestValidatorProxy |
5 | 9 | from openapi_core.validation.request.validators import RequestBodyValidator
|
6 | 10 | from openapi_core.validation.request.validators import (
|
7 | 11 | RequestParametersValidator,
|
|
14 | 18 | "openapi_v30_request_parameters_validator",
|
15 | 19 | "openapi_v30_request_security_validator",
|
16 | 20 | "openapi_v30_request_validator",
|
| 21 | + "openapi_v31_request_body_validator", |
| 22 | + "openapi_v31_request_parameters_validator", |
| 23 | + "openapi_v31_request_security_validator", |
| 24 | + "openapi_v31_request_validator", |
| 25 | + "openapi_v3_request_body_validator", |
| 26 | + "openapi_v3_request_parameters_validator", |
| 27 | + "openapi_v3_request_security_validator", |
| 28 | + "openapi_v3_request_validator", |
17 | 29 | "openapi_request_body_validator",
|
18 | 30 | "openapi_request_parameters_validator",
|
19 | 31 | "openapi_request_security_validator",
|
|
33 | 45 | schema_unmarshallers_factory=oas30_request_schema_unmarshallers_factory,
|
34 | 46 | )
|
35 | 47 |
|
| 48 | +openapi_v31_request_body_validator = RequestBodyValidator( |
| 49 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 50 | +) |
| 51 | +openapi_v31_request_parameters_validator = RequestParametersValidator( |
| 52 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 53 | +) |
| 54 | +openapi_v31_request_security_validator = RequestSecurityValidator( |
| 55 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 56 | +) |
| 57 | +openapi_v31_request_validator = RequestValidator( |
| 58 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 59 | +) |
| 60 | + |
36 | 61 | # alias to the latest v3 version
|
37 |
| -openapi_request_body_validator = openapi_v30_request_body_validator |
38 |
| -openapi_request_parameters_validator = openapi_v30_request_parameters_validator |
39 |
| -openapi_request_security_validator = openapi_v30_request_security_validator |
40 |
| -openapi_request_validator = openapi_v30_request_validator |
| 62 | +openapi_v3_request_body_validator = openapi_v31_request_body_validator |
| 63 | +openapi_v3_request_parameters_validator = ( |
| 64 | + openapi_v31_request_parameters_validator |
| 65 | +) |
| 66 | +openapi_v3_request_security_validator = openapi_v31_request_security_validator |
| 67 | +openapi_v3_request_validator = openapi_v31_request_validator |
| 68 | + |
| 69 | +# detect version spec |
| 70 | +openapi_request_body_validator = DetectRequestValidatorProxy( |
| 71 | + { |
| 72 | + ("openapi", "3.0"): openapi_v30_request_body_validator, |
| 73 | + ("openapi", "3.1"): openapi_v31_request_body_validator, |
| 74 | + }, |
| 75 | +) |
| 76 | +openapi_request_parameters_validator = DetectRequestValidatorProxy( |
| 77 | + { |
| 78 | + ("openapi", "3.0"): openapi_v30_request_parameters_validator, |
| 79 | + ("openapi", "3.1"): openapi_v31_request_parameters_validator, |
| 80 | + }, |
| 81 | +) |
| 82 | +openapi_request_security_validator = DetectRequestValidatorProxy( |
| 83 | + { |
| 84 | + ("openapi", "3.0"): openapi_v30_request_security_validator, |
| 85 | + ("openapi", "3.1"): openapi_v31_request_security_validator, |
| 86 | + }, |
| 87 | +) |
| 88 | +openapi_request_validator = DetectRequestValidatorProxy( |
| 89 | + { |
| 90 | + ("openapi", "3.0"): openapi_v30_request_validator, |
| 91 | + ("openapi", "3.1"): openapi_v31_request_validator, |
| 92 | + }, |
| 93 | +) |
0 commit comments