|
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