openapi-core icon indicating copy to clipboard operation
openapi-core copied to clipboard

0.14.2: pytest is failing

Open kloczek opened this issue 3 years ago • 10 comments

I'm trying to package your module as an rpm package. So I'm using the typical PEP517 based build, install and test cycle used on building packages from non-root account.

  • python3 -sBm build -w --no-isolation
  • because I'm calling build with --no-isolation I'm using during all processes only locally installed modules
  • install .whl file in </install/prefix>
  • run pytest with PYTHONPATH pointing to sitearch and sitelib inside </install/prefix>

In below output pytest shows as well few warnings. Here is pytest output:

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2, configfile: setup.cfg
plugins: cov-3.0.0, flake8-1.0.7
collected 613 items / 2 errors / 611 selected
/usr/lib64/python3.8/site-packages/coverage/control.py:768: CoverageWarning: No data was collected. (no-data-collected)
  self._warn("No data was collected.", slug="no-data-collected")

================================================================================== ERRORS ==================================================================================
________________________________________________ ERROR collecting tests/integration/validation/test_read_only_write_only.py ________________________________________________
tests/integration/validation/test_read_only_write_only.py:22: in <module>
    ???
/usr/lib/python3.8/site-packages/_pytest/fixtures.py:1333: in fixture
    return fixture_marker(fixture_function)
/usr/lib/python3.8/site-packages/_pytest/fixtures.py:1210: in __call__
    function = wrap_function_to_error_out_if_called_directly(function, self)
/usr/lib/python3.8/site-packages/_pytest/fixtures.py:1172: in wrap_function_to_error_out_if_called_directly
    ).format(name=fixture_marker.name or function.__name__)
E   AttributeError: 'str' object has no attribute '__name__'
_________________________________________________ ERROR collecting tests/integration/validation/test_security_override.py __________________________________________________
tests/integration/validation/test_security_override.py:17: in <module>
    ???
/usr/lib/python3.8/site-packages/_pytest/fixtures.py:1333: in fixture
    return fixture_marker(fixture_function)
/usr/lib/python3.8/site-packages/_pytest/fixtures.py:1210: in __call__
    function = wrap_function_to_error_out_if_called_directly(function, self)
/usr/lib/python3.8/site-packages/_pytest/fixtures.py:1172: in wrap_function_to_error_out_if_called_directly
    ).format(name=fixture_marker.name or function.__name__)
E   AttributeError: 'str' object has no attribute '__name__'
============================================================================= warnings summary =============================================================================
tests/integration/contrib/django/conftest.py:7
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/django/conftest.py:7: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    @pytest.yield_fixture(autouse=True, scope='module')

tests/integration/contrib/falcon/test_falcon_middlewares.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

../../../../../usr/lib/python3.8/site-packages/falcon/testing/client.py:1796
  /usr/lib/python3.8/site-packages/falcon/testing/client.py:1796: PytestCollectionWarning: cannot collect test class 'TestClient' because it has a __init__ constructor (from: tests/integration/contrib/falcon/test_falcon_middlewares.py)
    class TestClient:

tests/integration/contrib/flask/test_flask_decorator.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_decorator.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/flask/test_flask_views.py:25
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_views.py:25: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

-- Docs: https://docs.pytest.org/en/stable/warnings.html
----------------------------------------- generated xml file: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/reports/junit.xml ------------------------------------------

---------- coverage: platform linux, python 3.8.12-final-0 -----------
Name                                                      Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------
openapi_core/__init__.py                                      8      8     0%   2-13
openapi_core/casting/__init__.py                              0      0   100%
openapi_core/casting/schemas/__init__.py                      0      0   100%
openapi_core/casting/schemas/casters.py                      28     28     0%   1-41
openapi_core/casting/schemas/exceptions.py                    8      8     0%   1-13
openapi_core/casting/schemas/factories.py                    16     16     0%   1-30
openapi_core/casting/schemas/util.py                          6      6     0%   2-10
openapi_core/compat.py                                        9      9     0%   2-12
openapi_core/contrib/__init__.py                              0      0   100%
openapi_core/contrib/django/__init__.py                       5      5     0%   1-8
openapi_core/contrib/django/backports.py                     19     19     0%   4-27
openapi_core/contrib/django/compat.py                         5      5     0%   2-15
openapi_core/contrib/django/requests.py                      20     20     0%   2-51
openapi_core/contrib/django/responses.py                      6      6     0%   2-10
openapi_core/contrib/falcon/__init__.py                       3      3     0%   1-5
openapi_core/contrib/falcon/compat.py                        11     11     0%   2-23
openapi_core/contrib/falcon/handlers.py                      22     22     0%   2-51
openapi_core/contrib/falcon/middlewares.py                   37     37     0%   3-67
openapi_core/contrib/falcon/requests.py                      19     19     0%   2-42
openapi_core/contrib/falcon/responses.py                     12     12     0%   2-19
openapi_core/contrib/falcon/views.py                          0      0   100%
openapi_core/contrib/flask/__init__.py                        5      5     0%   1-8
openapi_core/contrib/flask/decorators.py                     19     19     0%   2-45
openapi_core/contrib/flask/handlers.py                       16     16     0%   2-39
openapi_core/contrib/flask/providers.py                       5      5     0%   2-9
openapi_core/contrib/flask/requests.py                       15     15     0%   2-34
openapi_core/contrib/flask/responses.py                       5      5     0%   2-9
openapi_core/contrib/flask/views.py                          14     14     0%   2-26
openapi_core/contrib/requests/__init__.py                     5      5     0%   1-12
openapi_core/contrib/requests/requests.py                    23     23     0%   2-62
openapi_core/contrib/requests/responses.py                    6      6     0%   2-10
openapi_core/deserializing/__init__.py                        0      0   100%
openapi_core/deserializing/exceptions.py                      8      8     0%   1-13
openapi_core/deserializing/media_types/__init__.py            0      0   100%
openapi_core/deserializing/media_types/deserializers.py      10     10     0%   1-14
openapi_core/deserializing/media_types/factories.py          15     15     0%   1-32
openapi_core/deserializing/media_types/util.py               16     16     0%   1-24
openapi_core/deserializing/parameters/__init__.py             0      0   100%
openapi_core/deserializing/parameters/deserializers.py       19     19     0%   1-29
openapi_core/deserializing/parameters/exceptions.py           7      7     0%   1-11
openapi_core/deserializing/parameters/factories.py           11     11     0%   1-28
openapi_core/exceptions.py                                   38     38     0%   2-69
openapi_core/extensions/__init__.py                           0      0   100%
openapi_core/extensions/models/__init__.py                    0      0   100%
openapi_core/extensions/models/factories.py                  14     14     0%   2-25
openapi_core/extensions/models/models.py                     14     14     0%   4-26
openapi_core/schema/__init__.py                               0      0   100%
openapi_core/schema/parameters.py                            16     16     0%   1-34
openapi_core/schema/schemas.py                               14     14     0%   1-22
openapi_core/schema/servers.py                               16     16     0%   1-24
openapi_core/schema/specs.py                                  5      5     0%   1-8
openapi_core/security/__init__.py                             0      0   100%
openapi_core/security/exceptions.py                           3      3     0%   1-5
openapi_core/security/factories.py                           10     10     0%   1-19
openapi_core/security/providers.py                           29     29     0%   1-45
openapi_core/shortcuts.py                                     6      6     0%   3-14
openapi_core/spec/__init__.py                                 0      0   100%
openapi_core/spec/accessors.py                               16     16     0%   1-23
openapi_core/spec/paths.py                                    9      9     0%   1-14
openapi_core/spec/shortcuts.py                               10     10     0%   2-21
openapi_core/templating/__init__.py                           0      0   100%
openapi_core/templating/datatypes.py                         10     10     0%   1-13
openapi_core/templating/media_types/__init__.py               0      0   100%
openapi_core/templating/media_types/exceptions.py             9      9     0%   1-16
openapi_core/templating/media_types/finders.py               13     13     0%   2-21
openapi_core/templating/paths/__init__.py                     0      0   100%
openapi_core/templating/paths/exceptions.py                  19     19     0%   1-36
openapi_core/templating/paths/finders.py                     63     63     0%   2-101
openapi_core/templating/responses/__init__.py                 0      0   100%
openapi_core/templating/responses/exceptions.py               9      9     0%   1-17
openapi_core/templating/responses/finders.py                 14     14     0%   1-23
openapi_core/templating/util.py                              20     20     0%   1-32
openapi_core/testing/__init__.py                              4      4     0%   2-8
openapi_core/testing/datatypes.py                            13     13     0%   1-18
openapi_core/testing/factories.py                             8      8     0%   1-11
openapi_core/testing/mock.py                                  3      3     0%   3-6
openapi_core/testing/requests.py                             12     12     0%   2-27
openapi_core/testing/responses.py                             5      5     0%   2-9
openapi_core/types.py                                         1      1     0%   1
openapi_core/unmarshalling/__init__.py                        0      0   100%
openapi_core/unmarshalling/schemas/__init__.py                0      0   100%
openapi_core/unmarshalling/schemas/enums.py                   4      4     0%   2-7
openapi_core/unmarshalling/schemas/exceptions.py             27     27     0%   1-55
openapi_core/unmarshalling/schemas/factories.py              45     45     0%   1-89
openapi_core/unmarshalling/schemas/formatters.py             14     14     0%   1-18
openapi_core/unmarshalling/schemas/unmarshallers.py         176    176     0%   1-311
openapi_core/unmarshalling/schemas/util.py                   32     32     0%   2-50
openapi_core/validation/__init__.py                           0      0   100%
openapi_core/validation/datatypes.py                          7      7     0%   2-11
openapi_core/validation/decorators.py                        36     36     0%   2-59
openapi_core/validation/exceptions.py                         8      8     0%   2-15
openapi_core/validation/processors.py                         8      8     0%   4-14
openapi_core/validation/request/__init__.py                   0      0   100%
openapi_core/validation/request/datatypes.py                 26     26     0%   2-68
openapi_core/validation/request/shortcuts.py                 33     33     0%   2-57
openapi_core/validation/request/validators.py               168    168     0%   2-255
openapi_core/validation/response/__init__.py                  0      0   100%
openapi_core/validation/response/datatypes.py                11     11     0%   2-29
openapi_core/validation/response/shortcuts.py                19     19     0%   2-36
openapi_core/validation/response/validators.py               74     74     0%   2-118
openapi_core/validation/validators.py                        39     39     0%   2-66
---------------------------------------------------------------------------------------
TOTAL                                                      1563   1563     0%
Coverage XML written to file reports/coverage.xml

========================================================================= short test summary info ==========================================================================
ERROR tests/integration/validation/test_read_only_write_only.py - AttributeError: 'str' object has no attribute '__name__'
ERROR tests/integration/validation/test_security_override.py - AttributeError: 'str' object has no attribute '__name__'
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 2 errors during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
====================================================================== 5 warnings, 2 errors in 4.95s =======================================================================

kloczek avatar Jan 20 '22 16:01 kloczek

And after ignore those two problematic files:

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra -q --ignore tests/integration/validation/test_read_only_write_only.py --ignore tests/integration/validation/test_security_override.py
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2, configfile: setup.cfg
plugins: cov-3.0.0, flake8-1.0.7
collected 611 items

setup.py .
docs/conf.py .
openapi_core/__init__.py .
openapi_core/compat.py .
openapi_core/exceptions.py .
openapi_core/shortcuts.py .
openapi_core/types.py .
openapi_core/casting/__init__.py .
openapi_core/casting/schemas/__init__.py .
openapi_core/casting/schemas/casters.py .
openapi_core/casting/schemas/exceptions.py .
openapi_core/casting/schemas/factories.py .
openapi_core/casting/schemas/util.py .
openapi_core/contrib/__init__.py .
openapi_core/contrib/django/__init__.py .
openapi_core/contrib/django/backports.py .
openapi_core/contrib/django/compat.py .
openapi_core/contrib/django/requests.py .
openapi_core/contrib/django/responses.py .
openapi_core/contrib/falcon/__init__.py .
openapi_core/contrib/falcon/compat.py .
openapi_core/contrib/falcon/handlers.py .
openapi_core/contrib/falcon/middlewares.py .
openapi_core/contrib/falcon/requests.py .
openapi_core/contrib/falcon/responses.py .
openapi_core/contrib/falcon/views.py .
openapi_core/contrib/flask/__init__.py .
openapi_core/contrib/flask/decorators.py .
openapi_core/contrib/flask/handlers.py .
openapi_core/contrib/flask/providers.py .
openapi_core/contrib/flask/requests.py .
openapi_core/contrib/flask/responses.py .
openapi_core/contrib/flask/views.py .
openapi_core/contrib/requests/__init__.py .
openapi_core/contrib/requests/requests.py .
openapi_core/contrib/requests/responses.py .
openapi_core/deserializing/__init__.py .
openapi_core/deserializing/exceptions.py .
openapi_core/deserializing/media_types/__init__.py .
openapi_core/deserializing/media_types/deserializers.py .
openapi_core/deserializing/media_types/factories.py .
openapi_core/deserializing/media_types/util.py .
openapi_core/deserializing/parameters/__init__.py .
openapi_core/deserializing/parameters/deserializers.py .
openapi_core/deserializing/parameters/exceptions.py .
openapi_core/deserializing/parameters/factories.py .
openapi_core/extensions/__init__.py .
openapi_core/extensions/models/__init__.py .
openapi_core/extensions/models/factories.py .
openapi_core/extensions/models/models.py .
openapi_core/schema/__init__.py .
openapi_core/schema/parameters.py .
openapi_core/schema/schemas.py .
openapi_core/schema/servers.py .
openapi_core/schema/specs.py .
openapi_core/security/__init__.py .
openapi_core/security/exceptions.py .
openapi_core/security/factories.py .
openapi_core/security/providers.py .
openapi_core/spec/__init__.py .
openapi_core/spec/accessors.py .
openapi_core/spec/paths.py .
openapi_core/spec/shortcuts.py .
openapi_core/templating/__init__.py .
openapi_core/templating/datatypes.py .
openapi_core/templating/util.py .
openapi_core/templating/media_types/__init__.py .
openapi_core/templating/media_types/exceptions.py .
openapi_core/templating/media_types/finders.py .
openapi_core/templating/paths/__init__.py .
openapi_core/templating/paths/exceptions.py .
openapi_core/templating/paths/finders.py .
openapi_core/templating/responses/__init__.py .
openapi_core/templating/responses/exceptions.py .
openapi_core/templating/responses/finders.py .
openapi_core/testing/__init__.py .
openapi_core/testing/datatypes.py .
openapi_core/testing/factories.py .
openapi_core/testing/mock.py .
openapi_core/testing/requests.py .
openapi_core/testing/responses.py .
openapi_core/unmarshalling/__init__.py .
openapi_core/unmarshalling/schemas/__init__.py .
openapi_core/unmarshalling/schemas/enums.py .
openapi_core/unmarshalling/schemas/exceptions.py .
openapi_core/unmarshalling/schemas/factories.py .
openapi_core/unmarshalling/schemas/formatters.py .
openapi_core/unmarshalling/schemas/unmarshallers.py .
openapi_core/unmarshalling/schemas/util.py .
openapi_core/validation/__init__.py .
openapi_core/validation/datatypes.py .
openapi_core/validation/decorators.py .
openapi_core/validation/exceptions.py .
openapi_core/validation/processors.py .
openapi_core/validation/validators.py .
openapi_core/validation/request/__init__.py .
openapi_core/validation/request/datatypes.py .
openapi_core/validation/request/shortcuts.py .
openapi_core/validation/request/validators.py .
openapi_core/validation/response/__init__.py .
openapi_core/validation/response/datatypes.py .
openapi_core/validation/response/shortcuts.py .
openapi_core/validation/response/validators.py .
tests/integration/conftest.py .
tests/integration/contrib/test_django.py .EEE..FF
tests/integration/contrib/django/conftest.py .
tests/integration/contrib/django/test_django_rest_framework_apiview.py .E
tests/integration/contrib/django/data/djangoproject/__init__.py .
tests/integration/contrib/django/data/djangoproject/settings.py .
tests/integration/contrib/django/data/djangoproject/urls.py .
tests/integration/contrib/django/data/djangoproject/testapp/__init__.py .
tests/integration/contrib/django/data/djangoproject/testapp/views.py .
tests/integration/contrib/django/data/djangoproject/testapp/migrations/__init__.py .
tests/integration/contrib/falcon/conftest.py .
tests/integration/contrib/falcon/test_falcon_middlewares.py .......
tests/integration/contrib/falcon/test_falcon_validation.py ....
tests/integration/contrib/flask/conftest.py .
tests/integration/contrib/flask/test_flask_decorator.py .......
tests/integration/contrib/flask/test_flask_requests.py ....
tests/integration/contrib/flask/test_flask_responses.py ..
tests/integration/contrib/flask/test_flask_validation.py ...
tests/integration/contrib/flask/test_flask_views.py .......
tests/integration/contrib/requests/conftest.py .
tests/integration/contrib/requests/test_requests_requests.py ....
tests/integration/contrib/requests/test_requests_responses.py ..
tests/integration/contrib/requests/test_requests_validation.py ....
tests/integration/schema/test_empty.py ..
tests/integration/schema/test_link_spec.py ...
tests/integration/schema/test_path_params.py ..
tests/integration/schema/test_spec.py ..
tests/integration/validation/test_minimal.py ...............................
tests/integration/validation/test_petstore.py ............x......................
tests/integration/validation/test_validators.py ..........................
tests/unit/deserializing/test_media_types_deserializers.py .........
tests/unit/deserializing/test_parameters_deserializers.py ....
tests/unit/extensions/test_models.py .....
tests/unit/security/test_providers.py ....
tests/unit/templating/test_paths_finders.py .X..x..x...........X..x..x...........
tests/unit/templating/test_responses_finders.py ....
tests/unit/templating/test_util.py ...
tests/unit/unmarshalling/test_unmarshal.py ..................F.....F........................................
tests/unit/unmarshalling/test_validate.py ............................................................................................................F......FF................................................................................
tests/unit/validation/test_request_shortcuts.py .........
tests/unit/validation/test_response_shortcuts.py ...../usr/lib64/python3.8/site-packages/coverage/control.py:768: CoverageWarning: No data was collected. (no-data-collected)
  self._warn("No data was collected.", slug="no-data-collected")


================================================================================== ERRORS ==================================================================================
_______________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_no_resolver ________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f1feac2d9a0>

    @pytest.fixture(autouse=True, scope='module')
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path

        if settings.configured:
            return

        settings.configure(
            ALLOWED_HOSTS=[
                'testserver',
            ],
            INSTALLED_APPS=[
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.messages',
                'django.contrib.sessions',
            ],
            MIDDLEWARE=[
                'django.contrib.sessions.middleware.SessionMiddleware',
                'django.contrib.auth.middleware.AuthenticationMiddleware',
                'django.contrib.messages.middleware.MessageMiddleware',
            ]
        )
>       django.setup()

tests/integration/contrib/test_django.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
/usr/lib/python3.8/site-packages/django/apps/registry.py:122: in populate
    app_config.ready()
/usr/lib/python3.8/site-packages/django/contrib/admin/apps.py:27: in ready
    self.module.autodiscover()
/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py:24: in autodiscover
    autodiscover_modules('admin', register_to=site)
/usr/lib/python3.8/site-packages/django/utils/module_loading.py:47: in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:843: in exec_module
    ???
<frozen importlib._bootstrap>:219: in _call_with_frames_removed
    ???
/usr/lib/python3.8/site-packages/django/contrib/auth/admin.py:6: in <module>
    from django.contrib.auth.forms import (
/usr/lib/python3.8/site-packages/django/contrib/auth/forms.py:11: in <module>
    from django.contrib.auth.tokens import default_token_generator
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:117: in <module>
    default_token_generator = PasswordResetTokenGenerator()
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:18: in __init__
    self.secret = self.secret or settings.SECRET_KEY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <LazySettings "None">, name = 'SECRET_KEY'

    def __getattr__(self, name):
        """Return the value of a setting and cache it in self.__dict__."""
        if self._wrapped is empty:
            self._setup(name)
        val = getattr(self._wrapped, name)

        # Special case some settings which require further modification.
        # This is done here for performance reasons so the modified value is cached.
        if name in {'MEDIA_URL', 'STATIC_URL'} and val is not None:
            val = self._add_script_prefix(val)
        elif name == 'SECRET_KEY' and not val:
>           raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
E           django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

/usr/lib/python3.8/site-packages/django/conf/__init__.py:90: ImproperlyConfigured
__________________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_simple __________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f1feac2d9a0>

    @pytest.fixture(autouse=True, scope='module')
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path

        if settings.configured:
            return

        settings.configure(
            ALLOWED_HOSTS=[
                'testserver',
            ],
            INSTALLED_APPS=[
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.messages',
                'django.contrib.sessions',
            ],
            MIDDLEWARE=[
                'django.contrib.sessions.middleware.SessionMiddleware',
                'django.contrib.auth.middleware.AuthenticationMiddleware',
                'django.contrib.messages.middleware.MessageMiddleware',
            ]
        )
>       django.setup()

tests/integration/contrib/test_django.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
/usr/lib/python3.8/site-packages/django/apps/registry.py:122: in populate
    app_config.ready()
/usr/lib/python3.8/site-packages/django/contrib/admin/apps.py:27: in ready
    self.module.autodiscover()
/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py:24: in autodiscover
    autodiscover_modules('admin', register_to=site)
/usr/lib/python3.8/site-packages/django/utils/module_loading.py:47: in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:843: in exec_module
    ???
<frozen importlib._bootstrap>:219: in _call_with_frames_removed
    ???
/usr/lib/python3.8/site-packages/django/contrib/auth/admin.py:6: in <module>
    from django.contrib.auth.forms import (
/usr/lib/python3.8/site-packages/django/contrib/auth/forms.py:11: in <module>
    from django.contrib.auth.tokens import default_token_generator
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:117: in <module>
    default_token_generator = PasswordResetTokenGenerator()
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:18: in __init__
    self.secret = self.secret or settings.SECRET_KEY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <LazySettings "None">, name = 'SECRET_KEY'

    def __getattr__(self, name):
        """Return the value of a setting and cache it in self.__dict__."""
        if self._wrapped is empty:
            self._setup(name)
        val = getattr(self._wrapped, name)

        # Special case some settings which require further modification.
        # This is done here for performance reasons so the modified value is cached.
        if name in {'MEDIA_URL', 'STATIC_URL'} and val is not None:
            val = self._add_script_prefix(val)
        elif name == 'SECRET_KEY' and not val:
>           raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
E           django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

/usr/lib/python3.8/site-packages/django/conf/__init__.py:90: ImproperlyConfigured
_________________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_url_rule _________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f1feac2d9a0>

    @pytest.fixture(autouse=True, scope='module')
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path

        if settings.configured:
            return

        settings.configure(
            ALLOWED_HOSTS=[
                'testserver',
            ],
            INSTALLED_APPS=[
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.messages',
                'django.contrib.sessions',
            ],
            MIDDLEWARE=[
                'django.contrib.sessions.middleware.SessionMiddleware',
                'django.contrib.auth.middleware.AuthenticationMiddleware',
                'django.contrib.messages.middleware.MessageMiddleware',
            ]
        )
>       django.setup()

tests/integration/contrib/test_django.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
/usr/lib/python3.8/site-packages/django/apps/registry.py:122: in populate
    app_config.ready()
/usr/lib/python3.8/site-packages/django/contrib/admin/apps.py:27: in ready
    self.module.autodiscover()
/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py:24: in autodiscover
    autodiscover_modules('admin', register_to=site)
/usr/lib/python3.8/site-packages/django/utils/module_loading.py:47: in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:843: in exec_module
    ???
<frozen importlib._bootstrap>:219: in _call_with_frames_removed
    ???
/usr/lib/python3.8/site-packages/django/contrib/auth/admin.py:6: in <module>
    from django.contrib.auth.forms import (
/usr/lib/python3.8/site-packages/django/contrib/auth/forms.py:11: in <module>
    from django.contrib.auth.tokens import default_token_generator
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:117: in <module>
    default_token_generator = PasswordResetTokenGenerator()
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:18: in __init__
    self.secret = self.secret or settings.SECRET_KEY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <LazySettings "None">, name = 'SECRET_KEY'

    def __getattr__(self, name):
        """Return the value of a setting and cache it in self.__dict__."""
        if self._wrapped is empty:
            self._setup(name)
        val = getattr(self._wrapped, name)

        # Special case some settings which require further modification.
        # This is done here for performance reasons so the modified value is cached.
        if name in {'MEDIA_URL', 'STATIC_URL'} and val is not None:
            val = self._add_script_prefix(val)
        elif name == 'SECRET_KEY' and not val:
>           raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
E           django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

/usr/lib/python3.8/site-packages/django/conf/__init__.py:90: ImproperlyConfigured
________________________________________________________ ERROR at setup of TestDjangoRESTFrameworkAPIView.test_get _________________________________________________________

    @pytest.yield_fixture(autouse=True, scope='module')
    def django_setup():
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, 'data')
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                'DJANGO_SETTINGS_MODULE': 'djangoproject.settings',
            }
        ):
            import django
>           django.setup()

tests/integration/contrib/django/conftest.py:19:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f1fea81e8e0>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
================================================================================= FAILURES =================================================================================
_____________________________________________________ TestDjangoOpenAPIValidation.test_response_validator_path_pattern _____________________________________________________

self = <test_django.TestDjangoOpenAPIValidation object at 0x7f1fe9a11d00>, django_spec = SpecPath('')
request_factory = <django.test.client.RequestFactory object at 0x7f1fe99bfee0>
response_factory = <function BaseTestDjango.response_factory.<locals>.create at 0x7f1fe9a8e3a0>

    def test_response_validator_path_pattern(
            self, django_spec, request_factory, response_factory):
        from django.urls import resolve
        validator = ResponseValidator(django_spec)
        request = request_factory.get('/admin/auth/group/1/')
>       request.resolver_match = resolve('/admin/auth/group/1/')

tests/integration/contrib/test_django.py:177:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/urls/base.py:24: in resolve
    return get_resolver(urlconf).resolve(path)
/usr/lib/python3.8/site-packages/django/urls/resolvers.py:70: in get_resolver
    urlconf = settings.ROOT_URLCONF
/usr/lib/python3.8/site-packages/django/conf/__init__.py:83: in __getattr__
    val = getattr(self._wrapped, name)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <UserSettingsHolder>, name = 'ROOT_URLCONF'

    def __getattr__(self, name):
        if not name.isupper() or name in self._deleted:
            raise AttributeError
>       return getattr(self.default_settings, name)
E       AttributeError: module 'django.conf.global_settings' has no attribute 'ROOT_URLCONF'

/usr/lib/python3.8/site-packages/django/conf/__init__.py:239: AttributeError
_____________________________________________________ TestDjangoOpenAPIValidation.test_request_validator_path_pattern ______________________________________________________

self = <test_django.TestDjangoOpenAPIValidation object at 0x7f1fea259fd0>, django_spec = SpecPath('')
request_factory = <django.test.client.RequestFactory object at 0x7f1fe98c1340>

    def test_request_validator_path_pattern(
            self, django_spec, request_factory):
        from django.urls import resolve
        validator = RequestValidator(django_spec)
        request = request_factory.get('/admin/auth/group/1/')
>       request.resolver_match = resolve('/admin/auth/group/1/')

tests/integration/contrib/test_django.py:189:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/urls/base.py:24: in resolve
    return get_resolver(urlconf).resolve(path)
/usr/lib/python3.8/site-packages/django/urls/resolvers.py:70: in get_resolver
    urlconf = settings.ROOT_URLCONF
/usr/lib/python3.8/site-packages/django/conf/__init__.py:83: in __getattr__
    val = getattr(self._wrapped, name)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <UserSettingsHolder>, name = 'ROOT_URLCONF'

    def __getattr__(self, name):
        if not name.isupper() or name in self._deleted:
            raise AttributeError
>       return getattr(self.default_settings, name)
E       AttributeError: module 'django.conf.global_settings' has no attribute 'ROOT_URLCONF'

/usr/lib/python3.8/site-packages/django/conf/__init__.py:239: AttributeError
______________________________________________________ TestSchemaUnmarshallerCall.test_string_format_datetime_invalid ______________________________________________________

self = <test_unmarshal.TestSchemaUnmarshallerCall object at 0x7f1fe9006eb0>
unmarshaller_factory = <function unmarshaller_factory.<locals>.create_unmarshaller at 0x7f1fe917ab80>

    def test_string_format_datetime_invalid(self, unmarshaller_factory):
        spec = {
            'type': 'string',
            'format': 'date-time',
        }
        schema = SpecPath.from_spec(spec)
        value = '2018-01-02T00:00:00'

        with pytest.raises(InvalidSchemaValue):
>           unmarshaller_factory(schema)(value)
E           Failed: DID NOT RAISE <class 'openapi_core.unmarshalling.schemas.exceptions.InvalidSchemaValue'>

tests/unit/unmarshalling/test_unmarshal.py:210: Failed
_______________________________________________________ TestSchemaUnmarshallerCall.test_string_format_invalid_value ________________________________________________________

self = <test_unmarshal.TestSchemaUnmarshallerCall object at 0x7f1fe9009a00>
unmarshaller_factory = <function unmarshaller_factory.<locals>.create_unmarshaller at 0x7f1fe917a430>

    def test_string_format_invalid_value(self, unmarshaller_factory):
        custom_format = 'custom'
        spec = {
            'type': 'string',
            'format': custom_format,
        }
        schema = SpecPath.from_spec(spec)
        value = 'x'

>       with pytest.raises(
            FormatterNotFoundError,
            message=(
                'Formatter not found for custom format'
            ),
        ):
E       TypeError: Unexpected keyword arguments passed to pytest.raises: message
E       Use context-manager form instead?

tests/unit/unmarshalling/test_unmarshal.py:303: TypeError
______________________________________________________ TestSchemaValidate.test_string_format_datetime_invalid[true0] _______________________________________________________

self = <test_validate.TestSchemaValidate object at 0x7f1fe91cfc10>, value = b'true'
validator_factory = <function TestSchemaValidate.validator_factory.<locals>.create_validator at 0x7f1fe9627ca0>

    @pytest.mark.parametrize('value', [
        b('true'), u('true'), False, 1, 3.14, [1, 3],
        u('1989-01-02'),
    ])
    def test_string_format_datetime_invalid(self, value, validator_factory):
        spec = {
            'type': 'string',
            'format': 'date-time',
        }
        schema = SpecPath.from_spec(spec)

        with pytest.raises(InvalidSchemaValue):
>           validator_factory(schema).validate(value)

tests/unit/unmarshalling/test_validate.py:443:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/unmarshalling/schemas/unmarshallers.py:61: in validate
    errors = tuple(errors_iter)
/usr/lib/python3.8/site-packages/jsonschema/validators.py:229: in iter_errors
    for error in errors:
/usr/lib/python3.8/site-packages/openapi_schema_validator/_validators.py:19: in format
    validator.format_checker.check(instance, format)
/usr/lib/python3.8/site-packages/openapi_schema_validator/_format.py:135: in check
    result = func(instance)
/usr/lib/python3.8/site-packages/openapi_schema_validator/_format.py:82: in is_datetime
    return isodate.parse_datetime(instance)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

datetimestring = b'true'

    def parse_datetime(datetimestring):
        '''
        Parses ISO 8601 date-times into datetime.datetime objects.

        This function uses parse_date and parse_time to do the job, so it allows
        more combinations of date and time representations, than the actual
        ISO 8601:2004 standard allows.
        '''
        try:
>           datestring, timestring = datetimestring.split('T')
E           TypeError: a bytes-like object is required, not 'str'

/usr/lib/python3.8/site-packages/isodate/isodatetime.py:51: TypeError
___________________________________________ TestSchemaValidate.test_string_format_datetime_strict_rfc3339[1989-01-02T00:00:00Z] ____________________________________________

self = <test_validate.TestSchemaValidate object at 0x7f1fe937c6d0>, value = '1989-01-02T00:00:00Z'
validator_factory = <function TestSchemaValidate.validator_factory.<locals>.create_validator at 0x7f1fe902a700>

    @pytest.mark.parametrize('value', [
        u('1989-01-02T00:00:00Z'),
        u('2018-01-02T23:59:59Z'),
    ])
    @mock.patch(
        'openapi_schema_validator._format.'
        'DATETIME_HAS_STRICT_RFC3339', True
    )
    @mock.patch(
        'openapi_schema_validator._format.'
        'DATETIME_HAS_ISODATE', False
    )
    def test_string_format_datetime_strict_rfc3339(
            self, value, validator_factory):
        spec = {
            'type': 'string',
            'format': 'date-time',
        }
        schema = SpecPath.from_spec(spec)

>       result = validator_factory(schema).validate(value)

tests/unit/unmarshalling/test_validate.py:465:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/unmarshalling/schemas/unmarshallers.py:61: in validate
    errors = tuple(errors_iter)
/usr/lib/python3.8/site-packages/jsonschema/validators.py:229: in iter_errors
    for error in errors:
/usr/lib/python3.8/site-packages/openapi_schema_validator/_validators.py:19: in format
    validator.format_checker.check(instance, format)
/usr/lib/python3.8/site-packages/openapi_schema_validator/_format.py:135: in check
    result = func(instance)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

instance = '1989-01-02T00:00:00Z'

    def is_datetime(instance):
        if not isinstance(instance, (bytes, str)):
            return False

        if DATETIME_HAS_RFC3339_VALIDATOR:
            return validate_rfc3339(instance)

        if DATETIME_HAS_STRICT_RFC3339:
>           return strict_rfc3339.validate_rfc3339(instance)
E           NameError: name 'strict_rfc3339' is not defined

/usr/lib/python3.8/site-packages/openapi_schema_validator/_format.py:79: NameError
___________________________________________ TestSchemaValidate.test_string_format_datetime_strict_rfc3339[2018-01-02T23:59:59Z] ____________________________________________

self = <test_validate.TestSchemaValidate object at 0x7f1fe95362b0>, value = '2018-01-02T23:59:59Z'
validator_factory = <function TestSchemaValidate.validator_factory.<locals>.create_validator at 0x7f1fe902ab80>

    @pytest.mark.parametrize('value', [
        u('1989-01-02T00:00:00Z'),
        u('2018-01-02T23:59:59Z'),
    ])
    @mock.patch(
        'openapi_schema_validator._format.'
        'DATETIME_HAS_STRICT_RFC3339', True
    )
    @mock.patch(
        'openapi_schema_validator._format.'
        'DATETIME_HAS_ISODATE', False
    )
    def test_string_format_datetime_strict_rfc3339(
            self, value, validator_factory):
        spec = {
            'type': 'string',
            'format': 'date-time',
        }
        schema = SpecPath.from_spec(spec)

>       result = validator_factory(schema).validate(value)

tests/unit/unmarshalling/test_validate.py:465:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/unmarshalling/schemas/unmarshallers.py:61: in validate
    errors = tuple(errors_iter)
/usr/lib/python3.8/site-packages/jsonschema/validators.py:229: in iter_errors
    for error in errors:
/usr/lib/python3.8/site-packages/openapi_schema_validator/_validators.py:19: in format
    validator.format_checker.check(instance, format)
/usr/lib/python3.8/site-packages/openapi_schema_validator/_format.py:135: in check
    result = func(instance)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

instance = '2018-01-02T23:59:59Z'

    def is_datetime(instance):
        if not isinstance(instance, (bytes, str)):
            return False

        if DATETIME_HAS_RFC3339_VALIDATOR:
            return validate_rfc3339(instance)

        if DATETIME_HAS_STRICT_RFC3339:
>           return strict_rfc3339.validate_rfc3339(instance)
E           NameError: name 'strict_rfc3339' is not defined

/usr/lib/python3.8/site-packages/openapi_schema_validator/_format.py:79: NameError
============================================================================= warnings summary =============================================================================
tests/integration/contrib/django/conftest.py:7
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/django/conftest.py:7: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    @pytest.yield_fixture(autouse=True, scope='module')

tests/integration/contrib/falcon/test_falcon_middlewares.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

../../../../../usr/lib/python3.8/site-packages/falcon/testing/client.py:1796
  /usr/lib/python3.8/site-packages/falcon/testing/client.py:1796: PytestCollectionWarning: cannot collect test class 'TestClient' because it has a __init__ constructor (from: tests/integration/contrib/falcon/test_falcon_middlewares.py)
    class TestClient:

tests/integration/contrib/flask/test_flask_decorator.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_decorator.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/flask/test_flask_views.py:25
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_views.py:25: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_invalid_content_type
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_server_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_operation_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_path_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_endpoint_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_valid
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:27: DeprecatedWarning: Call to deprecated function __init__(...). API class may be removed in a future release, use falcon.App instead.
    return App(middleware=[middleware])

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_invalid_content_type
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:70: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    response.body = 'success'

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_valid
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:193: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    response.body = dumps({

tests/integration/contrib/falcon/test_falcon_validation.py::TestFalconOpenAPIValidation::test_response_validator_path_pattern
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/conftest.py:46: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    resp.body = data

tests/integration/contrib/requests/test_requests_validation.py::TestRequestsOpenAPIValidation::test_response_validator_path_pattern
  /usr/lib/python3.8/site-packages/responses/__init__.py:334: DeprecationWarning: Argument 'match_querystring' is deprecated. Use 'responses.matchers.query_param_matcher' or 'responses.matchers.query_string_matcher'
    warn(

tests/integration/validation/test_petstore.py: 34 warnings
tests/unit/validation/test_request_shortcuts.py: 4 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/request/shortcuts.py:19: DeprecationWarning: validate_parameters shortcut is deprecated, use validator.validate instead
    warnings.warn(

tests/integration/validation/test_petstore.py: 33 warnings
tests/unit/validation/test_request_shortcuts.py: 4 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/request/shortcuts.py:30: DeprecationWarning: validate_body shortcut is deprecated, use validator.validate instead
    warnings.warn(

tests/integration/validation/test_petstore.py::TestPetstore::test_get_pets_invalid_response
tests/integration/validation/test_petstore.py::TestPetstore::test_post_pets_raises_invalid_server_error
tests/integration/validation/test_petstore.py::TestPetstore::test_post_tags_created_datetime
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_no_factories
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_no_factories_error
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_factories
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_factories_error
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/response/shortcuts.py:14: DeprecationWarning: validate_data shortcut is deprecated, use validator.validate instead
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/warnings.html
----------------------------------------- generated xml file: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/reports/junit.xml ------------------------------------------

---------- coverage: platform linux, python 3.8.12-final-0 -----------
Name                                                      Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------
openapi_core/__init__.py                                      8      8     0%   2-13
openapi_core/casting/__init__.py                              0      0   100%
openapi_core/casting/schemas/__init__.py                      0      0   100%
openapi_core/casting/schemas/casters.py                      28     28     0%   1-41
openapi_core/casting/schemas/exceptions.py                    8      8     0%   1-13
openapi_core/casting/schemas/factories.py                    16     16     0%   1-30
openapi_core/casting/schemas/util.py                          6      6     0%   2-10
openapi_core/compat.py                                        9      9     0%   2-12
openapi_core/contrib/__init__.py                              0      0   100%
openapi_core/contrib/django/__init__.py                       5      5     0%   1-8
openapi_core/contrib/django/backports.py                     19     19     0%   4-27
openapi_core/contrib/django/compat.py                         5      5     0%   2-15
openapi_core/contrib/django/requests.py                      20     20     0%   2-51
openapi_core/contrib/django/responses.py                      6      6     0%   2-10
openapi_core/contrib/falcon/__init__.py                       3      3     0%   1-5
openapi_core/contrib/falcon/compat.py                        11     11     0%   2-23
openapi_core/contrib/falcon/handlers.py                      22     22     0%   2-51
openapi_core/contrib/falcon/middlewares.py                   37     37     0%   3-67
openapi_core/contrib/falcon/requests.py                      19     19     0%   2-42
openapi_core/contrib/falcon/responses.py                     12     12     0%   2-19
openapi_core/contrib/falcon/views.py                          0      0   100%
openapi_core/contrib/flask/__init__.py                        5      5     0%   1-8
openapi_core/contrib/flask/decorators.py                     19     19     0%   2-45
openapi_core/contrib/flask/handlers.py                       16     16     0%   2-39
openapi_core/contrib/flask/providers.py                       5      5     0%   2-9
openapi_core/contrib/flask/requests.py                       15     15     0%   2-34
openapi_core/contrib/flask/responses.py                       5      5     0%   2-9
openapi_core/contrib/flask/views.py                          14     14     0%   2-26
openapi_core/contrib/requests/__init__.py                     5      5     0%   1-12
openapi_core/contrib/requests/requests.py                    23     23     0%   2-62
openapi_core/contrib/requests/responses.py                    6      6     0%   2-10
openapi_core/deserializing/__init__.py                        0      0   100%
openapi_core/deserializing/exceptions.py                      8      8     0%   1-13
openapi_core/deserializing/media_types/__init__.py            0      0   100%
openapi_core/deserializing/media_types/deserializers.py      10     10     0%   1-14
openapi_core/deserializing/media_types/factories.py          15     15     0%   1-32
openapi_core/deserializing/media_types/util.py               16     16     0%   1-24
openapi_core/deserializing/parameters/__init__.py             0      0   100%
openapi_core/deserializing/parameters/deserializers.py       19     19     0%   1-29
openapi_core/deserializing/parameters/exceptions.py           7      7     0%   1-11
openapi_core/deserializing/parameters/factories.py           11     11     0%   1-28
openapi_core/exceptions.py                                   38     38     0%   2-69
openapi_core/extensions/__init__.py                           0      0   100%
openapi_core/extensions/models/__init__.py                    0      0   100%
openapi_core/extensions/models/factories.py                  14     14     0%   2-25
openapi_core/extensions/models/models.py                     14     14     0%   4-26
openapi_core/schema/__init__.py                               0      0   100%
openapi_core/schema/parameters.py                            16     16     0%   1-34
openapi_core/schema/schemas.py                               14     14     0%   1-22
openapi_core/schema/servers.py                               16     16     0%   1-24
openapi_core/schema/specs.py                                  5      5     0%   1-8
openapi_core/security/__init__.py                             0      0   100%
openapi_core/security/exceptions.py                           3      3     0%   1-5
openapi_core/security/factories.py                           10     10     0%   1-19
openapi_core/security/providers.py                           29     29     0%   1-45
openapi_core/shortcuts.py                                     6      6     0%   3-14
openapi_core/spec/__init__.py                                 0      0   100%
openapi_core/spec/accessors.py                               16     16     0%   1-23
openapi_core/spec/paths.py                                    9      9     0%   1-14
openapi_core/spec/shortcuts.py                               10     10     0%   2-21
openapi_core/templating/__init__.py                           0      0   100%
openapi_core/templating/datatypes.py                         10     10     0%   1-13
openapi_core/templating/media_types/__init__.py               0      0   100%
openapi_core/templating/media_types/exceptions.py             9      9     0%   1-16
openapi_core/templating/media_types/finders.py               13     13     0%   2-21
openapi_core/templating/paths/__init__.py                     0      0   100%
openapi_core/templating/paths/exceptions.py                  19     19     0%   1-36
openapi_core/templating/paths/finders.py                     63     63     0%   2-101
openapi_core/templating/responses/__init__.py                 0      0   100%
openapi_core/templating/responses/exceptions.py               9      9     0%   1-17
openapi_core/templating/responses/finders.py                 14     14     0%   1-23
openapi_core/templating/util.py                              20     20     0%   1-32
openapi_core/testing/__init__.py                              4      4     0%   2-8
openapi_core/testing/datatypes.py                            13     13     0%   1-18
openapi_core/testing/factories.py                             8      8     0%   1-11
openapi_core/testing/mock.py                                  3      3     0%   3-6
openapi_core/testing/requests.py                             12     12     0%   2-27
openapi_core/testing/responses.py                             5      5     0%   2-9
openapi_core/types.py                                         1      1     0%   1
openapi_core/unmarshalling/__init__.py                        0      0   100%
openapi_core/unmarshalling/schemas/__init__.py                0      0   100%
openapi_core/unmarshalling/schemas/enums.py                   4      4     0%   2-7
openapi_core/unmarshalling/schemas/exceptions.py             27     27     0%   1-55
openapi_core/unmarshalling/schemas/factories.py              45     45     0%   1-89
openapi_core/unmarshalling/schemas/formatters.py             14     14     0%   1-18
openapi_core/unmarshalling/schemas/unmarshallers.py         176    176     0%   1-311
openapi_core/unmarshalling/schemas/util.py                   32     32     0%   2-50
openapi_core/validation/__init__.py                           0      0   100%
openapi_core/validation/datatypes.py                          7      7     0%   2-11
openapi_core/validation/decorators.py                        36     36     0%   2-59
openapi_core/validation/exceptions.py                         8      8     0%   2-15
openapi_core/validation/processors.py                         8      8     0%   4-14
openapi_core/validation/request/__init__.py                   0      0   100%
openapi_core/validation/request/datatypes.py                 26     26     0%   2-68
openapi_core/validation/request/shortcuts.py                 33     33     0%   2-57
openapi_core/validation/request/validators.py               168    168     0%   2-255
openapi_core/validation/response/__init__.py                  0      0   100%
openapi_core/validation/response/datatypes.py                11     11     0%   2-29
openapi_core/validation/response/shortcuts.py                19     19     0%   2-36
openapi_core/validation/response/validators.py               74     74     0%   2-118
openapi_core/validation/validators.py                        39     39     0%   2-66
---------------------------------------------------------------------------------------
TOTAL                                                      1563   1563     0%
Coverage XML written to file reports/coverage.xml

========================================================================= short test summary info ==========================================================================
XFAIL tests/integration/validation/test_petstore.py::TestPetstore::test_get_pets_param_coordinates
  No parameters deserialization support for complex scenarios
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationSimpleServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathSimpleServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationVariableServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathVariableServerServerNotFound::test_raises
  returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecSimpleServerServerNotFound::test_raises returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecVariableServerServerNotFound::test_raises returns default server
ERROR tests/integration/contrib/test_django.py::TestDjangoOpenAPIRequest::test_no_resolver - django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not...
ERROR tests/integration/contrib/test_django.py::TestDjangoOpenAPIRequest::test_simple - django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be e...
ERROR tests/integration/contrib/test_django.py::TestDjangoOpenAPIRequest::test_url_rule - django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be...
ERROR tests/integration/contrib/django/test_django_rest_framework_apiview.py::TestDjangoRESTFrameworkAPIView::test_get - RuntimeError: populate() isn't reentrant
FAILED tests/integration/contrib/test_django.py::TestDjangoOpenAPIValidation::test_response_validator_path_pattern - AttributeError: module 'django.conf.global_settings'...
FAILED tests/integration/contrib/test_django.py::TestDjangoOpenAPIValidation::test_request_validator_path_pattern - AttributeError: module 'django.conf.global_settings' ...
FAILED tests/unit/unmarshalling/test_unmarshal.py::TestSchemaUnmarshallerCall::test_string_format_datetime_invalid - Failed: DID NOT RAISE <class 'openapi_core.unmarshal...
FAILED tests/unit/unmarshalling/test_unmarshal.py::TestSchemaUnmarshallerCall::test_string_format_invalid_value - TypeError: Unexpected keyword arguments passed to pytes...
FAILED tests/unit/unmarshalling/test_validate.py::TestSchemaValidate::test_string_format_datetime_invalid[true0] - TypeError: a bytes-like object is required, not 'str'
FAILED tests/unit/unmarshalling/test_validate.py::TestSchemaValidate::test_string_format_datetime_strict_rfc3339[1989-01-02T00:00:00Z] - NameError: name 'strict_rfc3339'...
FAILED tests/unit/unmarshalling/test_validate.py::TestSchemaValidate::test_string_format_datetime_strict_rfc3339[2018-01-02T23:59:59Z] - NameError: name 'strict_rfc3339'...
=============================================== 7 failed, 593 passed, 5 xfailed, 2 xpassed, 97 warnings, 4 errors in 32.61s ================================================

Something is missing on my build env? 🤔

kloczek avatar Jan 20 '22 17:01 kloczek

OK after add strict-rfc3339 it is a bit better

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra -q --ignore tests/integration/validation/test_read_only_write_only.py --ignore tests/integration/validation/test_security_override.py
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2, configfile: setup.cfg
plugins: cov-3.0.0, flake8-1.0.7
collected 611 items

setup.py .
docs/conf.py .
openapi_core/__init__.py .
openapi_core/compat.py .
openapi_core/exceptions.py .
openapi_core/shortcuts.py .
openapi_core/types.py .
openapi_core/casting/__init__.py .
openapi_core/casting/schemas/__init__.py .
openapi_core/casting/schemas/casters.py .
openapi_core/casting/schemas/exceptions.py .
openapi_core/casting/schemas/factories.py .
openapi_core/casting/schemas/util.py .
openapi_core/contrib/__init__.py .
openapi_core/contrib/django/__init__.py .
openapi_core/contrib/django/backports.py .
openapi_core/contrib/django/compat.py .
openapi_core/contrib/django/requests.py .
openapi_core/contrib/django/responses.py .
openapi_core/contrib/falcon/__init__.py .
openapi_core/contrib/falcon/compat.py .
openapi_core/contrib/falcon/handlers.py .
openapi_core/contrib/falcon/middlewares.py .
openapi_core/contrib/falcon/requests.py .
openapi_core/contrib/falcon/responses.py .
openapi_core/contrib/falcon/views.py .
openapi_core/contrib/flask/__init__.py .
openapi_core/contrib/flask/decorators.py .
openapi_core/contrib/flask/handlers.py .
openapi_core/contrib/flask/providers.py .
openapi_core/contrib/flask/requests.py .
openapi_core/contrib/flask/responses.py .
openapi_core/contrib/flask/views.py .
openapi_core/contrib/requests/__init__.py .
openapi_core/contrib/requests/requests.py .
openapi_core/contrib/requests/responses.py .
openapi_core/deserializing/__init__.py .
openapi_core/deserializing/exceptions.py .
openapi_core/deserializing/media_types/__init__.py .
openapi_core/deserializing/media_types/deserializers.py .
openapi_core/deserializing/media_types/factories.py .
openapi_core/deserializing/media_types/util.py .
openapi_core/deserializing/parameters/__init__.py .
openapi_core/deserializing/parameters/deserializers.py .
openapi_core/deserializing/parameters/exceptions.py .
openapi_core/deserializing/parameters/factories.py .
openapi_core/extensions/__init__.py .
openapi_core/extensions/models/__init__.py .
openapi_core/extensions/models/factories.py .
openapi_core/extensions/models/models.py .
openapi_core/schema/__init__.py .
openapi_core/schema/parameters.py .
openapi_core/schema/schemas.py .
openapi_core/schema/servers.py .
openapi_core/schema/specs.py .
openapi_core/security/__init__.py .
openapi_core/security/exceptions.py .
openapi_core/security/factories.py .
openapi_core/security/providers.py .
openapi_core/spec/__init__.py .
openapi_core/spec/accessors.py .
openapi_core/spec/paths.py .
openapi_core/spec/shortcuts.py .
openapi_core/templating/__init__.py .
openapi_core/templating/datatypes.py .
openapi_core/templating/util.py .
openapi_core/templating/media_types/__init__.py .
openapi_core/templating/media_types/exceptions.py .
openapi_core/templating/media_types/finders.py .
openapi_core/templating/paths/__init__.py .
openapi_core/templating/paths/exceptions.py .
openapi_core/templating/paths/finders.py .
openapi_core/templating/responses/__init__.py .
openapi_core/templating/responses/exceptions.py .
openapi_core/templating/responses/finders.py .
openapi_core/testing/__init__.py .
openapi_core/testing/datatypes.py .
openapi_core/testing/factories.py .
openapi_core/testing/mock.py .
openapi_core/testing/requests.py .
openapi_core/testing/responses.py .
openapi_core/unmarshalling/__init__.py .
openapi_core/unmarshalling/schemas/__init__.py .
openapi_core/unmarshalling/schemas/enums.py .
openapi_core/unmarshalling/schemas/exceptions.py .
openapi_core/unmarshalling/schemas/factories.py .
openapi_core/unmarshalling/schemas/formatters.py .
openapi_core/unmarshalling/schemas/unmarshallers.py .
openapi_core/unmarshalling/schemas/util.py .
openapi_core/validation/__init__.py .
openapi_core/validation/datatypes.py .
openapi_core/validation/decorators.py .
openapi_core/validation/exceptions.py .
openapi_core/validation/processors.py .
openapi_core/validation/validators.py .
openapi_core/validation/request/__init__.py .
openapi_core/validation/request/datatypes.py .
openapi_core/validation/request/shortcuts.py .
openapi_core/validation/request/validators.py .
openapi_core/validation/response/__init__.py .
openapi_core/validation/response/datatypes.py .
openapi_core/validation/response/shortcuts.py .
openapi_core/validation/response/validators.py .
tests/integration/conftest.py .
tests/integration/contrib/test_django.py .EEE..FF
tests/integration/contrib/django/conftest.py .
tests/integration/contrib/django/test_django_rest_framework_apiview.py .E
tests/integration/contrib/django/data/djangoproject/__init__.py .
tests/integration/contrib/django/data/djangoproject/settings.py .
tests/integration/contrib/django/data/djangoproject/urls.py .
tests/integration/contrib/django/data/djangoproject/testapp/__init__.py .
tests/integration/contrib/django/data/djangoproject/testapp/views.py .
tests/integration/contrib/django/data/djangoproject/testapp/migrations/__init__.py .
tests/integration/contrib/falcon/conftest.py .
tests/integration/contrib/falcon/test_falcon_middlewares.py .......
tests/integration/contrib/falcon/test_falcon_validation.py ....
tests/integration/contrib/flask/conftest.py .
tests/integration/contrib/flask/test_flask_decorator.py .......
tests/integration/contrib/flask/test_flask_requests.py ....
tests/integration/contrib/flask/test_flask_responses.py ..
tests/integration/contrib/flask/test_flask_validation.py ...
tests/integration/contrib/flask/test_flask_views.py .......
tests/integration/contrib/requests/conftest.py .
tests/integration/contrib/requests/test_requests_requests.py ....
tests/integration/contrib/requests/test_requests_responses.py ..
tests/integration/contrib/requests/test_requests_validation.py ....
tests/integration/schema/test_empty.py ..
tests/integration/schema/test_link_spec.py ...
tests/integration/schema/test_path_params.py ..
tests/integration/schema/test_spec.py ..
tests/integration/validation/test_minimal.py ...............................
tests/integration/validation/test_petstore.py ............x......................
tests/integration/validation/test_validators.py ..........................
tests/unit/deserializing/test_media_types_deserializers.py .........
tests/unit/deserializing/test_parameters_deserializers.py ....
tests/unit/extensions/test_models.py .....
tests/unit/security/test_providers.py ....
tests/unit/templating/test_paths_finders.py .X..x..x...........X..x..x...........
tests/unit/templating/test_responses_finders.py ....
tests/unit/templating/test_util.py ...
tests/unit/unmarshalling/test_unmarshal.py ........................F........................................
tests/unit/unmarshalling/test_validate.py .....................................................................................................................................................................................................
tests/unit/validation/test_request_shortcuts.py .........
tests/unit/validation/test_response_shortcuts.py ...../usr/lib64/python3.8/site-packages/coverage/control.py:768: CoverageWarning: No data was collected. (no-data-collected)
  self._warn("No data was collected.", slug="no-data-collected")


================================================================================== ERRORS ==================================================================================
_______________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_no_resolver ________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f17b0e40940>

    @pytest.fixture(autouse=True, scope='module')
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path

        if settings.configured:
            return

        settings.configure(
            ALLOWED_HOSTS=[
                'testserver',
            ],
            INSTALLED_APPS=[
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.messages',
                'django.contrib.sessions',
            ],
            MIDDLEWARE=[
                'django.contrib.sessions.middleware.SessionMiddleware',
                'django.contrib.auth.middleware.AuthenticationMiddleware',
                'django.contrib.messages.middleware.MessageMiddleware',
            ]
        )
>       django.setup()

tests/integration/contrib/test_django.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
/usr/lib/python3.8/site-packages/django/apps/registry.py:122: in populate
    app_config.ready()
/usr/lib/python3.8/site-packages/django/contrib/admin/apps.py:27: in ready
    self.module.autodiscover()
/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py:24: in autodiscover
    autodiscover_modules('admin', register_to=site)
/usr/lib/python3.8/site-packages/django/utils/module_loading.py:47: in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:843: in exec_module
    ???
<frozen importlib._bootstrap>:219: in _call_with_frames_removed
    ???
/usr/lib/python3.8/site-packages/django/contrib/auth/admin.py:6: in <module>
    from django.contrib.auth.forms import (
/usr/lib/python3.8/site-packages/django/contrib/auth/forms.py:11: in <module>
    from django.contrib.auth.tokens import default_token_generator
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:117: in <module>
    default_token_generator = PasswordResetTokenGenerator()
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:18: in __init__
    self.secret = self.secret or settings.SECRET_KEY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <LazySettings "None">, name = 'SECRET_KEY'

    def __getattr__(self, name):
        """Return the value of a setting and cache it in self.__dict__."""
        if self._wrapped is empty:
            self._setup(name)
        val = getattr(self._wrapped, name)

        # Special case some settings which require further modification.
        # This is done here for performance reasons so the modified value is cached.
        if name in {'MEDIA_URL', 'STATIC_URL'} and val is not None:
            val = self._add_script_prefix(val)
        elif name == 'SECRET_KEY' and not val:
>           raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
E           django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

/usr/lib/python3.8/site-packages/django/conf/__init__.py:90: ImproperlyConfigured
__________________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_simple __________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f17b0e40940>

    @pytest.fixture(autouse=True, scope='module')
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path

        if settings.configured:
            return

        settings.configure(
            ALLOWED_HOSTS=[
                'testserver',
            ],
            INSTALLED_APPS=[
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.messages',
                'django.contrib.sessions',
            ],
            MIDDLEWARE=[
                'django.contrib.sessions.middleware.SessionMiddleware',
                'django.contrib.auth.middleware.AuthenticationMiddleware',
                'django.contrib.messages.middleware.MessageMiddleware',
            ]
        )
>       django.setup()

tests/integration/contrib/test_django.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
/usr/lib/python3.8/site-packages/django/apps/registry.py:122: in populate
    app_config.ready()
/usr/lib/python3.8/site-packages/django/contrib/admin/apps.py:27: in ready
    self.module.autodiscover()
/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py:24: in autodiscover
    autodiscover_modules('admin', register_to=site)
/usr/lib/python3.8/site-packages/django/utils/module_loading.py:47: in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:843: in exec_module
    ???
<frozen importlib._bootstrap>:219: in _call_with_frames_removed
    ???
/usr/lib/python3.8/site-packages/django/contrib/auth/admin.py:6: in <module>
    from django.contrib.auth.forms import (
/usr/lib/python3.8/site-packages/django/contrib/auth/forms.py:11: in <module>
    from django.contrib.auth.tokens import default_token_generator
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:117: in <module>
    default_token_generator = PasswordResetTokenGenerator()
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:18: in __init__
    self.secret = self.secret or settings.SECRET_KEY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <LazySettings "None">, name = 'SECRET_KEY'

    def __getattr__(self, name):
        """Return the value of a setting and cache it in self.__dict__."""
        if self._wrapped is empty:
            self._setup(name)
        val = getattr(self._wrapped, name)

        # Special case some settings which require further modification.
        # This is done here for performance reasons so the modified value is cached.
        if name in {'MEDIA_URL', 'STATIC_URL'} and val is not None:
            val = self._add_script_prefix(val)
        elif name == 'SECRET_KEY' and not val:
>           raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
E           django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

/usr/lib/python3.8/site-packages/django/conf/__init__.py:90: ImproperlyConfigured
_________________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_url_rule _________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f17b0e40940>

    @pytest.fixture(autouse=True, scope='module')
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path

        if settings.configured:
            return

        settings.configure(
            ALLOWED_HOSTS=[
                'testserver',
            ],
            INSTALLED_APPS=[
                'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.messages',
                'django.contrib.sessions',
            ],
            MIDDLEWARE=[
                'django.contrib.sessions.middleware.SessionMiddleware',
                'django.contrib.auth.middleware.AuthenticationMiddleware',
                'django.contrib.messages.middleware.MessageMiddleware',
            ]
        )
>       django.setup()

tests/integration/contrib/test_django.py:45:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
/usr/lib/python3.8/site-packages/django/apps/registry.py:122: in populate
    app_config.ready()
/usr/lib/python3.8/site-packages/django/contrib/admin/apps.py:27: in ready
    self.module.autodiscover()
/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py:24: in autodiscover
    autodiscover_modules('admin', register_to=site)
/usr/lib/python3.8/site-packages/django/utils/module_loading.py:47: in autodiscover_modules
    import_module('%s.%s' % (app_config.name, module_to_search))
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:843: in exec_module
    ???
<frozen importlib._bootstrap>:219: in _call_with_frames_removed
    ???
/usr/lib/python3.8/site-packages/django/contrib/auth/admin.py:6: in <module>
    from django.contrib.auth.forms import (
/usr/lib/python3.8/site-packages/django/contrib/auth/forms.py:11: in <module>
    from django.contrib.auth.tokens import default_token_generator
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:117: in <module>
    default_token_generator = PasswordResetTokenGenerator()
/usr/lib/python3.8/site-packages/django/contrib/auth/tokens.py:18: in __init__
    self.secret = self.secret or settings.SECRET_KEY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <LazySettings "None">, name = 'SECRET_KEY'

    def __getattr__(self, name):
        """Return the value of a setting and cache it in self.__dict__."""
        if self._wrapped is empty:
            self._setup(name)
        val = getattr(self._wrapped, name)

        # Special case some settings which require further modification.
        # This is done here for performance reasons so the modified value is cached.
        if name in {'MEDIA_URL', 'STATIC_URL'} and val is not None:
            val = self._add_script_prefix(val)
        elif name == 'SECRET_KEY' and not val:
>           raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
E           django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

/usr/lib/python3.8/site-packages/django/conf/__init__.py:90: ImproperlyConfigured
________________________________________________________ ERROR at setup of TestDjangoRESTFrameworkAPIView.test_get _________________________________________________________

    @pytest.yield_fixture(autouse=True, scope='module')
    def django_setup():
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, 'data')
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                'DJANGO_SETTINGS_MODULE': 'djangoproject.settings',
            }
        ):
            import django
>           django.setup()

tests/integration/contrib/django/conftest.py:19:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f17afee30a0>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
================================================================================= FAILURES =================================================================================
_____________________________________________________ TestDjangoOpenAPIValidation.test_response_validator_path_pattern _____________________________________________________

self = <test_django.TestDjangoOpenAPIValidation object at 0x7f17afaf8c70>, django_spec = SpecPath('')
request_factory = <django.test.client.RequestFactory object at 0x7f17afb4e4c0>
response_factory = <function BaseTestDjango.response_factory.<locals>.create at 0x7f17af3b5ca0>

    def test_response_validator_path_pattern(
            self, django_spec, request_factory, response_factory):
        from django.urls import resolve
        validator = ResponseValidator(django_spec)
        request = request_factory.get('/admin/auth/group/1/')
>       request.resolver_match = resolve('/admin/auth/group/1/')

tests/integration/contrib/test_django.py:177:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/urls/base.py:24: in resolve
    return get_resolver(urlconf).resolve(path)
/usr/lib/python3.8/site-packages/django/urls/resolvers.py:70: in get_resolver
    urlconf = settings.ROOT_URLCONF
/usr/lib/python3.8/site-packages/django/conf/__init__.py:83: in __getattr__
    val = getattr(self._wrapped, name)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <UserSettingsHolder>, name = 'ROOT_URLCONF'

    def __getattr__(self, name):
        if not name.isupper() or name in self._deleted:
            raise AttributeError
>       return getattr(self.default_settings, name)
E       AttributeError: module 'django.conf.global_settings' has no attribute 'ROOT_URLCONF'

/usr/lib/python3.8/site-packages/django/conf/__init__.py:239: AttributeError
_____________________________________________________ TestDjangoOpenAPIValidation.test_request_validator_path_pattern ______________________________________________________

self = <test_django.TestDjangoOpenAPIValidation object at 0x7f17af290b80>, django_spec = SpecPath('')
request_factory = <django.test.client.RequestFactory object at 0x7f17af30f940>

    def test_request_validator_path_pattern(
            self, django_spec, request_factory):
        from django.urls import resolve
        validator = RequestValidator(django_spec)
        request = request_factory.get('/admin/auth/group/1/')
>       request.resolver_match = resolve('/admin/auth/group/1/')

tests/integration/contrib/test_django.py:189:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/urls/base.py:24: in resolve
    return get_resolver(urlconf).resolve(path)
/usr/lib/python3.8/site-packages/django/urls/resolvers.py:70: in get_resolver
    urlconf = settings.ROOT_URLCONF
/usr/lib/python3.8/site-packages/django/conf/__init__.py:83: in __getattr__
    val = getattr(self._wrapped, name)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <UserSettingsHolder>, name = 'ROOT_URLCONF'

    def __getattr__(self, name):
        if not name.isupper() or name in self._deleted:
            raise AttributeError
>       return getattr(self.default_settings, name)
E       AttributeError: module 'django.conf.global_settings' has no attribute 'ROOT_URLCONF'

/usr/lib/python3.8/site-packages/django/conf/__init__.py:239: AttributeError
_______________________________________________________ TestSchemaUnmarshallerCall.test_string_format_invalid_value ________________________________________________________

self = <test_unmarshal.TestSchemaUnmarshallerCall object at 0x7f17aecd86a0>
unmarshaller_factory = <function unmarshaller_factory.<locals>.create_unmarshaller at 0x7f17aee04550>

    def test_string_format_invalid_value(self, unmarshaller_factory):
        custom_format = 'custom'
        spec = {
            'type': 'string',
            'format': custom_format,
        }
        schema = SpecPath.from_spec(spec)
        value = 'x'

>       with pytest.raises(
            FormatterNotFoundError,
            message=(
                'Formatter not found for custom format'
            ),
        ):
E       TypeError: Unexpected keyword arguments passed to pytest.raises: message
E       Use context-manager form instead?

tests/unit/unmarshalling/test_unmarshal.py:303: TypeError
============================================================================= warnings summary =============================================================================
tests/integration/contrib/django/conftest.py:7
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/django/conftest.py:7: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    @pytest.yield_fixture(autouse=True, scope='module')

tests/integration/contrib/falcon/test_falcon_middlewares.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

../../../../../usr/lib/python3.8/site-packages/falcon/testing/client.py:1796
  /usr/lib/python3.8/site-packages/falcon/testing/client.py:1796: PytestCollectionWarning: cannot collect test class 'TestClient' because it has a __init__ constructor (from: tests/integration/contrib/falcon/test_falcon_middlewares.py)
    class TestClient:

tests/integration/contrib/flask/test_flask_decorator.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_decorator.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/flask/test_flask_views.py:25
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_views.py:25: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_invalid_content_type
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_server_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_operation_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_path_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_endpoint_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_valid
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:27: DeprecatedWarning: Call to deprecated function __init__(...). API class may be removed in a future release, use falcon.App instead.
    return App(middleware=[middleware])

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_invalid_content_type
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:70: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    response.body = 'success'

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_valid
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:193: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    response.body = dumps({

tests/integration/contrib/falcon/test_falcon_validation.py::TestFalconOpenAPIValidation::test_response_validator_path_pattern
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/conftest.py:46: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    resp.body = data

tests/integration/contrib/requests/test_requests_validation.py::TestRequestsOpenAPIValidation::test_response_validator_path_pattern
  /usr/lib/python3.8/site-packages/responses/__init__.py:334: DeprecationWarning: Argument 'match_querystring' is deprecated. Use 'responses.matchers.query_param_matcher' or 'responses.matchers.query_string_matcher'
    warn(

tests/integration/validation/test_petstore.py: 34 warnings
tests/unit/validation/test_request_shortcuts.py: 4 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/request/shortcuts.py:19: DeprecationWarning: validate_parameters shortcut is deprecated, use validator.validate instead
    warnings.warn(

tests/integration/validation/test_petstore.py: 33 warnings
tests/unit/validation/test_request_shortcuts.py: 4 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/request/shortcuts.py:30: DeprecationWarning: validate_body shortcut is deprecated, use validator.validate instead
    warnings.warn(

tests/integration/validation/test_petstore.py::TestPetstore::test_get_pets_invalid_response
tests/integration/validation/test_petstore.py::TestPetstore::test_post_pets_raises_invalid_server_error
tests/integration/validation/test_petstore.py::TestPetstore::test_post_tags_created_datetime
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_no_factories
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_no_factories_error
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_factories
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_factories_error
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/response/shortcuts.py:14: DeprecationWarning: validate_data shortcut is deprecated, use validator.validate instead
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/warnings.html
----------------------------------------- generated xml file: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/reports/junit.xml ------------------------------------------

---------- coverage: platform linux, python 3.8.12-final-0 -----------
Name                                                      Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------
openapi_core/__init__.py                                      8      8     0%   2-13
openapi_core/casting/__init__.py                              0      0   100%
openapi_core/casting/schemas/__init__.py                      0      0   100%
openapi_core/casting/schemas/casters.py                      28     28     0%   1-41
openapi_core/casting/schemas/exceptions.py                    8      8     0%   1-13
openapi_core/casting/schemas/factories.py                    16     16     0%   1-30
openapi_core/casting/schemas/util.py                          6      6     0%   2-10
openapi_core/compat.py                                        9      9     0%   2-12
openapi_core/contrib/__init__.py                              0      0   100%
openapi_core/contrib/django/__init__.py                       5      5     0%   1-8
openapi_core/contrib/django/backports.py                     19     19     0%   4-27
openapi_core/contrib/django/compat.py                         5      5     0%   2-15
openapi_core/contrib/django/requests.py                      20     20     0%   2-51
openapi_core/contrib/django/responses.py                      6      6     0%   2-10
openapi_core/contrib/falcon/__init__.py                       3      3     0%   1-5
openapi_core/contrib/falcon/compat.py                        11     11     0%   2-23
openapi_core/contrib/falcon/handlers.py                      22     22     0%   2-51
openapi_core/contrib/falcon/middlewares.py                   37     37     0%   3-67
openapi_core/contrib/falcon/requests.py                      19     19     0%   2-42
openapi_core/contrib/falcon/responses.py                     12     12     0%   2-19
openapi_core/contrib/falcon/views.py                          0      0   100%
openapi_core/contrib/flask/__init__.py                        5      5     0%   1-8
openapi_core/contrib/flask/decorators.py                     19     19     0%   2-45
openapi_core/contrib/flask/handlers.py                       16     16     0%   2-39
openapi_core/contrib/flask/providers.py                       5      5     0%   2-9
openapi_core/contrib/flask/requests.py                       15     15     0%   2-34
openapi_core/contrib/flask/responses.py                       5      5     0%   2-9
openapi_core/contrib/flask/views.py                          14     14     0%   2-26
openapi_core/contrib/requests/__init__.py                     5      5     0%   1-12
openapi_core/contrib/requests/requests.py                    23     23     0%   2-62
openapi_core/contrib/requests/responses.py                    6      6     0%   2-10
openapi_core/deserializing/__init__.py                        0      0   100%
openapi_core/deserializing/exceptions.py                      8      8     0%   1-13
openapi_core/deserializing/media_types/__init__.py            0      0   100%
openapi_core/deserializing/media_types/deserializers.py      10     10     0%   1-14
openapi_core/deserializing/media_types/factories.py          15     15     0%   1-32
openapi_core/deserializing/media_types/util.py               16     16     0%   1-24
openapi_core/deserializing/parameters/__init__.py             0      0   100%
openapi_core/deserializing/parameters/deserializers.py       19     19     0%   1-29
openapi_core/deserializing/parameters/exceptions.py           7      7     0%   1-11
openapi_core/deserializing/parameters/factories.py           11     11     0%   1-28
openapi_core/exceptions.py                                   38     38     0%   2-69
openapi_core/extensions/__init__.py                           0      0   100%
openapi_core/extensions/models/__init__.py                    0      0   100%
openapi_core/extensions/models/factories.py                  14     14     0%   2-25
openapi_core/extensions/models/models.py                     14     14     0%   4-26
openapi_core/schema/__init__.py                               0      0   100%
openapi_core/schema/parameters.py                            16     16     0%   1-34
openapi_core/schema/schemas.py                               14     14     0%   1-22
openapi_core/schema/servers.py                               16     16     0%   1-24
openapi_core/schema/specs.py                                  5      5     0%   1-8
openapi_core/security/__init__.py                             0      0   100%
openapi_core/security/exceptions.py                           3      3     0%   1-5
openapi_core/security/factories.py                           10     10     0%   1-19
openapi_core/security/providers.py                           29     29     0%   1-45
openapi_core/shortcuts.py                                     6      6     0%   3-14
openapi_core/spec/__init__.py                                 0      0   100%
openapi_core/spec/accessors.py                               16     16     0%   1-23
openapi_core/spec/paths.py                                    9      9     0%   1-14
openapi_core/spec/shortcuts.py                               10     10     0%   2-21
openapi_core/templating/__init__.py                           0      0   100%
openapi_core/templating/datatypes.py                         10     10     0%   1-13
openapi_core/templating/media_types/__init__.py               0      0   100%
openapi_core/templating/media_types/exceptions.py             9      9     0%   1-16
openapi_core/templating/media_types/finders.py               13     13     0%   2-21
openapi_core/templating/paths/__init__.py                     0      0   100%
openapi_core/templating/paths/exceptions.py                  19     19     0%   1-36
openapi_core/templating/paths/finders.py                     63     63     0%   2-101
openapi_core/templating/responses/__init__.py                 0      0   100%
openapi_core/templating/responses/exceptions.py               9      9     0%   1-17
openapi_core/templating/responses/finders.py                 14     14     0%   1-23
openapi_core/templating/util.py                              20     20     0%   1-32
openapi_core/testing/__init__.py                              4      4     0%   2-8
openapi_core/testing/datatypes.py                            13     13     0%   1-18
openapi_core/testing/factories.py                             8      8     0%   1-11
openapi_core/testing/mock.py                                  3      3     0%   3-6
openapi_core/testing/requests.py                             12     12     0%   2-27
openapi_core/testing/responses.py                             5      5     0%   2-9
openapi_core/types.py                                         1      1     0%   1
openapi_core/unmarshalling/__init__.py                        0      0   100%
openapi_core/unmarshalling/schemas/__init__.py                0      0   100%
openapi_core/unmarshalling/schemas/enums.py                   4      4     0%   2-7
openapi_core/unmarshalling/schemas/exceptions.py             27     27     0%   1-55
openapi_core/unmarshalling/schemas/factories.py              45     45     0%   1-89
openapi_core/unmarshalling/schemas/formatters.py             14     14     0%   1-18
openapi_core/unmarshalling/schemas/unmarshallers.py         176    176     0%   1-311
openapi_core/unmarshalling/schemas/util.py                   32     32     0%   2-50
openapi_core/validation/__init__.py                           0      0   100%
openapi_core/validation/datatypes.py                          7      7     0%   2-11
openapi_core/validation/decorators.py                        36     36     0%   2-59
openapi_core/validation/exceptions.py                         8      8     0%   2-15
openapi_core/validation/processors.py                         8      8     0%   4-14
openapi_core/validation/request/__init__.py                   0      0   100%
openapi_core/validation/request/datatypes.py                 26     26     0%   2-68
openapi_core/validation/request/shortcuts.py                 33     33     0%   2-57
openapi_core/validation/request/validators.py               168    168     0%   2-255
openapi_core/validation/response/__init__.py                  0      0   100%
openapi_core/validation/response/datatypes.py                11     11     0%   2-29
openapi_core/validation/response/shortcuts.py                19     19     0%   2-36
openapi_core/validation/response/validators.py               74     74     0%   2-118
openapi_core/validation/validators.py                        39     39     0%   2-66
---------------------------------------------------------------------------------------
TOTAL                                                      1563   1563     0%
Coverage XML written to file reports/coverage.xml

========================================================================= short test summary info ==========================================================================
XFAIL tests/integration/validation/test_petstore.py::TestPetstore::test_get_pets_param_coordinates
  No parameters deserialization support for complex scenarios
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationSimpleServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathSimpleServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationVariableServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathVariableServerServerNotFound::test_raises
  returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecSimpleServerServerNotFound::test_raises returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecVariableServerServerNotFound::test_raises returns default server
ERROR tests/integration/contrib/test_django.py::TestDjangoOpenAPIRequest::test_no_resolver - django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not...
ERROR tests/integration/contrib/test_django.py::TestDjangoOpenAPIRequest::test_simple - django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be e...
ERROR tests/integration/contrib/test_django.py::TestDjangoOpenAPIRequest::test_url_rule - django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be...
ERROR tests/integration/contrib/django/test_django_rest_framework_apiview.py::TestDjangoRESTFrameworkAPIView::test_get - RuntimeError: populate() isn't reentrant
FAILED tests/integration/contrib/test_django.py::TestDjangoOpenAPIValidation::test_response_validator_path_pattern - AttributeError: module 'django.conf.global_settings'...
FAILED tests/integration/contrib/test_django.py::TestDjangoOpenAPIValidation::test_request_validator_path_pattern - AttributeError: module 'django.conf.global_settings' ...
FAILED tests/unit/unmarshalling/test_unmarshal.py::TestSchemaUnmarshallerCall::test_string_format_invalid_value - TypeError: Unexpected keyword arguments passed to pytes...
=============================================== 3 failed, 597 passed, 5 xfailed, 2 xpassed, 97 warnings, 4 errors in 32.25s ================================================

kloczek avatar Jan 20 '22 17:01 kloczek

gentle ping 😃

kloczek avatar May 14 '22 15:05 kloczek

Just retested that in slightly updated env and I see a bit different output now

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra -q --ignore tests/integration/validation/test_read_only_write_only.py --ignore tests/integration/validation/test_security_override.py
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0
rootdir: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2, configfile: setup.cfg
plugins: datadir-1.3.1, regressions-2.3.1, flake8-1.1.1, cov-3.0.0
collected 611 items

setup.py .
docs/conf.py F
openapi_core/__init__.py .
openapi_core/compat.py .
openapi_core/exceptions.py .
openapi_core/shortcuts.py .
openapi_core/types.py .
openapi_core/casting/__init__.py .
openapi_core/casting/schemas/__init__.py .
openapi_core/casting/schemas/casters.py .
openapi_core/casting/schemas/exceptions.py .
openapi_core/casting/schemas/factories.py .
openapi_core/casting/schemas/util.py .
openapi_core/contrib/__init__.py .
openapi_core/contrib/django/__init__.py .
openapi_core/contrib/django/backports.py .
openapi_core/contrib/django/compat.py .
openapi_core/contrib/django/requests.py .
openapi_core/contrib/django/responses.py .
openapi_core/contrib/falcon/__init__.py .
openapi_core/contrib/falcon/compat.py .
openapi_core/contrib/falcon/handlers.py .
openapi_core/contrib/falcon/middlewares.py .
openapi_core/contrib/falcon/requests.py .
openapi_core/contrib/falcon/responses.py .
openapi_core/contrib/falcon/views.py .
openapi_core/contrib/flask/__init__.py .
openapi_core/contrib/flask/decorators.py .
openapi_core/contrib/flask/handlers.py .
openapi_core/contrib/flask/providers.py .
openapi_core/contrib/flask/requests.py .
openapi_core/contrib/flask/responses.py .
openapi_core/contrib/flask/views.py .
openapi_core/contrib/requests/__init__.py .
openapi_core/contrib/requests/requests.py .
openapi_core/contrib/requests/responses.py .
openapi_core/deserializing/__init__.py .
openapi_core/deserializing/exceptions.py .
openapi_core/deserializing/media_types/__init__.py .
openapi_core/deserializing/media_types/deserializers.py .
openapi_core/deserializing/media_types/factories.py .
openapi_core/deserializing/media_types/util.py .
openapi_core/deserializing/parameters/__init__.py .
openapi_core/deserializing/parameters/deserializers.py .
openapi_core/deserializing/parameters/exceptions.py .
openapi_core/deserializing/parameters/factories.py .
openapi_core/extensions/__init__.py .
openapi_core/extensions/models/__init__.py .
openapi_core/extensions/models/factories.py .
openapi_core/extensions/models/models.py .
openapi_core/schema/__init__.py .
openapi_core/schema/parameters.py .
openapi_core/schema/schemas.py .
openapi_core/schema/servers.py .
openapi_core/schema/specs.py .
openapi_core/security/__init__.py .
openapi_core/security/exceptions.py .
openapi_core/security/factories.py .
openapi_core/security/providers.py .
openapi_core/spec/__init__.py .
openapi_core/spec/accessors.py .
openapi_core/spec/paths.py .
openapi_core/spec/shortcuts.py .
openapi_core/templating/__init__.py .
openapi_core/templating/datatypes.py .
openapi_core/templating/util.py .
openapi_core/templating/media_types/__init__.py .
openapi_core/templating/media_types/exceptions.py .
openapi_core/templating/media_types/finders.py .
openapi_core/templating/paths/__init__.py .
openapi_core/templating/paths/exceptions.py .
openapi_core/templating/paths/finders.py .
openapi_core/templating/responses/__init__.py .
openapi_core/templating/responses/exceptions.py .
openapi_core/templating/responses/finders.py .
openapi_core/testing/__init__.py .
openapi_core/testing/datatypes.py .
openapi_core/testing/factories.py .
openapi_core/testing/mock.py .
openapi_core/testing/requests.py .
openapi_core/testing/responses.py .
openapi_core/unmarshalling/__init__.py .
openapi_core/unmarshalling/schemas/__init__.py .
openapi_core/unmarshalling/schemas/enums.py .
openapi_core/unmarshalling/schemas/exceptions.py .
openapi_core/unmarshalling/schemas/factories.py .
openapi_core/unmarshalling/schemas/formatters.py .
openapi_core/unmarshalling/schemas/unmarshallers.py .
openapi_core/unmarshalling/schemas/util.py .
openapi_core/validation/__init__.py .
openapi_core/validation/datatypes.py .
openapi_core/validation/decorators.py .
openapi_core/validation/exceptions.py .
openapi_core/validation/processors.py .
openapi_core/validation/validators.py .
openapi_core/validation/request/__init__.py .
openapi_core/validation/request/datatypes.py .
openapi_core/validation/request/shortcuts.py .
openapi_core/validation/request/validators.py .
openapi_core/validation/response/__init__.py .
openapi_core/validation/response/datatypes.py .
openapi_core/validation/response/shortcuts.py .
openapi_core/validation/response/validators.py .
tests/integration/conftest.py .
tests/integration/contrib/test_django.py ........
tests/integration/contrib/django/conftest.py .
tests/integration/contrib/django/test_django_rest_framework_apiview.py .E
tests/integration/contrib/django/data/djangoproject/__init__.py .
tests/integration/contrib/django/data/djangoproject/settings.py .
tests/integration/contrib/django/data/djangoproject/urls.py .
tests/integration/contrib/django/data/djangoproject/testapp/__init__.py .
tests/integration/contrib/django/data/djangoproject/testapp/views.py .
tests/integration/contrib/django/data/djangoproject/testapp/migrations/__init__.py .
tests/integration/contrib/falcon/conftest.py .
tests/integration/contrib/falcon/test_falcon_middlewares.py .......
tests/integration/contrib/falcon/test_falcon_validation.py ....
tests/integration/contrib/flask/conftest.py .
tests/integration/contrib/flask/test_flask_decorator.py .......
tests/integration/contrib/flask/test_flask_requests.py ....
tests/integration/contrib/flask/test_flask_responses.py ..
tests/integration/contrib/flask/test_flask_validation.py ...
tests/integration/contrib/flask/test_flask_views.py .......
tests/integration/contrib/requests/conftest.py .
tests/integration/contrib/requests/test_requests_requests.py ....
tests/integration/contrib/requests/test_requests_responses.py ..
tests/integration/contrib/requests/test_requests_validation.py ....
tests/integration/schema/test_empty.py ..
tests/integration/schema/test_link_spec.py ...
tests/integration/schema/test_path_params.py ..
tests/integration/schema/test_spec.py ..
tests/integration/validation/test_minimal.py ...............................
tests/integration/validation/test_petstore.py ............x......................
tests/integration/validation/test_validators.py ..........................
tests/unit/deserializing/test_media_types_deserializers.py .........
tests/unit/deserializing/test_parameters_deserializers.py ....
tests/unit/extensions/test_models.py .....
tests/unit/security/test_providers.py ....
tests/unit/templating/test_paths_finders.py .X..x..x...........X..x..x...........
tests/unit/templating/test_responses_finders.py ....
tests/unit/templating/test_util.py ...
tests/unit/unmarshalling/test_unmarshal.py ........................F.....................................F.F
tests/unit/unmarshalling/test_validate.py .....................................................................................................................................................................................................
tests/unit/validation/test_request_shortcuts.py .........
tests/unit/validation/test_response_shortcuts.py ...../usr/lib64/python3.8/site-packages/coverage/control.py:793: CoverageWarning: No data was collected. (no-data-collected)
  self._warn("No data was collected.", slug="no-data-collected")


================================================================================== ERRORS ==================================================================================
________________________________________________________ ERROR at setup of TestDjangoRESTFrameworkAPIView.test_get _________________________________________________________

self = <test_django_rest_framework_apiview.TestDjangoRESTFrameworkAPIView object at 0x7f59704654f0>

    @pytest.fixture
    def api_request_factory(self):
>       from rest_framework.test import APIRequestFactory
E       ModuleNotFoundError: No module named 'rest_framework'

tests/integration/contrib/django/test_django_rest_framework_apiview.py:10: ModuleNotFoundError
================================================================================= FAILURES =================================================================================
_______________________________________________________________________________ FLAKE8-check _______________________________________________________________________________
/home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/docs/conf.py:17:1: E402 module level import not at top of file

_______________________________________________________ TestSchemaUnmarshallerCall.test_string_format_invalid_value ________________________________________________________

self = <test_unmarshal.TestSchemaUnmarshallerCall object at 0x7f5970172be0>
unmarshaller_factory = <function unmarshaller_factory.<locals>.create_unmarshaller at 0x7f596ea6f0d0>

    def test_string_format_invalid_value(self, unmarshaller_factory):
        custom_format = 'custom'
        spec = {
            'type': 'string',
            'format': custom_format,
        }
        schema = SpecPath.from_spec(spec)
        value = 'x'

>       with pytest.raises(
            FormatterNotFoundError,
            message=(
                'Formatter not found for custom format'
            ),
        ):
E       TypeError: Unexpected keyword arguments passed to pytest.raises: message
E       Use context-manager form instead?

tests/unit/unmarshalling/test_unmarshal.py:303: TypeError
_______________________________________________________ TestSchemaUnmarshallerCall.test_read_only_properties_invalid _______________________________________________________

self = <test_unmarshal.TestSchemaUnmarshallerCall object at 0x7f5970190a00>
unmarshaller_factory = <function unmarshaller_factory.<locals>.create_unmarshaller at 0x7f596eab6430>

    def test_read_only_properties_invalid(self, unmarshaller_factory):
        spec = {
            'type': 'object',
            'required': ['id'],
            'properties': {
                'id': {
                    'type': 'integer',
                    'readOnly': True,
                }
            },
        }
        obj_schema = SpecPath.from_spec(spec)

        # readOnly properties are not admitted on a Request context
        with pytest.raises(InvalidSchemaValue):
>           unmarshaller_factory(
                obj_schema, context=UnmarshalContext.REQUEST)({"id": 10})
E           Failed: DID NOT RAISE <class 'openapi_core.unmarshalling.schemas.exceptions.InvalidSchemaValue'>

tests/unit/unmarshalling/test_unmarshal.py:728: Failed
______________________________________________________ TestSchemaUnmarshallerCall.test_write_only_properties_invalid _______________________________________________________

self = <test_unmarshal.TestSchemaUnmarshallerCall object at 0x7f5970190460>
unmarshaller_factory = <function unmarshaller_factory.<locals>.create_unmarshaller at 0x7f596eab6700>

    def test_write_only_properties_invalid(self, unmarshaller_factory):
        spec = {
            'type': 'object',
            'required': ['id'],
            'properties': {
                'id': {
                    'type': 'integer',
                    'writeOnly': True,
                }
            },
        }
        obj_schema = SpecPath.from_spec(spec)

        # readOnly properties are not admitted on a Request context
        with pytest.raises(InvalidSchemaValue):
>           unmarshaller_factory(
                obj_schema, context=UnmarshalContext.RESPONSE)({"id": 10})
E           Failed: DID NOT RAISE <class 'openapi_core.unmarshalling.schemas.exceptions.InvalidSchemaValue'>

tests/unit/unmarshalling/test_unmarshal.py:766: Failed
============================================================================= warnings summary =============================================================================
tests/integration/contrib/django/conftest.py:7
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/django/conftest.py:7: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    @pytest.yield_fixture(autouse=True, scope='module')

tests/integration/contrib/falcon/test_falcon_middlewares.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

../../../../../usr/lib/python3.8/site-packages/falcon/testing/client.py:1796
  /usr/lib/python3.8/site-packages/falcon/testing/client.py:1796: PytestCollectionWarning: cannot collect test class 'TestClient' because it has a __init__ constructor (from: tests/integration/contrib/falcon/test_falcon_middlewares.py)
    class TestClient:

tests/integration/contrib/flask/test_flask_decorator.py:30
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_decorator.py:30: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/flask/test_flask_views.py:25
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/flask/test_flask_views.py:25: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def client(self, app):

tests/integration/contrib/test_django.py: 1 warning
tests/integration/contrib/falcon/test_falcon_middlewares.py: 8 warnings
tests/integration/contrib/falcon/test_falcon_validation.py: 4 warnings
tests/integration/contrib/flask/test_flask_decorator.py: 4 warnings
tests/integration/contrib/flask/test_flask_validation.py: 3 warnings
tests/integration/contrib/flask/test_flask_views.py: 4 warnings
tests/integration/contrib/requests/test_requests_validation.py: 10 warnings
tests/integration/validation/test_petstore.py: 206 warnings
tests/integration/validation/test_validators.py: 44 warnings
tests/unit/unmarshalling/test_unmarshal.py: 77 warnings
tests/unit/unmarshalling/test_validate.py: 191 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/unmarshalling/schemas/unmarshallers.py:61: DeprecationWarning: Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release. Call validator.evolve(schema=new_schema).iter_errors(...) instead.
    errors = tuple(errors_iter)

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_invalid_content_type
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_server_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_operation_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_path_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_endpoint_error
tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_valid
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:27: DeprecatedWarning: Call to deprecated function __init__(...). API class may be removed in a future release, use falcon.App instead.
    return App(middleware=[middleware])

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_invalid_content_type
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:70: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    response.body = 'success'

tests/integration/contrib/falcon/test_falcon_middlewares.py: 7 warnings
tests/integration/contrib/falcon/test_falcon_validation.py: 1 warning
tests/integration/contrib/flask/test_flask_decorator.py: 1 warning
tests/integration/contrib/flask/test_flask_validation.py: 1 warning
tests/integration/contrib/flask/test_flask_views.py: 1 warning
tests/integration/contrib/requests/test_requests_validation.py: 3 warnings
tests/integration/validation/test_petstore.py: 366 warnings
tests/integration/validation/test_validators.py: 78 warnings
tests/unit/unmarshalling/test_unmarshal.py: 39 warnings
tests/unit/unmarshalling/test_validate.py: 68 warnings
  /usr/lib/python3.8/site-packages/jsonschema/validators.py:258: DeprecationWarning: Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release. Call validator.evolve(schema=new_schema).iter_errors(...) instead.
    for error in self.evolve(schema=schema).iter_errors(instance):

tests/integration/contrib/falcon/test_falcon_middlewares.py::TestFalconOpenAPIMiddleware::test_valid
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/test_falcon_middlewares.py:193: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    response.body = dumps({

tests/integration/contrib/falcon/test_falcon_validation.py::TestFalconOpenAPIValidation::test_response_validator_path_pattern
  /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/tests/integration/contrib/falcon/conftest.py:46: DeprecatedWarning: Call to deprecated property body. Please use text instead.
    resp.body = data

tests/integration/contrib/requests/test_requests_validation.py::TestRequestsOpenAPIValidation::test_response_validator_path_pattern
  /usr/lib/python3.8/site-packages/responses/__init__.py:301: DeprecationWarning: Argument 'match_querystring' is deprecated. Use 'responses.matchers.query_param_matcher' or 'responses.matchers.query_string_matcher'
    warn(

tests/integration/schema/test_spec.py: 2 warnings
tests/integration/validation/test_petstore.py: 2 warnings
tests/integration/validation/test_validators.py: 20 warnings
  /usr/lib/python3.8/site-packages/openapi_spec_validator/validators.py:346: DeprecationWarning: Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release. Call validator.evolve(schema=new_schema).iter_errors(...) instead.
    for err in validator.iter_errors(value):

tests/integration/validation/test_petstore.py: 34 warnings
tests/unit/validation/test_request_shortcuts.py: 4 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/request/shortcuts.py:19: DeprecationWarning: validate_parameters shortcut is deprecated, use validator.validate instead
    warnings.warn(

tests/integration/validation/test_petstore.py: 33 warnings
tests/unit/validation/test_request_shortcuts.py: 4 warnings
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/request/shortcuts.py:30: DeprecationWarning: validate_body shortcut is deprecated, use validator.validate instead
    warnings.warn(

tests/integration/validation/test_petstore.py: 36 warnings
tests/integration/validation/test_validators.py: 4 warnings
tests/unit/unmarshalling/test_validate.py: 1 warning
  /usr/lib/python3.8/site-packages/jsonschema/validators.py:289: DeprecationWarning: Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release. Call validator.evolve(schema=new_schema).iter_errors(...) instead.
    error = next(self.iter_errors(instance), None)

tests/integration/validation/test_petstore.py::TestPetstore::test_get_pets_invalid_response
tests/integration/validation/test_petstore.py::TestPetstore::test_post_pets_raises_invalid_server_error
tests/integration/validation/test_petstore.py::TestPetstore::test_post_tags_created_datetime
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_no_factories
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_no_factories_error
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_factories
tests/unit/validation/test_response_shortcuts.py::TestSpecValidateData::test_factories_error
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.14.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/validation/response/shortcuts.py:14: DeprecationWarning: validate_data shortcut is deprecated, use validator.validate instead
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
----------------------------------------- generated xml file: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.14.2/reports/junit.xml ------------------------------------------

---------- coverage: platform linux, python 3.8.13-final-0 -----------
Name                                                      Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------
openapi_core/__init__.py                                      8      8     0%   2-13
openapi_core/casting/__init__.py                              0      0   100%
openapi_core/casting/schemas/__init__.py                      0      0   100%
openapi_core/casting/schemas/casters.py                      28     28     0%   1-41
openapi_core/casting/schemas/exceptions.py                    8      8     0%   1-13
openapi_core/casting/schemas/factories.py                    16     16     0%   1-30
openapi_core/casting/schemas/util.py                          6      6     0%   2-10
openapi_core/compat.py                                        9      9     0%   2-12
openapi_core/contrib/__init__.py                              0      0   100%
openapi_core/contrib/django/__init__.py                       5      5     0%   1-8
openapi_core/contrib/django/backports.py                     19     19     0%   4-27
openapi_core/contrib/django/compat.py                         5      5     0%   2-15
openapi_core/contrib/django/requests.py                      20     20     0%   2-51
openapi_core/contrib/django/responses.py                      6      6     0%   2-10
openapi_core/contrib/falcon/__init__.py                       3      3     0%   1-5
openapi_core/contrib/falcon/compat.py                        11     11     0%   2-23
openapi_core/contrib/falcon/handlers.py                      22     22     0%   2-51
openapi_core/contrib/falcon/middlewares.py                   37     37     0%   3-67
openapi_core/contrib/falcon/requests.py                      19     19     0%   2-42
openapi_core/contrib/falcon/responses.py                     12     12     0%   2-19
openapi_core/contrib/falcon/views.py                          0      0   100%
openapi_core/contrib/flask/__init__.py                        5      5     0%   1-8
openapi_core/contrib/flask/decorators.py                     19     19     0%   2-45
openapi_core/contrib/flask/handlers.py                       16     16     0%   2-39
openapi_core/contrib/flask/providers.py                       5      5     0%   2-9
openapi_core/contrib/flask/requests.py                       15     15     0%   2-34
openapi_core/contrib/flask/responses.py                       5      5     0%   2-9
openapi_core/contrib/flask/views.py                          14     14     0%   2-26
openapi_core/contrib/requests/__init__.py                     5      5     0%   1-12
openapi_core/contrib/requests/requests.py                    23     23     0%   2-62
openapi_core/contrib/requests/responses.py                    6      6     0%   2-10
openapi_core/deserializing/__init__.py                        0      0   100%
openapi_core/deserializing/exceptions.py                      8      8     0%   1-13
openapi_core/deserializing/media_types/__init__.py            0      0   100%
openapi_core/deserializing/media_types/deserializers.py      10     10     0%   1-14
openapi_core/deserializing/media_types/factories.py          15     15     0%   1-32
openapi_core/deserializing/media_types/util.py               16     16     0%   1-24
openapi_core/deserializing/parameters/__init__.py             0      0   100%
openapi_core/deserializing/parameters/deserializers.py       19     19     0%   1-29
openapi_core/deserializing/parameters/exceptions.py           7      7     0%   1-11
openapi_core/deserializing/parameters/factories.py           11     11     0%   1-28
openapi_core/exceptions.py                                   38     38     0%   2-69
openapi_core/extensions/__init__.py                           0      0   100%
openapi_core/extensions/models/__init__.py                    0      0   100%
openapi_core/extensions/models/factories.py                  14     14     0%   2-25
openapi_core/extensions/models/models.py                     14     14     0%   4-26
openapi_core/schema/__init__.py                               0      0   100%
openapi_core/schema/parameters.py                            16     16     0%   1-34
openapi_core/schema/schemas.py                               14     14     0%   1-22
openapi_core/schema/servers.py                               16     16     0%   1-24
openapi_core/schema/specs.py                                  5      5     0%   1-8
openapi_core/security/__init__.py                             0      0   100%
openapi_core/security/exceptions.py                           3      3     0%   1-5
openapi_core/security/factories.py                           10     10     0%   1-19
openapi_core/security/providers.py                           29     29     0%   1-45
openapi_core/shortcuts.py                                     6      6     0%   3-14
openapi_core/spec/__init__.py                                 0      0   100%
openapi_core/spec/accessors.py                               16     16     0%   1-23
openapi_core/spec/paths.py                                    9      9     0%   1-14
openapi_core/spec/shortcuts.py                               10     10     0%   2-21
openapi_core/templating/__init__.py                           0      0   100%
openapi_core/templating/datatypes.py                         10     10     0%   1-13
openapi_core/templating/media_types/__init__.py               0      0   100%
openapi_core/templating/media_types/exceptions.py             9      9     0%   1-16
openapi_core/templating/media_types/finders.py               13     13     0%   2-21
openapi_core/templating/paths/__init__.py                     0      0   100%
openapi_core/templating/paths/exceptions.py                  19     19     0%   1-36
openapi_core/templating/paths/finders.py                     63     63     0%   2-101
openapi_core/templating/responses/__init__.py                 0      0   100%
openapi_core/templating/responses/exceptions.py               9      9     0%   1-17
openapi_core/templating/responses/finders.py                 14     14     0%   1-23
openapi_core/templating/util.py                              20     20     0%   1-32
openapi_core/testing/__init__.py                              4      4     0%   2-8
openapi_core/testing/datatypes.py                            13     13     0%   1-18
openapi_core/testing/factories.py                             8      8     0%   1-11
openapi_core/testing/mock.py                                  3      3     0%   3-6
openapi_core/testing/requests.py                             12     12     0%   2-27
openapi_core/testing/responses.py                             5      5     0%   2-9
openapi_core/types.py                                         1      1     0%   1
openapi_core/unmarshalling/__init__.py                        0      0   100%
openapi_core/unmarshalling/schemas/__init__.py                0      0   100%
openapi_core/unmarshalling/schemas/enums.py                   4      4     0%   2-7
openapi_core/unmarshalling/schemas/exceptions.py             27     27     0%   1-55
openapi_core/unmarshalling/schemas/factories.py              45     45     0%   1-89
openapi_core/unmarshalling/schemas/formatters.py             14     14     0%   1-18
openapi_core/unmarshalling/schemas/unmarshallers.py         176    176     0%   1-311
openapi_core/unmarshalling/schemas/util.py                   32     32     0%   2-50
openapi_core/validation/__init__.py                           0      0   100%
openapi_core/validation/datatypes.py                          7      7     0%   2-11
openapi_core/validation/decorators.py                        36     36     0%   2-59
openapi_core/validation/exceptions.py                         8      8     0%   2-15
openapi_core/validation/processors.py                         8      8     0%   4-14
openapi_core/validation/request/__init__.py                   0      0   100%
openapi_core/validation/request/datatypes.py                 26     26     0%   2-68
openapi_core/validation/request/shortcuts.py                 33     33     0%   2-57
openapi_core/validation/request/validators.py               168    168     0%   2-255
openapi_core/validation/response/__init__.py                  0      0   100%
openapi_core/validation/response/datatypes.py                11     11     0%   2-29
openapi_core/validation/response/shortcuts.py                19     19     0%   2-36
openapi_core/validation/response/validators.py               74     74     0%   2-118
openapi_core/validation/validators.py                        39     39     0%   2-66
---------------------------------------------------------------------------------------
TOTAL                                                      1563   1563     0%
Coverage XML written to file reports/coverage.xml

========================================================================= short test summary info ==========================================================================
XFAIL tests/integration/validation/test_petstore.py::TestPetstore::test_get_pets_param_coordinates
  No parameters deserialization support for complex scenarios
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationSimpleServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathSimpleServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationVariableServerServerNotFound::test_raises
  returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathVariableServerServerNotFound::test_raises
  returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecSimpleServerServerNotFound::test_raises returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecVariableServerServerNotFound::test_raises returns default server
ERROR tests/integration/contrib/django/test_django_rest_framework_apiview.py::TestDjangoRESTFrameworkAPIView::test_get - ModuleNotFoundError: No module named 'rest_frame...
FAILED docs/conf.py::flake-8::FLAKE8
FAILED tests/unit/unmarshalling/test_unmarshal.py::TestSchemaUnmarshallerCall::test_string_format_invalid_value - TypeError: Unexpected keyword arguments passed to pytes...
FAILED tests/unit/unmarshalling/test_unmarshal.py::TestSchemaUnmarshallerCall::test_read_only_properties_invalid - Failed: DID NOT RAISE <class 'openapi_core.unmarshalli...
FAILED tests/unit/unmarshalling/test_unmarshal.py::TestSchemaUnmarshallerCall::test_write_only_properties_invalid - Failed: DID NOT RAISE <class 'openapi_core.unmarshall...
=============================================== 4 failed, 599 passed, 5 xfailed, 2 xpassed, 1279 warnings, 1 error in 13.63s ===============================================

kloczek avatar May 14 '22 15:05 kloczek

gentle ping 😋

kloczek avatar Jul 14 '22 17:07 kloczek

Hey @kloczek

Use use too new pytest version 7.1.2. Try to use version 3.5.0. You can check test requirements in https://github.com/p1c2u/openapi-core/blob/0.14.2/requirements_dev.txt

p1c2u avatar Jul 16 '22 08:07 p1c2u

Sorry but all my almost 1k rpm packages with python modules works with laetst versions. I'm not going to make any exceptions. Last pytest 3.x has been released FOUR years ago. Please update your test suite for latest version of the pytest.

kloczek avatar Jul 16 '22 10:07 kloczek

Version 0.15.0a1 has updated dependency with pytest version 6

p1c2u avatar Jul 16 '22 10:07 p1c2u

That is OK however this is devel version not listed on pypi. In last ~1.5 month was no other fixes/commits. What about push that as new official release? 🤔

kloczek avatar Jul 16 '22 14:07 kloczek

we can do that too

p1c2u avatar Jul 17 '22 10:07 p1c2u

Just tested 0.16.2 and pytest is failing in few units

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.16.2-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.16.2-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra -q
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.15, pytest-7.2.0, pluggy-1.0.0
rootdir: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2, configfile: pyproject.toml
plugins: anyio-3.6.1, cov-4.0.0, flake8-1.1.1
collected 734 items

tests/integration/contrib/django/test_django_project.py EEEEEEEEEEEE
tests/integration/contrib/falcon/test_falcon_project.py ............
tests/integration/contrib/flask/test_flask_decorator.py ......
tests/integration/contrib/flask/test_flask_views.py .......
tests/integration/contrib/requests/test_requests_validation.py ...
tests/integration/contrib/starlette/test_starlette_validation.py ..
tests/integration/contrib/werkzeug/test_werkzeug_validation.py ..
tests/integration/schema/test_empty.py .
tests/integration/schema/test_link_spec.py ....
tests/integration/schema/test_path_params.py ..
tests/integration/schema/test_spec.py ..
tests/integration/validation/test_minimal.py ............................................................
tests/integration/validation/test_petstore.py .....................................
tests/integration/validation/test_read_only_write_only.py ....
tests/integration/validation/test_security_override.py .....
tests/integration/validation/test_validators.py ............................
tests/unit/test_util.py .................
tests/unit/casting/test_schema_casters.py ....
tests/unit/contrib/django/test_django.py EEEEEE
tests/unit/contrib/flask/test_flask_requests.py ...
tests/unit/contrib/flask/test_flask_responses.py .
tests/unit/contrib/requests/test_requests_requests.py ...
tests/unit/contrib/requests/test_requests_responses.py .
tests/unit/deserializing/test_media_types_deserializers.py .........
tests/unit/deserializing/test_parameters_deserializers.py ...
tests/unit/extensions/test_factories.py ..
tests/unit/schema/test_schema_parameters.py .....................................................................................................................................................
tests/unit/security/test_providers.py .........
tests/unit/templating/test_media_types_finders.py ....
tests/unit/templating/test_paths_finders.py X..x..x...........X..x..x...........
tests/unit/templating/test_responses_finders.py ...
tests/unit/templating/test_templating_util.py ..
tests/unit/unmarshalling/test_unmarshal.py ................................................................X.........................
tests/unit/unmarshalling/test_validate.py .........................................................................................................................................................................................................
tests/unit/validation/test_request_shortcuts.py ..
tests/unit/validation/test_response_shortcuts.py ../usr/lib64/python3.8/site-packages/coverage/control.py:801: CoverageWarning: No data was collected. (no-data-collected)
  self._warn("No data was collected.", slug="no-data-collected")


================================================================================== ERRORS ==================================================================================
_______________________________________________________ ERROR at setup of TestPetListView.test_get_no_required_param _______________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
_____________________________________________________________ ERROR at setup of TestPetListView.test_get_valid _____________________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
________________________________________________________ ERROR at setup of TestPetListView.test_post_server_invalid ________________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
________________________________________________ ERROR at setup of TestPetListView.test_post_required_header_param_missing _________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
______________________________________________________ ERROR at setup of TestPetListView.test_post_media_type_invalid ______________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
________________________________________________ ERROR at setup of TestPetListView.test_post_required_cookie_param_missing _________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
____________________________________________________________ ERROR at setup of TestPetListView.test_post_valid _____________________________________________________________

self = <test_django_project.TestPetListView object at 0x7f3a140342b0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetListView object at 0x7f3a140342b0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
/usr/lib/python3.8/site-packages/django/apps/registry.py:91: in populate
    app_config = AppConfig.create(entry)
        app_config = <StaticFilesConfig: staticfiles>
        entry      = 'rest_framework'
        installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
        self       = <django.apps.registry.Apps object at 0x7f3a13585b20>
/usr/lib/python3.8/site-packages/django/apps/config.py:228: in create
    import_module(entry)
        _          = ''
        app_config_class = None
        app_config_name = None
        app_module = None
        app_name   = None
        cls        = <class 'django.apps.config.AppConfig'>
        cls_name   = 'rest_framework'
        entry      = 'rest_framework'
        mod_path   = ''
/usr/lib64/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:1014: in _gcd_import
    ???
        level      = 0
        name       = 'rest_framework'
        package    = None
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
        import_    = <function _gcd_import at 0x7f3a172524c0>
        module     = <object object at 0x7f3a1722a060>
        name       = 'rest_framework'
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

name = 'rest_framework', import_ = <function _gcd_import at 0x7f3a172524c0>

>   ???
E   ModuleNotFoundError: No module named 'rest_framework'

import_    = <function _gcd_import at 0x7f3a172524c0>
name       = 'rest_framework'
parent     = ''
path       = None
spec       = None

<frozen importlib._bootstrap>:973: ModuleNotFoundError
_______________________________________________________ ERROR at setup of TestPetDetailView.test_get_server_invalid ________________________________________________________

self = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
________________________________________________________ ERROR at setup of TestPetDetailView.test_get_unauthorized _________________________________________________________

self = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
______________________________________________________ ERROR at setup of TestPetDetailView.test_delete_method_invalid ______________________________________________________

self = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
____________________________________________________________ ERROR at setup of TestPetDetailView.test_get_valid ____________________________________________________________

self = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestPetDetailView object at 0x7f3a157a88e0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
___________________________________________________________ ERROR at setup of TestDRFPetListView.test_post_valid ___________________________________________________________

self = <test_django_project.TestDRFPetListView object at 0x7f3a13d391c0>

    @pytest.fixture(autouse=True, scope="module")
    def django_setup(self):
        directory = os.path.abspath(os.path.dirname(__file__))
        django_project_dir = os.path.join(directory, "data/v3.0")
        sys.path.insert(0, django_project_dir)
        with mock.patch.dict(
            os.environ,
            {
                "DJANGO_SETTINGS_MODULE": "djangoproject.settings",
            },
        ):
            import django

>           django.setup()

directory  = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django'
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
django_project_dir = '/home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/tests/integration/contrib/django/data/v3.0'
self       = <test_django_project.TestDRFPetListView object at 0x7f3a13d391c0>

tests/integration/contrib/django/test_django_project.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "djangoproject.settings">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ...]
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
_______________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_no_resolver ________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>

    @pytest.fixture(autouse=True, scope="module")
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path
        from django.urls import re_path

        if settings.configured:
            from django.utils.functional import empty

            settings._wrapped = empty

        settings.configure(
            SECRET_KEY="secretkey",
            ALLOWED_HOSTS=[
                "testserver",
            ],
            INSTALLED_APPS=[
                "django.contrib.admin",
                "django.contrib.auth",
                "django.contrib.contenttypes",
                "django.contrib.messages",
                "django.contrib.sessions",
            ],
            MIDDLEWARE=[
                "django.contrib.sessions.middleware.SessionMiddleware",
                "django.contrib.auth.middleware.AuthenticationMiddleware",
                "django.contrib.messages.middleware.MessageMiddleware",
            ],
        )
>       django.setup()

admin      = <module 'django.contrib.admin' from '/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py'>
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
empty      = <object object at 0x7f3a13d57790>
path       = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RoutePattern'>)
re_path    = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RegexPattern'>)
self       = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>
settings   = <LazySettings "None">

tests/unit/contrib/django/test_django.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "None">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
__________________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_simple __________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>

    @pytest.fixture(autouse=True, scope="module")
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path
        from django.urls import re_path

        if settings.configured:
            from django.utils.functional import empty

            settings._wrapped = empty

        settings.configure(
            SECRET_KEY="secretkey",
            ALLOWED_HOSTS=[
                "testserver",
            ],
            INSTALLED_APPS=[
                "django.contrib.admin",
                "django.contrib.auth",
                "django.contrib.contenttypes",
                "django.contrib.messages",
                "django.contrib.sessions",
            ],
            MIDDLEWARE=[
                "django.contrib.sessions.middleware.SessionMiddleware",
                "django.contrib.auth.middleware.AuthenticationMiddleware",
                "django.contrib.messages.middleware.MessageMiddleware",
            ],
        )
>       django.setup()

admin      = <module 'django.contrib.admin' from '/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py'>
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
empty      = <object object at 0x7f3a13d57790>
path       = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RoutePattern'>)
re_path    = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RegexPattern'>)
self       = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>
settings   = <LazySettings "None">

tests/unit/contrib/django/test_django.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "None">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
_________________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_url_rule _________________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>

    @pytest.fixture(autouse=True, scope="module")
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path
        from django.urls import re_path

        if settings.configured:
            from django.utils.functional import empty

            settings._wrapped = empty

        settings.configure(
            SECRET_KEY="secretkey",
            ALLOWED_HOSTS=[
                "testserver",
            ],
            INSTALLED_APPS=[
                "django.contrib.admin",
                "django.contrib.auth",
                "django.contrib.contenttypes",
                "django.contrib.messages",
                "django.contrib.sessions",
            ],
            MIDDLEWARE=[
                "django.contrib.sessions.middleware.SessionMiddleware",
                "django.contrib.auth.middleware.AuthenticationMiddleware",
                "django.contrib.messages.middleware.MessageMiddleware",
            ],
        )
>       django.setup()

admin      = <module 'django.contrib.admin' from '/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py'>
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
empty      = <object object at 0x7f3a13d57790>
path       = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RoutePattern'>)
re_path    = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RegexPattern'>)
self       = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>
settings   = <LazySettings "None">

tests/unit/contrib/django/test_django.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "None">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
____________________________________________________ ERROR at setup of TestDjangoOpenAPIRequest.test_url_regexp_pattern ____________________________________________________

self = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>

    @pytest.fixture(autouse=True, scope="module")
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path
        from django.urls import re_path

        if settings.configured:
            from django.utils.functional import empty

            settings._wrapped = empty

        settings.configure(
            SECRET_KEY="secretkey",
            ALLOWED_HOSTS=[
                "testserver",
            ],
            INSTALLED_APPS=[
                "django.contrib.admin",
                "django.contrib.auth",
                "django.contrib.contenttypes",
                "django.contrib.messages",
                "django.contrib.sessions",
            ],
            MIDDLEWARE=[
                "django.contrib.sessions.middleware.SessionMiddleware",
                "django.contrib.auth.middleware.AuthenticationMiddleware",
                "django.contrib.messages.middleware.MessageMiddleware",
            ],
        )
>       django.setup()

admin      = <module 'django.contrib.admin' from '/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py'>
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
empty      = <object object at 0x7f3a13d57790>
path       = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RoutePattern'>)
re_path    = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RegexPattern'>)
self       = <test_django.TestDjangoOpenAPIRequest object at 0x7f3a135a7190>
settings   = <LazySettings "None">

tests/unit/contrib/django/test_django.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "None">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
_____________________________________________________ ERROR at setup of TestDjangoOpenAPIResponse.test_stream_response _____________________________________________________

self = <test_django.TestDjangoOpenAPIResponse object at 0x7f3a135c91c0>

    @pytest.fixture(autouse=True, scope="module")
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path
        from django.urls import re_path

        if settings.configured:
            from django.utils.functional import empty

            settings._wrapped = empty

        settings.configure(
            SECRET_KEY="secretkey",
            ALLOWED_HOSTS=[
                "testserver",
            ],
            INSTALLED_APPS=[
                "django.contrib.admin",
                "django.contrib.auth",
                "django.contrib.contenttypes",
                "django.contrib.messages",
                "django.contrib.sessions",
            ],
            MIDDLEWARE=[
                "django.contrib.sessions.middleware.SessionMiddleware",
                "django.contrib.auth.middleware.AuthenticationMiddleware",
                "django.contrib.messages.middleware.MessageMiddleware",
            ],
        )
>       django.setup()

admin      = <module 'django.contrib.admin' from '/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py'>
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
empty      = <object object at 0x7f3a13d57790>
path       = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RoutePattern'>)
re_path    = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RegexPattern'>)
self       = <test_django.TestDjangoOpenAPIResponse object at 0x7f3a135c91c0>
settings   = <LazySettings "None">

tests/unit/contrib/django/test_django.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "None">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
____________________________________________________ ERROR at setup of TestDjangoOpenAPIResponse.test_redirect_response ____________________________________________________

self = <test_django.TestDjangoOpenAPIResponse object at 0x7f3a135c91c0>

    @pytest.fixture(autouse=True, scope="module")
    def django_settings(self):
        import django
        from django.conf import settings
        from django.contrib import admin
        from django.urls import path
        from django.urls import re_path

        if settings.configured:
            from django.utils.functional import empty

            settings._wrapped = empty

        settings.configure(
            SECRET_KEY="secretkey",
            ALLOWED_HOSTS=[
                "testserver",
            ],
            INSTALLED_APPS=[
                "django.contrib.admin",
                "django.contrib.auth",
                "django.contrib.contenttypes",
                "django.contrib.messages",
                "django.contrib.sessions",
            ],
            MIDDLEWARE=[
                "django.contrib.sessions.middleware.SessionMiddleware",
                "django.contrib.auth.middleware.AuthenticationMiddleware",
                "django.contrib.messages.middleware.MessageMiddleware",
            ],
        )
>       django.setup()

admin      = <module 'django.contrib.admin' from '/usr/lib/python3.8/site-packages/django/contrib/admin/__init__.py'>
django     = <module 'django' from '/usr/lib/python3.8/site-packages/django/__init__.py'>
empty      = <object object at 0x7f3a13d57790>
path       = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RoutePattern'>)
re_path    = functools.partial(<function _path at 0x7f3a1323c160>, Pattern=<class 'django.urls.resolvers.RegexPattern'>)
self       = <test_django.TestDjangoOpenAPIResponse object at 0x7f3a135c91c0>
settings   = <LazySettings "None">

tests/unit/contrib/django/test_django.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.8/site-packages/django/__init__.py:24: in setup
    apps.populate(settings.INSTALLED_APPS)
        apps       = <django.apps.registry.Apps object at 0x7f3a13585b20>
        configure_logging = <function configure_logging at 0x7f3a1323c280>
        set_prefix = True
        set_script_prefix = <function set_script_prefix at 0x7f3a13236c10>
        settings   = <LazySettings "None">
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <django.apps.registry.Apps object at 0x7f3a13585b20>
installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']

    def populate(self, installed_apps=None):
        """
        Load application configurations and models.

        Import each application module and then each model module.

        It is thread-safe and idempotent, but not reentrant.
        """
        if self.ready:
            return

        # populate() might be called by two threads in parallel on servers
        # that create threads before initializing the WSGI callable.
        with self._lock:
            if self.ready:
                return

            # An RLock prevents other threads from entering this section. The
            # compare and set operation below is atomic.
            if self.loading:
                # Prevent reentrant calls to avoid running AppConfig.ready()
                # methods twice.
>               raise RuntimeError("populate() isn't reentrant")
E               RuntimeError: populate() isn't reentrant

installed_apps = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.messages', 'django.contrib.sessions']
self       = <django.apps.registry.Apps object at 0x7f3a13585b20>

/usr/lib/python3.8/site-packages/django/apps/registry.py:83: RuntimeError
============================================================================= warnings summary =============================================================================
tests/integration/contrib/django/test_django_project.py::TestPetListView::test_get_no_required_param
  /usr/lib/python3.8/site-packages/django/conf/__init__.py:229: RemovedInDjango50Warning: The USE_L10N setting is deprecated. Starting with Django 5.0, localized formatting of data will always be enabled. For example Django will display numbers and dates using the format of the current locale.
    warnings.warn(USE_L10N_DEPRECATED_MSG, RemovedInDjango50Warning)

tests/integration/contrib/requests/test_requests_validation.py::TestRequestsOpenAPIValidation::test_response_validator_path_pattern
  /usr/lib/python3.8/site-packages/responses/__init__.py:408: DeprecationWarning: Argument 'match_querystring' is deprecated. Use 'responses.matchers.query_param_matcher' or 'responses.matchers.query_string_matcher'
    warn(

tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerUnmarshal::test_schema_custom_format_invalid
tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerCall::test_string_format_custom
tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerCall::test_string_format_custom_value_error
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.16.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/unmarshalling/schemas/formatters.py:28: DeprecationWarning: Unmarshal method is deprecated. Rename unmarshal method to format instead.
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
----------------------------------------- generated xml file: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/reports/junit.xml ------------------------------------------

---------- coverage: platform linux, python 3.8.15-final-0 -----------
Name                                                      Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------
openapi_core/__init__.py                                     16     16     0%   2-21
openapi_core/casting/__init__.py                              0      0   100%
openapi_core/casting/schemas/__init__.py                      3      3     0%   1-5
openapi_core/casting/schemas/casters.py                      45     45     0%   1-64
openapi_core/casting/schemas/datatypes.py                     3      3     0%   1-4
openapi_core/casting/schemas/exceptions.py                    9      9     0%   1-15
openapi_core/casting/schemas/factories.py                    20     20     0%   1-38
openapi_core/contrib/__init__.py                              0      0   100%
openapi_core/contrib/django/__init__.py                       3      3     0%   2-5
openapi_core/contrib/django/handlers.py                      28     28     0%   2-55
openapi_core/contrib/django/middlewares.py                   45     45     0%   2-79
openapi_core/contrib/django/requests.py                      44     44     0%   2-80
openapi_core/contrib/django/responses.py                     21     21     0%   2-28
openapi_core/contrib/falcon/__init__.py                       3      3     0%   1-4
openapi_core/contrib/falcon/handlers.py                      33     33     0%   2-61
openapi_core/contrib/falcon/middlewares.py                   51     51     0%   2-114
openapi_core/contrib/falcon/requests.py                      40     40     0%   2-64
openapi_core/contrib/falcon/responses.py                     22     22     0%   2-30
openapi_core/contrib/falcon/views.py                          0      0   100%
openapi_core/contrib/flask/__init__.py                        3      3     0%   1-4
openapi_core/contrib/flask/decorators.py                     59     59     0%   2-109
openapi_core/contrib/flask/handlers.py                       26     26     0%   2-48
openapi_core/contrib/flask/providers.py                       7      7     0%   2-11
openapi_core/contrib/flask/requests.py                       14     14     0%   2-26
openapi_core/contrib/flask/responses.py                       2      2     0%   1-5
openapi_core/contrib/flask/views.py                          15     15     0%   2-29
openapi_core/contrib/requests/__init__.py                     3      3     0%   1-4
openapi_core/contrib/requests/protocols.py                   14     14     0%   1-19
openapi_core/contrib/requests/requests.py                    45     45     0%   2-75
openapi_core/contrib/requests/responses.py                   18     18     0%   2-25
openapi_core/contrib/starlette/__init__.py                    3      3     0%   1-4
openapi_core/contrib/starlette/requests.py                   33     33     0%   2-50
openapi_core/contrib/starlette/responses.py                  20     20     0%   2-27
openapi_core/contrib/werkzeug/__init__.py                     3      3     0%   1-4
openapi_core/contrib/werkzeug/requests.py                    27     27     0%   2-46
openapi_core/contrib/werkzeug/responses.py                   17     17     0%   2-24
openapi_core/deserializing/__init__.py                        0      0   100%
openapi_core/deserializing/exceptions.py                      2      2     0%   1-4
openapi_core/deserializing/media_types/__init__.py            3      3     0%   1-7
openapi_core/deserializing/media_types/datatypes.py           3      3     0%   1-4
openapi_core/deserializing/media_types/deserializers.py      23     23     0%   1-38
openapi_core/deserializing/media_types/exceptions.py          8      8     0%   1-14
openapi_core/deserializing/media_types/factories.py          26     26     0%   1-52
openapi_core/deserializing/media_types/util.py               13     13     0%   1-17
openapi_core/deserializing/parameters/__init__.py             3      3     0%   1-7
openapi_core/deserializing/parameters/datatypes.py            3      3     0%   1-4
openapi_core/deserializing/parameters/deserializers.py       40     40     0%   1-66
openapi_core/deserializing/parameters/exceptions.py          19     19     0%   1-36
openapi_core/deserializing/parameters/factories.py           18     18     0%   1-39
openapi_core/deserializing/parameters/util.py                 3      3     0%   1-5
openapi_core/exceptions.py                                    2      2     0%   4-5
openapi_core/extensions/__init__.py                           0      0   100%
openapi_core/extensions/models/__init__.py                    0      0   100%
openapi_core/extensions/models/factories.py                  26     26     0%   2-48
openapi_core/extensions/models/types.py                       4      4     0%   1-5
openapi_core/schema/__init__.py                               0      0   100%
openapi_core/schema/parameters.py                            52     52     0%   1-90
openapi_core/schema/protocols.py                             20     20     0%   1-26
openapi_core/schema/schemas.py                               12     12     0%   1-18
openapi_core/schema/servers.py                               18     18     0%   1-26
openapi_core/schema/specs.py                                  5      5     0%   1-7
openapi_core/security/__init__.py                             3      3     0%   1-5
openapi_core/security/exceptions.py                           3      3     0%   1-5
openapi_core/security/factories.py                           14     14     0%   1-24
openapi_core/security/providers.py                           34     34     0%   1-46
openapi_core/spec/__init__.py                                 2      2     0%   1-3
openapi_core/spec/paths.py                                   19     19     0%   1-33
openapi_core/spec/shortcuts.py                               14     14     0%   2-25
openapi_core/templating/__init__.py                           0      0   100%
openapi_core/templating/datatypes.py                         12     12     0%   1-15
openapi_core/templating/media_types/__init__.py               0      0   100%
openapi_core/templating/media_types/datatypes.py              2      2     0%   1-3
openapi_core/templating/media_types/exceptions.py            10     10     0%   1-17
openapi_core/templating/media_types/finders.py               15     15     0%   2-22
openapi_core/templating/paths/__init__.py                     0      0   100%
openapi_core/templating/paths/datatypes.py                    4      4     0%   2-8
openapi_core/templating/paths/exceptions.py                  19     19     0%   1-38
openapi_core/templating/paths/finders.py                     76     76     0%   2-131
openapi_core/templating/paths/util.py                         5      5     0%   1-8
openapi_core/templating/responses/__init__.py                 0      0   100%
openapi_core/templating/responses/exceptions.py              10     10     0%   1-19
openapi_core/templating/responses/finders.py                 14     14     0%   1-21
openapi_core/templating/util.py                              25     25     0%   1-39
openapi_core/testing/__init__.py                              3      3     0%   2-5
openapi_core/testing/datatypes.py                            11     11     0%   1-21
openapi_core/testing/requests.py                             19     19     0%   2-37
openapi_core/testing/responses.py                            10     10     0%   2-20
openapi_core/unmarshalling/__init__.py                        0      0   100%
openapi_core/unmarshalling/schemas/__init__.py               10     10     0%   1-33
openapi_core/unmarshalling/schemas/datatypes.py               5      5     0%   1-7
openapi_core/unmarshalling/schemas/enums.py                   4      4     0%   2-7
openapi_core/unmarshalling/schemas/exceptions.py             26     26     0%   1-57
openapi_core/unmarshalling/schemas/factories.py              62     62     0%   1-125
openapi_core/unmarshalling/schemas/formatters.py             34     34     0%   1-57
openapi_core/unmarshalling/schemas/unmarshallers.py         244    244     0%   1-421
openapi_core/unmarshalling/schemas/util.py                   31     31     0%   2-45
openapi_core/util.py                                         15     15     0%   2-22
openapi_core/validation/__init__.py                           8      8     0%   2-12
openapi_core/validation/datatypes.py                          8      8     0%   2-12
openapi_core/validation/exceptions.py                        36     36     0%   2-66
openapi_core/validation/processors.py                        15     15     0%   2-28
openapi_core/validation/request/__init__.py                  24     24     0%   2-88
openapi_core/validation/request/datatypes.py                 27     27     0%   2-51
openapi_core/validation/request/exceptions.py                22     22     0%   1-36
openapi_core/validation/request/protocols.py                 41     41     0%   2-100
openapi_core/validation/request/proxies.py                   30     30     0%   2-57
openapi_core/validation/request/validators.py               192    192     0%   2-355
openapi_core/validation/response/__init__.py                 19     19     0%   2-70
openapi_core/validation/response/datatypes.py                10     10     0%   2-14
openapi_core/validation/response/exceptions.py               17     17     0%   1-25
openapi_core/validation/response/protocols.py                34     34     0%   2-64
openapi_core/validation/response/proxies.py                  31     31     0%   2-62
openapi_core/validation/response/validators.py              132    132     0%   2-268
openapi_core/validation/shortcuts.py                         18     18     0%   2-35
openapi_core/validation/validators.py                        63     63     0%   2-108
---------------------------------------------------------------------------------------
TOTAL                                                      2480   2480     0%
Coverage XML written to file reports/coverage.xml

========================================================================= short test summary info ==========================================================================
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationSimpleServerServerNotFound::test_raises - returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathSimpleServerServerNotFound::test_raises - returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationVariableServerServerNotFound::test_raises - returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathVariableServerServerNotFound::test_raises - returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecSimpleServerServerNotFound::test_raises returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecVariableServerServerNotFound::test_raises returns default server
XPASS tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerCall::test_null_not_supported
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_get_no_required_param - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_get_valid - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_post_server_invalid - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_post_required_header_param_missing - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_post_media_type_invalid - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_post_required_cookie_param_missing - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetListView::test_post_valid - ModuleNotFoundError: No module named 'rest_framework'
ERROR tests/integration/contrib/django/test_django_project.py::TestPetDetailView::test_get_server_invalid - RuntimeError: populate() isn't reentrant
ERROR tests/integration/contrib/django/test_django_project.py::TestPetDetailView::test_get_unauthorized - RuntimeError: populate() isn't reentrant
ERROR tests/integration/contrib/django/test_django_project.py::TestPetDetailView::test_delete_method_invalid - RuntimeError: populate() isn't reentrant
ERROR tests/integration/contrib/django/test_django_project.py::TestPetDetailView::test_get_valid - RuntimeError: populate() isn't reentrant
ERROR tests/integration/contrib/django/test_django_project.py::TestDRFPetListView::test_post_valid - RuntimeError: populate() isn't reentrant
ERROR tests/unit/contrib/django/test_django.py::TestDjangoOpenAPIRequest::test_no_resolver - RuntimeError: populate() isn't reentrant
ERROR tests/unit/contrib/django/test_django.py::TestDjangoOpenAPIRequest::test_simple - RuntimeError: populate() isn't reentrant
ERROR tests/unit/contrib/django/test_django.py::TestDjangoOpenAPIRequest::test_url_rule - RuntimeError: populate() isn't reentrant
ERROR tests/unit/contrib/django/test_django.py::TestDjangoOpenAPIRequest::test_url_regexp_pattern - RuntimeError: populate() isn't reentrant
ERROR tests/unit/contrib/django/test_django.py::TestDjangoOpenAPIResponse::test_stream_response - RuntimeError: populate() isn't reentrant
ERROR tests/unit/contrib/django/test_django.py::TestDjangoOpenAPIResponse::test_redirect_response - RuntimeError: populate() isn't reentrant
===================================================== 709 passed, 4 xfailed, 3 xpassed, 5 warnings, 18 errors in 7.01s =====================================================

kloczek avatar Nov 25 '22 14:11 kloczek

Is that missing in my build env module rest_framewo it is https://pypi.org/project/django-rest-framework/?

kloczek avatar Nov 25 '22 14:11 kloczek

yes it looks like

djangorestframework = "^3.11.2"

it's defined in pyproject.toml

p1c2u avatar Nov 25 '22 14:11 p1c2u

OK after package djangorestframework and add it to build env I was able to pass pytest. There are some warnings however looks like it is some minor issue ..

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.16.2-2.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.16.2-2.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra -q
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.15, pytest-7.2.0, pluggy-1.0.0
rootdir: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2, configfile: pyproject.toml
plugins: anyio-3.6.1, cov-4.0.0, flake8-1.1.1
collected 734 items

tests/integration/contrib/django/test_django_project.py Bad Request: /v1/pets
..Bad Request: /v1/pets
.Bad Request: /v1/pets
.Unsupported Media Type: /v1/pets
.Bad Request: /v1/pets
..Invalid HTTP_HOST header: 'testserver'. You may need to add 'testserver' to ALLOWED_HOSTS.
Bad Request: /v1/pets/12
.Forbidden: /v1/pets/12
.Method Not Allowed: /v1/pets/12
...
tests/integration/contrib/falcon/test_falcon_project.py ............
tests/integration/contrib/flask/test_flask_decorator.py ......
tests/integration/contrib/flask/test_flask_views.py .......
tests/integration/contrib/requests/test_requests_validation.py ...
tests/integration/contrib/starlette/test_starlette_validation.py ..
tests/integration/contrib/werkzeug/test_werkzeug_validation.py ..
tests/integration/schema/test_empty.py .
tests/integration/schema/test_link_spec.py ....
tests/integration/schema/test_path_params.py ..
tests/integration/schema/test_spec.py ..
tests/integration/validation/test_minimal.py ............................................................
tests/integration/validation/test_petstore.py .....................................
tests/integration/validation/test_read_only_write_only.py ....
tests/integration/validation/test_security_override.py .....
tests/integration/validation/test_validators.py ............................
tests/unit/test_util.py .................
tests/unit/casting/test_schema_casters.py ....
tests/unit/contrib/django/test_django.py ......
tests/unit/contrib/flask/test_flask_requests.py ...
tests/unit/contrib/flask/test_flask_responses.py .
tests/unit/contrib/requests/test_requests_requests.py ...
tests/unit/contrib/requests/test_requests_responses.py .
tests/unit/deserializing/test_media_types_deserializers.py .........
tests/unit/deserializing/test_parameters_deserializers.py ...
tests/unit/extensions/test_factories.py ..
tests/unit/schema/test_schema_parameters.py .....................................................................................................................................................
tests/unit/security/test_providers.py .........
tests/unit/templating/test_media_types_finders.py ....
tests/unit/templating/test_paths_finders.py X..x..x...........X..x..x...........
tests/unit/templating/test_responses_finders.py ...
tests/unit/templating/test_templating_util.py ..
tests/unit/unmarshalling/test_unmarshal.py ................................................................X.........................
tests/unit/unmarshalling/test_validate.py .........................................................................................................................................................................................................
tests/unit/validation/test_request_shortcuts.py ..
tests/unit/validation/test_response_shortcuts.py ../usr/lib64/python3.8/site-packages/coverage/control.py:801: CoverageWarning: No data was collected. (no-data-collected)
  self._warn("No data was collected.", slug="no-data-collected")


============================================================================= warnings summary =============================================================================
tests/integration/contrib/django/test_django_project.py::TestPetListView::test_get_no_required_param
  /usr/lib/python3.8/site-packages/django/conf/__init__.py:229: RemovedInDjango50Warning: The USE_L10N setting is deprecated. Starting with Django 5.0, localized formatting of data will always be enabled. For example Django will display numbers and dates using the format of the current locale.
    warnings.warn(USE_L10N_DEPRECATED_MSG, RemovedInDjango50Warning)

tests/integration/contrib/requests/test_requests_validation.py::TestRequestsOpenAPIValidation::test_response_validator_path_pattern
  /usr/lib/python3.8/site-packages/responses/__init__.py:408: DeprecationWarning: Argument 'match_querystring' is deprecated. Use 'responses.matchers.query_param_matcher' or 'responses.matchers.query_string_matcher'
    warn(

tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerUnmarshal::test_schema_custom_format_invalid
tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerCall::test_string_format_custom
tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerCall::test_string_format_custom_value_error
  /home/tkloczko/rpmbuild/BUILDROOT/python-openapi-core-0.16.2-2.fc35.x86_64/usr/lib/python3.8/site-packages/openapi_core/unmarshalling/schemas/formatters.py:28: DeprecationWarning: Unmarshal method is deprecated. Rename unmarshal method to format instead.
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
----------------------------------------- generated xml file: /home/tkloczko/rpmbuild/BUILD/openapi-core-0.16.2/reports/junit.xml ------------------------------------------

---------- coverage: platform linux, python 3.8.15-final-0 -----------
Name                                                      Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------------------
openapi_core/__init__.py                                     16     16     0%   2-21
openapi_core/casting/__init__.py                              0      0   100%
openapi_core/casting/schemas/__init__.py                      3      3     0%   1-5
openapi_core/casting/schemas/casters.py                      45     45     0%   1-64
openapi_core/casting/schemas/datatypes.py                     3      3     0%   1-4
openapi_core/casting/schemas/exceptions.py                    9      9     0%   1-15
openapi_core/casting/schemas/factories.py                    20     20     0%   1-38
openapi_core/contrib/__init__.py                              0      0   100%
openapi_core/contrib/django/__init__.py                       3      3     0%   2-5
openapi_core/contrib/django/handlers.py                      28     28     0%   2-55
openapi_core/contrib/django/middlewares.py                   45     45     0%   2-79
openapi_core/contrib/django/requests.py                      44     44     0%   2-80
openapi_core/contrib/django/responses.py                     21     21     0%   2-28
openapi_core/contrib/falcon/__init__.py                       3      3     0%   1-4
openapi_core/contrib/falcon/handlers.py                      33     33     0%   2-61
openapi_core/contrib/falcon/middlewares.py                   51     51     0%   2-114
openapi_core/contrib/falcon/requests.py                      40     40     0%   2-64
openapi_core/contrib/falcon/responses.py                     22     22     0%   2-30
openapi_core/contrib/falcon/views.py                          0      0   100%
openapi_core/contrib/flask/__init__.py                        3      3     0%   1-4
openapi_core/contrib/flask/decorators.py                     59     59     0%   2-109
openapi_core/contrib/flask/handlers.py                       26     26     0%   2-48
openapi_core/contrib/flask/providers.py                       7      7     0%   2-11
openapi_core/contrib/flask/requests.py                       14     14     0%   2-26
openapi_core/contrib/flask/responses.py                       2      2     0%   1-5
openapi_core/contrib/flask/views.py                          15     15     0%   2-29
openapi_core/contrib/requests/__init__.py                     3      3     0%   1-4
openapi_core/contrib/requests/protocols.py                   14     14     0%   1-19
openapi_core/contrib/requests/requests.py                    45     45     0%   2-75
openapi_core/contrib/requests/responses.py                   18     18     0%   2-25
openapi_core/contrib/starlette/__init__.py                    3      3     0%   1-4
openapi_core/contrib/starlette/requests.py                   33     33     0%   2-50
openapi_core/contrib/starlette/responses.py                  20     20     0%   2-27
openapi_core/contrib/werkzeug/__init__.py                     3      3     0%   1-4
openapi_core/contrib/werkzeug/requests.py                    27     27     0%   2-46
openapi_core/contrib/werkzeug/responses.py                   17     17     0%   2-24
openapi_core/deserializing/__init__.py                        0      0   100%
openapi_core/deserializing/exceptions.py                      2      2     0%   1-4
openapi_core/deserializing/media_types/__init__.py            3      3     0%   1-7
openapi_core/deserializing/media_types/datatypes.py           3      3     0%   1-4
openapi_core/deserializing/media_types/deserializers.py      23     23     0%   1-38
openapi_core/deserializing/media_types/exceptions.py          8      8     0%   1-14
openapi_core/deserializing/media_types/factories.py          26     26     0%   1-52
openapi_core/deserializing/media_types/util.py               13     13     0%   1-17
openapi_core/deserializing/parameters/__init__.py             3      3     0%   1-7
openapi_core/deserializing/parameters/datatypes.py            3      3     0%   1-4
openapi_core/deserializing/parameters/deserializers.py       40     40     0%   1-66
openapi_core/deserializing/parameters/exceptions.py          19     19     0%   1-36
openapi_core/deserializing/parameters/factories.py           18     18     0%   1-39
openapi_core/deserializing/parameters/util.py                 3      3     0%   1-5
openapi_core/exceptions.py                                    2      2     0%   4-5
openapi_core/extensions/__init__.py                           0      0   100%
openapi_core/extensions/models/__init__.py                    0      0   100%
openapi_core/extensions/models/factories.py                  26     26     0%   2-48
openapi_core/extensions/models/types.py                       4      4     0%   1-5
openapi_core/schema/__init__.py                               0      0   100%
openapi_core/schema/parameters.py                            52     52     0%   1-90
openapi_core/schema/protocols.py                             20     20     0%   1-26
openapi_core/schema/schemas.py                               12     12     0%   1-18
openapi_core/schema/servers.py                               18     18     0%   1-26
openapi_core/schema/specs.py                                  5      5     0%   1-7
openapi_core/security/__init__.py                             3      3     0%   1-5
openapi_core/security/exceptions.py                           3      3     0%   1-5
openapi_core/security/factories.py                           14     14     0%   1-24
openapi_core/security/providers.py                           34     34     0%   1-46
openapi_core/spec/__init__.py                                 2      2     0%   1-3
openapi_core/spec/paths.py                                   19     19     0%   1-33
openapi_core/spec/shortcuts.py                               14     14     0%   2-25
openapi_core/templating/__init__.py                           0      0   100%
openapi_core/templating/datatypes.py                         12     12     0%   1-15
openapi_core/templating/media_types/__init__.py               0      0   100%
openapi_core/templating/media_types/datatypes.py              2      2     0%   1-3
openapi_core/templating/media_types/exceptions.py            10     10     0%   1-17
openapi_core/templating/media_types/finders.py               15     15     0%   2-22
openapi_core/templating/paths/__init__.py                     0      0   100%
openapi_core/templating/paths/datatypes.py                    4      4     0%   2-8
openapi_core/templating/paths/exceptions.py                  19     19     0%   1-38
openapi_core/templating/paths/finders.py                     76     76     0%   2-131
openapi_core/templating/paths/util.py                         5      5     0%   1-8
openapi_core/templating/responses/__init__.py                 0      0   100%
openapi_core/templating/responses/exceptions.py              10     10     0%   1-19
openapi_core/templating/responses/finders.py                 14     14     0%   1-21
openapi_core/templating/util.py                              25     25     0%   1-39
openapi_core/testing/__init__.py                              3      3     0%   2-5
openapi_core/testing/datatypes.py                            11     11     0%   1-21
openapi_core/testing/requests.py                             19     19     0%   2-37
openapi_core/testing/responses.py                            10     10     0%   2-20
openapi_core/unmarshalling/__init__.py                        0      0   100%
openapi_core/unmarshalling/schemas/__init__.py               10     10     0%   1-33
openapi_core/unmarshalling/schemas/datatypes.py               5      5     0%   1-7
openapi_core/unmarshalling/schemas/enums.py                   4      4     0%   2-7
openapi_core/unmarshalling/schemas/exceptions.py             26     26     0%   1-57
openapi_core/unmarshalling/schemas/factories.py              62     62     0%   1-125
openapi_core/unmarshalling/schemas/formatters.py             34     34     0%   1-57
openapi_core/unmarshalling/schemas/unmarshallers.py         244    244     0%   1-421
openapi_core/unmarshalling/schemas/util.py                   31     31     0%   2-45
openapi_core/util.py                                         15     15     0%   2-22
openapi_core/validation/__init__.py                           8      8     0%   2-12
openapi_core/validation/datatypes.py                          8      8     0%   2-12
openapi_core/validation/exceptions.py                        36     36     0%   2-66
openapi_core/validation/processors.py                        15     15     0%   2-28
openapi_core/validation/request/__init__.py                  24     24     0%   2-88
openapi_core/validation/request/datatypes.py                 27     27     0%   2-51
openapi_core/validation/request/exceptions.py                22     22     0%   1-36
openapi_core/validation/request/protocols.py                 41     41     0%   2-100
openapi_core/validation/request/proxies.py                   30     30     0%   2-57
openapi_core/validation/request/validators.py               192    192     0%   2-355
openapi_core/validation/response/__init__.py                 19     19     0%   2-70
openapi_core/validation/response/datatypes.py                10     10     0%   2-14
openapi_core/validation/response/exceptions.py               17     17     0%   1-25
openapi_core/validation/response/protocols.py                34     34     0%   2-64
openapi_core/validation/response/proxies.py                  31     31     0%   2-62
openapi_core/validation/response/validators.py              132    132     0%   2-268
openapi_core/validation/shortcuts.py                         18     18     0%   2-35
openapi_core/validation/validators.py                        63     63     0%   2-108
---------------------------------------------------------------------------------------
TOTAL                                                      2480   2480     0%
Coverage XML written to file reports/coverage.xml

========================================================================= short test summary info ==========================================================================
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationSimpleServerServerNotFound::test_raises - returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathSimpleServerServerNotFound::test_raises - returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestOperationVariableServerServerNotFound::test_raises - returns default server
XFAIL tests/unit/templating/test_paths_finders.py::TestPathVariableServerServerNotFound::test_raises - returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecSimpleServerServerNotFound::test_raises returns default server
XPASS tests/unit/templating/test_paths_finders.py::TestSpecVariableServerServerNotFound::test_raises returns default server
XPASS tests/unit/unmarshalling/test_unmarshal.py::TestOAS30SchemaUnmarshallerCall::test_null_not_supported
========================================================== 727 passed, 4 xfailed, 3 xpassed, 5 warnings in 6.25s ===========================================================

kloczek avatar Nov 25 '22 17:11 kloczek