Skip to content

validators public api expose #455

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Now you can use it to validate against requests

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator

result = openapi_request_validator.validate(spec, request)

Expand Down Expand Up @@ -111,7 +111,7 @@ You can also validate against responses

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator

result = openapi_response_validator.validate(spec, request, response)

Expand Down Expand Up @@ -140,7 +140,7 @@ In order to explicitly validate a:

.. code:: python

from openapi_core.validation.response import openapi_v31_response_validator
from openapi_core import openapi_v31_response_validator

result = openapi_v31_response_validator.validate(spec, request, response)

Expand Down
22 changes: 11 additions & 11 deletions docs/integrations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ You can use ``DjangoOpenAPIRequest`` as a Django request factory:

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator
from openapi_core.contrib.django import DjangoOpenAPIRequest

openapi_request = DjangoOpenAPIRequest(django_request)
Expand All @@ -66,7 +66,7 @@ You can use ``DjangoOpenAPIResponse`` as a Django response factory:

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.django import DjangoOpenAPIResponse

openapi_response = DjangoOpenAPIResponse(django_response)
Expand Down Expand Up @@ -115,7 +115,7 @@ You can use ``FalconOpenAPIRequest`` as a Falcon request factory:

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator
from openapi_core.contrib.falcon import FalconOpenAPIRequest

openapi_request = FalconOpenAPIRequest(falcon_request)
Expand All @@ -125,7 +125,7 @@ You can use ``FalconOpenAPIResponse`` as a Falcon response factory:

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.falcon import FalconOpenAPIResponse

openapi_response = FalconOpenAPIResponse(falcon_response)
Expand Down Expand Up @@ -196,7 +196,7 @@ You can use ``FlaskOpenAPIRequest`` as a Flask request factory:

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator
from openapi_core.contrib.flask import FlaskOpenAPIRequest

openapi_request = FlaskOpenAPIRequest(flask_request)
Expand All @@ -223,7 +223,7 @@ You can use ``RequestsOpenAPIRequest`` as a Requests request factory:

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator
from openapi_core.contrib.requests import RequestsOpenAPIRequest

openapi_request = RequestsOpenAPIRequest(requests_request)
Expand All @@ -233,7 +233,7 @@ You can use ``RequestsOpenAPIResponse`` as a Requests response factory:

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.requests import RequestsOpenAPIResponse

openapi_response = RequestsOpenAPIResponse(requests_response)
Expand All @@ -252,7 +252,7 @@ You can use ``StarletteOpenAPIRequest`` as a Starlette request factory:

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator
from openapi_core.contrib.starlette import StarletteOpenAPIRequest

openapi_request = StarletteOpenAPIRequest(starlette_request)
Expand All @@ -262,7 +262,7 @@ You can use ``StarletteOpenAPIResponse`` as a Starlette response factory:

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.starlette import StarletteOpenAPIResponse

openapi_response = StarletteOpenAPIResponse(starlette_response)
Expand All @@ -287,7 +287,7 @@ You can use ``WerkzeugOpenAPIRequest`` as a Werkzeug request factory:

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator
from openapi_core.contrib.werkzeug import WerkzeugOpenAPIRequest

openapi_request = WerkzeugOpenAPIRequest(werkzeug_request)
Expand All @@ -297,7 +297,7 @@ You can use ``WerkzeugOpenAPIResponse`` as a Werkzeug response factory:

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.werkzeug import WerkzeugOpenAPIResponse

openapi_response = WerkzeugOpenAPIResponse(werkzeug_response)
Expand Down
4 changes: 2 additions & 2 deletions docs/usage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Now you can use it to validate against requests

.. code-block:: python

from openapi_core.validation.request import openapi_request_validator
from openapi_core import openapi_request_validator

result = openapi_request_validator.validate(spec, request)

Expand Down Expand Up @@ -55,7 +55,7 @@ You can also validate against responses

.. code-block:: python

from openapi_core.validation.response import openapi_response_validator
from openapi_core import openapi_response_validator

result = openapi_response_validator.validate(spec, request, response)

Expand Down
12 changes: 12 additions & 0 deletions openapi_core/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,15 @@
)
from openapi_core.validation.request import openapi_request_security_validator
from openapi_core.validation.request import openapi_request_validator
from openapi_core.validation.request import openapi_v3_request_validator
from openapi_core.validation.request import openapi_v30_request_validator
from openapi_core.validation.request import openapi_v31_request_validator
from openapi_core.validation.response import openapi_response_data_validator
from openapi_core.validation.response import openapi_response_headers_validator
from openapi_core.validation.response import openapi_response_validator
from openapi_core.validation.response import openapi_v3_response_validator
from openapi_core.validation.response import openapi_v30_response_validator
from openapi_core.validation.response import openapi_v31_response_validator
from openapi_core.validation.shortcuts import validate_request
from openapi_core.validation.shortcuts import validate_response

Expand All @@ -22,10 +28,16 @@
"Spec",
"validate_request",
"validate_response",
"openapi_v3_request_validator",
"openapi_v30_request_validator",
"openapi_v31_request_validator",
"openapi_request_body_validator",
"openapi_request_parameters_validator",
"openapi_request_security_validator",
"openapi_request_validator",
"openapi_v3_response_validator",
"openapi_v30_response_validator",
"openapi_v31_response_validator",
"openapi_response_data_validator",
"openapi_response_headers_validator",
"openapi_response_validator",
Expand Down
2 changes: 1 addition & 1 deletion tests/integration/contrib/flask/test_flask_validator.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
from flask.testing import FlaskClient
from flask.wrappers import Response

from openapi_core import openapi_request_validator
from openapi_core.contrib.flask import FlaskOpenAPIRequest
from openapi_core.validation.request import openapi_request_validator


class TestWerkzeugOpenAPIValidation:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
import requests
import responses

from openapi_core import openapi_request_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.requests import RequestsOpenAPIRequest
from openapi_core.contrib.requests import RequestsOpenAPIResponse
from openapi_core.validation.request import openapi_request_validator
from openapi_core.validation.response import openapi_response_validator


class TestRequestsOpenAPIValidation:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@
from starlette.routing import Route
from starlette.testclient import TestClient

from openapi_core import openapi_request_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.starlette import StarletteOpenAPIRequest
from openapi_core.contrib.starlette import StarletteOpenAPIResponse
from openapi_core.validation.request import openapi_request_validator
from openapi_core.validation.response import openapi_response_validator


class TestStarletteOpenAPIValidation:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
from werkzeug.wrappers import Request
from werkzeug.wrappers import Response

from openapi_core import openapi_request_validator
from openapi_core import openapi_response_validator
from openapi_core.contrib.werkzeug import WerkzeugOpenAPIRequest
from openapi_core.contrib.werkzeug import WerkzeugOpenAPIResponse
from openapi_core.validation.request import openapi_request_validator
from openapi_core.validation.response import openapi_response_validator


class TestWerkzeugOpenAPIValidation:
Expand Down
2 changes: 1 addition & 1 deletion tests/integration/validation/test_minimal.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import pytest

from openapi_core import openapi_request_validator
from openapi_core.templating.paths.exceptions import OperationNotFound
from openapi_core.templating.paths.exceptions import PathNotFound
from openapi_core.testing import MockRequest
from openapi_core.validation.request import openapi_request_validator
from openapi_core.validation.request.datatypes import Parameters


Expand Down
2 changes: 1 addition & 1 deletion tests/integration/validation/test_petstore.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import pytest
from isodate.tzinfo import UTC

from openapi_core import openapi_v30_response_validator
from openapi_core.casting.schemas.exceptions import CastError
from openapi_core.deserializing.exceptions import DeserializeError
from openapi_core.deserializing.parameters.exceptions import (
Expand Down Expand Up @@ -35,7 +36,6 @@
from openapi_core.validation.response import (
openapi_v30_response_headers_validator,
)
from openapi_core.validation.response import openapi_v30_response_validator
from openapi_core.validation.shortcuts import validate_request
from openapi_core.validation.shortcuts import validate_response

Expand Down
4 changes: 2 additions & 2 deletions tests/integration/validation/test_read_only_write_only.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@

import pytest

from openapi_core import openapi_v30_request_validator
from openapi_core import openapi_v30_response_validator
from openapi_core.testing import MockRequest
from openapi_core.testing import MockResponse
from openapi_core.unmarshalling.schemas.exceptions import InvalidSchemaValue
from openapi_core.validation.request import openapi_v30_request_validator
from openapi_core.validation.response import openapi_v30_response_validator


@pytest.fixture(scope="class")
Expand Down
2 changes: 1 addition & 1 deletion tests/integration/validation/test_security_override.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import pytest

from openapi_core import openapi_request_validator
from openapi_core.testing import MockRequest
from openapi_core.validation.exceptions import InvalidSecurity
from openapi_core.validation.request import openapi_request_validator


@pytest.fixture(scope="class")
Expand Down