devel/py-gql
GraphQL client for Python
| Flavor | Version | Run | OSVersion | Arch | License | Restricted | Status | |
|---|---|---|---|---|---|---|---|---|
| py311 | 3.5.3 | 621 | 4.0 | amd64 | mit | 0 | fail |
License Permissions:
Events
| Machine | Type | Time | Message |
|---|---|---|---|
| m4064b | info | 2025-12-11 21:54:12.908872 | Test Started |
| m4064b | fail | 2025-12-11 21:56:09.41799 | make test returned non-zero: 1 |
| m4064b | fail | 2025-12-11 21:56:09.50188 | Test complete. |
Log
[1m===> Testing for py311-gql-3.5.3[0m
===> py311-gql-3.5.3 depends on package: py311-aiofiles>0 - not found
[1m===> Installing for /magus/packages/All/py311-aiofiles-23.2.1.mport[0m
===> py311-aiofiles-23.2.1 depends on file: /usr/local/bin/python3.11 - found
Installing py311-aiofiles-23.2.1
/usr/local/share/licenses/py311-aiofiles-23.2.1/catalog.mk
/usr/local/share/licenses/py311-aiofiles-23.2.1/LICENSE
/usr/local/share/licenses/py311-aiofiles-23.2.1/Apache-2.0
/usr/local/lib/python3.11/site-packages/aiofiles-23.2.1.dist-info/METADATA
/usr/local/lib/python3.11/site-packages/aiofiles-23.2.1.dist-info/RECORD
/usr/local/lib/python3.11/site-packages/aiofiles-23.2.1.dist-info/WHEEL
/usr/local/lib/python3.11/site-packages/aiofiles-23.2.1.dist-info/licenses/LICENSE
/usr/local/lib/python3.11/site-packages/aiofiles-23.2.1.dist-info/licenses/NOTICE
/usr/local/lib/python3.11/site-packages/aiofiles/__init__.py
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/base.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/base.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/os.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/os.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/ospath.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/__pycache__/ospath.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/base.py
/usr/local/lib/python3.11/site-packages/aiofiles/os.py
/usr/local/lib/python3.11/site-packages/aiofiles/ospath.py
/usr/local/lib/python3.11/site-packages/aiofiles/tempfile/__init__.py
/usr/local/lib/python3.11/site-packages/aiofiles/tempfile/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/tempfile/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/tempfile/__pycache__/temptypes.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/tempfile/__pycache__/temptypes.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/tempfile/temptypes.py
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__init__.py
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/binary.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/binary.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/text.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/text.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/utils.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/__pycache__/utils.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/binary.py
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/text.py
/usr/local/lib/python3.11/site-packages/aiofiles/threadpool/utils.py
[1m===> Done.[0m
===> py311-gql-3.5.3 depends on package: py311-aiofiles>0 - found
===> Returning to build of py311-gql-3.5.3
===> py311-gql-3.5.3 depends on package: py311-mock>0 - not found
[1m===> Installing for /magus/packages/All/py311-mock-3.0.5.mport[0m
===> py311-mock-3.0.5 depends on package: py311-six>=0 - found
===> py311-mock-3.0.5 depends on package: py311-setuptools>=63.1.0 - found
===> py311-mock-3.0.5 depends on file: /usr/local/bin/python3.11 - found
Installing py311-mock-3.0.5
/usr/local/share/licenses/py311-mock-3.0.5/catalog.mk
/usr/local/share/licenses/py311-mock-3.0.5/LICENSE
/usr/local/share/licenses/py311-mock-3.0.5/bsd2
/usr/local/lib/python3.11/site-packages/mock-3.0.5-py3.11.egg-info/PKG-INFO
/usr/local/lib/python3.11/site-packages/mock-3.0.5-py3.11.egg-info/SOURCES.txt
/usr/local/lib/python3.11/site-packages/mock-3.0.5-py3.11.egg-info/dependency_links.txt
/usr/local/lib/python3.11/site-packages/mock-3.0.5-py3.11.egg-info/requires.txt
/usr/local/lib/python3.11/site-packages/mock-3.0.5-py3.11.egg-info/top_level.txt
/usr/local/lib/python3.11/site-packages/mock/__init__.py
/usr/local/lib/python3.11/site-packages/mock/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/mock/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/mock/__pycache__/mock.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/mock/__pycache__/mock.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/mock/mock.py
[1m===> Done.[0m
===> py311-gql-3.5.3 depends on package: py311-mock>0 - found
===> Returning to build of py311-gql-3.5.3
===> py311-gql-3.5.3 depends on package: py311-parse>0 - not found
[1m===> Installing for /magus/packages/All/py311-parse-1.20.2.mport[0m
===> py311-parse-1.20.2 depends on file: /usr/local/bin/python3.11 - found
Installing py311-parse-1.20.2
/usr/local/share/licenses/py311-parse-1.20.2/catalog.mk
/usr/local/share/licenses/py311-parse-1.20.2/LICENSE
/usr/local/share/licenses/py311-parse-1.20.2/mit
/usr/local/lib/python3.11/site-packages/__pycache__/parse.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/__pycache__/parse.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/parse-1.20.2.dist-info/LICENSE
/usr/local/lib/python3.11/site-packages/parse-1.20.2.dist-info/METADATA
/usr/local/lib/python3.11/site-packages/parse-1.20.2.dist-info/RECORD
/usr/local/lib/python3.11/site-packages/parse-1.20.2.dist-info/WHEEL
/usr/local/lib/python3.11/site-packages/parse-1.20.2.dist-info/top_level.txt
/usr/local/lib/python3.11/site-packages/parse.py
[1m===> Done.[0m
===> py311-gql-3.5.3 depends on package: py311-parse>0 - found
===> Returning to build of py311-gql-3.5.3
===> py311-gql-3.5.3 depends on package: py311-pytest-asyncio>0 - not found
[1m===> Installing for /magus/packages/All/py311-pytest-asyncio-0.23.8.mport[0m
===> py311-pytest-asyncio-0.23.8 depends on package: py311-pytest>=6.1.0 - not found
[1m===> Installing for /magus/packages/All/py311-pytest-8.1.1,1.mport[0m
===> py311-pytest-8.1.1,1 depends on package: py311-iniconfig>=0 - not found
[1m===> Installing for /magus/packages/All/py311-iniconfig-1.1.1_1.mport[0m
===> py311-iniconfig-1.1.1_1 depends on package: py311-setuptools>=63.1.0 - found
===> py311-iniconfig-1.1.1_1 depends on file: /usr/local/bin/python3.11 - found
Installing py311-iniconfig-1.1.1_1
/usr/local/share/licenses/py311-iniconfig-1.1.1_1/catalog.mk
/usr/local/share/licenses/py311-iniconfig-1.1.1_1/LICENSE
/usr/local/share/licenses/py311-iniconfig-1.1.1_1/mit
/usr/local/lib/python3.11/site-packages/iniconfig-1.1.1-py3.11.egg-info/PKG-INFO
/usr/local/lib/python3.11/site-packages/iniconfig-1.1.1-py3.11.egg-info/SOURCES.txt
/usr/local/lib/python3.11/site-packages/iniconfig-1.1.1-py3.11.egg-info/dependency_links.txt
/usr/local/lib/python3.11/site-packages/iniconfig-1.1.1-py3.11.egg-info/not-zip-safe
/usr/local/lib/python3.11/site-packages/iniconfig-1.1.1-py3.11.egg-info/top_level.txt
/usr/local/lib/python3.11/site-packages/iniconfig/__init__.py
/usr/local/lib/python3.11/site-packages/iniconfig/__init__.pyi
/usr/local/lib/python3.11/site-packages/iniconfig/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/iniconfig/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/iniconfig/py.typed
[1m===> Done.[0m
===> py311-pytest-8.1.1,1 depends on package: py311-iniconfig>=0 - found
===> Returning to build of py311-pytest-8.1.1,1
===> py311-pytest-8.1.1,1 depends on package: py311-packaging>=0 - found
===> py311-pytest-8.1.1,1 depends on package: py311-pluggy>=1.4<2.0 - not found
[1m===> Installing for /magus/packages/All/py311-pluggy-1.5.0.mport[0m
===> py311-pluggy-1.5.0 depends on file: /usr/local/bin/python3.11 - found
Installing py311-pluggy-1.5.0
/usr/local/share/licenses/py311-pluggy-1.5.0/catalog.mk
/usr/local/share/licenses/py311-pluggy-1.5.0/LICENSE
/usr/local/share/licenses/py311-pluggy-1.5.0/mit
/usr/local/lib/python3.11/site-packages/pluggy-1.5.0.dist-info/LICENSE
/usr/local/lib/python3.11/site-packages/pluggy-1.5.0.dist-info/METADATA
/usr/local/lib/python3.11/site-packages/pluggy-1.5.0.dist-info/RECORD
/usr/local/lib/python3.11/site-packages/pluggy-1.5.0.dist-info/WHEEL
/usr/local/lib/python3.11/site-packages/pluggy-1.5.0.dist-info/top_level.txt
/usr/local/lib/python3.11/site-packages/pluggy/__init__.py
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_callers.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_callers.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_hooks.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_hooks.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_manager.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_manager.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_result.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_result.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_tracing.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_tracing.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_version.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_version.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_warnings.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pluggy/__pycache__/_warnings.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pluggy/_callers.py
/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py
/usr/local/lib/python3.11/site-packages/pluggy/_manager.py
/usr/local/lib/python3.11/site-packages/pluggy/_result.py
/usr/local/lib/python3.11/site-packages/pluggy/_tracing.py
/usr/local/lib/python3.11/site-packages/pluggy/_version.py
/usr/local/lib/python3.11/site-packages/pluggy/_warnings.py
/usr/local/lib/python3.11/site-packages/pluggy/py.typed
[1m===> Done.[0m
===> py311-pytest-8.1.1,1 depends on package: py311-pluggy>=1.4<2.0 - found
===> Returning to build of py311-pytest-8.1.1,1
===> py311-pytest-8.1.1,1 depends on file: /usr/local/bin/python3.11 - found
Installing py311-pytest-8.1.1,1
/usr/local/share/licenses/py311-pytest-8.1.1,1/catalog.mk
/usr/local/share/licenses/py311-pytest-8.1.1,1/LICENSE
/usr/local/share/licenses/py311-pytest-8.1.1,1/mit
/usr/local/bin/py.test-3.11
/usr/local/bin/py.test
/usr/local/bin/pytest-3.11
/usr/local/bin/pytest
/usr/local/lib/python3.11/site-packages/__pycache__/py.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/__pycache__/py.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/_argcomplete.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/_argcomplete.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/_version.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/_version.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/cacheprovider.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/cacheprovider.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/capture.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/capture.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/compat.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/compat.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/debugging.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/debugging.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/deprecated.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/deprecated.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/doctest.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/doctest.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/faulthandler.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/faulthandler.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/fixtures.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/fixtures.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/freeze_support.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/freeze_support.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/helpconfig.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/helpconfig.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/hookspec.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/hookspec.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/junitxml.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/junitxml.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/legacypath.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/legacypath.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/logging.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/logging.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/main.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/main.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/monkeypatch.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/monkeypatch.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/nodes.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/nodes.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/outcomes.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/outcomes.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pastebin.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pastebin.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pathlib.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pathlib.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pytester.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pytester.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pytester_assertions.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/pytester_assertions.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/python.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/python.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/python_api.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/python_api.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/python_path.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/python_path.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/recwarn.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/recwarn.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/reports.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/reports.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/runner.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/runner.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/scope.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/scope.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/setuponly.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/setuponly.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/setupplan.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/setupplan.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/skipping.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/skipping.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/stash.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/stash.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/stepwise.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/stepwise.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/terminal.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/terminal.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/threadexception.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/threadexception.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/timing.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/timing.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/tmpdir.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/tmpdir.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/unittest.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/unittest.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/unraisableexception.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/unraisableexception.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/warning_types.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/warning_types.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/warnings.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/__pycache__/warnings.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_argcomplete.py
/usr/local/lib/python3.11/site-packages/_pytest/_code/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/_code/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_code/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_code/__pycache__/code.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_code/__pycache__/code.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_code/__pycache__/source.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_code/__pycache__/source.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_code/code.py
/usr/local/lib/python3.11/site-packages/_pytest/_code/source.py
/usr/local/lib/python3.11/site-packages/_pytest/_io/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/pprint.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/pprint.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/saferepr.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/saferepr.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/terminalwriter.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/terminalwriter.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/wcwidth.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/__pycache__/wcwidth.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_io/pprint.py
/usr/local/lib/python3.11/site-packages/_pytest/_io/saferepr.py
/usr/local/lib/python3.11/site-packages/_pytest/_io/terminalwriter.py
/usr/local/lib/python3.11/site-packages/_pytest/_io/wcwidth.py
/usr/local/lib/python3.11/site-packages/_pytest/_py/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/_py/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_py/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_py/__pycache__/error.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_py/__pycache__/error.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_py/__pycache__/path.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_py/__pycache__/path.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/_py/error.py
/usr/local/lib/python3.11/site-packages/_pytest/_py/path.py
/usr/local/lib/python3.11/site-packages/_pytest/_version.py
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/rewrite.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/rewrite.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/truncate.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/truncate.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/util.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/__pycache__/util.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/assertion/rewrite.py
/usr/local/lib/python3.11/site-packages/_pytest/assertion/truncate.py
/usr/local/lib/python3.11/site-packages/_pytest/assertion/util.py
/usr/local/lib/python3.11/site-packages/_pytest/cacheprovider.py
/usr/local/lib/python3.11/site-packages/_pytest/capture.py
/usr/local/lib/python3.11/site-packages/_pytest/compat.py
/usr/local/lib/python3.11/site-packages/_pytest/config/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/argparsing.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/argparsing.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/compat.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/compat.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/exceptions.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/exceptions.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/findpaths.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/__pycache__/findpaths.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/config/argparsing.py
/usr/local/lib/python3.11/site-packages/_pytest/config/compat.py
/usr/local/lib/python3.11/site-packages/_pytest/config/exceptions.py
/usr/local/lib/python3.11/site-packages/_pytest/config/findpaths.py
/usr/local/lib/python3.11/site-packages/_pytest/debugging.py
/usr/local/lib/python3.11/site-packages/_pytest/deprecated.py
/usr/local/lib/python3.11/site-packages/_pytest/doctest.py
/usr/local/lib/python3.11/site-packages/_pytest/faulthandler.py
/usr/local/lib/python3.11/site-packages/_pytest/fixtures.py
/usr/local/lib/python3.11/site-packages/_pytest/freeze_support.py
/usr/local/lib/python3.11/site-packages/_pytest/helpconfig.py
/usr/local/lib/python3.11/site-packages/_pytest/hookspec.py
/usr/local/lib/python3.11/site-packages/_pytest/junitxml.py
/usr/local/lib/python3.11/site-packages/_pytest/legacypath.py
/usr/local/lib/python3.11/site-packages/_pytest/logging.py
/usr/local/lib/python3.11/site-packages/_pytest/main.py
/usr/local/lib/python3.11/site-packages/_pytest/mark/__init__.py
/usr/local/lib/python3.11/site-packages/_pytest/mark/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/mark/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/mark/__pycache__/expression.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/mark/__pycache__/expression.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/mark/__pycache__/structures.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_pytest/mark/__pycache__/structures.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/_pytest/mark/expression.py
/usr/local/lib/python3.11/site-packages/_pytest/mark/structures.py
/usr/local/lib/python3.11/site-packages/_pytest/monkeypatch.py
/usr/local/lib/python3.11/site-packages/_pytest/nodes.py
/usr/local/lib/python3.11/site-packages/_pytest/outcomes.py
/usr/local/lib/python3.11/site-packages/_pytest/pastebin.py
/usr/local/lib/python3.11/site-packages/_pytest/pathlib.py
/usr/local/lib/python3.11/site-packages/_pytest/py.typed
/usr/local/lib/python3.11/site-packages/_pytest/pytester.py
/usr/local/lib/python3.11/site-packages/_pytest/pytester_assertions.py
/usr/local/lib/python3.11/site-packages/_pytest/python.py
/usr/local/lib/python3.11/site-packages/_pytest/python_api.py
/usr/local/lib/python3.11/site-packages/_pytest/python_path.py
/usr/local/lib/python3.11/site-packages/_pytest/recwarn.py
/usr/local/lib/python3.11/site-packages/_pytest/reports.py
/usr/local/lib/python3.11/site-packages/_pytest/runner.py
/usr/local/lib/python3.11/site-packages/_pytest/scope.py
/usr/local/lib/python3.11/site-packages/_pytest/setuponly.py
/usr/local/lib/python3.11/site-packages/_pytest/setupplan.py
/usr/local/lib/python3.11/site-packages/_pytest/skipping.py
/usr/local/lib/python3.11/site-packages/_pytest/stash.py
/usr/local/lib/python3.11/site-packages/_pytest/stepwise.py
/usr/local/lib/python3.11/site-packages/_pytest/terminal.py
/usr/local/lib/python3.11/site-packages/_pytest/threadexception.py
/usr/local/lib/python3.11/site-packages/_pytest/timing.py
/usr/local/lib/python3.11/site-packages/_pytest/tmpdir.py
/usr/local/lib/python3.11/site-packages/_pytest/unittest.py
/usr/local/lib/python3.11/site-packages/_pytest/unraisableexception.py
/usr/local/lib/python3.11/site-packages/_pytest/warning_types.py
/usr/local/lib/python3.11/site-packages/_pytest/warnings.py
/usr/local/lib/python3.11/site-packages/py.py
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/AUTHORS
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/LICENSE
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/METADATA
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/RECORD
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/WHEEL
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/entry_points.txt
/usr/local/lib/python3.11/site-packages/pytest-8.1.1.dist-info/top_level.txt
/usr/local/lib/python3.11/site-packages/pytest/__init__.py
/usr/local/lib/python3.11/site-packages/pytest/__main__.py
/usr/local/lib/python3.11/site-packages/pytest/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pytest/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pytest/__pycache__/__main__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pytest/py.typed
[1m===> Done.[0m
===> py311-pytest-asyncio-0.23.8 depends on package: py311-pytest>=6.1.0 - found
===> Returning to build of py311-pytest-asyncio-0.23.8
===> py311-pytest-asyncio-0.23.8 depends on package: py311-setuptools>=63.1.0 - found
===> py311-pytest-asyncio-0.23.8 depends on file: /usr/local/bin/python3.11 - found
Installing py311-pytest-asyncio-0.23.8
/usr/local/share/licenses/py311-pytest-asyncio-0.23.8/catalog.mk
/usr/local/share/licenses/py311-pytest-asyncio-0.23.8/LICENSE
/usr/local/share/licenses/py311-pytest-asyncio-0.23.8/Apache-2.0
/usr/local/lib/python3.11/site-packages/pytest_asyncio-0.23.8-py3.11.egg-info/PKG-INFO
/usr/local/lib/python3.11/site-packages/pytest_asyncio-0.23.8-py3.11.egg-info/SOURCES.txt
/usr/local/lib/python3.11/site-packages/pytest_asyncio-0.23.8-py3.11.egg-info/dependency_links.txt
/usr/local/lib/python3.11/site-packages/pytest_asyncio-0.23.8-py3.11.egg-info/entry_points.txt
/usr/local/lib/python3.11/site-packages/pytest_asyncio-0.23.8-py3.11.egg-info/requires.txt
/usr/local/lib/python3.11/site-packages/pytest_asyncio-0.23.8-py3.11.egg-info/top_level.txt
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__init__.py
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__pycache__/_version.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__pycache__/_version.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__pycache__/plugin.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pytest_asyncio/__pycache__/plugin.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pytest_asyncio/_version.py
/usr/local/lib/python3.11/site-packages/pytest_asyncio/plugin.py
/usr/local/lib/python3.11/site-packages/pytest_asyncio/py.typed
[1m===> Done.[0m
===> py311-gql-3.5.3 depends on package: py311-pytest-asyncio>0 - found
===> Returning to build of py311-gql-3.5.3
===> py311-gql-3.5.3 depends on package: py311-pytest-console-scripts>0 - not found
[1m===> Installing for /magus/packages/All/py311-pytest-console-scripts-1.4.1_1.mport[0m
===> py311-pytest-console-scripts-1.4.1_1 depends on package: py311-pytest>=4.0.0,1 - found
===> py311-pytest-console-scripts-1.4.1_1 depends on file: /usr/local/bin/python3.11 - found
Installing py311-pytest-console-scripts-1.4.1_1
/usr/local/share/licenses/py311-pytest-console-scripts-1.4.1_1/catalog.mk
/usr/local/share/licenses/py311-pytest-console-scripts-1.4.1_1/LICENSE
/usr/local/share/licenses/py311-pytest-console-scripts-1.4.1_1/mit
/usr/local/lib/python3.11/site-packages/pytest_console_scripts-1.4.1.dist-info/LICENSE
/usr/local/lib/python3.11/site-packages/pytest_console_scripts-1.4.1.dist-info/METADATA
/usr/local/lib/python3.11/site-packages/pytest_console_scripts-1.4.1.dist-info/RECORD
/usr/local/lib/python3.11/site-packages/pytest_console_scripts-1.4.1.dist-info/WHEEL
/usr/local/lib/python3.11/site-packages/pytest_console_scripts-1.4.1.dist-info/entry_points.txt
/usr/local/lib/python3.11/site-packages/pytest_console_scripts-1.4.1.dist-info/top_level.txt
/usr/local/lib/python3.11/site-packages/pytest_console_scripts/__init__.py
/usr/local/lib/python3.11/site-packages/pytest_console_scripts/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/pytest_console_scripts/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/pytest_console_scripts/py.typed
[1m===> Done.[0m
===> py311-gql-3.5.3 depends on package: py311-pytest-console-scripts>0 - found
===> Returning to build of py311-gql-3.5.3
===> py311-gql-3.5.3 depends on package: py311-pytest>0 - found
===> py311-gql-3.5.3 depends on package: py311-vcrpy>0 - not found
[1m===> Installing for /magus/packages/All/py311-vcrpy-7.0.0_1.mport[0m
===> py311-vcrpy-7.0.0_1 depends on package: py311-six>=1.5 - found
===> py311-vcrpy-7.0.0_1 depends on package: py311-wrapt>0 - not found
[1m===> Installing for /magus/packages/All/py311-wrapt-1.16.0.mport[0m
===> py311-wrapt-1.16.0 depends on package: py311-setuptools>=63.1.0 - found
===> py311-wrapt-1.16.0 depends on file: /usr/local/bin/python3.11 - found
Installing py311-wrapt-1.16.0
/usr/local/share/licenses/py311-wrapt-1.16.0/catalog.mk
/usr/local/share/licenses/py311-wrapt-1.16.0/LICENSE
/usr/local/share/licenses/py311-wrapt-1.16.0/bsd2
/usr/local/lib/python3.11/site-packages/wrapt-1.16.0-py3.11.egg-info/PKG-INFO
/usr/local/lib/python3.11/site-packages/wrapt-1.16.0-py3.11.egg-info/SOURCES.txt
/usr/local/lib/python3.11/site-packages/wrapt-1.16.0-py3.11.egg-info/dependency_links.txt
/usr/local/lib/python3.11/site-packages/wrapt-1.16.0-py3.11.egg-info/not-zip-safe
/usr/local/lib/python3.11/site-packages/wrapt-1.16.0-py3.11.egg-info/top_level.txt
/usr/local/lib/python3.11/site-packages/wrapt/__init__.py
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/__wrapt__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/__wrapt__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/arguments.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/arguments.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/decorators.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/decorators.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/importer.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/importer.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/patches.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/patches.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/weakrefs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/weakrefs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/wrappers.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__pycache__/wrappers.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/wrapt/__wrapt__.py
/usr/local/lib/python3.11/site-packages/wrapt/_wrappers.cpython-311.so
/usr/local/lib/python3.11/site-packages/wrapt/arguments.py
/usr/local/lib/python3.11/site-packages/wrapt/decorators.py
/usr/local/lib/python3.11/site-packages/wrapt/importer.py
/usr/local/lib/python3.11/site-packages/wrapt/patches.py
/usr/local/lib/python3.11/site-packages/wrapt/weakrefs.py
/usr/local/lib/python3.11/site-packages/wrapt/wrappers.py
[1m===> Done.[0m
===> py311-vcrpy-7.0.0_1 depends on package: py311-wrapt>0 - found
===> Returning to build of py311-vcrpy-7.0.0_1
===> py311-vcrpy-7.0.0_1 depends on package: py311-pyyaml>=0 - not found
[1m===> Installing for /magus/packages/All/py311-pyyaml-6.0.1_1.mport[0m
===> py311-pyyaml-6.0.1_1 depends on package: py311-setuptools>=63.1.0 - found
===> py311-pyyaml-6.0.1_1 depends on file: /usr/local/bin/python3.11 - found
===> py311-pyyaml-6.0.1_1 depends on shared library: libyaml.so - not found
[1m===> Installing for /magus/packages/All/libyaml-0.2.5.mport[0m
Installing libyaml-0.2.5
/usr/local/share/licenses/libyaml-0.2.5/catalog.mk
/usr/local/share/licenses/libyaml-0.2.5/LICENSE
/usr/local/share/licenses/libyaml-0.2.5/mit
/usr/local/include/yaml.h
/usr/local/lib/libyaml-0.so.2
/usr/local/lib/libyaml-0.so.2.0.9
/usr/local/lib/libyaml.a
/usr/local/lib/libyaml.so
/usr/local/libdata/pkgconfig/yaml-0.1.pc
[1m===> Done.[0m
===> py311-pyyaml-6.0.1_1 depends on shared library: libyaml.so - found (/usr/local/lib/libyaml.so)
===> Returning to build of py311-pyyaml-6.0.1_1
Installing py311-pyyaml-6.0.1_1
/usr/local/share/licenses/py311-pyyaml-6.0.1_1/catalog.mk
/usr/local/share/licenses/py311-pyyaml-6.0.1_1/LICENSE
/usr/local/share/licenses/py311-pyyaml-6.0.1_1/mit
/usr/local/share/examples/py311-pyyaml/pygments-lexer/example.yaml
/usr/local/share/examples/py311-pyyaml/pygments-lexer/yaml.py
/usr/local/share/examples/py311-pyyaml/yaml-highlight/yaml_hl.cfg
/usr/local/share/examples/py311-pyyaml/yaml-highlight/yaml_hl.py
/usr/local/lib/python3.11/site-packages/PyYAML-6.0.1-py3.11.egg-info/PKG-INFO
/usr/local/lib/python3.11/site-packages/PyYAML-6.0.1-py3.11.egg-info/SOURCES.txt
/usr/local/lib/python3.11/site-packages/PyYAML-6.0.1-py3.11.egg-info/dependency_links.txt
/usr/local/lib/python3.11/site-packages/PyYAML-6.0.1-py3.11.egg-info/top_level.txt
/usr/local/lib/python3.11/site-packages/_yaml/__init__.py
/usr/local/lib/python3.11/site-packages/_yaml/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/_yaml/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__init__.py
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/composer.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/composer.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/constructor.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/constructor.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/cyaml.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/cyaml.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/dumper.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/dumper.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/emitter.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/emitter.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/error.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/error.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/events.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/events.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/loader.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/loader.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/nodes.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/nodes.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/parser.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/parser.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/reader.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/reader.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/representer.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/representer.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/resolver.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/resolver.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/scanner.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/scanner.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/serializer.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/serializer.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/tokens.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/yaml/__pycache__/tokens.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/yaml/_yaml.cpython-311.so
/usr/local/lib/python3.11/site-packages/yaml/composer.py
/usr/local/lib/python3.11/site-packages/yaml/constructor.py
/usr/local/lib/python3.11/site-packages/yaml/cyaml.py
/usr/local/lib/python3.11/site-packages/yaml/dumper.py
/usr/local/lib/python3.11/site-packages/yaml/emitter.py
/usr/local/lib/python3.11/site-packages/yaml/error.py
/usr/local/lib/python3.11/site-packages/yaml/events.py
/usr/local/lib/python3.11/site-packages/yaml/loader.py
/usr/local/lib/python3.11/site-packages/yaml/nodes.py
/usr/local/lib/python3.11/site-packages/yaml/parser.py
/usr/local/lib/python3.11/site-packages/yaml/reader.py
/usr/local/lib/python3.11/site-packages/yaml/representer.py
/usr/local/lib/python3.11/site-packages/yaml/resolver.py
/usr/local/lib/python3.11/site-packages/yaml/scanner.py
/usr/local/lib/python3.11/site-packages/yaml/serializer.py
/usr/local/lib/python3.11/site-packages/yaml/tokens.py
[1m===> Done.[0m
===> py311-vcrpy-7.0.0_1 depends on package: py311-pyyaml>=0 - found
===> Returning to build of py311-vcrpy-7.0.0_1
===> py311-vcrpy-7.0.0_1 depends on package: py311-yarl>0 - found
===> py311-vcrpy-7.0.0_1 depends on package: py311-setuptools>=63.1.0 - found
===> py311-vcrpy-7.0.0_1 depends on file: /usr/local/bin/python3.11 - found
Installing py311-vcrpy-7.0.0_1
/usr/local/share/licenses/py311-vcrpy-7.0.0_1/catalog.mk
/usr/local/share/licenses/py311-vcrpy-7.0.0_1/LICENSE
/usr/local/share/licenses/py311-vcrpy-7.0.0_1/mit
/usr/local/lib/python3.11/site-packages/vcr/__init__.py
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/_handle_coroutine.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/_handle_coroutine.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/cassette.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/cassette.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/config.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/config.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/errors.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/errors.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/filters.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/filters.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/matchers.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/matchers.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/migration.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/migration.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/patch.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/patch.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/record_mode.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/record_mode.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/request.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/request.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/serialize.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/serialize.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/unittest.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/unittest.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/util.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/__pycache__/util.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/_handle_coroutine.py
/usr/local/lib/python3.11/site-packages/vcr/cassette.py
/usr/local/lib/python3.11/site-packages/vcr/config.py
/usr/local/lib/python3.11/site-packages/vcr/errors.py
/usr/local/lib/python3.11/site-packages/vcr/filters.py
/usr/local/lib/python3.11/site-packages/vcr/matchers.py
/usr/local/lib/python3.11/site-packages/vcr/migration.py
/usr/local/lib/python3.11/site-packages/vcr/patch.py
/usr/local/lib/python3.11/site-packages/vcr/persisters/__init__.py
/usr/local/lib/python3.11/site-packages/vcr/persisters/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/persisters/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/persisters/__pycache__/filesystem.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/persisters/__pycache__/filesystem.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/persisters/filesystem.py
/usr/local/lib/python3.11/site-packages/vcr/record_mode.py
/usr/local/lib/python3.11/site-packages/vcr/request.py
/usr/local/lib/python3.11/site-packages/vcr/serialize.py
/usr/local/lib/python3.11/site-packages/vcr/serializers/__init__.py
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/compat.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/compat.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/jsonserializer.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/jsonserializer.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/yamlserializer.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/__pycache__/yamlserializer.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/serializers/compat.py
/usr/local/lib/python3.11/site-packages/vcr/serializers/jsonserializer.py
/usr/local/lib/python3.11/site-packages/vcr/serializers/yamlserializer.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/__init__.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/__init__.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/__init__.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/aiohttp_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/aiohttp_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/boto3_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/boto3_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/compat.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/compat.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/httplib2_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/httplib2_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/httpx_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/httpx_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/requests_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/requests_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/tornado_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/tornado_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/urllib3_stubs.cpython-311.opt-1.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/__pycache__/urllib3_stubs.cpython-311.pyc
/usr/local/lib/python3.11/site-packages/vcr/stubs/aiohttp_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/boto3_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/compat.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/httplib2_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/httpx_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/requests_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/tornado_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/stubs/urllib3_stubs.py
/usr/local/lib/python3.11/site-packages/vcr/unittest.py
/usr/local/lib/python3.11/site-packages/vcr/util.py
/usr/local/lib/python3.11/site-packages/vcrpy-7.0.0-py3.11.egg-info/PKG-INFO
/usr/local/lib/python3.11/site-packages/vcrpy-7.0.0-py3.11.egg-info/SOURCES.txt
/usr/local/lib/python3.11/site-packages/vcrpy-7.0.0-py3.11.egg-info/dependency_links.txt
/usr/local/lib/python3.11/site-packages/vcrpy-7.0.0-py3.11.egg-info/requires.txt
/usr/local/lib/python3.11/site-packages/vcrpy-7.0.0-py3.11.egg-info/top_level.txt
[1m===> Done.[0m
===> py311-gql-3.5.3 depends on package: py311-vcrpy>0 - found
===> Returning to build of py311-gql-3.5.3
===> py311-gql-3.5.3 depends on file: /usr/local/bin/python3.11 - found
============================= test session starts ==============================
platform midnightbsd4 -- Python 3.11.13, pytest-8.1.1, pluggy-1.5.0 -- /usr/local/bin/python3.11
cachedir: .pytest_cache
rootdir: /magus/work/usr/mports/devel/py-gql/work-py311/gql-3.5.3
configfile: setup.cfg
plugins: anyio-4.3.0, console-scripts-1.4.1, asyncio-0.23.8
asyncio: mode=Mode.STRICT
collecting ... collected 567 items
tests/custom_scalars/test_datetime.py::test_shift_days PASSED [ 0%]
tests/custom_scalars/test_datetime.py::test_shift_days_serialized_manually_in_query PASSED [ 0%]
tests/custom_scalars/test_datetime.py::test_shift_days_serialized_manually_in_variables PASSED [ 0%]
tests/custom_scalars/test_datetime.py::test_latest PASSED [ 0%]
tests/custom_scalars/test_datetime.py::test_seconds PASSED [ 0%]
tests/custom_scalars/test_datetime.py::test_seconds_omit_optional_start_argument PASSED [ 1%]
tests/custom_scalars/test_enum_colors.py::test_parse_value_enum PASSED [ 1%]
tests/custom_scalars/test_enum_colors.py::test_serialize_enum PASSED [ 1%]
tests/custom_scalars/test_enum_colors.py::test_get_all_colors PASSED [ 1%]
tests/custom_scalars/test_enum_colors.py::test_opposite_color_literal PASSED [ 1%]
tests/custom_scalars/test_enum_colors.py::test_opposite_color_variable_serialized_manually PASSED [ 1%]
tests/custom_scalars/test_enum_colors.py::test_opposite_color_variable_serialized_by_gql PASSED [ 2%]
tests/custom_scalars/test_enum_colors.py::test_list PASSED [ 2%]
tests/custom_scalars/test_enum_colors.py::test_list_of_list PASSED [ 2%]
tests/custom_scalars/test_enum_colors.py::test_list_of_list_of_list PASSED [ 2%]
tests/custom_scalars/test_enum_colors.py::test_update_schema_enum PASSED [ 2%]
tests/custom_scalars/test_enum_colors.py::test_update_schema_enum_errors PASSED [ 2%]
tests/custom_scalars/test_enum_colors.py::test_parse_results_with_operation_type PASSED [ 3%]
tests/custom_scalars/test_json.py::test_json_value_output PASSED [ 3%]
tests/custom_scalars/test_json.py::test_json_value_input_in_ast PASSED [ 3%]
tests/custom_scalars/test_json.py::test_json_value_input_in_ast_with_variables PASSED [ 3%]
tests/custom_scalars/test_json.py::test_json_value_input_in_dsl_argument PASSED [ 3%]
tests/custom_scalars/test_json.py::test_none_json_value_input_in_dsl_argument PASSED [ 4%]
tests/custom_scalars/test_json.py::test_json_value_input_with_none_list_in_dsl_argument PASSED [ 4%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_output PASSED [ 4%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_output_embedded_fragments PASSED [ 4%]
tests/custom_scalars/test_money.py::test_custom_scalar_list_in_output PASSED [ 4%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_query PASSED [ 4%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_variable_values PASSED [ 5%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_variable_values_serialized PASSED [ 5%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_variable_values_serialized_with_operation_name PASSED [ 5%]
tests/custom_scalars/test_money.py::test_serialize_variable_values_exception_multiple_ops_without_operation_name PASSED [ 5%]
tests/custom_scalars/test_money.py::test_serialize_variable_values_exception_operation_name_not_found PASSED [ 5%]
tests/custom_scalars/test_money.py::test_custom_scalar_subscribe_in_input_variable_values_serialized PASSED [ 5%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_output_with_transport PASSED [ 6%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_query_with_transport PASSED [ 6%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_variable_values_with_transport PASSED [ 6%]
tests/custom_scalars/test_money.py::test_custom_scalar_in_input_variable_values_split_with_transport PASSED [ 6%]
tests/custom_scalars/test_money.py::test_custom_scalar_serialize_variables PASSED [ 6%]
tests/custom_scalars/test_money.py::test_custom_scalar_serialize_variables_no_schema PASSED [ 7%]
tests/custom_scalars/test_money.py::test_custom_scalar_serialize_variables_schema_from_introspection PASSED [ 7%]
tests/custom_scalars/test_money.py::test_update_schema_scalars PASSED [ 7%]
tests/custom_scalars/test_money.py::test_update_schema_scalars_invalid_scalar PASSED [ 7%]
tests/custom_scalars/test_money.py::test_update_schema_scalars_invalid_scalar_argument PASSED [ 7%]
tests/custom_scalars/test_money.py::test_update_schema_scalars_scalar_not_found_in_schema PASSED [ 7%]
tests/custom_scalars/test_money.py::test_update_schema_scalars_scalar_type_is_not_a_scalar_in_schema PASSED [ 8%]
tests/custom_scalars/test_money.py::test_custom_scalar_serialize_variables_sync_transport PASSED [ 8%]
tests/custom_scalars/test_money.py::test_custom_scalar_serialize_variables_sync_transport_2 PASSED [ 8%]
tests/custom_scalars/test_money.py::test_serialize_value_with_invalid_type PASSED [ 8%]
tests/custom_scalars/test_money.py::test_serialize_value_with_non_null_type_null PASSED [ 8%]
tests/custom_scalars/test_money.py::test_serialize_value_with_nullable_type PASSED [ 8%]
tests/custom_scalars/test_money.py::test_gql_cli_print_schema PASSED [ 9%]
tests/custom_scalars/test_parse_results.py::test_parse_results_null_mapping PASSED [ 9%]
tests/nested_input/test_nested_input.py::test_nested_input PASSED [ 9%]
tests/nested_input/test_nested_input.py::test_nested_input_2 PASSED [ 9%]
tests/nested_input/test_nested_input.py::test_nested_input_3 PASSED [ 9%]
tests/regressions/issue_447_dsl_missing_directives/test_dsl_directives.py::test_issue_447 PASSED [ 10%]
tests/starwars/test_dsl.py::test_ast_from_value_with_input_type_and_not_mapping_value PASSED [ 10%]
tests/starwars/test_dsl.py::test_ast_from_value_with_list_type_and_non_iterable_value PASSED [ 10%]
tests/starwars/test_dsl.py::test_ast_from_value_with_none PASSED [ 10%]
tests/starwars/test_dsl.py::test_ast_from_value_with_undefined PASSED [ 10%]
tests/starwars/test_dsl.py::test_ast_from_value_with_graphqlid PASSED [ 10%]
tests/starwars/test_dsl.py::test_ast_from_value_with_invalid_type PASSED [ 11%]
tests/starwars/test_dsl.py::test_ast_from_value_with_non_null_type_and_none PASSED [ 11%]
tests/starwars/test_dsl.py::test_ast_from_value_float_precision PASSED [ 11%]
tests/starwars/test_dsl.py::test_ast_from_serialized_value_untyped_typeerror PASSED [ 11%]
tests/starwars/test_dsl.py::test_variable_to_ast_type_passing_wrapping_type PASSED [ 11%]
tests/starwars/test_dsl.py::test_use_variable_definition_multiple_times PASSED [ 11%]
tests/starwars/test_dsl.py::test_add_variable_definitions PASSED [ 12%]
tests/starwars/test_dsl.py::test_add_variable_definitions_with_default_value_enum PASSED [ 12%]
tests/starwars/test_dsl.py::test_add_variable_definitions_with_default_value_input_object PASSED [ 12%]
tests/starwars/test_dsl.py::test_add_variable_definitions_in_input_object PASSED [ 12%]
tests/starwars/test_dsl.py::test_invalid_field_on_type_query PASSED [ 12%]
tests/starwars/test_dsl.py::test_incompatible_field PASSED [ 13%]
tests/starwars/test_dsl.py::test_hero_name_query PASSED [ 13%]
tests/starwars/test_dsl.py::test_hero_name_and_friends_query PASSED [ 13%]
tests/starwars/test_dsl.py::test_hero_id_and_name PASSED [ 13%]
tests/starwars/test_dsl.py::test_nested_query PASSED [ 13%]
tests/starwars/test_dsl.py::test_fetch_luke_query PASSED [ 13%]
tests/starwars/test_dsl.py::test_fetch_luke_aliased PASSED [ 14%]
tests/starwars/test_dsl.py::test_fetch_name_aliased PASSED [ 14%]
tests/starwars/test_dsl.py::test_fetch_name_aliased_as_kwargs PASSED [ 14%]
tests/starwars/test_dsl.py::test_hero_name_query_result PASSED [ 14%]
tests/starwars/test_dsl.py::test_arg_serializer_list PASSED [ 14%]
tests/starwars/test_dsl.py::test_arg_serializer_enum PASSED [ 14%]
tests/starwars/test_dsl.py::test_create_review_mutation_result PASSED [ 15%]
tests/starwars/test_dsl.py::test_subscription PASSED [ 15%]
tests/starwars/test_dsl.py::test_field_does_not_exit_in_type PASSED [ 15%]
tests/starwars/test_dsl.py::test_try_to_select_on_scalar_field PASSED [ 15%]
tests/starwars/test_dsl.py::test_invalid_arg PASSED [ 15%]
tests/starwars/test_dsl.py::test_multiple_root_fields PASSED [ 16%]
tests/starwars/test_dsl.py::test_root_fields_aliased PASSED [ 16%]
tests/starwars/test_dsl.py::test_operation_name PASSED [ 16%]
tests/starwars/test_dsl.py::test_multiple_operations PASSED [ 16%]
tests/starwars/test_dsl.py::test_inline_fragments PASSED [ 16%]
tests/starwars/test_dsl.py::test_inline_fragments_nested PASSED [ 16%]
tests/starwars/test_dsl.py::test_fragments_repr PASSED [ 17%]
tests/starwars/test_dsl.py::test_fragments PASSED [ 17%]
tests/starwars/test_dsl.py::test_fragment_without_type_condition_error PASSED [ 17%]
tests/starwars/test_dsl.py::test_inline_fragment_in_dsl_gql PASSED [ 17%]
tests/starwars/test_dsl.py::test_fragment_with_name_changed PASSED [ 17%]
tests/starwars/test_dsl.py::test_fragment_select_field_not_in_fragment PASSED [ 17%]
tests/starwars/test_dsl.py::test_dsl_nested_query_with_fragment PASSED [ 18%]
tests/starwars/test_dsl.py::test_dsl_query_all_fields_should_be_instances_of_DSLField PASSED [ 18%]
tests/starwars/test_dsl.py::test_dsl_query_all_fields_should_correspond_to_the_root_type PASSED [ 18%]
tests/starwars/test_dsl.py::test_dsl_root_type_not_default PASSED [ 18%]
tests/starwars/test_dsl.py::test_dsl_gql_all_arguments_should_be_operations_or_fragments PASSED [ 18%]
tests/starwars/test_dsl.py::test_DSLSchema_requires_a_schema PASSED [ 19%]
tests/starwars/test_dsl.py::test_invalid_type PASSED [ 19%]
tests/starwars/test_dsl.py::test_invalid_type_union PASSED [ 19%]
tests/starwars/test_dsl.py::test_hero_name_query_with_typename PASSED [ 19%]
tests/starwars/test_dsl.py::test_type_hero_query PASSED [ 19%]
tests/starwars/test_dsl.py::test_invalid_meta_field_selection PASSED [ 19%]
tests/starwars/test_dsl.py::test_get_introspection_query_ast[True] PASSED [ 20%]
tests/starwars/test_dsl.py::test_get_introspection_query_ast[False] PASSED [ 20%]
tests/starwars/test_dsl.py::test_typename_aliased PASSED [ 20%]
tests/starwars/test_dsl.py::test_node_tree_with_loc PASSED [ 20%]
tests/starwars/test_dsl.py::test_legacy_fragment_with_variables PASSED [ 20%]
tests/starwars/test_introspection.py::test_starwars_introspection_args PASSED [ 20%]
tests/starwars/test_parse_results.py::test_hero_name_and_friends_query PASSED [ 21%]
tests/starwars/test_parse_results.py::test_hero_name_and_friends_query_with_fragment PASSED [ 21%]
tests/starwars/test_parse_results.py::test_key_not_found_in_result PASSED [ 21%]
tests/starwars/test_parse_results.py::test_invalid_result_raise_error PASSED [ 21%]
tests/starwars/test_parse_results.py::test_fragment PASSED [ 21%]
tests/starwars/test_parse_results.py::test_fragment_not_found PASSED [ 22%]
tests/starwars/test_parse_results.py::test_return_none_if_result_is_none PASSED [ 22%]
tests/starwars/test_parse_results.py::test_null_result_is_allowed PASSED [ 22%]
tests/starwars/test_parse_results.py::test_inline_fragment PASSED [ 22%]
tests/starwars/test_query.py::test_hero_name_query PASSED [ 22%]
tests/starwars/test_query.py::test_hero_name_and_friends_query PASSED [ 22%]
tests/starwars/test_query.py::test_nested_query PASSED [ 23%]
tests/starwars/test_query.py::test_fetch_luke_query PASSED [ 23%]
tests/starwars/test_query.py::test_fetch_some_id_query PASSED [ 23%]
tests/starwars/test_query.py::test_fetch_some_id_query2 PASSED [ 23%]
tests/starwars/test_query.py::test_invalid_id_query PASSED [ 23%]
tests/starwars/test_query.py::test_fetch_luke_aliased PASSED [ 23%]
tests/starwars/test_query.py::test_fetch_luke_and_leia_aliased PASSED [ 24%]
tests/starwars/test_query.py::test_duplicate_fields PASSED [ 24%]
tests/starwars/test_query.py::test_use_fragment PASSED [ 24%]
tests/starwars/test_query.py::test_check_type_of_r2 PASSED [ 24%]
tests/starwars/test_query.py::test_check_type_of_luke PASSED [ 24%]
tests/starwars/test_query.py::test_parse_error PASSED [ 25%]
tests/starwars/test_query.py::test_mutation_result PASSED [ 25%]
tests/starwars/test_query.py::test_query_from_source PASSED [ 25%]
tests/starwars/test_query.py::test_already_parsed_query PASSED [ 25%]
tests/starwars/test_subscription.py::test_subscription_support PASSED [ 25%]
tests/starwars/test_subscription.py::test_subscription_support_using_client PASSED [ 25%]
tests/starwars/test_subscription.py::test_subscription_support_using_client_invalid_field PASSED [ 26%]
tests/starwars/test_validation.py::test_incompatible_request_gql[local_schema] PASSED [ 26%]
tests/starwars/test_validation.py::test_incompatible_request_gql[typedef_schema] PASSED [ 26%]
tests/starwars/test_validation.py::test_incompatible_request_gql[introspection_schema] PASSED [ 26%]
tests/starwars/test_validation.py::test_incompatible_request_gql[introspection_schema_empty_directives] PASSED [ 26%]
tests/starwars/test_validation.py::test_incompatible_request_gql[introspection_schema_no_directives] PASSED [ 26%]
tests/starwars/test_validation.py::test_nested_query_with_fragment[local_schema] PASSED [ 27%]
tests/starwars/test_validation.py::test_nested_query_with_fragment[typedef_schema] PASSED [ 27%]
tests/starwars/test_validation.py::test_nested_query_with_fragment[introspection_schema] PASSED [ 27%]
tests/starwars/test_validation.py::test_nested_query_with_fragment[introspection_schema_empty_directives] PASSED [ 27%]
tests/starwars/test_validation.py::test_nested_query_with_fragment[introspection_schema_no_directives] PASSED [ 27%]
tests/starwars/test_validation.py::test_non_existent_fields[local_schema] PASSED [ 28%]
tests/starwars/test_validation.py::test_non_existent_fields[typedef_schema] PASSED [ 28%]
tests/starwars/test_validation.py::test_non_existent_fields[introspection_schema] PASSED [ 28%]
tests/starwars/test_validation.py::test_non_existent_fields[introspection_schema_empty_directives] PASSED [ 28%]
tests/starwars/test_validation.py::test_non_existent_fields[introspection_schema_no_directives] PASSED [ 28%]
tests/starwars/test_validation.py::test_require_fields_on_object[local_schema] PASSED [ 28%]
tests/starwars/test_validation.py::test_require_fields_on_object[typedef_schema] PASSED [ 29%]
tests/starwars/test_validation.py::test_require_fields_on_object[introspection_schema] PASSED [ 29%]
tests/starwars/test_validation.py::test_require_fields_on_object[introspection_schema_empty_directives] PASSED [ 29%]
tests/starwars/test_validation.py::test_require_fields_on_object[introspection_schema_no_directives] PASSED [ 29%]
tests/starwars/test_validation.py::test_disallows_fields_on_scalars[local_schema] PASSED [ 29%]
tests/starwars/test_validation.py::test_disallows_fields_on_scalars[typedef_schema] PASSED [ 29%]
tests/starwars/test_validation.py::test_disallows_fields_on_scalars[introspection_schema] PASSED [ 30%]
tests/starwars/test_validation.py::test_disallows_fields_on_scalars[introspection_schema_empty_directives] PASSED [ 30%]
tests/starwars/test_validation.py::test_disallows_fields_on_scalars[introspection_schema_no_directives] PASSED [ 30%]
tests/starwars/test_validation.py::test_disallows_object_fields_on_interfaces[local_schema] PASSED [ 30%]
tests/starwars/test_validation.py::test_disallows_object_fields_on_interfaces[typedef_schema] PASSED [ 30%]
tests/starwars/test_validation.py::test_disallows_object_fields_on_interfaces[introspection_schema] PASSED [ 31%]
tests/starwars/test_validation.py::test_disallows_object_fields_on_interfaces[introspection_schema_empty_directives] PASSED [ 31%]
tests/starwars/test_validation.py::test_disallows_object_fields_on_interfaces[introspection_schema_no_directives] PASSED [ 31%]
tests/starwars/test_validation.py::test_allows_object_fields_in_fragments[local_schema] PASSED [ 31%]
tests/starwars/test_validation.py::test_allows_object_fields_in_fragments[typedef_schema] PASSED [ 31%]
tests/starwars/test_validation.py::test_allows_object_fields_in_fragments[introspection_schema] PASSED [ 31%]
tests/starwars/test_validation.py::test_allows_object_fields_in_fragments[introspection_schema_empty_directives] PASSED [ 32%]
tests/starwars/test_validation.py::test_allows_object_fields_in_fragments[introspection_schema_no_directives] PASSED [ 32%]
tests/starwars/test_validation.py::test_allows_object_fields_in_inline_fragments[local_schema] PASSED [ 32%]
tests/starwars/test_validation.py::test_allows_object_fields_in_inline_fragments[typedef_schema] PASSED [ 32%]
tests/starwars/test_validation.py::test_allows_object_fields_in_inline_fragments[introspection_schema] PASSED [ 32%]
tests/starwars/test_validation.py::test_allows_object_fields_in_inline_fragments[introspection_schema_empty_directives] PASSED [ 32%]
tests/starwars/test_validation.py::test_allows_object_fields_in_inline_fragments[introspection_schema_no_directives] PASSED [ 33%]
tests/starwars/test_validation.py::test_include_directive[local_schema] PASSED [ 33%]
tests/starwars/test_validation.py::test_include_directive[typedef_schema] PASSED [ 33%]
tests/starwars/test_validation.py::test_include_directive[introspection_schema] PASSED [ 33%]
tests/starwars/test_validation.py::test_include_directive[introspection_schema_empty_directives] PASSED [ 33%]
tests/starwars/test_validation.py::test_include_directive[introspection_schema_no_directives] PASSED [ 34%]
tests/starwars/test_validation.py::test_skip_directive[local_schema] PASSED [ 34%]
tests/starwars/test_validation.py::test_skip_directive[typedef_schema] PASSED [ 34%]
tests/starwars/test_validation.py::test_skip_directive[introspection_schema] PASSED [ 34%]
tests/starwars/test_validation.py::test_skip_directive[introspection_schema_empty_directives] PASSED [ 34%]
tests/starwars/test_validation.py::test_skip_directive[introspection_schema_no_directives] PASSED [ 34%]
tests/starwars/test_validation.py::test_build_client_schema_invalid_introspection PASSED [ 35%]
tests/test_aiohttp.py::test_aiohttp_query PASSED [ 35%]
tests/test_aiohttp.py::test_aiohttp_ignore_backend_content_type PASSED [ 35%]
tests/test_aiohttp.py::test_aiohttp_cookies PASSED [ 35%]
tests/test_aiohttp.py::test_aiohttp_error_code_401 PASSED [ 35%]
tests/test_aiohttp.py::test_aiohttp_error_code_429 PASSED [ 35%]
tests/test_aiohttp.py::test_aiohttp_error_code_500 PASSED [ 36%]
tests/test_aiohttp.py::test_aiohttp_error_code[{"errors": ["Error 1", "Error 2"]}] PASSED [ 36%]
tests/test_aiohttp.py::test_aiohttp_error_code[{"errors": {"error_1": "Something"}}] PASSED [ 36%]
tests/test_aiohttp.py::test_aiohttp_error_code[{"errors": 5}] PASSED [ 36%]
tests/test_aiohttp.py::test_aiohttp_invalid_protocol[param0] PASSED [ 36%]
tests/test_aiohttp.py::test_aiohttp_invalid_protocol[param1] PASSED [ 37%]
tests/test_aiohttp.py::test_aiohttp_invalid_protocol[param2] PASSED [ 37%]
tests/test_aiohttp.py::test_aiohttp_invalid_protocol[param3] PASSED [ 37%]
tests/test_aiohttp.py::test_aiohttp_subscribe_not_supported PASSED [ 37%]
tests/test_aiohttp.py::test_aiohttp_cannot_connect_twice PASSED [ 37%]
tests/test_aiohttp.py::test_aiohttp_cannot_execute_if_not_connected PASSED [ 37%]
tests/test_aiohttp.py::test_aiohttp_extra_args PASSED [ 38%]
tests/test_aiohttp.py::test_aiohttp_query_variable_values PASSED [ 38%]
tests/test_aiohttp.py::test_aiohttp_query_variable_values_fix_issue_292 PASSED [ 38%]
tests/test_aiohttp.py::test_aiohttp_execute_running_in_thread PASSED [ 38%]
tests/test_aiohttp.py::test_aiohttp_subscribe_running_in_thread PASSED [ 38%]
tests/test_aiohttp.py::test_aiohttp_file_upload PASSED [ 38%]
tests/test_aiohttp.py::test_aiohttp_file_upload_with_content_type PASSED [ 39%]
tests/test_aiohttp.py::test_aiohttp_file_upload_without_session PASSED [ 39%]
tests/test_aiohttp.py::test_aiohttp_binary_file_upload PASSED [ 39%]
tests/test_aiohttp.py::test_aiohttp_stream_reader_upload PASSED [ 39%]
tests/test_aiohttp.py::test_aiohttp_async_generator_upload PASSED [ 39%]
tests/test_aiohttp.py::test_aiohttp_file_upload_two_files PASSED [ 40%]
tests/test_aiohttp.py::test_aiohttp_file_upload_list_of_two_files PASSED [ 40%]
tests/test_aiohttp.py::test_aiohttp_using_cli PASSED [ 40%]
tests/test_aiohttp.py::test_aiohttp_using_cli_ep[subprocess] PASSED [ 40%]
tests/test_aiohttp.py::test_aiohttp_using_cli_invalid_param PASSED [ 40%]
tests/test_aiohttp.py::test_aiohttp_using_cli_invalid_query PASSED [ 40%]
tests/test_aiohttp.py::test_aiohttp_query_with_extensions PASSED [ 41%]
tests/test_aiohttp.py::test_aiohttp_query_https[0] PASSED [ 41%]
tests/test_aiohttp.py::test_aiohttp_query_https[10] PASSED [ 41%]
tests/test_aiohttp.py::test_aiohttp_error_fetching_schema PASSED [ 41%]
tests/test_aiohttp.py::test_aiohttp_reconnecting_session PASSED [ 41%]
tests/test_aiohttp.py::test_aiohttp_reconnecting_session_retries[False] PASSED [ 41%]
tests/test_aiohttp.py::test_aiohttp_reconnecting_session_retries[] PASSED [ 42%]
tests/test_aiohttp.py::test_aiohttp_reconnecting_session_start_connecting_task_twice PASSED [ 42%]
tests/test_aiohttp.py::test_aiohttp_json_serializer PASSED [ 42%]
tests/test_aiohttp.py::test_aiohttp_connector_owner_false PASSED [ 42%]
tests/test_aiohttp_online.py::test_aiohttp_simple_query PASSED [ 42%]
tests/test_aiohttp_online.py::test_aiohttp_invalid_query PASSED [ 43%]
tests/test_aiohttp_online.py::test_aiohttp_two_queries_in_parallel_using_two_tasks PASSED [ 43%]
tests/test_appsync_auth.py::test_appsync_init_with_minimal_args PASSED [ 43%]
tests/test_appsync_auth.py::test_appsync_init_with_no_credentials PASSED [ 43%]
tests/test_appsync_auth.py::test_appsync_init_with_jwt_auth PASSED [ 43%]
tests/test_appsync_auth.py::test_appsync_init_with_apikey_auth PASSED [ 43%]
tests/test_appsync_auth.py::test_appsync_init_with_iam_auth_without_creds PASSED [ 44%]
tests/test_appsync_auth.py::test_appsync_init_with_iam_auth_with_creds PASSED [ 44%]
tests/test_appsync_auth.py::test_appsync_init_with_iam_auth_and_no_region PASSED [ 44%]
tests/test_appsync_auth.py::test_munge_url PASSED [ 44%]
tests/test_appsync_auth.py::test_munge_url_format PASSED [ 44%]
tests/test_appsync_http.py::test_appsync_iam_mutation PASSED [ 44%]
tests/test_appsync_websockets.py::test_appsync_subscription_api_key[realtime_appsync_server_keepalive] PASSED [ 45%]
tests/test_appsync_websockets.py::test_appsync_subscription_iam_with_token[realtime_appsync_server] PASSED [ 45%]
tests/test_appsync_websockets.py::test_appsync_subscription_iam_without_token[realtime_appsync_server] PASSED [ 45%]
tests/test_appsync_websockets.py::test_appsync_execute_method_not_allowed[realtime_appsync_server] PASSED [ 45%]
tests/test_appsync_websockets.py::test_appsync_fetch_schema_from_transport_not_allowed PASSED [ 45%]
tests/test_appsync_websockets.py::test_appsync_subscription_api_key_unauthorized[realtime_appsync_server] PASSED [ 46%]
tests/test_appsync_websockets.py::test_appsync_subscription_iam_not_allowed[realtime_appsync_server] PASSED [ 46%]
tests/test_appsync_websockets.py::test_appsync_subscription_server_sending_a_not_json_answer[realtime_appsync_server_not_json_answer] PASSED [ 46%]
tests/test_appsync_websockets.py::test_appsync_subscription_server_sending_an_error_without_an_id[realtime_appsync_server_error_without_id] PASSED [ 46%]
tests/test_appsync_websockets.py::test_appsync_subscription_variable_values_and_operation_name[realtime_appsync_server_keepalive] PASSED [ 46%]
tests/test_async_client_validation.py::test_async_client_validation[client_params0-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 46%]
tests/test_async_client_validation.py::test_async_client_validation[client_params1-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 47%]
tests/test_async_client_validation.py::test_async_client_validation[client_params2-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 47%]
tests/test_async_client_validation.py::test_async_client_validation_invalid_query[client_params0-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n not_valid_field,\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 47%]
tests/test_async_client_validation.py::test_async_client_validation_invalid_query[client_params1-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n not_valid_field,\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 47%]
tests/test_async_client_validation.py::test_async_client_validation_invalid_query[client_params2-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n not_valid_field,\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 47%]
tests/test_async_client_validation.py::test_async_client_validation_different_schemas_parameters_forbidden[client_params0-\n subscription ListenEpisodeReviews($ep: Episode!) {\n reviewAdded(episode: $ep) {\n not_valid_field,\n stars,\n commentary,\n episode\n }\n }\n-server_starwars] PASSED [ 47%]
tests/test_async_client_validation.py::test_async_client_validation_fetch_schema_from_server_valid_query[server0] FAILED [ 48%]
tests/test_async_client_validation.py::test_async_client_validation_fetch_schema_from_server_invalid_query[server0] PASSED [ 48%]
tests/test_async_client_validation.py::test_async_client_validation_fetch_schema_from_server_with_client_argument[server0] PASSED [ 48%]
tests/test_cli.py::test_cli_parser PASSED [ 48%]
tests/test_cli.py::test_cli_parse_headers PASSED [ 48%]
tests/test_cli.py::test_cli_parse_headers_invalid_header PASSED [ 49%]
tests/test_cli.py::test_cli_parse_operation_name PASSED [ 49%]
tests/test_cli.py::test_cli_parse_variable_value[param0] PASSED [ 49%]
tests/test_cli.py::test_cli_parse_variable_value[param1] PASSED [ 49%]
tests/test_cli.py::test_cli_parse_variable_value[param2] PASSED [ 49%]
tests/test_cli.py::test_cli_parse_variable_value[param3] PASSED [ 49%]
tests/test_cli.py::test_cli_parse_variable_value[param4] PASSED [ 50%]
tests/test_cli.py::test_cli_parse_variable_value[param5] PASSED [ 50%]
tests/test_cli.py::test_cli_parse_variable_value[param6] PASSED [ 50%]
tests/test_cli.py::test_cli_parse_variable_value[param7] PASSED [ 50%]
tests/test_cli.py::test_cli_parse_variable_value_invalid_param[nocolon] PASSED [ 50%]
tests/test_cli.py::test_cli_parse_variable_value_invalid_param[key:"] PASSED [ 50%]
tests/test_cli.py::test_cli_get_transport_aiohttp[http://your_server.com] PASSED [ 51%]
tests/test_cli.py::test_cli_get_transport_aiohttp[https://your_server.com] PASSED [ 51%]
tests/test_cli.py::test_cli_get_transport_websockets[ws://your_server.com] PASSED [ 51%]
tests/test_cli.py::test_cli_get_transport_websockets[wss://your_server.com] PASSED [ 51%]
tests/test_cli.py::test_cli_get_transport_phoenix[ws://your_server.com] PASSED [ 51%]
tests/test_cli.py::test_cli_get_transport_phoenix[wss://your_server.com] PASSED [ 52%]
tests/test_cli.py::test_cli_get_transport_appsync_websockets_iam[wss://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 52%]
tests/test_cli.py::test_cli_get_transport_appsync_websockets_iam[wss://noregion.amazonaws.com/graphql] PASSED [ 52%]
tests/test_cli.py::test_cli_main_appsync_websockets_iam[wss://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 52%]
tests/test_cli.py::test_cli_get_transport_appsync_websockets_api_key[wss://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 52%]
tests/test_cli.py::test_cli_get_transport_appsync_websockets_jwt[wss://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 52%]
tests/test_cli.py::test_cli_get_transport_appsync_http_iam[https://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 53%]
tests/test_cli.py::test_cli_get_transport_appsync_http_api_key[https://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 53%]
tests/test_cli.py::test_cli_get_transport_appsync_http_jwt[https://XXXXXX.appsync-api.eu-west-3.amazonaws.com/graphql] PASSED [ 53%]
tests/test_cli.py::test_cli_get_transport_no_protocol PASSED [ 53%]
tests/test_cli.py::test_cli_ep_version[inprocess] PASSED [ 53%]
tests/test_cli.py::test_cli_parse_schema_download PASSED [ 53%]
tests/test_cli.py::test_cli_parse_schema_download_invalid_arg[invalid_args0] PASSED [ 54%]
tests/test_cli.py::test_cli_parse_schema_download_invalid_arg[invalid_args1] PASSED [ 54%]
tests/test_cli.py::test_cli_parse_schema_download_invalid_arg[invalid_args2] PASSED [ 54%]
tests/test_client.py::test_request_transport_not_implemented PASSED [ 54%]
tests/test_client.py::test_request_async_execute_batch_not_implemented_yet PASSED [ 54%]
tests/test_client.py::test_retries_on_transport PASSED [ 55%]
tests/test_client.py::test_no_schema_exception PASSED [ 55%]
tests/test_client.py::test_execute_result_error PASSED [ 55%]
tests/test_client.py::test_http_transport_verify_error PASSED [ 55%]
tests/test_client.py::test_http_transport_specify_method_valid PASSED [ 55%]
tests/test_client.py::test_gql PASSED [ 55%]
tests/test_client.py::test_sync_transport_close_on_schema_retrieval_failure PASSED [ 56%]
tests/test_client.py::test_async_transport_close_on_schema_retrieval_failure PASSED [ 56%]
tests/test_graphql_request.py::test_serialize_variables_using_money_example PASSED [ 56%]
tests/test_graphqlws_exceptions.py::test_graphqlws_invalid_query[\n query getContinents {\n continents {\n code\n bloh\n }\n }\n-graphqlws_server0] PASSED [ 56%]
tests/test_graphqlws_exceptions.py::test_graphqlws_invalid_subscription[\n subscription getContinents {\n continents {\n code\n bloh\n }\n }\n-server_invalid_subscription] PASSED [ 56%]
tests/test_graphqlws_exceptions.py::test_graphqlws_server_does_not_send_ack[\n query getContinents {\n continents {\n code\n bloh\n }\n }\n-server_no_ack] PASSED [ 56%]
tests/test_graphqlws_exceptions.py::test_graphqlws_sending_invalid_query[server_invalid_query] PASSED [ 57%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server0] PASSED [ 57%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server1] PASSED [ 57%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server2] PASSED [ 57%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server3] PASSED [ 57%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server4] PASSED [ 58%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server5] PASSED [ 58%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server6] PASSED [ 58%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server7] PASSED [ 58%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server8] PASSED [ 58%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server9] PASSED [ 58%]
tests/test_graphqlws_exceptions.py::test_graphqlws_transport_protocol_errors[graphqlws_server10] PASSED [ 59%]
tests/test_graphqlws_exceptions.py::test_graphqlws_server_does_not_ack[server_without_ack] PASSED [ 59%]
tests/test_graphqlws_exceptions.py::test_graphqlws_server_closing_directly[server_closing_directly] PASSED [ 59%]
tests/test_graphqlws_exceptions.py::test_graphqlws_server_closing_after_ack[server_closing_after_ack] PASSED [ 59%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 59%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_break[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 59%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_task_cancel[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 60%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_close_transport[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 60%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_server_connection_closed[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_close_connection_in_middle] PASSED [ 60%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_with_operation_name[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 60%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_with_keepalive[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 60%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_with_keepalive_with_timeout_ok[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 61%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_with_keepalive_with_timeout_nok[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 61%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_with_ping_interval_ok[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 61%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_with_ping_interval_nok[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_dont_answer_pings] PASSED [ 61%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_manual_pings_with_payload[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 61%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_manual_pong_answers_with_payload[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 61%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_sync[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 62%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_sync_graceful_shutdown[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 62%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_running_in_thread[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_keepalive] PASSED [ 62%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_reconnecting_session[False-\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_disconnect] PASSED [ 62%]
tests/test_graphqlws_subscription.py::test_graphqlws_subscription_reconnecting_session[True-\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_disconnect] PASSED [ 62%]
tests/test_http_async_sync.py::test_async_client_async_transport[True] PASSED [ 62%]
tests/test_http_async_sync.py::test_async_client_async_transport[False] PASSED [ 63%]
tests/test_http_async_sync.py::test_async_client_sync_transport[True] PASSED [ 63%]
tests/test_http_async_sync.py::test_async_client_sync_transport[False] PASSED [ 63%]
tests/test_http_async_sync.py::test_sync_client_async_transport[True] PASSED [ 63%]
tests/test_http_async_sync.py::test_sync_client_async_transport[False] PASSED [ 63%]
tests/test_http_async_sync.py::test_sync_client_sync_transport[True] PASSED [ 64%]
tests/test_http_async_sync.py::test_sync_client_sync_transport[False] PASSED [ 64%]
tests/test_httpx.py::test_httpx_query PASSED [ 64%]
tests/test_httpx.py::test_httpx_cookies PASSED [ 64%]
tests/test_httpx.py::test_httpx_error_code_401 PASSED [ 64%]
tests/test_httpx.py::test_httpx_error_code_429 PASSED [ 64%]
tests/test_httpx.py::test_httpx_error_code_500 PASSED [ 65%]
tests/test_httpx.py::test_httpx_error_code PASSED [ 65%]
tests/test_httpx.py::test_httpx_invalid_protocol[{}] PASSED [ 65%]
tests/test_httpx.py::test_httpx_invalid_protocol[qlsjfqsdlkj] PASSED [ 65%]
tests/test_httpx.py::test_httpx_invalid_protocol[{"not_data_or_errors": 35}] PASSED [ 65%]
tests/test_httpx.py::test_httpx_cannot_connect_twice PASSED [ 65%]
tests/test_httpx.py::test_httpx_cannot_execute_if_not_connected PASSED [ 66%]
tests/test_httpx.py::test_httpx_query_with_extensions PASSED [ 66%]
tests/test_httpx.py::test_httpx_file_upload PASSED [ 66%]
tests/test_httpx.py::test_httpx_file_upload_with_content_type PASSED [ 66%]
tests/test_httpx.py::test_httpx_file_upload_additional_headers PASSED [ 66%]
tests/test_httpx.py::test_httpx_binary_file_upload PASSED [ 67%]
tests/test_httpx.py::test_httpx_file_upload_two_files PASSED [ 67%]
tests/test_httpx.py::test_httpx_file_upload_list_of_two_files PASSED [ 67%]
tests/test_httpx.py::test_httpx_error_fetching_schema PASSED [ 67%]
tests/test_httpx_async.py::test_httpx_query PASSED [ 67%]
tests/test_httpx_async.py::test_httpx_ignore_backend_content_type PASSED [ 67%]
tests/test_httpx_async.py::test_httpx_cookies PASSED [ 68%]
tests/test_httpx_async.py::test_httpx_error_code_401 PASSED [ 68%]
tests/test_httpx_async.py::test_httpx_error_code_429 PASSED [ 68%]
tests/test_httpx_async.py::test_httpx_error_code_500 PASSED [ 68%]
tests/test_httpx_async.py::test_httpx_error_code[{"errors": ["Error 1", "Error 2"]}] PASSED [ 68%]
tests/test_httpx_async.py::test_httpx_error_code[{"errors": {"error_1": "Something"}}] PASSED [ 68%]
tests/test_httpx_async.py::test_httpx_error_code[{"errors": 5}] PASSED [ 69%]
tests/test_httpx_async.py::test_httpx_invalid_protocol[param0] PASSED [ 69%]
tests/test_httpx_async.py::test_httpx_invalid_protocol[param1] PASSED [ 69%]
tests/test_httpx_async.py::test_httpx_invalid_protocol[param2] PASSED [ 69%]
tests/test_httpx_async.py::test_httpx_invalid_protocol[param3] PASSED [ 69%]
tests/test_httpx_async.py::test_httpx_subscribe_not_supported PASSED [ 70%]
tests/test_httpx_async.py::test_httpx_cannot_connect_twice PASSED [ 70%]
tests/test_httpx_async.py::test_httpx_cannot_execute_if_not_connected PASSED [ 70%]
tests/test_httpx_async.py::test_httpx_extra_args PASSED [ 70%]
tests/test_httpx_async.py::test_httpx_query_variable_values PASSED [ 70%]
tests/test_httpx_async.py::test_httpx_query_variable_values_fix_issue_292 PASSED [ 70%]
tests/test_httpx_async.py::test_httpx_execute_running_in_thread PASSED [ 71%]
tests/test_httpx_async.py::test_httpx_subscribe_running_in_thread PASSED [ 71%]
tests/test_httpx_async.py::test_httpx_file_upload PASSED [ 71%]
tests/test_httpx_async.py::test_httpx_file_upload_without_session PASSED [ 71%]
tests/test_httpx_async.py::test_httpx_binary_file_upload PASSED [ 71%]
tests/test_httpx_async.py::test_httpx_file_upload_two_files PASSED [ 71%]
tests/test_httpx_async.py::test_httpx_file_upload_list_of_two_files PASSED [ 72%]
tests/test_httpx_async.py::test_httpx_using_cli PASSED [ 72%]
tests/test_httpx_async.py::test_httpx_using_cli_ep[subprocess] PASSED [ 72%]
tests/test_httpx_async.py::test_httpx_using_cli_invalid_param PASSED [ 72%]
tests/test_httpx_async.py::test_httpx_using_cli_invalid_query PASSED [ 72%]
tests/test_httpx_async.py::test_httpx_query_with_extensions PASSED [ 73%]
tests/test_httpx_async.py::test_httpx_query_https PASSED [ 73%]
tests/test_httpx_async.py::test_httpx_error_fetching_schema PASSED [ 73%]
tests/test_httpx_async.py::test_httpx_reconnecting_session PASSED [ 73%]
tests/test_httpx_async.py::test_httpx_reconnecting_session_retries[False] PASSED [ 73%]
tests/test_httpx_async.py::test_httpx_reconnecting_session_retries[] PASSED [ 73%]
tests/test_httpx_async.py::test_httpx_reconnecting_session_start_connecting_task_twice PASSED [ 74%]
tests/test_httpx_async.py::test_httpx_json_serializer PASSED [ 74%]
tests/test_httpx_online.py::test_httpx_simple_query PASSED [ 74%]
tests/test_httpx_online.py::test_httpx_invalid_query PASSED [ 74%]
tests/test_httpx_online.py::test_httpx_two_queries_in_parallel_using_two_tasks PASSED [ 74%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server0] PASSED [ 74%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server1] PASSED [ 75%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server2] PASSED [ 75%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server3] PASSED [ 75%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server4] PASSED [ 75%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-no_connection_ack_phoenix_server] PASSED [ 75%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_protocol_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server5] PASSED [ 76%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server0] PASSED [ 76%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server1] PASSED [ 76%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server2] PASSED [ 76%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_query_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server3] PASSED [ 76%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server0] PASSED [ 76%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server1] PASSED [ 77%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server2] PASSED [ 77%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server3] PASSED [ 77%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server4] PASSED [ 77%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server5] PASSED [ 77%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server6] PASSED [ 77%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server7] PASSED [ 78%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server8] PASSED [ 78%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server9] PASSED [ 78%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server10] PASSED [ 78%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_subscription_protocol_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server11] PASSED [ 78%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_server_error[\n query getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server] PASSED [ 79%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_unsubscribe_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server0] PASSED [ 79%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_unsubscribe_error[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server1] PASSED [ 79%]
tests/test_phoenix_channel_exceptions.py::test_phoenix_channel_unsubscribe_error_forcing[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-phoenix_server] PASSED [ 79%]
tests/test_phoenix_channel_query.py::test_phoenix_channel_query[\n query getContinents {\n continents {\n code\n name\n }\n }\n-query_server] PASSED [ 79%]
tests/test_phoenix_channel_query.py::test_phoenix_channel_subscription[\n subscription getContinents {\n continents {\n code\n name\n }\n }\n-subscription_server] PASSED [ 79%]
tests/test_phoenix_channel_subscription.py::test_phoenix_channel_subscription[0-\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 80%]
tests/test_phoenix_channel_subscription.py::test_phoenix_channel_subscription[5-\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 80%]
tests/test_phoenix_channel_subscription.py::test_phoenix_channel_subscription_no_break[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 80%]
tests/test_phoenix_channel_subscription.py::test_phoenix_channel_heartbeat[\n subscription {\n heartbeat {\n heartbeat_count\n }\n }\n-phoenix_heartbeat_server] PASSED [ 80%]
tests/test_requests.py::test_requests_query PASSED [ 80%]
tests/test_requests.py::test_requests_cookies PASSED [ 80%]
tests/test_requests.py::test_requests_error_code_401 PASSED [ 81%]
tests/test_requests.py::test_requests_error_code_429 PASSED [ 81%]
tests/test_requests.py::test_requests_error_code_500 PASSED [ 81%]
tests/test_requests.py::test_requests_error_code PASSED [ 81%]
tests/test_requests.py::test_requests_invalid_protocol[{}] PASSED [ 81%]
tests/test_requests.py::test_requests_invalid_protocol[qlsjfqsdlkj] PASSED [ 82%]
tests/test_requests.py::test_requests_invalid_protocol[{"not_data_or_errors": 35}] PASSED [ 82%]
tests/test_requests.py::test_requests_cannot_connect_twice PASSED [ 82%]
tests/test_requests.py::test_requests_cannot_execute_if_not_connected PASSED [ 82%]
tests/test_requests.py::test_requests_query_with_extensions PASSED [ 82%]
tests/test_requests.py::test_requests_file_upload PASSED [ 82%]
tests/test_requests.py::test_requests_file_upload_with_content_type PASSED [ 83%]
tests/test_requests.py::test_requests_file_upload_additional_headers PASSED [ 83%]
tests/test_requests.py::test_requests_binary_file_upload PASSED [ 83%]
tests/test_requests.py::test_requests_file_upload_two_files PASSED [ 83%]
tests/test_requests.py::test_requests_file_upload_list_of_two_files PASSED [ 83%]
tests/test_requests.py::test_requests_error_fetching_schema PASSED [ 83%]
tests/test_requests_batch.py::test_requests_query PASSED [ 84%]
tests/test_requests_batch.py::test_requests_query_auto_batch_enabled PASSED [ 84%]
tests/test_requests_batch.py::test_requests_query_auto_batch_enabled_two_requests PASSED [ 84%]
tests/test_requests_batch.py::test_requests_cookies PASSED [ 84%]
tests/test_requests_batch.py::test_requests_error_code_401 PASSED [ 84%]
tests/test_requests_batch.py::test_requests_error_code_401_auto_batch_enabled PASSED [ 85%]
tests/test_requests_batch.py::test_requests_error_code_429 PASSED [ 85%]
tests/test_requests_batch.py::test_requests_error_code_500 PASSED [ 85%]
tests/test_requests_batch.py::test_requests_error_code PASSED [ 85%]
tests/test_requests_batch.py::test_requests_invalid_protocol[{}] PASSED [ 85%]
tests/test_requests_batch.py::test_requests_invalid_protocol[qlsjfqsdlkj] PASSED [ 85%]
tests/test_requests_batch.py::test_requests_invalid_protocol[{"not_data_or_errors": 35}] PASSED [ 86%]
tests/test_requests_batch.py::test_requests_invalid_protocol[[{}]] PASSED [ 86%]
tests/test_requests_batch.py::test_requests_invalid_protocol[[qlsjfqsdlkj]] PASSED [ 86%]
tests/test_requests_batch.py::test_requests_invalid_protocol[[{"not_data_or_errors": 35}]] PASSED [ 86%]
tests/test_requests_batch.py::test_requests_invalid_protocol[[]] PASSED [ 86%]
tests/test_requests_batch.py::test_requests_invalid_protocol[[1]] PASSED [ 86%]
tests/test_requests_batch.py::test_requests_cannot_execute_if_not_connected PASSED [ 87%]
tests/test_requests_batch.py::test_requests_query_with_extensions PASSED [ 87%]
tests/test_requests_batch.py::test_requests_sync_batch_auto SKIPPED [ 87%]
tests/test_requests_batch.py::test_requests_sync_batch_auto_execute_future SKIPPED [ 87%]
tests/test_requests_batch.py::test_requests_sync_batch_manual SKIPPED [ 87%]
tests/test_transport.py::test_hero_name_query PASSED [ 88%]
tests/test_transport.py::test_query_with_variable PASSED [ 88%]
tests/test_transport.py::test_named_query PASSED [ 88%]
tests/test_transport.py::test_header_query PASSED [ 88%]
tests/test_transport_batch.py::test_hero_name_query PASSED [ 88%]
tests/test_transport_batch.py::test_query_with_variable PASSED [ 88%]
tests/test_transport_batch.py::test_named_query PASSED [ 89%]
tests/test_transport_batch.py::test_header_query PASSED [ 89%]
tests/test_websocket_exceptions.py::test_websocket_invalid_query[\n query getContinents {\n continents {\n code\n bloh\n }\n }\n-server0] PASSED [ 89%]
tests/test_websocket_exceptions.py::test_websocket_invalid_subscription[\n subscription getContinents {\n continents {\n code\n bloh\n }\n }\n-server_invalid_subscription] PASSED [ 89%]
tests/test_websocket_exceptions.py::test_websocket_server_does_not_send_ack[\n query getContinents {\n continents {\n code\n bloh\n }\n }\n-server_no_ack] PASSED [ 89%]
tests/test_websocket_exceptions.py::test_websocket_sending_invalid_data[\n query getContinents {\n continents {\n code\n bloh\n }\n }\n-server_connection_error] PASSED [ 89%]
tests/test_websocket_exceptions.py::test_websocket_sending_invalid_payload[\n query getContinents {\n continents {\n code\n bloh\n }\n }\n-server_invalid_payload] PASSED [ 90%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server0] PASSED [ 90%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server1] PASSED [ 90%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server2] PASSED [ 90%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server3] PASSED [ 90%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server4] PASSED [ 91%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server5] PASSED [ 91%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server6] PASSED [ 91%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server7] PASSED [ 91%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server8] PASSED [ 91%]
tests/test_websocket_exceptions.py::test_websocket_transport_protocol_errors[server9] PASSED [ 91%]
tests/test_websocket_exceptions.py::test_websocket_server_does_not_ack[server_without_ack] PASSED [ 92%]
tests/test_websocket_exceptions.py::test_websocket_server_closing_directly[server_closing_directly] PASSED [ 92%]
tests/test_websocket_exceptions.py::test_websocket_server_closing_after_ack[server_closing_after_ack] PASSED [ 92%]
tests/test_websocket_exceptions.py::test_websocket_server_sending_invalid_query_errors[server_sending_invalid_query_errors] PASSED [ 92%]
tests/test_websocket_exceptions.py::test_websocket_non_regression_bug_105[server_sending_invalid_query_errors] PASSED [ 92%]
tests/test_websocket_exceptions.py::test_websocket_using_cli_invalid_query[server0] PASSED [ 92%]
tests/test_websocket_online.py::test_websocket_simple_query SKIPPEDevorblades/countries/issues/42) [ 93%]
tests/test_websocket_online.py::test_websocket_invalid_query SKIPPEDvorblades/countries/issues/42) [ 93%]
tests/test_websocket_online.py::test_websocket_sending_invalid_data SKIPPEDblades/countries/issues/42) [ 93%]
tests/test_websocket_online.py::test_websocket_sending_invalid_payload SKIPPEDblades/countries/issues/42) [ 93%]
tests/test_websocket_online.py::test_websocket_sending_invalid_data_while_other_query_is_running SKIPPEDblades/countries/issues/42) [ 93%]
tests/test_websocket_online.py::test_websocket_two_queries_in_parallel_using_two_tasks SKIPPEDblades/countries/issues/42) [ 94%]
tests/test_websocket_query.py::test_websocket_starting_client_in_context_manager[server0] PASSED [ 94%]
tests/test_websocket_query.py::test_websocket_using_ssl_connection[ws_ssl_server0] PASSED [ 94%]
tests/test_websocket_query.py::test_websocket_simple_query[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server0] PASSED [ 94%]
tests/test_websocket_query.py::test_websocket_two_queries_in_series[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server0] PASSED [ 94%]
tests/test_websocket_query.py::test_websocket_two_queries_in_parallel[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server1_two_queries_in_parallel] PASSED [ 94%]
tests/test_websocket_query.py::test_websocket_server_closing_after_first_query[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server_closing_while_we_are_doing_something_else] PASSED [ 95%]
tests/test_websocket_query.py::test_websocket_ignore_invalid_id[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server0] PASSED [ 95%]
tests/test_websocket_query.py::test_websocket_multiple_connections_in_series[server0] PASSED [ 95%]
tests/test_websocket_query.py::test_websocket_multiple_connections_in_parallel[server0] PASSED [ 95%]
tests/test_websocket_query.py::test_websocket_trying_to_connect_to_already_connected_transport[server0] PASSED [ 95%]
tests/test_websocket_query.py::test_websocket_connect_success_with_authentication_in_connection_init[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server_with_authentication_in_connection_init_payload] PASSED [ 95%]
tests/test_websocket_query.py::test_websocket_connect_failed_with_authentication_in_connection_init[init_payload0-\n query getContinents {\n continents {\n code\n name\n }\n }\n-server_with_authentication_in_connection_init_payload] PASSED [ 96%]
tests/test_websocket_query.py::test_websocket_connect_failed_with_authentication_in_connection_init[init_payload1-\n query getContinents {\n continents {\n code\n name\n }\n }\n-server_with_authentication_in_connection_init_payload] PASSED [ 96%]
tests/test_websocket_query.py::test_websocket_execute_sync[server0] PASSED [ 96%]
tests/test_websocket_query.py::test_websocket_add_extra_parameters_to_connect[server0] PASSED [ 96%]
tests/test_websocket_query.py::test_websocket_non_regression_bug_108[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server_sending_keep_alive_before_connection_ack] PASSED [ 96%]
tests/test_websocket_query.py::test_websocket_using_cli[server0] PASSED [ 97%]
tests/test_websocket_query.py::test_websocket_simple_query_with_extensions[\n query getContinents {\n continents {\n code\n name\n }\n }\n-server0] PASSED [ 97%]
tests/test_websocket_subscription.py::test_websocket_subscription[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 97%]
tests/test_websocket_subscription.py::test_websocket_subscription_get_execution_result[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 97%]
tests/test_websocket_subscription.py::test_websocket_subscription_break[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 97%]
tests/test_websocket_subscription.py::test_websocket_subscription_task_cancel[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 97%]
tests/test_websocket_subscription.py::test_websocket_subscription_close_transport[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 98%]
tests/test_websocket_subscription.py::test_websocket_subscription_server_connection_closed[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown_close_connection_in_middle] PASSED [ 98%]
tests/test_websocket_subscription.py::test_websocket_subscription_slow_consumer[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 98%]
tests/test_websocket_subscription.py::test_websocket_subscription_with_operation_name[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 98%]
tests/test_websocket_subscription.py::test_websocket_subscription_with_keepalive[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 98%]
tests/test_websocket_subscription.py::test_websocket_subscription_with_keepalive_with_timeout_ok[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 98%]
tests/test_websocket_subscription.py::test_websocket_subscription_with_keepalive_with_timeout_nok[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 99%]
tests/test_websocket_subscription.py::test_websocket_subscription_sync[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 99%]
tests/test_websocket_subscription.py::test_websocket_subscription_sync_user_exception[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 99%]
tests/test_websocket_subscription.py::test_websocket_subscription_sync_break[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 99%]
tests/test_websocket_subscription.py::test_websocket_subscription_sync_graceful_shutdown[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [ 99%]
tests/test_websocket_subscription.py::test_websocket_subscription_running_in_thread[\n subscription {{\n countdown (count: {count}) {{\n number\n }}\n }}\n-server_countdown] PASSED [100%]
=================================== FAILURES ===================================
__ test_async_client_validation_fetch_schema_from_server_valid_query[server0] __
event_loop = <_UnixSelectorEventLoop running=False closed=False debug=False>
client_and_server = (, )
@pytest.mark.websockets
@pytest.mark.asyncio
@pytest.mark.parametrize("server", [hero_server_answers], indirect=True)
async def test_async_client_validation_fetch_schema_from_server_valid_query(
event_loop, client_and_server
):
session, server = client_and_server
client = session.client
# No schema in the client at the beginning
assert client.introspection is None
assert client.schema is None
# Fetch schema from server
await session.fetch_schema()
# Check that the async client correctly recreated the schema
> assert client.introspection == StarWarsIntrospection
E assert {'__schema': {'queryType': {'name': 'Query'}, 'mutationType': {'name': 'Mutation'}, 'subscriptionType': {'name': 'Subscription'}, 'types': [{'kind': 'OBJECT', 'name': 'Human', 'description': 'A humanoid creature in the Star Wars universe.', 'fields': [{'name': 'id', 'description': 'The id of the human.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': 'The name of the human.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'friends', 'description': 'The friends of the human, or an empty list if they have none.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'appearsIn', 'description': 'Which movies they appear in.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'homePlanet', 'description': 'The home planet of the human, or null if unknown.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [{'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}], 'enumValues': None, 'possibleTypes': None}, {'kind': 'INTERFACE', 'name': 'Character', 'description': 'A character in the Star Wars Trilogy', 'fields': [{'name': 'id', 'description': 'The id of the character.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': 'The name of the character.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'friends', 'description': 'The friends of the character, or an empty list if they have none.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'appearsIn', 'description': 'Which movies they appear in.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': [{'kind': 'OBJECT', 'name': 'Human', 'ofType': None}, {'kind': 'OBJECT', 'name': 'Droid', 'ofType': None}]}, {'kind': 'SCALAR', 'name': 'String', 'description': 'The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'ENUM', 'name': 'Episode', 'description': 'One of the films in the Star Wars Trilogy', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': [{'name': 'NEWHOPE', 'description': 'Released in 1977.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'EMPIRE', 'description': 'Released in 1980.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'JEDI', 'description': 'Released in 1983.', 'isDeprecated': False, 'deprecationReason': None}], 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Droid', 'description': 'A mechanical creature in the Star Wars universe.', 'fields': [{'name': 'id', 'description': 'The id of the droid.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': 'The name of the droid.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'friends', 'description': 'The friends of the droid, or an empty list if they have none.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'appearsIn', 'description': 'Which movies they appear in.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'primaryFunction', 'description': 'The primary function of the droid.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [{'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Review', 'description': 'Represents a review for a movie', 'fields': [{'name': 'episode', 'description': 'The movie', 'args': [], 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'stars', 'description': 'The number of stars this review gave, 1-5', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Int', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'commentary', 'description': 'Comment about the movie', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'SCALAR', 'name': 'Int', 'description': 'The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'INPUT_OBJECT', 'name': 'ReviewInput', 'description': 'The input object sent when someone is creating a new review', 'fields': None, 'inputFields': [{'name': 'stars', 'description': '0-5 stars', 'type': {'kind': 'SCALAR', 'name': 'Int', 'ofType': None}, 'defaultValue': None}, {'name': 'commentary', 'description': 'Comment about the movie, optional', 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'defaultValue': None}], 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Query', 'description': None, 'fields': [{'name': 'hero', 'description': None, 'args': [{'name': 'episode', 'description': 'If omitted, returns the hero of the whole saga. If provided, returns the hero of that particular episode.', 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'defaultValue': None}], 'type': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'human', 'description': None, 'args': [{'name': 'id', 'description': 'id of the human', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Human', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'droid', 'description': None, 'args': [{'name': 'id', 'description': 'id of the droid', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Droid', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'characters', 'description': None, 'args': [{'name': 'ids', 'description': 'list of character ids', 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Mutation', 'description': 'The mutation type, represents all updates we can make to our data', 'fields': [{'name': 'createReview', 'description': None, 'args': [{'name': 'episode', 'description': 'Episode to create review', 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'defaultValue': None}, {'name': 'review', 'description': 'set alive status', 'type': {'kind': 'INPUT_OBJECT', 'name': 'ReviewInput', 'ofType': None}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Review', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Subscription', 'description': None, 'fields': [{'name': 'reviewAdded', 'description': None, 'args': [{'name': 'episode', 'description': 'Episode to review', 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Review', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'SCALAR', 'name': 'Boolean', 'description': 'The `Boolean` scalar type represents `true` or `false`.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Schema', 'description': 'A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.', 'fields': [{'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'types', 'description': 'A list of all types supported by this server.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'queryType', 'description': 'The type that query operations will be rooted at.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'mutationType', 'description': 'If this server supports mutation, the type that mutation operations will be rooted at.', 'args': [], 'type': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'subscriptionType', 'description': 'If this server support subscription, the type that subscription operations will be rooted at.', 'args': [], 'type': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'directives', 'description': 'A list of all directives supported by this server.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Directive', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Type', 'description': 'The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name, description and optional `specifiedByURL`, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.', 'fields': [{'name': 'kind', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'ENUM', 'name': '__TypeKind', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'specifiedByURL', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'fields', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Field', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'interfaces', 'description': None, 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'possibleTypes', 'description': None, 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'enumValues', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__EnumValue', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'inputFields', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__InputValue', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ofType', 'description': None, 'args': [], 'type': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'ENUM', 'name': '__TypeKind', 'description': 'An enum describing what kind of type a given `__Type` is.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': [{'name': 'SCALAR', 'description': 'Indicates this type is a scalar.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'OBJECT', 'description': 'Indicates this type is an object. `fields` and `interfaces` are valid fields.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INTERFACE', 'description': 'Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'UNION', 'description': 'Indicates this type is a union. `possibleTypes` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ENUM', 'description': 'Indicates this type is an enum. `enumValues` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INPUT_OBJECT', 'description': 'Indicates this type is an input object. `inputFields` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'LIST', 'description': 'Indicates this type is a list. `ofType` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'NON_NULL', 'description': 'Indicates this type is a non-null. `ofType` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}], 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Field', 'description': 'Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.', 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'args', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__InputValue', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'type', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isDeprecated', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'deprecationReason', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__InputValue', 'description': 'Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.', 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'type', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'defaultValue', 'description': 'A GraphQL-formatted string representing the default value for this input value.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isDeprecated', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'deprecationReason', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__EnumValue', 'description': 'One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.', 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isDeprecated', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'deprecationReason', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Directive', 'description': "A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.", 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isRepeatable', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'locations', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'ENUM', 'name': '__DirectiveLocation', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'args', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__InputValue', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'ENUM', 'name': '__DirectiveLocation', 'description': 'A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': [{'name': 'QUERY', 'description': 'Location adjacent to a query operation.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'MUTATION', 'description': 'Location adjacent to a mutation operation.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'SUBSCRIPTION', 'description': 'Location adjacent to a subscription operation.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FIELD', 'description': 'Location adjacent to a field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FRAGMENT_DEFINITION', 'description': 'Location adjacent to a fragment definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FRAGMENT_SPREAD', 'description': 'Location adjacent to a fragment spread.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INLINE_FRAGMENT', 'description': 'Location adjacent to an inline fragment.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'VARIABLE_DEFINITION', 'description': 'Location adjacent to a variable definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'SCHEMA', 'description': 'Location adjacent to a schema definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'SCALAR', 'description': 'Location adjacent to a scalar definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'OBJECT', 'description': 'Location adjacent to an object type definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FIELD_DEFINITION', 'description': 'Location adjacent to a field definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ARGUMENT_DEFINITION', 'description': 'Location adjacent to an argument definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INTERFACE', 'description': 'Location adjacent to an interface definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'UNION', 'description': 'Location adjacent to a union definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ENUM', 'description': 'Location adjacent to an enum definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ENUM_VALUE', 'description': 'Location adjacent to an enum value definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INPUT_OBJECT', 'description': 'Location adjacent to an input object type definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INPUT_FIELD_DEFINITION', 'description': 'Location adjacent to an input object field definition.', 'isDeprecated': False, 'deprecationReason': None}], 'possibleTypes': None}], 'directives': [{'name': 'include', 'description': 'Directs the executor to include this field or fragment only when the `if` argument is true.', 'locations': ['FIELD', 'FRAGMENT_SPREAD', 'INLINE_FRAGMENT'], 'args': [{'name': 'if', 'description': 'Included when true.', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'defaultValue': None}]}, {'name': 'skip', 'description': 'Directs the executor to skip this field or fragment when the `if` argument is true.', 'locations': ['FIELD', 'FRAGMENT_SPREAD', 'INLINE_FRAGMENT'], 'args': [{'name': 'if', 'description': 'Skipped when true.', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'defaultValue': None}]}, {'name': 'deprecated', 'description': 'Marks an element of a GraphQL schema as no longer supported.', 'locations': ['FIELD_DEFINITION', 'ARGUMENT_DEFINITION', 'INPUT_FIELD_DEFINITION', 'ENUM_VALUE'], 'args': [{'name': 'reason', 'description': 'Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax, as specified by [CommonMark](https://commonmark.org/).', 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'defaultValue': '"No longer supported"'}]}, {'name': 'specifiedBy', 'description': 'Exposes a URL that specifies the behaviour of this scalar.', 'locations': ['SCALAR'], 'args': [{'name': 'url', 'description': 'The URL that specifies the behaviour of this scalar.', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}]}]}} == {'__schema': {'queryType': {'name': 'Query'}, 'mutationType': {'name': 'Mutation'}, 'subscriptionType': {'name': 'Subscription'}, 'types': [{'kind': 'OBJECT', 'name': 'Human', 'description': 'A humanoid creature in the Star Wars universe.', 'fields': [{'name': 'id', 'description': 'The id of the human.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': 'The name of the human.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'friends', 'description': 'The friends of the human, or an empty list if they have none.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'appearsIn', 'description': 'Which movies they appear in.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'homePlanet', 'description': 'The home planet of the human, or null if unknown.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [{'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}], 'enumValues': None, 'possibleTypes': None}, {'kind': 'INTERFACE', 'name': 'Character', 'description': 'A character in the Star Wars Trilogy', 'fields': [{'name': 'id', 'description': 'The id of the character.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': 'The name of the character.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'friends', 'description': 'The friends of the character, or an empty list if they have none.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'appearsIn', 'description': 'Which movies they appear in.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': [{'kind': 'OBJECT', 'name': 'Human', 'ofType': None}, {'kind': 'OBJECT', 'name': 'Droid', 'ofType': None}]}, {'kind': 'SCALAR', 'name': 'String', 'description': 'The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'ENUM', 'name': 'Episode', 'description': 'One of the films in the Star Wars Trilogy', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': [{'name': 'NEWHOPE', 'description': 'Released in 1977.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'EMPIRE', 'description': 'Released in 1980.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'JEDI', 'description': 'Released in 1983.', 'isDeprecated': False, 'deprecationReason': None}], 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Droid', 'description': 'A mechanical creature in the Star Wars universe.', 'fields': [{'name': 'id', 'description': 'The id of the droid.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': 'The name of the droid.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'friends', 'description': 'The friends of the droid, or an empty list if they have none.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'appearsIn', 'description': 'Which movies they appear in.', 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'primaryFunction', 'description': 'The primary function of the droid.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [{'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Review', 'description': 'Represents a review for a movie', 'fields': [{'name': 'episode', 'description': 'The movie', 'args': [], 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'stars', 'description': 'The number of stars this review gave, 1-5', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Int', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'commentary', 'description': 'Comment about the movie', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'SCALAR', 'name': 'Int', 'description': 'The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'INPUT_OBJECT', 'name': 'ReviewInput', 'description': 'The input object sent when someone is creating a new review', 'fields': None, 'inputFields': [{'name': 'stars', 'description': '0-5 stars', 'type': {'kind': 'SCALAR', 'name': 'Int', 'ofType': None}, 'defaultValue': None}, {'name': 'commentary', 'description': 'Comment about the movie, optional', 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'defaultValue': None}], 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Query', 'description': None, 'fields': [{'name': 'hero', 'description': None, 'args': [{'name': 'episode', 'description': 'If omitted, returns the hero of the whole saga. If provided, returns the hero of that particular episode.', 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'defaultValue': None}], 'type': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'human', 'description': None, 'args': [{'name': 'id', 'description': 'id of the human', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Human', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'droid', 'description': None, 'args': [{'name': 'id', 'description': 'id of the droid', 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Droid', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'characters', 'description': None, 'args': [{'name': 'ids', 'description': 'list of character ids', 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'defaultValue': None}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'INTERFACE', 'name': 'Character', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Mutation', 'description': 'The mutation type, represents all updates we can make to our data', 'fields': [{'name': 'createReview', 'description': None, 'args': [{'name': 'episode', 'description': 'Episode to create review', 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'defaultValue': None}, {'name': 'review', 'description': 'set alive status', 'type': {'kind': 'INPUT_OBJECT', 'name': 'ReviewInput', 'ofType': None}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Review', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': 'Subscription', 'description': None, 'fields': [{'name': 'reviewAdded', 'description': None, 'args': [{'name': 'episode', 'description': 'Episode to review', 'type': {'kind': 'ENUM', 'name': 'Episode', 'ofType': None}, 'defaultValue': None}], 'type': {'kind': 'OBJECT', 'name': 'Review', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'SCALAR', 'name': 'Boolean', 'description': 'The `Boolean` scalar type represents `true` or `false`.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Schema', 'description': 'A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.', 'fields': [{'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'types', 'description': 'A list of all types supported by this server.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'queryType', 'description': 'The type that query operations will be rooted at.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'mutationType', 'description': 'If this server supports mutation, the type that mutation operations will be rooted at.', 'args': [], 'type': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'subscriptionType', 'description': 'If this server support subscription, the type that subscription operations will be rooted at.', 'args': [], 'type': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'directives', 'description': 'A list of all directives supported by this server.', 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Directive', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Type', 'description': 'The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name, description and optional `specifiedByURL`, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.', 'fields': [{'name': 'kind', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'ENUM', 'name': '__TypeKind', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'specifiedByURL', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'fields', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Field', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'interfaces', 'description': None, 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'possibleTypes', 'description': None, 'args': [], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'enumValues', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__EnumValue', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'inputFields', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__InputValue', 'ofType': None}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ofType', 'description': None, 'args': [], 'type': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'ENUM', 'name': '__TypeKind', 'description': 'An enum describing what kind of type a given `__Type` is.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': [{'name': 'SCALAR', 'description': 'Indicates this type is a scalar.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'OBJECT', 'description': 'Indicates this type is an object. `fields` and `interfaces` are valid fields.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INTERFACE', 'description': 'Indicates this type is an interface. `fields`, `interfaces`, and `possibleTypes` are valid fields.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'UNION', 'description': 'Indicates this type is a union. `possibleTypes` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ENUM', 'description': 'Indicates this type is an enum. `enumValues` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INPUT_OBJECT', 'description': 'Indicates this type is an input object. `inputFields` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'LIST', 'description': 'Indicates this type is a list. `ofType` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'NON_NULL', 'description': 'Indicates this type is a non-null. `ofType` is a valid field.', 'isDeprecated': False, 'deprecationReason': None}], 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Field', 'description': 'Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.', 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'args', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__InputValue', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'type', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isDeprecated', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'deprecationReason', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__InputValue', 'description': 'Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.', 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'type', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__Type', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'defaultValue', 'description': 'A GraphQL-formatted string representing the default value for this input value.', 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isDeprecated', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'deprecationReason', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__EnumValue', 'description': 'One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.', 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isDeprecated', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'deprecationReason', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'OBJECT', 'name': '__Directive', 'description': "A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.", 'fields': [{'name': 'name', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'description', 'description': None, 'args': [], 'type': {'kind': 'SCALAR', 'name': 'String', 'ofType': None}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'isRepeatable', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'locations', 'description': None, 'args': [], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'ENUM', 'name': '__DirectiveLocation', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}, {'name': 'args', 'description': None, 'args': [{'name': 'includeDeprecated', 'description': None, 'type': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': None}, 'defaultValue': 'false'}], 'type': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'LIST', 'name': None, 'ofType': {'kind': 'NON_NULL', 'name': None, 'ofType': {'kind': 'OBJECT', 'name': '__InputValue', 'ofType': None}}}}, 'isDeprecated': False, 'deprecationReason': None}], 'inputFields': None, 'interfaces': [], 'enumValues': None, 'possibleTypes': None}, {'kind': 'ENUM', 'name': '__DirectiveLocation', 'description': 'A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.', 'fields': None, 'inputFields': None, 'interfaces': None, 'enumValues': [{'name': 'QUERY', 'description': 'Location adjacent to a query operation.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'MUTATION', 'description': 'Location adjacent to a mutation operation.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'SUBSCRIPTION', 'description': 'Location adjacent to a subscription operation.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FIELD', 'description': 'Location adjacent to a field.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FRAGMENT_DEFINITION', 'description': 'Location adjacent to a fragment definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FRAGMENT_SPREAD', 'description': 'Location adjacent to a fragment spread.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INLINE_FRAGMENT', 'description': 'Location adjacent to an inline fragment.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'VARIABLE_DEFINITION', 'description': 'Location adjacent to a variable definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'SCHEMA', 'description': 'Location adjacent to a schema definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'SCALAR', 'description': 'Location adjacent to a scalar definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'OBJECT', 'description': 'Location adjacent to an object type definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'FIELD_DEFINITION', 'description': 'Location adjacent to a field definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ARGUMENT_DEFINITION', 'description': 'Location adjacent to an argument definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INTERFACE', 'description': 'Location adjacent to an interface definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'UNION', 'description': 'Location adjacent to a union definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ENUM', 'description': 'Location adjacent to an enum definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'ENUM_VALUE', 'description': 'Location adjacent to an enum value definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INPUT_OBJECT', 'description': 'Location adjacent to an input object type definition.', 'isDeprecated': False, 'deprecationReason': None}, {'name': 'INPUT_FIELD_DEFINITION', 'description': 'Location adjacent to an input object field definition.', 'isDeprecated': False, 'deprecationReason': None}], 'possibleTypes': None}], 'directives': [{'name': 'skip', 'description': 'Directs the executor to skip this field or fragment when the `if` argument is true.', 'locations': [, , ], 'args': [{'name': 'if', 'description': 'Skipped when true.', 'type': {'kind': 'NON_NULL', 'name': 'None', 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': 'None'}}, 'defaultValue': 'None'}]}, {'name': 'include', 'description': 'Directs the executor to include this field or fragment only when the `if` argument is true.', 'locations': [, , ], 'args': [{'name': 'if', 'description': 'Included when true.', 'type': {'kind': 'NON_NULL', 'name': 'None', 'ofType': {'kind': 'SCALAR', 'name': 'Boolean', 'ofType': 'None'}}, 'defaultValue': 'None'}]}]}}
E
E Differing items:
E {'__schema': {'directives': [{'args': [{'defaultValue': None, 'description': 'Included when true.', 'name': 'if', 'typ...utationType': {'name': 'Mutation'}, 'queryType': {'name': 'Query'}, 'subscriptionType': {'name': 'Subscription'}, ...}} != {'__schema': {'directives': [{'args': [{'defaultValue': 'None', 'description': 'Skipped when true.', 'name': 'if', 'ty...utationType': {'name': 'Mutation'}, 'queryType': {'name': 'Query'}, 'subscriptionType': {'name': 'Subscription'}, ...}}
E
E Full diff:
E {
E '__schema': {
E 'directives': [
E {
E 'args': [
E {
E - 'defaultValue': 'None',
E ? - -
E + 'defaultValue': None,
E + 'description': 'Included when true.',
E + 'name': 'if',
E + 'type': {
E + 'kind': 'NON_NULL',
E + 'name': None,
E + 'ofType': {
E + 'kind': 'SCALAR',
E + 'name': 'Boolean',
E + 'ofType': None,
E + },
E + },
E + },
E + ],
E + 'description': 'Directs the executor to include this field or fragment only '
E + 'when the `if` argument is true.',
E + 'locations': [
E + 'FIELD',
E + 'FRAGMENT_SPREAD',
E + 'INLINE_FRAGMENT',
E + ],
E + 'name': 'include',
E + },
E + {
E + 'args': [
E + {
E + 'defaultValue': None,
E 'description': 'Skipped when true.',
E 'name': 'if',
E 'type': {
E 'kind': 'NON_NULL',
E - 'name': 'None',
E ? - -
E + 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E - 'ofType': 'None',
E ? - -
E + 'ofType': None,
E },
E },
E },
E ],
E 'description': 'Directs the executor to skip this field or fragment when the '
E '`if` argument is true.',
E 'locations': [
E - ,
E - ,
E - ,
E + 'FIELD',
E + 'FRAGMENT_SPREAD',
E + 'INLINE_FRAGMENT',
E ],
E 'name': 'skip',
E },
E {
E 'args': [
E {
E + 'defaultValue': '"No longer supported"',
E + 'description': 'Explains why this element was deprecated, usually '
E + 'also including a suggestion for how to access '
E + 'supported similar data. Formatted using the Markdown '
E + 'syntax, as specified by '
E + '[CommonMark](https://commonmark.org/).',
E + 'name': 'reason',
E + 'type': {
E + 'kind': 'SCALAR',
E + 'name': 'String',
E + 'ofType': None,
E + },
E + },
E + ],
E + 'description': 'Marks an element of a GraphQL schema as no longer supported.',
E + 'locations': [
E + 'FIELD_DEFINITION',
E + 'ARGUMENT_DEFINITION',
E + 'INPUT_FIELD_DEFINITION',
E + 'ENUM_VALUE',
E + ],
E + 'name': 'deprecated',
E + },
E + {
E + 'args': [
E + {
E - 'defaultValue': 'None',
E ? - -
E + 'defaultValue': None,
E - 'description': 'Included when true.',
E + 'description': 'The URL that specifies the behaviour of this scalar.',
E - 'name': 'if',
E ? ^^
E + 'name': 'url',
E ? ^^^
E 'type': {
E 'kind': 'NON_NULL',
E - 'name': 'None',
E ? - -
E + 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E - 'name': 'Boolean',
E ? ^^^^^^
E + 'name': 'String',
E ? ^^^^ +
E - 'ofType': 'None',
E ? - -
E + 'ofType': None,
E - },
E - },
E + },
E ? ++++
E - },
E + },
E ? ++++
E - ],
E ? ^
E + },
E ? ^^^^^
E - 'description': 'Directs the executor to include this field or fragment only '
E - 'when the `if` argument is true.',
E + ],
E + 'description': 'Exposes a URL that specifies the behaviour of this scalar.',
E 'locations': [
E + 'SCALAR',
E - ,
E - ,
E - ,
E ],
E - 'name': 'include',
E ? ^^^^ ^
E + 'name': 'specifiedBy',
E ? ++++ ^^^ ^^
E },
E ],
E 'mutationType': {
E 'name': 'Mutation',
E },
E 'queryType': {
E 'name': 'Query',
E },
E 'subscriptionType': {
E 'name': 'Subscription',
E },
E 'types': [
E {
E 'description': 'A humanoid creature in the Star Wars universe.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The id of the human.',
E 'isDeprecated': False,
E 'name': 'id',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The name of the human.',
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The friends of the human, or an empty list if they '
E 'have none.',
E 'isDeprecated': False,
E 'name': 'friends',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'Which movies they appear in.',
E 'isDeprecated': False,
E 'name': 'appearsIn',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The home planet of the human, or null if unknown.',
E 'isDeprecated': False,
E 'name': 'homePlanet',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [
E {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E ],
E 'kind': 'OBJECT',
E 'name': 'Human',
E 'possibleTypes': None,
E },
E {
E 'description': 'A character in the Star Wars Trilogy',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The id of the character.',
E 'isDeprecated': False,
E 'name': 'id',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The name of the character.',
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The friends of the character, or an empty list if '
E 'they have none.',
E 'isDeprecated': False,
E 'name': 'friends',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'Which movies they appear in.',
E 'isDeprecated': False,
E 'name': 'appearsIn',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'possibleTypes': [
E {
E 'kind': 'OBJECT',
E 'name': 'Human',
E 'ofType': None,
E },
E {
E 'kind': 'OBJECT',
E 'name': 'Droid',
E 'ofType': None,
E },
E ],
E },
E {
E 'description': 'The `String` scalar type represents textual data, represented '
E 'as UTF-8 character sequences. The String type is most often '
E 'used by GraphQL to represent free-form human-readable text.',
E 'enumValues': None,
E 'fields': None,
E 'inputFields': None,
E 'interfaces': None,
E 'kind': 'SCALAR',
E 'name': 'String',
E 'possibleTypes': None,
E },
E {
E 'description': 'One of the films in the Star Wars Trilogy',
E 'enumValues': [
E {
E 'deprecationReason': None,
E 'description': 'Released in 1977.',
E 'isDeprecated': False,
E 'name': 'NEWHOPE',
E },
E {
E 'deprecationReason': None,
E 'description': 'Released in 1980.',
E 'isDeprecated': False,
E 'name': 'EMPIRE',
E },
E {
E 'deprecationReason': None,
E 'description': 'Released in 1983.',
E 'isDeprecated': False,
E 'name': 'JEDI',
E },
E ],
E 'fields': None,
E 'inputFields': None,
E 'interfaces': None,
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'possibleTypes': None,
E },
E {
E 'description': 'A mechanical creature in the Star Wars universe.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The id of the droid.',
E 'isDeprecated': False,
E 'name': 'id',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The name of the droid.',
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The friends of the droid, or an empty list if they '
E 'have none.',
E 'isDeprecated': False,
E 'name': 'friends',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'Which movies they appear in.',
E 'isDeprecated': False,
E 'name': 'appearsIn',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The primary function of the droid.',
E 'isDeprecated': False,
E 'name': 'primaryFunction',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [
E {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E ],
E 'kind': 'OBJECT',
E 'name': 'Droid',
E 'possibleTypes': None,
E },
E {
E 'description': 'Represents a review for a movie',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The movie',
E 'isDeprecated': False,
E 'name': 'episode',
E 'type': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The number of stars this review gave, 1-5',
E 'isDeprecated': False,
E 'name': 'stars',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'Int',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'Comment about the movie',
E 'isDeprecated': False,
E 'name': 'commentary',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': 'Review',
E 'possibleTypes': None,
E },
E {
E 'description': 'The `Int` scalar type represents non-fractional signed whole '
E 'numeric values. Int can represent values between -(2^31) and '
E '2^31 - 1.',
E 'enumValues': None,
E 'fields': None,
E 'inputFields': None,
E 'interfaces': None,
E 'kind': 'SCALAR',
E 'name': 'Int',
E 'possibleTypes': None,
E },
E {
E 'description': 'The input object sent when someone is creating a new review',
E 'enumValues': None,
E 'fields': None,
E 'inputFields': [
E {
E 'defaultValue': None,
E 'description': '0-5 stars',
E 'name': 'stars',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'Int',
E 'ofType': None,
E },
E },
E {
E 'defaultValue': None,
E 'description': 'Comment about the movie, optional',
E 'name': 'commentary',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'interfaces': None,
E 'kind': 'INPUT_OBJECT',
E 'name': 'ReviewInput',
E 'possibleTypes': None,
E },
E {
E 'description': None,
E 'enumValues': None,
E 'fields': [
E {
E 'args': [
E {
E 'defaultValue': None,
E 'description': 'If omitted, returns the hero of the whole '
E 'saga. If provided, returns the hero of that '
E 'particular episode.',
E 'name': 'episode',
E 'type': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'hero',
E 'type': {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E },
E {
E 'args': [
E {
E 'defaultValue': None,
E 'description': 'id of the human',
E 'name': 'id',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'human',
E 'type': {
E 'kind': 'OBJECT',
E 'name': 'Human',
E 'ofType': None,
E },
E },
E {
E 'args': [
E {
E 'defaultValue': None,
E 'description': 'id of the droid',
E 'name': 'id',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'droid',
E 'type': {
E 'kind': 'OBJECT',
E 'name': 'Droid',
E 'ofType': None,
E },
E },
E {
E 'args': [
E {
E 'defaultValue': None,
E 'description': 'list of character ids',
E 'name': 'ids',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'characters',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'INTERFACE',
E 'name': 'Character',
E 'ofType': None,
E },
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': 'Query',
E 'possibleTypes': None,
E },
E {
E 'description': 'The mutation type, represents all updates we can make to our '
E 'data',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [
E {
E 'defaultValue': None,
E 'description': 'Episode to create review',
E 'name': 'episode',
E 'type': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E {
E 'defaultValue': None,
E 'description': 'set alive status',
E 'name': 'review',
E 'type': {
E 'kind': 'INPUT_OBJECT',
E 'name': 'ReviewInput',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'createReview',
E 'type': {
E 'kind': 'OBJECT',
E 'name': 'Review',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': 'Mutation',
E 'possibleTypes': None,
E },
E {
E 'description': None,
E 'enumValues': None,
E 'fields': [
E {
E 'args': [
E {
E 'defaultValue': None,
E 'description': 'Episode to review',
E 'name': 'episode',
E 'type': {
E 'kind': 'ENUM',
E 'name': 'Episode',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'reviewAdded',
E 'type': {
E 'kind': 'OBJECT',
E 'name': 'Review',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': 'Subscription',
E 'possibleTypes': None,
E },
E {
E 'description': 'The `Boolean` scalar type represents `true` or `false`.',
E 'enumValues': None,
E 'fields': None,
E 'inputFields': None,
E 'interfaces': None,
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'possibleTypes': None,
E },
E {
E 'description': 'A GraphQL Schema defines the capabilities of a GraphQL '
E 'server. It exposes all available types and directives on the '
E 'server, as well as the entry points for query, mutation, and '
E 'subscription operations.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'description',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'A list of all types supported by this server.',
E 'isDeprecated': False,
E 'name': 'types',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'The type that query operations will be rooted at.',
E 'isDeprecated': False,
E 'name': 'queryType',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'If this server supports mutation, the type that '
E 'mutation operations will be rooted at.',
E 'isDeprecated': False,
E 'name': 'mutationType',
E 'type': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'If this server support subscription, the type that '
E 'subscription operations will be rooted at.',
E 'isDeprecated': False,
E 'name': 'subscriptionType',
E 'type': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'A list of all directives supported by this server.',
E 'isDeprecated': False,
E 'name': 'directives',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Directive',
E 'ofType': None,
E },
E },
E },
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': '__Schema',
E 'possibleTypes': None,
E },
E {
E 'description': 'The fundamental unit of any GraphQL Schema is the type. There '
E 'are many kinds of types in GraphQL as represented by the '
E '`__TypeKind` enum.\n'
E '\n'
E 'Depending on the kind of a type, certain fields describe '
E 'information about that type. Scalar types provide no '
E 'information beyond a name, description and optional '
E '`specifiedByURL`, while Enum types provide their values. '
E 'Object and Interface types provide the fields they describe. '
E 'Abstract types, Union and Interface, provide the Object types '
E 'possible at runtime. List and NonNull types compose other '
E 'types.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'kind',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'ENUM',
E 'name': '__TypeKind',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'description',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'specifiedByURL',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [
E {
E 'defaultValue': 'false',
E 'description': None,
E 'name': 'includeDeprecated',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'fields',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Field',
E 'ofType': None,
E },
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'interfaces',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'possibleTypes',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E },
E },
E {
E 'args': [
E {
E 'defaultValue': 'false',
E 'description': None,
E 'name': 'includeDeprecated',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'enumValues',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__EnumValue',
E 'ofType': None,
E },
E },
E },
E },
E {
E 'args': [
E {
E 'defaultValue': 'false',
E 'description': None,
E 'name': 'includeDeprecated',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'inputFields',
E 'type': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__InputValue',
E 'ofType': None,
E },
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'ofType',
E 'type': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'possibleTypes': None,
E },
E {
E 'description': 'An enum describing what kind of type a given `__Type` is.',
E 'enumValues': [
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is a scalar.',
E 'isDeprecated': False,
E 'name': 'SCALAR',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is an object. `fields` and '
E '`interfaces` are valid fields.',
E 'isDeprecated': False,
E 'name': 'OBJECT',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is an interface. `fields`, '
E '`interfaces`, and `possibleTypes` are valid fields.',
E 'isDeprecated': False,
E 'name': 'INTERFACE',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is a union. `possibleTypes` is a '
E 'valid field.',
E 'isDeprecated': False,
E 'name': 'UNION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is an enum. `enumValues` is a '
E 'valid field.',
E 'isDeprecated': False,
E 'name': 'ENUM',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is an input object. `inputFields` '
E 'is a valid field.',
E 'isDeprecated': False,
E 'name': 'INPUT_OBJECT',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is a list. `ofType` is a valid '
E 'field.',
E 'isDeprecated': False,
E 'name': 'LIST',
E },
E {
E 'deprecationReason': None,
E 'description': 'Indicates this type is a non-null. `ofType` is a '
E 'valid field.',
E 'isDeprecated': False,
E 'name': 'NON_NULL',
E },
E ],
E 'fields': None,
E 'inputFields': None,
E 'interfaces': None,
E 'kind': 'ENUM',
E 'name': '__TypeKind',
E 'possibleTypes': None,
E },
E {
E 'description': 'Object and Interface types are described by a list of Fields, '
E 'each of which has a name, potentially a list of arguments, '
E 'and a return type.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'description',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [
E {
E 'defaultValue': 'false',
E 'description': None,
E 'name': 'includeDeprecated',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'args',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__InputValue',
E 'ofType': None,
E },
E },
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'type',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'isDeprecated',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'deprecationReason',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': '__Field',
E 'possibleTypes': None,
E },
E {
E 'description': 'Arguments provided to Fields or Directives and the input '
E 'fields of an InputObject are represented as Input Values '
E 'which describe their type and optionally a default value.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'description',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'type',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__Type',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': 'A GraphQL-formatted string representing the default '
E 'value for this input value.',
E 'isDeprecated': False,
E 'name': 'defaultValue',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'isDeprecated',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'deprecationReason',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': '__InputValue',
E 'possibleTypes': None,
E },
E {
E 'description': 'One possible value for a given Enum. Enum values are unique '
E 'values, not a placeholder for a string or numeric value. '
E 'However an Enum value is returned in a JSON response as a '
E 'string.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'description',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'isDeprecated',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'deprecationReason',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': '__EnumValue',
E 'possibleTypes': None,
E },
E {
E 'description': 'A Directive provides a way to describe alternate runtime '
E 'execution and type validation behavior in a GraphQL '
E 'document.\n'
E '\n'
E "In some cases, you need to provide options to alter GraphQL's "
E 'execution behavior in ways field arguments will not suffice, '
E 'such as conditionally including or skipping a field. '
E 'Directives provide this by describing additional information '
E 'to the executor.',
E 'enumValues': None,
E 'fields': [
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'name',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'description',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'String',
E 'ofType': None,
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'isRepeatable',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E },
E {
E 'args': [],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'locations',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'ENUM',
E 'name': '__DirectiveLocation',
E 'ofType': None,
E },
E },
E },
E },
E },
E {
E 'args': [
E {
E 'defaultValue': 'false',
E 'description': None,
E 'name': 'includeDeprecated',
E 'type': {
E 'kind': 'SCALAR',
E 'name': 'Boolean',
E 'ofType': None,
E },
E },
E ],
E 'deprecationReason': None,
E 'description': None,
E 'isDeprecated': False,
E 'name': 'args',
E 'type': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'LIST',
E 'name': None,
E 'ofType': {
E 'kind': 'NON_NULL',
E 'name': None,
E 'ofType': {
E 'kind': 'OBJECT',
E 'name': '__InputValue',
E 'ofType': None,
E },
E },
E },
E },
E },
E ],
E 'inputFields': None,
E 'interfaces': [],
E 'kind': 'OBJECT',
E 'name': '__Directive',
E 'possibleTypes': None,
E },
E {
E 'description': 'A Directive can be adjacent to many parts of the GraphQL '
E 'language, a __DirectiveLocation describes one such possible '
E 'adjacencies.',
E 'enumValues': [
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a query operation.',
E 'isDeprecated': False,
E 'name': 'QUERY',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a mutation operation.',
E 'isDeprecated': False,
E 'name': 'MUTATION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a subscription operation.',
E 'isDeprecated': False,
E 'name': 'SUBSCRIPTION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a field.',
E 'isDeprecated': False,
E 'name': 'FIELD',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a fragment definition.',
E 'isDeprecated': False,
E 'name': 'FRAGMENT_DEFINITION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a fragment spread.',
E 'isDeprecated': False,
E 'name': 'FRAGMENT_SPREAD',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an inline fragment.',
E 'isDeprecated': False,
E 'name': 'INLINE_FRAGMENT',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a variable definition.',
E 'isDeprecated': False,
E 'name': 'VARIABLE_DEFINITION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a schema definition.',
E 'isDeprecated': False,
E 'name': 'SCHEMA',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a scalar definition.',
E 'isDeprecated': False,
E 'name': 'SCALAR',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an object type definition.',
E 'isDeprecated': False,
E 'name': 'OBJECT',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a field definition.',
E 'isDeprecated': False,
E 'name': 'FIELD_DEFINITION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an argument definition.',
E 'isDeprecated': False,
E 'name': 'ARGUMENT_DEFINITION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an interface definition.',
E 'isDeprecated': False,
E 'name': 'INTERFACE',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to a union definition.',
E 'isDeprecated': False,
E 'name': 'UNION',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an enum definition.',
E 'isDeprecated': False,
E 'name': 'ENUM',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an enum value definition.',
E 'isDeprecated': False,
E 'name': 'ENUM_VALUE',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an input object type definition.',
E 'isDeprecated': False,
E 'name': 'INPUT_OBJECT',
E },
E {
E 'deprecationReason': None,
E 'description': 'Location adjacent to an input object field '
E 'definition.',
E 'isDeprecated': False,
E 'name': 'INPUT_FIELD_DEFINITION',
E },
E ],
E 'fields': None,
E 'inputFields': None,
E 'interfaces': None,
E 'kind': 'ENUM',
E 'name': '__DirectiveLocation',
E 'possibleTypes': None,
E },
E ],
E },
E }
tests/test_async_client_validation.py:208: AssertionError
---------------------------- Captured stdout setup -----------------------------
Starting server
Server started on port 49116
---------------------------- Captured stderr setup -----------------------------
connect: starting
backend subprotocol returned: 'graphql-ws'
>>> {"type": "connection_init", "payload": {}}
<<< {"type":"connection_ack"}
connect: done
------------------------------ Captured log setup ------------------------------
DEBUG gql.transport.websockets:websockets_base.py:460 connect: starting
DEBUG gql.transport.websockets:websockets.py:495 backend subprotocol returned: 'graphql-ws'
INFO gql.transport.websockets:websockets_base.py:218 >>> {"type": "connection_init", "payload": {}}
INFO gql.transport.websockets:websockets_base.py:240 <<< {"type":"connection_ack"}
DEBUG gql.transport.websockets:websockets_base.py:535 connect: done
----------------------------- Captured stderr call -----------------------------
Creating
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added fields: (,) in
Added fields: (, , ) in
Creating >)
Creating
Added fields: (,) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added arguments {} in field )
Added fields: (,) in
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added arguments {'includeDeprecated': True} in field )
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added arguments {} in field )
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added fields: (, , , ) in
Creating >)
Creating
Added arguments {'includeDeprecated': True} in field )
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Creating >)
Creating
Added arguments {} in field )
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Added fields: (, , , , ) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (,) in
Creating >)
Creating
Added fields: (, ) in
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
Creating >)
Creating
Creating >)
Creating
Creating >)
Creating
Added fields: (, ) in
Added fields: (,) in
MidnightBSD Magus