|
4 | 4 | ) |
5 | 5 | from openapi_spec_validator.handlers import UrlHandler, FileObjectHandler |
6 | 6 | from openapi_spec_validator.schemas import get_openapi_schema |
7 | | -from openapi_spec_validator.factories import JSONSpecValidatorFactory |
| 7 | +from openapi_spec_validator.factories import \ |
| 8 | + Draft202012JSONSpecValidatorFactory, Draft4JSONSpecValidatorFactory |
8 | 9 | from openapi_spec_validator.validators import SpecValidator |
9 | 10 |
|
10 | 11 | __author__ = 'Artur Maciag' |
|
14 | 15 | __license__ = 'Apache License, Version 2.0' |
15 | 16 |
|
16 | 17 | __all__ = [ |
17 | | - 'openapi_v2_spec_validator', 'openapi_v3_spec_validator', |
18 | | - 'validate_v2_spec', 'validate_v3_spec', 'validate_spec', |
19 | | - 'validate_v2_spec_url', 'validate_v3_spec_url', 'validate_spec_url', |
| 18 | + 'openapi_v2_spec_validator', |
| 19 | + 'openapi_v3_spec_validator', |
| 20 | + 'openapi_v30_spec_validator', |
| 21 | + 'openapi_v31_spec_validator', |
| 22 | + 'validate_v2_spec', |
| 23 | + 'validate_v3_spec', |
| 24 | + 'validate_v30_spec', |
| 25 | + 'validate_v31_spec', |
| 26 | + 'validate_spec', |
| 27 | + 'validate_v2_spec_url', |
| 28 | + 'validate_v3_spec_url', |
| 29 | + 'validate_v30_spec_url', |
| 30 | + 'validate_v31_spec_url', |
| 31 | + 'validate_spec_url', |
20 | 32 | ] |
21 | 33 |
|
22 | 34 | file_object_handler = FileObjectHandler() |
|
30 | 42 |
|
31 | 43 | # v2.0 spec |
32 | 44 | schema_v2, schema_v2_url = get_openapi_schema('2.0') |
33 | | -openapi_v2_validator_factory = JSONSpecValidatorFactory( |
| 45 | +openapi_v2_validator_factory = Draft4JSONSpecValidatorFactory( |
34 | 46 | schema_v2, schema_v2_url, |
35 | 47 | resolver_handlers=default_handlers, |
36 | 48 | ) |
|
40 | 52 | ) |
41 | 53 |
|
42 | 54 | # v3.0 spec |
43 | | -schema_v3, schema_v3_url = get_openapi_schema('3.0') |
44 | | -openapi_v3_validator_factory = JSONSpecValidatorFactory( |
45 | | - schema_v3, schema_v3_url, |
| 55 | +schema_v30, schema_v30_url = get_openapi_schema('3.0') |
| 56 | +openapi_v30_validator_factory = Draft4JSONSpecValidatorFactory( |
| 57 | + schema_v30, schema_v30_url, |
46 | 58 | resolver_handlers=default_handlers, |
47 | 59 | ) |
48 | | -openapi_v3_spec_validator = SpecValidator( |
49 | | - openapi_v3_validator_factory, |
| 60 | +openapi_v30_spec_validator = SpecValidator( |
| 61 | + openapi_v30_validator_factory, |
| 62 | + resolver_handlers=default_handlers, |
| 63 | +) |
| 64 | + |
| 65 | +# v3.1 spec |
| 66 | +schema_v31, schema_v31_url = get_openapi_schema('3.1') |
| 67 | +openapi_v31_validator_factory = Draft202012JSONSpecValidatorFactory( |
| 68 | + schema_v31, schema_v31_url, |
| 69 | + resolver_handlers=default_handlers, |
| 70 | +) |
| 71 | +openapi_v31_spec_validator = SpecValidator( |
| 72 | + openapi_v31_validator_factory, |
50 | 73 | resolver_handlers=default_handlers, |
51 | 74 | ) |
52 | 75 |
|
|
55 | 78 | validate_v2_spec_url = validate_spec_url_factory( |
56 | 79 | openapi_v2_spec_validator.validate, default_handlers) |
57 | 80 |
|
58 | | -validate_v3_spec = validate_spec_factory(openapi_v3_spec_validator.validate) |
59 | | -validate_v3_spec_url = validate_spec_url_factory( |
60 | | - openapi_v3_spec_validator.validate, default_handlers) |
| 81 | +validate_v30_spec = validate_spec_factory(openapi_v30_spec_validator.validate) |
| 82 | +validate_v30_spec_url = validate_spec_url_factory( |
| 83 | + openapi_v30_spec_validator.validate, default_handlers) |
| 84 | + |
| 85 | + |
| 86 | +validate_v31_spec = validate_spec_factory(openapi_v31_spec_validator.validate) |
| 87 | +validate_v31_spec_url = validate_spec_url_factory( |
| 88 | + openapi_v31_spec_validator.validate, default_handlers) |
| 89 | + |
| 90 | +# aliases to the latest v3 version |
| 91 | +schema_v3 = schema_v31 |
| 92 | +schema_v3_url = schema_v31_url |
| 93 | +openapi_v3_validator_factory = openapi_v31_validator_factory |
| 94 | +openapi_v3_spec_validator = openapi_v31_spec_validator |
| 95 | +validate_v3_spec = validate_v31_spec |
| 96 | +validate_v3_spec_url = validate_v31_spec_url |
61 | 97 |
|
62 | 98 | # aliases to the latest version |
63 | 99 | validate_spec = validate_v3_spec |
|
0 commit comments