schemathesis 3.25.6__tar.gz → 4.0.0a1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- schemathesis-4.0.0a1/.github/workflows/build.yml +123 -0
- schemathesis-4.0.0a1/.github/workflows/codeql-analysis.yml +66 -0
- schemathesis-4.0.0a1/.github/workflows/codspeed.yml +29 -0
- schemathesis-4.0.0a1/.github/workflows/commit.yml +19 -0
- schemathesis-4.0.0a1/.github/workflows/example-build.yml +40 -0
- schemathesis-4.0.0a1/.github/workflows/master_update.yml +53 -0
- schemathesis-4.0.0a1/.github/workflows/release.yml +87 -0
- schemathesis-4.0.0a1/.github/workflows/test-corpus.yml +43 -0
- schemathesis-4.0.0a1/.github/workflows/test-hypothesis.yml +24 -0
- schemathesis-4.0.0a1/.github/workflows/update-pre-commit.yml +32 -0
- schemathesis-4.0.0a1/.pre-commit-config.yaml +54 -0
- schemathesis-4.0.0a1/ARCHITECTURE.md +121 -0
- schemathesis-4.0.0a1/CODE_OF_CONDUCT.md +76 -0
- schemathesis-4.0.0a1/CONTRIBUTING.rst +123 -0
- schemathesis-4.0.0a1/PKG-INFO +297 -0
- schemathesis-4.0.0a1/README.md +201 -0
- schemathesis-4.0.0a1/SECURITY.md +28 -0
- schemathesis-4.0.0a1/benches/cli.py +19 -0
- schemathesis-4.0.0a1/benches/coverage_phase.py +133 -0
- schemathesis-4.0.0a1/benches/references.py +49 -0
- schemathesis-4.0.0a1/benches/schema.py +248 -0
- schemathesis-4.0.0a1/changelog.py +141 -0
- schemathesis-4.0.0a1/corpus/data/graphql.tar.gz +0 -0
- schemathesis-4.0.0a1/corpus/data/openapi-3.0.tar.gz +0 -0
- schemathesis-4.0.0a1/corpus/data/openapi-3.1.tar.gz +0 -0
- schemathesis-4.0.0a1/corpus/data/swagger-2.0.tar.gz +0 -0
- schemathesis-4.0.0a1/corpus/tools.py +160 -0
- schemathesis-4.0.0a1/docs/additional-content.rst +102 -0
- schemathesis-4.0.0a1/docs/api.rst +146 -0
- schemathesis-4.0.0a1/docs/auth.rst +503 -0
- schemathesis-4.0.0a1/docs/changelog.rst +4551 -0
- schemathesis-4.0.0a1/docs/cli.rst +781 -0
- schemathesis-4.0.0a1/docs/contrib.rst +51 -0
- schemathesis-4.0.0a1/docs/data-generation.rst +391 -0
- schemathesis-4.0.0a1/docs/experimental.rst +214 -0
- schemathesis-4.0.0a1/docs/extending.rst +734 -0
- schemathesis-4.0.0a1/docs/faq.rst +318 -0
- schemathesis-4.0.0a1/docs/getting-started.rst +93 -0
- schemathesis-4.0.0a1/docs/graphql.rst +91 -0
- schemathesis-4.0.0a1/docs/index.rst +101 -0
- schemathesis-4.0.0a1/docs/python.rst +743 -0
- schemathesis-4.0.0a1/docs/recipes.rst +122 -0
- schemathesis-4.0.0a1/docs/sanitizing.rst +50 -0
- schemathesis-4.0.0a1/docs/service.rst +75 -0
- schemathesis-4.0.0a1/docs/stateful.rst +617 -0
- schemathesis-4.0.0a1/example/README.md +129 -0
- schemathesis-4.0.0a1/example/app.py +216 -0
- schemathesis-4.0.0a1/example/requirements-app.txt +32 -0
- schemathesis-4.0.0a1/example/requirements-pytest.txt +115 -0
- schemathesis-4.0.0a1/example/tests/extensions.py +34 -0
- schemathesis-4.0.0a1/example/tests/test_app.py +19 -0
- schemathesis-4.0.0a1/img/demo.gif +0 -0
- schemathesis-4.0.0a1/mypy.ini +19 -0
- schemathesis-4.0.0a1/pyproject.toml +172 -0
- schemathesis-4.0.0a1/src/schemathesis/__init__.py +44 -0
- schemathesis-4.0.0a1/src/schemathesis/auths.py +455 -0
- schemathesis-4.0.0a1/src/schemathesis/checks.py +148 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/__init__.py +17 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/__main__.py +4 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/__init__.py +37 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/__init__.py +662 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/checks.py +80 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/context.py +117 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/events.py +35 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/executor.py +138 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/filters.py +194 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/handlers/__init__.py +46 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/handlers/base.py +18 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/handlers/cassettes.py +494 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/handlers/junitxml.py +54 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/handlers/output.py +746 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/hypothesis.py +105 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/loaders.py +129 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/commands/run/validation.py +342 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/constants.py +8 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/core.py +17 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/ext/fs.py +14 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/ext/groups.py +55 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/ext/options.py +96 -0
- schemathesis-4.0.0a1/src/schemathesis/cli/hooks.py +36 -0
- schemathesis-4.0.0a1/src/schemathesis/contrib/__init__.py +9 -0
- schemathesis-4.0.0a1/src/schemathesis/contrib/openapi/__init__.py +9 -0
- schemathesis-4.0.0a1/src/schemathesis/contrib/openapi/fill_missing_examples.py +20 -0
- schemathesis-4.0.0a1/src/schemathesis/core/__init__.py +58 -0
- schemathesis-4.0.0a1/src/schemathesis/core/compat.py +25 -0
- schemathesis-4.0.0a1/src/schemathesis/core/control.py +2 -0
- schemathesis-4.0.0a1/src/schemathesis/core/curl.py +58 -0
- schemathesis-4.0.0a1/src/schemathesis/core/deserialization.py +65 -0
- schemathesis-4.0.0a1/src/schemathesis/core/errors.py +370 -0
- schemathesis-4.0.0a1/src/schemathesis/core/failures.py +285 -0
- schemathesis-4.0.0a1/src/schemathesis/core/fs.py +19 -0
- schemathesis-4.0.0a1/src/schemathesis/core/lazy_import.py +15 -0
- schemathesis-4.0.0a1/src/schemathesis/core/loaders.py +104 -0
- schemathesis-4.0.0a1/src/schemathesis/core/marks.py +66 -0
- schemathesis-4.0.0a1/src/schemathesis/core/media_types.py +69 -0
- schemathesis-4.0.0a1/src/schemathesis/core/output/__init__.py +69 -0
- schemathesis-4.0.0a1/src/schemathesis/core/output/sanitization.py +197 -0
- schemathesis-4.0.0a1/src/schemathesis/core/rate_limit.py +60 -0
- schemathesis-4.0.0a1/src/schemathesis/core/registries.py +31 -0
- schemathesis-4.0.0a1/src/schemathesis/core/result.py +27 -0
- schemathesis-4.0.0a1/src/schemathesis/core/transforms.py +113 -0
- schemathesis-4.0.0a1/src/schemathesis/core/transport.py +108 -0
- schemathesis-4.0.0a1/src/schemathesis/core/validation.py +38 -0
- schemathesis-4.0.0a1/src/schemathesis/core/version.py +7 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/__init__.py +30 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/config.py +59 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/context.py +119 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/control.py +36 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/core.py +157 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/errors.py +394 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/events.py +337 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/__init__.py +66 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/probes.py +148 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/stateful/__init__.py +65 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/stateful/_executor.py +326 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/stateful/context.py +85 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/unit/__init__.py +174 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/unit/_executor.py +321 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/phases/unit/_pool.py +74 -0
- schemathesis-4.0.0a1/src/schemathesis/engine/recorder.py +241 -0
- schemathesis-4.0.0a1/src/schemathesis/errors.py +31 -0
- schemathesis-4.0.0a1/src/schemathesis/experimental/__init__.py +78 -0
- schemathesis-4.0.0a1/src/schemathesis/filters.py +384 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/__init__.py +52 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/case.py +190 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/coverage.py +931 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/hypothesis/__init__.py +30 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/hypothesis/builder.py +585 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/hypothesis/examples.py +50 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/hypothesis/given.py +66 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/hypothesis/reporting.py +14 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/hypothesis/strategies.py +16 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/meta.py +115 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/modes.py +28 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/overrides.py +96 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/stateful/__init__.py +20 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/stateful/state_machine.py +285 -0
- schemathesis-4.0.0a1/src/schemathesis/generation/targets.py +69 -0
- schemathesis-4.0.0a1/src/schemathesis/graphql/__init__.py +15 -0
- schemathesis-4.0.0a1/src/schemathesis/graphql/checks.py +115 -0
- schemathesis-4.0.0a1/src/schemathesis/graphql/loaders.py +131 -0
- schemathesis-4.0.0a1/src/schemathesis/hooks.py +396 -0
- schemathesis-4.0.0a1/src/schemathesis/openapi/__init__.py +13 -0
- schemathesis-4.0.0a1/src/schemathesis/openapi/checks.py +412 -0
- schemathesis-4.0.0a1/src/schemathesis/openapi/generation/filters.py +63 -0
- schemathesis-4.0.0a1/src/schemathesis/openapi/loaders.py +178 -0
- schemathesis-4.0.0a1/src/schemathesis/pytest/__init__.py +5 -0
- schemathesis-4.0.0a1/src/schemathesis/pytest/control_flow.py +7 -0
- schemathesis-4.0.0a1/src/schemathesis/pytest/lazy.py +273 -0
- schemathesis-4.0.0a1/src/schemathesis/pytest/loaders.py +12 -0
- schemathesis-4.0.0a1/src/schemathesis/pytest/plugin.py +299 -0
- schemathesis-4.0.0a1/src/schemathesis/python/asgi.py +12 -0
- schemathesis-4.0.0a1/src/schemathesis/python/wsgi.py +12 -0
- schemathesis-4.0.0a1/src/schemathesis/schemas.py +770 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/graphql/_cache.py +25 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/graphql/nodes.py +27 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/graphql/scalars.py +52 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/graphql/schemas.py +419 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/graphql/validation.py +33 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/__init__.py +9 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/_cache.py +122 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/_hypothesis.py +500 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/checks.py +627 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/converter.py +103 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/definitions.py +1922 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/examples.py +446 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/expressions/__init__.py +55 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/expressions/context.py +14 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/expressions/extractors.py +23 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/expressions/lexer.py +134 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/expressions/nodes.py +151 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/expressions/parser.py +115 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/formats.py +82 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/links.py +206 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/media_types.py +32 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/negative/__init__.py +115 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/negative/mutations.py +439 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/parameters.py +402 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/patterns.py +137 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/references.py +235 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/schemas.py +1203 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/security.py +154 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/serialization.py +364 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/stateful/__init__.py +220 -0
- schemathesis-4.0.0a1/src/schemathesis/specs/openapi/utils.py +27 -0
- schemathesis-4.0.0a1/src/schemathesis/transport/__init__.py +104 -0
- schemathesis-4.0.0a1/src/schemathesis/transport/asgi.py +26 -0
- schemathesis-4.0.0a1/src/schemathesis/transport/prepare.py +99 -0
- schemathesis-4.0.0a1/src/schemathesis/transport/requests.py +221 -0
- schemathesis-4.0.0a1/src/schemathesis/transport/serialization.py +297 -0
- schemathesis-4.0.0a1/src/schemathesis/transport/wsgi.py +165 -0
- schemathesis-4.0.0a1/test/__snapshots__/test_dereferencing/test_global_security_schemes_with_custom_scope.raw +35 -0
- schemathesis-4.0.0a1/test/__snapshots__/test_dereferencing/test_missing_file_in_resolution.raw +51 -0
- schemathesis-4.0.0a1/test/__snapshots__/test_hypothesis/test_health_check_failed_large_base_example.raw +56 -0
- schemathesis-4.0.0a1/test/__snapshots__/test_recoverable_errors/test_in_cli[1].raw +64 -0
- schemathesis-4.0.0a1/test/__snapshots__/test_recoverable_errors/test_in_cli[2].raw +63 -0
- schemathesis-4.0.0a1/test/__snapshots__/test_serialization/test_in_cli[Open API 3.0].raw +49 -0
- schemathesis-4.0.0a1/test/_pytest/test_markers.py +12 -0
- schemathesis-4.0.0a1/test/apps/__init__.py +63 -0
- schemathesis-4.0.0a1/test/apps/_graphql/__init__.py +2 -0
- schemathesis-4.0.0a1/test/apps/cp1252_app.py +36 -0
- schemathesis-4.0.0a1/test/apps/hooks.py +6 -0
- schemathesis-4.0.0a1/test/apps/openapi/__init__.py +4 -0
- schemathesis-4.0.0a1/test/apps/openapi/_aiohttp/__init__.py +96 -0
- schemathesis-4.0.0a1/test/apps/openapi/_aiohttp/handlers.py +295 -0
- schemathesis-4.0.0a1/test/apps/openapi/_fastapi/__init__.py +76 -0
- schemathesis-4.0.0a1/test/apps/openapi/_flask/__init__.py +287 -0
- schemathesis-4.0.0a1/test/apps/openapi/schema.py +879 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_conditional[Open API 3.0].raw +36 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_custom_auth[Open API 3.0].raw +37 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args0-Basic dXNlcjpwYXNz].raw +37 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args1-Bearer EXPLICIT].raw +37 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_multiple_auth_mechanisms_with_explicit_auth.raw +35 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_multiple_threads[Open API 3.0].raw +35 -0
- schemathesis-4.0.0a1/test/auth/__snapshots__/test_cli/test_requests_auth[Open API 3.0].raw +38 -0
- schemathesis-4.0.0a1/test/auth/test_cli.py +229 -0
- schemathesis-4.0.0a1/test/auth/test_provider.py +215 -0
- schemathesis-4.0.0a1/test/auth/test_pytest.py +252 -0
- schemathesis-4.0.0a1/test/cli/__init__.py +0 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_cassettes/test_forbid_preserve_exact_bytes_without_cassette_path[Open API 3.0].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_cassettes/test_run_subprocess[Open API 2.0].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_cassettes/test_run_subprocess[Open API 3.0].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args0].raw +42 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args10].raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args1].raw +42 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args2].raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args3].raw +42 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args4].raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args5].raw +42 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args6].raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args7].raw +42 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args8].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args9].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_checks/test_positive_data_acceptance_with_env_vars.raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-Authorization].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-authorization].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0---auth='testwrong'].raw +67 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +67 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0---auth='testwrong'].raw +67 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +67 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_binary_payload.raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_certificate_only_key.raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_chunked_encoding_error[Open API 3.0].raw +49 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_cli_run_changed_base_url[Open API 3.0].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 2.0-1].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 2.0-2].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 3.0-1].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 3.0-2].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_commands_help.raw +13 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_complex_urlencoded_example.raw +46 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-1].raw +54 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-2].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-1].raw +54 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-2].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-1].raw +48 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-2].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-1].raw +48 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-2].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_custom_cli_option[Open API 3.0].raw +39 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_dont_skip_when_generation_is_possible[Open API 3.0].raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_duplicated_filters[Open API 3.0].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_empty_schema_file.raw +11 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_exit_first[Open API 3.0].raw +51 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_explicit_example_failure_output.raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_explicit_headers_in_output_on_errors[Open API 3.0].raw +63 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_explicit_query_token_sanitization[Open API 3.0].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_filter_by[Open API 3.0---exclude-by=x-property != 42].raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_filter_by[Open API 3.0---include-by=x-property == 42].raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_force_color_nocolor[Open API 3.0].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args0].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args1].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args0].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args1].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_group_errors.raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_hooks_with_inner_import_error.raw +13 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_hypothesis_database_with_derandomize[Open API 3.0].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_invalid_filter[Open API 3.0].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_invalid_operation[Open API 2.0-1].raw +63 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_invalid_operation[Open API 3.0-1].raw +65 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.0.2].raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.1.0].raw +61 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_invalid_yaml.raw +12 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_keyboard_interrupt[Open API 2.0-1].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_keyboard_interrupt[Open API 3.0-1].raw +38 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_long_operation_output.raw +36 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_long_payload.raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[Open API 3.0].raw +54 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-1].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-2].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-1].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-2].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_multiple_errors.raw +54 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 2.0].raw +58 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 3.0].raw +58 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_multiple_failures_in_single_check.raw +70 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 2.0].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 3.0].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_nested_binary_in_yaml.raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_no_schema_in_media_type[Open API 3.0].raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_no_useless_traceback.raw +50 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_null_byte_in_header_probe.raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_proxy_error[Open API 3.0].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_read_content_timeout[Open API 3.0].raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_recursive_reference_error_message.raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 2.0].raw +54 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 3.0].raw +54 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 2.0].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 3.0].raw +52 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_remote_disconnected_error[Open API 3.0].raw +13 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_reserved_characters_in_operation_name.raw +35 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_response_payload_encoding[Open API 2.0].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_response_payload_encoding[Open API 3.0].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[Open API 2.0].raw +66 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[Open API 3.0].raw +66 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args0].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args10].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args11].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args12].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args13].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args14].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args15].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args16].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args17].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args18].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args19].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args1].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args20].raw +203 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args21].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args22].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args23].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args24].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args25].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args26].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args27].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args28].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args29].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args2].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args30].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args31].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args32].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args33].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args3].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args4].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args5].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args6].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args7].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args8].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_run_output[args9].raw +7 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_schema_not_available[1].raw +13 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_schema_not_available[2].raw +13 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_skip_not_negated_tests[Open API 3.0].raw +37 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_skipped_on_no_explicit_examples.raw +37 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 2.0-1].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 2.0-2].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 3.0-1].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 3.0-2].raw +55 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unknown_schema_error[Open API 3.0].raw +58 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unresolvable_reference_with_disabled_validation.raw +64 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 2.0-1].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 2.0-2].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 3.0-1].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 3.0-2].raw +53 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_unsupported_regex.raw +51 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_useful_traceback[Open API 3.0].raw +60 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_wait_for_schema_not_enough.raw +11 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_warning_on_all_not_found.raw +36 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_commands/test_warning_on_unauthorized.raw +47 -0
- schemathesis-4.0.0a1/test/cli/__snapshots__/test_hooks/test_after_call[Open API 3.0].raw +74 -0
- schemathesis-4.0.0a1/test/cli/test_cassettes.py +322 -0
- schemathesis-4.0.0a1/test/cli/test_checks.py +108 -0
- schemathesis-4.0.0a1/test/cli/test_commands.py +1658 -0
- schemathesis-4.0.0a1/test/cli/test_crashes.py +163 -0
- schemathesis-4.0.0a1/test/cli/test_hooks.py +39 -0
- schemathesis-4.0.0a1/test/cli/test_junitxml.py +212 -0
- schemathesis-4.0.0a1/test/cli/test_options.py +22 -0
- schemathesis-4.0.0a1/test/cli/test_targeted.py +74 -0
- schemathesis-4.0.0a1/test/cli/test_validation.py +128 -0
- schemathesis-4.0.0a1/test/code_samples/test_curl.py +117 -0
- schemathesis-4.0.0a1/test/conftest.py +1038 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_cli[None].raw +35 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema0].raw +35 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema1].raw +35 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema2].raw +35 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_cli_failure.raw +52 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[1].raw +35 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[2].raw +35 -0
- schemathesis-4.0.0a1/test/contrib/__snapshots__/test_unique_data/test_graphql_url.raw +38 -0
- schemathesis-4.0.0a1/test/contrib/openapi/__snapshots__/test_fill_missing_examples/test_fills_missing_examples.raw +35 -0
- schemathesis-4.0.0a1/test/contrib/test_unique_data.py +190 -0
- schemathesis-4.0.0a1/test/core/__init__.py +0 -0
- schemathesis-4.0.0a1/test/core/test_deserialization.py +17 -0
- schemathesis-4.0.0a1/test/core/test_media_types.py +42 -0
- schemathesis-4.0.0a1/test/coverage/__init__.py +0 -0
- schemathesis-4.0.0a1/test/coverage/__snapshots__/test_phase/test_unspecified_http_methods.raw +127 -0
- schemathesis-4.0.0a1/test/coverage/test_combinations.py +1093 -0
- schemathesis-4.0.0a1/test/coverage/test_examples.py +150 -0
- schemathesis-4.0.0a1/test/coverage/test_phase.py +1318 -0
- schemathesis-4.0.0a1/test/data/relative_files/components/parameters.yaml +35 -0
- schemathesis-4.0.0a1/test/data/relative_files/components/responses.yaml +21 -0
- schemathesis-4.0.0a1/test/data/relative_files/components/schemas.yaml +224 -0
- schemathesis-4.0.0a1/test/data/relative_files/main.yaml +14 -0
- schemathesis-4.0.0a1/test/data/relative_files/paths/user-account.yaml +208 -0
- schemathesis-4.0.0a1/test/engine/__init__.py +0 -0
- schemathesis-4.0.0a1/test/engine/test_checks.py +911 -0
- schemathesis-4.0.0a1/test/engine/test_engine.py +1241 -0
- schemathesis-4.0.0a1/test/engine/test_errors.py +15 -0
- schemathesis-4.0.0a1/test/engine/test_probes.py +95 -0
- schemathesis-4.0.0a1/test/engine/test_simulation.py +58 -0
- schemathesis-4.0.0a1/test/experimental/test_experiments.py +64 -0
- schemathesis-4.0.0a1/test/experimental/test_openapi_3_1.py +59 -0
- schemathesis-4.0.0a1/test/filters/__init__.py +0 -0
- schemathesis-4.0.0a1/test/filters/test_expressions.py +45 -0
- schemathesis-4.0.0a1/test/filters/test_matching.py +247 -0
- schemathesis-4.0.0a1/test/fixtures/__init__.py +0 -0
- schemathesis-4.0.0a1/test/fixtures/app_runner.py +56 -0
- schemathesis-4.0.0a1/test/fixtures/ctx.py +82 -0
- schemathesis-4.0.0a1/test/hooks/test_filters.py +104 -0
- schemathesis-4.0.0a1/test/hooks/test_hooks.py +538 -0
- schemathesis-4.0.0a1/test/loaders/conftest.py +17 -0
- schemathesis-4.0.0a1/test/loaders/test_common.py +62 -0
- schemathesis-4.0.0a1/test/loaders/test_graphql.py +102 -0
- schemathesis-4.0.0a1/test/loaders/test_openapi.py +147 -0
- schemathesis-4.0.0a1/test/openapi/__init__.py +0 -0
- schemathesis-4.0.0a1/test/openapi/test_filters.py +36 -0
- schemathesis-4.0.0a1/test/specs/graphql/__snapshots__/test_basic/test_disallow_null.raw +54 -0
- schemathesis-4.0.0a1/test/specs/graphql/__snapshots__/test_basic/test_filter_operations[--exclude-name=Query.getBooks].raw +37 -0
- schemathesis-4.0.0a1/test/specs/graphql/__snapshots__/test_basic/test_filter_operations[--include-name=Query.getBooks].raw +35 -0
- schemathesis-4.0.0a1/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n 123(created Int!) Int!n}-.whatever].raw +16 -0
- schemathesis-4.0.0a1/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n func(created Unknown!) Int!n}-.gql].raw +11 -0
- schemathesis-4.0.0a1/test/specs/graphql/__snapshots__/test_custom_scalars/test_custom_scalar_in_cli.raw +50 -0
- schemathesis-4.0.0a1/test/specs/graphql/test_basic.py +321 -0
- schemathesis-4.0.0a1/test/specs/graphql/test_custom_scalars.py +90 -0
- schemathesis-4.0.0a1/test/specs/graphql/test_pytest.py +58 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_checks/test_method_not_allowed[basic-post].raw +62 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_checks/test_method_not_allowed[success-get].raw +42 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[basic-Authorization-406].raw +42 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[success-Authorization-200].raw +62 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[success-X-API-Key-1-200].raw +42 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[success-X-API-Key-1-406].raw +62 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_examples/test_network_error_with_flaky_generation.raw +47 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_examples/test_parameter_override.raw +35 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_ignored_auth/test_explicit_auth_cli[Open API 3.0].raw +35 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_ignored_auth/test_stateful_in_cli_no_error[Open API 3.0-False].raw +38 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_ignored_auth/test_stateful_in_cli_no_error[Open API 3.0-True].raw +57 -0
- schemathesis-4.0.0a1/test/specs/openapi/__snapshots__/test_media_types/test_explicit_example_with_custom_media_type.raw +48 -0
- schemathesis-4.0.0a1/test/specs/openapi/blank.pdf +154 -0
- schemathesis-4.0.0a1/test/specs/openapi/conftest.py +159 -0
- schemathesis-4.0.0a1/test/specs/openapi/parameters/test_forms.py +137 -0
- schemathesis-4.0.0a1/test/specs/openapi/parameters/test_non_payload.py +18 -0
- schemathesis-4.0.0a1/test/specs/openapi/parameters/test_simple_payloads.py +76 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__init__.py +0 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_default[Open API 3.0-1].raw +60 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_default[Open API 3.0-2].raw +58 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_filtered_out[Open API 3.0].raw +35 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_generation_config[Open API 3.0].raw +38 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_keyboard_interrupt[Open API 3.0].raw +39 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_max_failures[Open API 3.0].raw +74 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_proxy_error[Open API 3.0].raw +49 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_stateful_only[Open API 3.0].raw +56 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/__snapshots__/test_cli/test_stateful_only_with_error[Open API 3.0].raw +49 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/conftest.py +407 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/test_cli.py +188 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/test_engine.py +615 -0
- schemathesis-4.0.0a1/test/specs/openapi/stateful/test_stateful.py +263 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_checks.py +319 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_examples.py +1648 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_expressions.py +236 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_hypothesis.py +484 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_ignored_auth.py +477 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_links.py +39 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_media_types.py +80 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_negative.py +398 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_parameters.py +55 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_patterns.py +136 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_randomized.py +35 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_schemas.py +79 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_security.py +109 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_serializing.py +586 -0
- schemathesis-4.0.0a1/test/specs/openapi/test_utils.py +16 -0
- schemathesis-4.0.0a1/test/test_app.py +32 -0
- schemathesis-4.0.0a1/test/test_asgi.py +188 -0
- schemathesis-4.0.0a1/test/test_async.py +111 -0
- schemathesis-4.0.0a1/test/test_common_parameters.py +164 -0
- schemathesis-4.0.0a1/test/test_converter.py +112 -0
- schemathesis-4.0.0a1/test/test_dereferencing.py +852 -0
- schemathesis-4.0.0a1/test/test_direct_access.py +70 -0
- schemathesis-4.0.0a1/test/test_examples.py +42 -0
- schemathesis-4.0.0a1/test/test_filters.py +148 -0
- schemathesis-4.0.0a1/test/test_hypothesis.py +507 -0
- schemathesis-4.0.0a1/test/test_lazy.py +566 -0
- schemathesis-4.0.0a1/test/test_models.py +629 -0
- schemathesis-4.0.0a1/test/test_output.py +76 -0
- schemathesis-4.0.0a1/test/test_package.py +12 -0
- schemathesis-4.0.0a1/test/test_parameters.py +595 -0
- schemathesis-4.0.0a1/test/test_parametrization.py +766 -0
- schemathesis-4.0.0a1/test/test_petstore.py +302 -0
- schemathesis-4.0.0a1/test/test_pytest.py +887 -0
- schemathesis-4.0.0a1/test/test_rate_limit.py +58 -0
- schemathesis-4.0.0a1/test/test_recoverable_errors.py +115 -0
- schemathesis-4.0.0a1/test/test_required.py +107 -0
- schemathesis-4.0.0a1/test/test_sanitizing_output.py +205 -0
- schemathesis-4.0.0a1/test/test_schemas.py +274 -0
- schemathesis-4.0.0a1/test/test_serialization.py +534 -0
- schemathesis-4.0.0a1/test/test_stateful.py +259 -0
- schemathesis-4.0.0a1/test/test_unittest.py +46 -0
- schemathesis-4.0.0a1/test/test_wsgi.py +129 -0
- schemathesis-4.0.0a1/test/utils.py +213 -0
- schemathesis-4.0.0a1/test-corpus/conftest.py +7 -0
- schemathesis-4.0.0a1/test-corpus/test_corpus.py +245 -0
- schemathesis-4.0.0a1/tox.ini +40 -0
- schemathesis-4.0.0a1/typos.toml +2 -0
- schemathesis-3.25.6/.github/workflows/build.yml +0 -88
- schemathesis-3.25.6/.github/workflows/codeql-analysis.yml +0 -66
- schemathesis-3.25.6/.github/workflows/codspeed.yml +0 -27
- schemathesis-3.25.6/.github/workflows/commit.yml +0 -19
- schemathesis-3.25.6/.github/workflows/example-build.yml +0 -40
- schemathesis-3.25.6/.github/workflows/master_update.yml +0 -53
- schemathesis-3.25.6/.github/workflows/release.yml +0 -87
- schemathesis-3.25.6/.github/workflows/test-corpus.yml +0 -28
- schemathesis-3.25.6/.github/workflows/test-hypothesis.yml +0 -23
- schemathesis-3.25.6/.github/workflows/update-corpus.yml +0 -29
- schemathesis-3.25.6/.github/workflows/update-pre-commit.yml +0 -30
- schemathesis-3.25.6/.gitmodules +0 -3
- schemathesis-3.25.6/.pre-commit-config.yaml +0 -59
- schemathesis-3.25.6/.relint.yml +0 -15
- schemathesis-3.25.6/CODE_OF_CONDUCT.md +0 -76
- schemathesis-3.25.6/CONTRIBUTING.rst +0 -123
- schemathesis-3.25.6/PKG-INFO +0 -356
- schemathesis-3.25.6/README.md +0 -278
- schemathesis-3.25.6/benches/cli.py +0 -18
- schemathesis-3.25.6/benches/references.py +0 -43
- schemathesis-3.25.6/changelog.py +0 -139
- schemathesis-3.25.6/docs/additional-content.rst +0 -69
- schemathesis-3.25.6/docs/api.rst +0 -150
- schemathesis-3.25.6/docs/auth.rst +0 -478
- schemathesis-3.25.6/docs/changelog.rst +0 -3599
- schemathesis-3.25.6/docs/cli.rst +0 -615
- schemathesis-3.25.6/docs/compatibility.rst +0 -75
- schemathesis-3.25.6/docs/contrib.rst +0 -84
- schemathesis-3.25.6/docs/data-generation.rst +0 -272
- schemathesis-3.25.6/docs/experimental.rst +0 -130
- schemathesis-3.25.6/docs/extending.rst +0 -684
- schemathesis-3.25.6/docs/faq.rst +0 -327
- schemathesis-3.25.6/docs/getting-started.rst +0 -93
- schemathesis-3.25.6/docs/graphql.rst +0 -72
- schemathesis-3.25.6/docs/index.rst +0 -76
- schemathesis-3.25.6/docs/python.rst +0 -687
- schemathesis-3.25.6/docs/recipes.rst +0 -81
- schemathesis-3.25.6/docs/sanitizing.rst +0 -45
- schemathesis-3.25.6/docs/service.rst +0 -46
- schemathesis-3.25.6/docs/stateful.rst +0 -511
- schemathesis-3.25.6/example/README.md +0 -129
- schemathesis-3.25.6/example/app.py +0 -216
- schemathesis-3.25.6/example/requirements-app.txt +0 -32
- schemathesis-3.25.6/example/requirements-pytest.txt +0 -120
- schemathesis-3.25.6/example/tests/extensions.py +0 -34
- schemathesis-3.25.6/example/tests/test_app.py +0 -19
- schemathesis-3.25.6/img/demo.gif +0 -0
- schemathesis-3.25.6/mypy.ini +0 -19
- schemathesis-3.25.6/pyproject.toml +0 -164
- schemathesis-3.25.6/src/schemathesis/__init__.py +0 -82
- schemathesis-3.25.6/src/schemathesis/_compat.py +0 -74
- schemathesis-3.25.6/src/schemathesis/_dependency_versions.py +0 -17
- schemathesis-3.25.6/src/schemathesis/_hypothesis.py +0 -246
- schemathesis-3.25.6/src/schemathesis/_lazy_import.py +0 -14
- schemathesis-3.25.6/src/schemathesis/_override.py +0 -49
- schemathesis-3.25.6/src/schemathesis/_xml.py +0 -182
- schemathesis-3.25.6/src/schemathesis/auths.py +0 -435
- schemathesis-3.25.6/src/schemathesis/checks.py +0 -68
- schemathesis-3.25.6/src/schemathesis/cli/__init__.py +0 -1766
- schemathesis-3.25.6/src/schemathesis/cli/callbacks.py +0 -413
- schemathesis-3.25.6/src/schemathesis/cli/cassettes.py +0 -375
- schemathesis-3.25.6/src/schemathesis/cli/constants.py +0 -55
- schemathesis-3.25.6/src/schemathesis/cli/context.py +0 -58
- schemathesis-3.25.6/src/schemathesis/cli/debug.py +0 -26
- schemathesis-3.25.6/src/schemathesis/cli/handlers.py +0 -16
- schemathesis-3.25.6/src/schemathesis/cli/junitxml.py +0 -43
- schemathesis-3.25.6/src/schemathesis/cli/options.py +0 -67
- schemathesis-3.25.6/src/schemathesis/cli/output/__init__.py +0 -1
- schemathesis-3.25.6/src/schemathesis/cli/output/default.py +0 -790
- schemathesis-3.25.6/src/schemathesis/cli/output/short.py +0 -44
- schemathesis-3.25.6/src/schemathesis/cli/sanitization.py +0 -20
- schemathesis-3.25.6/src/schemathesis/code_samples.py +0 -149
- schemathesis-3.25.6/src/schemathesis/constants.py +0 -55
- schemathesis-3.25.6/src/schemathesis/contrib/__init__.py +0 -11
- schemathesis-3.25.6/src/schemathesis/contrib/openapi/__init__.py +0 -11
- schemathesis-3.25.6/src/schemathesis/contrib/openapi/fill_missing_examples.py +0 -22
- schemathesis-3.25.6/src/schemathesis/contrib/openapi/formats/__init__.py +0 -9
- schemathesis-3.25.6/src/schemathesis/contrib/openapi/formats/uuid.py +0 -15
- schemathesis-3.25.6/src/schemathesis/contrib/unique_data.py +0 -41
- schemathesis-3.25.6/src/schemathesis/exceptions.py +0 -560
- schemathesis-3.25.6/src/schemathesis/experimental/__init__.py +0 -74
- schemathesis-3.25.6/src/schemathesis/extra/_aiohttp.py +0 -27
- schemathesis-3.25.6/src/schemathesis/extra/_flask.py +0 -10
- schemathesis-3.25.6/src/schemathesis/extra/_server.py +0 -17
- schemathesis-3.25.6/src/schemathesis/extra/pytest_plugin.py +0 -320
- schemathesis-3.25.6/src/schemathesis/failures.py +0 -209
- schemathesis-3.25.6/src/schemathesis/filters.py +0 -295
- schemathesis-3.25.6/src/schemathesis/fixups/__init__.py +0 -36
- schemathesis-3.25.6/src/schemathesis/fixups/fast_api.py +0 -41
- schemathesis-3.25.6/src/schemathesis/fixups/utf8_bom.py +0 -29
- schemathesis-3.25.6/src/schemathesis/generation/__init__.py +0 -68
- schemathesis-3.25.6/src/schemathesis/graphql.py +0 -4
- schemathesis-3.25.6/src/schemathesis/hooks.py +0 -364
- schemathesis-3.25.6/src/schemathesis/internal/__init__.py +0 -7
- schemathesis-3.25.6/src/schemathesis/internal/copy.py +0 -13
- schemathesis-3.25.6/src/schemathesis/internal/datetime.py +0 -5
- schemathesis-3.25.6/src/schemathesis/internal/deprecation.py +0 -34
- schemathesis-3.25.6/src/schemathesis/internal/jsonschema.py +0 -35
- schemathesis-3.25.6/src/schemathesis/internal/result.py +0 -27
- schemathesis-3.25.6/src/schemathesis/internal/transformation.py +0 -15
- schemathesis-3.25.6/src/schemathesis/internal/validation.py +0 -34
- schemathesis-3.25.6/src/schemathesis/lazy.py +0 -361
- schemathesis-3.25.6/src/schemathesis/loaders.py +0 -120
- schemathesis-3.25.6/src/schemathesis/models.py +0 -1234
- schemathesis-3.25.6/src/schemathesis/parameters.py +0 -86
- schemathesis-3.25.6/src/schemathesis/runner/__init__.py +0 -570
- schemathesis-3.25.6/src/schemathesis/runner/events.py +0 -329
- schemathesis-3.25.6/src/schemathesis/runner/impl/__init__.py +0 -3
- schemathesis-3.25.6/src/schemathesis/runner/impl/core.py +0 -1035
- schemathesis-3.25.6/src/schemathesis/runner/impl/solo.py +0 -90
- schemathesis-3.25.6/src/schemathesis/runner/impl/threadpool.py +0 -400
- schemathesis-3.25.6/src/schemathesis/runner/probes.py +0 -165
- schemathesis-3.25.6/src/schemathesis/runner/serialization.py +0 -411
- schemathesis-3.25.6/src/schemathesis/sanitization.py +0 -248
- schemathesis-3.25.6/src/schemathesis/schemas.py +0 -494
- schemathesis-3.25.6/src/schemathesis/serializers.py +0 -323
- schemathesis-3.25.6/src/schemathesis/service/__init__.py +0 -18
- schemathesis-3.25.6/src/schemathesis/service/auth.py +0 -11
- schemathesis-3.25.6/src/schemathesis/service/ci.py +0 -201
- schemathesis-3.25.6/src/schemathesis/service/client.py +0 -100
- schemathesis-3.25.6/src/schemathesis/service/constants.py +0 -38
- schemathesis-3.25.6/src/schemathesis/service/events.py +0 -57
- schemathesis-3.25.6/src/schemathesis/service/hosts.py +0 -107
- schemathesis-3.25.6/src/schemathesis/service/metadata.py +0 -46
- schemathesis-3.25.6/src/schemathesis/service/models.py +0 -49
- schemathesis-3.25.6/src/schemathesis/service/report.py +0 -255
- schemathesis-3.25.6/src/schemathesis/service/serialization.py +0 -199
- schemathesis-3.25.6/src/schemathesis/service/usage.py +0 -65
- schemathesis-3.25.6/src/schemathesis/specs/graphql/__init__.py +0 -1
- schemathesis-3.25.6/src/schemathesis/specs/graphql/loaders.py +0 -344
- schemathesis-3.25.6/src/schemathesis/specs/graphql/nodes.py +0 -26
- schemathesis-3.25.6/src/schemathesis/specs/graphql/scalars.py +0 -50
- schemathesis-3.25.6/src/schemathesis/specs/graphql/schemas.py +0 -391
- schemathesis-3.25.6/src/schemathesis/specs/graphql/validation.py +0 -40
- schemathesis-3.25.6/src/schemathesis/specs/openapi/__init__.py +0 -3
- schemathesis-3.25.6/src/schemathesis/specs/openapi/_hypothesis.py +0 -519
- schemathesis-3.25.6/src/schemathesis/specs/openapi/checks.py +0 -129
- schemathesis-3.25.6/src/schemathesis/specs/openapi/converter.py +0 -76
- schemathesis-3.25.6/src/schemathesis/specs/openapi/definitions.py +0 -1929
- schemathesis-3.25.6/src/schemathesis/specs/openapi/examples.py +0 -330
- schemathesis-3.25.6/src/schemathesis/specs/openapi/expressions/__init__.py +0 -20
- schemathesis-3.25.6/src/schemathesis/specs/openapi/expressions/context.py +0 -16
- schemathesis-3.25.6/src/schemathesis/specs/openapi/expressions/lexer.py +0 -132
- schemathesis-3.25.6/src/schemathesis/specs/openapi/expressions/nodes.py +0 -127
- schemathesis-3.25.6/src/schemathesis/specs/openapi/expressions/parser.py +0 -94
- schemathesis-3.25.6/src/schemathesis/specs/openapi/filters.py +0 -49
- schemathesis-3.25.6/src/schemathesis/specs/openapi/formats.py +0 -37
- schemathesis-3.25.6/src/schemathesis/specs/openapi/links.py +0 -306
- schemathesis-3.25.6/src/schemathesis/specs/openapi/loaders.py +0 -667
- schemathesis-3.25.6/src/schemathesis/specs/openapi/negative/__init__.py +0 -111
- schemathesis-3.25.6/src/schemathesis/specs/openapi/negative/mutations.py +0 -423
- schemathesis-3.25.6/src/schemathesis/specs/openapi/parameters.py +0 -386
- schemathesis-3.25.6/src/schemathesis/specs/openapi/references.py +0 -245
- schemathesis-3.25.6/src/schemathesis/specs/openapi/schemas.py +0 -1094
- schemathesis-3.25.6/src/schemathesis/specs/openapi/security.py +0 -136
- schemathesis-3.25.6/src/schemathesis/specs/openapi/serialization.py +0 -359
- schemathesis-3.25.6/src/schemathesis/specs/openapi/stateful/__init__.py +0 -108
- schemathesis-3.25.6/src/schemathesis/specs/openapi/stateful/links.py +0 -92
- schemathesis-3.25.6/src/schemathesis/specs/openapi/utils.py +0 -22
- schemathesis-3.25.6/src/schemathesis/specs/openapi/validation.py +0 -25
- schemathesis-3.25.6/src/schemathesis/stateful/__init__.py +0 -133
- schemathesis-3.25.6/src/schemathesis/stateful/state_machine.py +0 -298
- schemathesis-3.25.6/src/schemathesis/targets.py +0 -45
- schemathesis-3.25.6/src/schemathesis/throttling.py +0 -41
- schemathesis-3.25.6/src/schemathesis/transports/__init__.py +0 -5
- schemathesis-3.25.6/src/schemathesis/transports/auth.py +0 -15
- schemathesis-3.25.6/src/schemathesis/transports/content_types.py +0 -65
- schemathesis-3.25.6/src/schemathesis/transports/headers.py +0 -35
- schemathesis-3.25.6/src/schemathesis/transports/responses.py +0 -52
- schemathesis-3.25.6/src/schemathesis/types.py +0 -35
- schemathesis-3.25.6/src/schemathesis/utils.py +0 -169
- schemathesis-3.25.6/test/__snapshots__/test_hypothesis/test_health_check_failed_large_base_example.raw +0 -40
- schemathesis-3.25.6/test/__snapshots__/test_recoverable_errors/test_in_cli[1].raw +0 -48
- schemathesis-3.25.6/test/__snapshots__/test_recoverable_errors/test_in_cli[2].raw +0 -47
- schemathesis-3.25.6/test/__snapshots__/test_serialization/test_in_cli[Open API 3.0].raw +0 -33
- schemathesis-3.25.6/test/apps/__init__.py +0 -66
- schemathesis-3.25.6/test/apps/_graphql/__init__.py +0 -1
- schemathesis-3.25.6/test/apps/openapi/__init__.py +0 -1
- schemathesis-3.25.6/test/apps/openapi/_aiohttp/__init__.py +0 -98
- schemathesis-3.25.6/test/apps/openapi/_aiohttp/handlers.py +0 -293
- schemathesis-3.25.6/test/apps/openapi/_fastapi/__init__.py +0 -76
- schemathesis-3.25.6/test/apps/openapi/_flask/__init__.py +0 -287
- schemathesis-3.25.6/test/apps/openapi/schema.py +0 -855
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_conditional[Open API 3.0].raw +0 -25
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_custom_auth[Open API 3.0].raw +0 -26
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args0-Basic dXNlcjpwYXNz].raw +0 -26
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args1-Bearer EXPLICIT].raw +0 -26
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_multiple_auth_mechanisms_with_explicit_auth.raw +0 -23
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_multiple_threads[Open API 3.0].raw +0 -24
- schemathesis-3.25.6/test/auth/__snapshots__/test_cli/test_requests_auth[Open API 3.0].raw +0 -27
- schemathesis-3.25.6/test/auth/test_cli.py +0 -230
- schemathesis-3.25.6/test/auth/test_provider.py +0 -126
- schemathesis-3.25.6/test/auth/test_pytest.py +0 -294
- schemathesis-3.25.6/test/cli/__snapshots__/test_cassettes/test_forbid_preserve_exact_bytes_without_cassette_path[Open API 3.0].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_cassettes/test_forbid_simultaneous_use_of_deprecated_and_new_options[Open API 3.0].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_add_case_output[Open API 2.0].raw +0 -60
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_add_case_output[Open API 3.0].raw +0 -60
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-Authorization].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-authorization].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0---auth='testwrong'].raw +0 -51
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -51
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0---auth='testwrong'].raw +0 -51
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -51
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_binary_payload.raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_certificate_only_key.raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_chunked_encoding_error[Open API 3.0].raw +0 -33
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 2.0-1].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 2.0-2].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 3.0-1].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 3.0-2].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 2.0-1].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 2.0-2].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 3.0-1].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 3.0-2].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_commands_help.raw +0 -16
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_complex_urlencoded_example.raw +0 -36
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-1].raw +0 -40
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-2].raw +0 -39
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-1].raw +0 -40
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-2].raw +0 -39
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-1].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-2].raw +0 -41
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-1].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-2].raw +0 -41
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_empty_schema_file[args0].raw +0 -8
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_empty_schema_file[args1].raw +0 -8
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_explicit_example_failure_output.raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_explicit_headers_in_output_on_errors[Open API 3.0].raw +0 -53
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_force_color_nocolor[Open API 3.0].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_get_request_with_body[Open API 2.0].raw +0 -35
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_get_request_with_body[Open API 3.0].raw +0 -35
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_graphql_asgi.raw +0 -27
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args0].raw +0 -27
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args1].raw +0 -27
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args0].raw +0 -27
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args1].raw +0 -27
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_group_errors.raw +0 -33
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hooks_with_inner_import_error.raw +0 -13
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_database_with_derandomize[Open API 3.0].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 2.0-1].raw +0 -35
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 2.0-2].raw +0 -34
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 3.0-1].raw +0 -35
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 3.0-2].raw +0 -34
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 2.0-1].raw +0 -35
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 2.0-2].raw +0 -34
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 3.0-1].raw +0 -35
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 3.0-2].raw +0 -34
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[real-Open API 2.0].raw +0 -15
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[real-Open API 3.0].raw +0 -18
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[wsgi-Open API 2.0].raw +0 -15
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[wsgi-Open API 3.0].raw +0 -15
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.0.2-The provided definition doesn't match any of the expected formats or types.].raw +0 -51
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.1.0-'type' is a required property].raw +0 -51
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_invalid_yaml.raw +0 -9
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_long_payload.raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[real-Open API 3.0].raw +0 -44
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[wsgi-Open API 3.0].raw +0 -44
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-1].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-2].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-1].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-2].raw +0 -46
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie-None].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie-http127.0.0.1apiv2].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header-None].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header-http127.0.0.1apiv2].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path-None].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path-http127.0.0.1apiv2].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query-None].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query-http127.0.0.1apiv2].raw +0 -31
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_multiple_errors.raw +0 -39
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 2.0].raw +0 -48
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 3.0].raw +0 -48
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_multiple_failures_in_single_check.raw +0 -63
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 2.0].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 3.0].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_nested_binary_in_yaml.raw +0 -26
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_no_useless_traceback.raw +0 -34
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_null_byte_in_header_probe.raw +0 -24
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_openapi_links[real-Open API 2.0].raw +0 -29
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_openapi_links[real-Open API 3.0].raw +0 -29
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_openapi_links[wsgi-Open API 2.0].raw +0 -29
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_openapi_links[wsgi-Open API 3.0].raw +0 -29
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_openapi_links_disabled[Open API 2.0].raw +0 -26
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_openapi_links_disabled[Open API 3.0].raw +0 -26
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_proxy_error[Open API 3.0].raw +0 -33
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_read_content_timeout[Open API 3.0].raw +0 -40
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 2.0].raw +0 -44
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 3.0].raw +0 -44
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 2.0].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 3.0].raw +0 -42
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_remote_disconnected_error[Open API 3.0].raw +0 -10
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_payload_encoding[real-Open API 2.0].raw +0 -49
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_payload_encoding[real-Open API 3.0].raw +0 -49
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_payload_encoding[wsgi-Open API 2.0].raw +0 -49
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_payload_encoding[wsgi-Open API 3.0].raw +0 -49
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[real-Open API 2.0].raw +0 -56
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[real-Open API 3.0].raw +0 -56
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[wsgi-Open API 2.0].raw +0 -56
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[wsgi-Open API 3.0].raw +0 -56
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args0].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args10].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args11].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args12].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args13].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args14].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args15].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args16].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args17].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args18].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args19].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args1].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args20].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args21].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args22].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args23].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args24].raw +0 -202
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args25].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args26].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args27].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args28].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args29].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args2].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args30].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args31].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args32].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args33].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args34].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args35].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args36].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args3].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args4].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args5].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args6].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args7].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args8].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_run_output[args9].raw +0 -7
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_schema_not_available[1].raw +0 -10
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_schema_not_available[2].raw +0 -10
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_schema_not_available_wsgi.raw +0 -8
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 2.0-1].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 2.0-2].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 3.0-1].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 3.0-2].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 2.0-1].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 2.0-2].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 3.0-1].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 3.0-2].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unresolvable_reference_with_disabled_validation.raw +0 -48
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 2.0-1].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 2.0-2].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 3.0-1].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 3.0-2].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 2.0-1].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 2.0-2].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 3.0-1].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 3.0-2].raw +0 -38
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_unsupported_regex.raw +0 -37
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_useful_traceback[Open API 3.0].raw +0 -45
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_wait_for_schema_not_enough.raw +0 -8
- schemathesis-3.25.6/test/cli/__snapshots__/test_commands/test_yaml_parsing_of_floats[Open API 3.0].raw +0 -33
- schemathesis-3.25.6/test/cli/__snapshots__/test_hooks/test_after_call[real-Open API 3.0].raw +0 -68
- schemathesis-3.25.6/test/cli/__snapshots__/test_hooks/test_after_call[wsgi-Open API 3.0].raw +0 -68
- schemathesis-3.25.6/test/cli/conftest.py +0 -17
- schemathesis-3.25.6/test/cli/output/test_default.py +0 -314
- schemathesis-3.25.6/test/cli/test_asgi.py +0 -67
- schemathesis-3.25.6/test/cli/test_callbacks.py +0 -109
- schemathesis-3.25.6/test/cli/test_cassettes.py +0 -451
- schemathesis-3.25.6/test/cli/test_checks.py +0 -73
- schemathesis-3.25.6/test/cli/test_commands.py +0 -2375
- schemathesis-3.25.6/test/cli/test_crashes.py +0 -169
- schemathesis-3.25.6/test/cli/test_hooks.py +0 -113
- schemathesis-3.25.6/test/cli/test_junitxml.py +0 -78
- schemathesis-3.25.6/test/cli/test_options.py +0 -31
- schemathesis-3.25.6/test/cli/test_targeted.py +0 -77
- schemathesis-3.25.6/test/code_samples/__snapshots__/test_python/test_cli_output[Open API 2.0].raw +0 -42
- schemathesis-3.25.6/test/code_samples/__snapshots__/test_python/test_cli_output[Open API 3.0].raw +0 -42
- schemathesis-3.25.6/test/code_samples/conftest.py +0 -16
- schemathesis-3.25.6/test/code_samples/test_curl.py +0 -101
- schemathesis-3.25.6/test/code_samples/test_python.py +0 -133
- schemathesis-3.25.6/test/conftest.py +0 -1163
- schemathesis-3.25.6/test/contrib/__snapshots__/test_unique_data/test_cli[None].raw +0 -25
- schemathesis-3.25.6/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema0].raw +0 -25
- schemathesis-3.25.6/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema1].raw +0 -25
- schemathesis-3.25.6/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema2].raw +0 -27
- schemathesis-3.25.6/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[1].raw +0 -25
- schemathesis-3.25.6/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[2].raw +0 -25
- schemathesis-3.25.6/test/contrib/openapi/__snapshots__/test_fill_missing_examples/test_fills_missing_examples.raw +0 -24
- schemathesis-3.25.6/test/contrib/openapi/formats/test_uuid.py +0 -46
- schemathesis-3.25.6/test/contrib/test_install.py +0 -17
- schemathesis-3.25.6/test/contrib/test_unique_data.py +0 -193
- schemathesis-3.25.6/test/experimental/test_experiments.py +0 -84
- schemathesis-3.25.6/test/experimental/test_openapi_3_1.py +0 -86
- schemathesis-3.25.6/test/extra/test_aiohttp.py +0 -12
- schemathesis-3.25.6/test/filters/test_matching.py +0 -209
- schemathesis-3.25.6/test/hooks/test_filter_operations.py +0 -36
- schemathesis-3.25.6/test/hooks/test_hooks.py +0 -557
- schemathesis-3.25.6/test/loaders/conftest.py +0 -26
- schemathesis-3.25.6/test/loaders/test_app.py +0 -25
- schemathesis-3.25.6/test/loaders/test_common.py +0 -245
- schemathesis-3.25.6/test/loaders/test_graphql.py +0 -97
- schemathesis-3.25.6/test/loaders/test_openapi.py +0 -218
- schemathesis-3.25.6/test/loaders/test_yaml.py +0 -17
- schemathesis-3.25.6/test/runner/test_checks.py +0 -612
- schemathesis-3.25.6/test/runner/test_events.py +0 -28
- schemathesis-3.25.6/test/runner/test_probes.py +0 -164
- schemathesis-3.25.6/test/runner/test_runner.py +0 -1313
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_client_error_on_project_details[Open API 3.0].raw +0 -4
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_client_error_on_upload[Open API 3.0].raw +0 -47
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_error_in_another_handler[Open API 3.0].raw +0 -21
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_github_suggestion[Open API 3.0].raw +0 -27
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_not_authenticated_with_name.raw +0 -14
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_two_names.raw +0 -7
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_unauthorized[Open API 3.0].raw +0 -12
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_unknown_error_on_upload[Open API 3.0].raw +0 -53
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_upload_failure[Open API 3.0].raw +0 -4
- schemathesis-3.25.6/test/service/__snapshots__/test_cli/test_upload_success[Open API 3.0].raw +0 -5
- schemathesis-3.25.6/test/service/conftest.py +0 -192
- schemathesis-3.25.6/test/service/test_auth.py +0 -141
- schemathesis-3.25.6/test/service/test_ci.py +0 -70
- schemathesis-3.25.6/test/service/test_cli.py +0 -575
- schemathesis-3.25.6/test/service/test_report.py +0 -91
- schemathesis-3.25.6/test/service/test_serialization.py +0 -106
- schemathesis-3.25.6/test/service/test_usage.py +0 -95
- schemathesis-3.25.6/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n 123(created Int!) Int!n}-.whatever].raw +0 -13
- schemathesis-3.25.6/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n func(created Unknown!) Int!n}-.gql].raw +0 -8
- schemathesis-3.25.6/test/specs/graphql/__snapshots__/test_custom_scalars/test_built_in_scalars_in_cli.raw +0 -31
- schemathesis-3.25.6/test/specs/graphql/__snapshots__/test_custom_scalars/test_custom_scalar_in_cli.raw +0 -34
- schemathesis-3.25.6/test/specs/graphql/test_basic.py +0 -291
- schemathesis-3.25.6/test/specs/graphql/test_custom_scalars.py +0 -88
- schemathesis-3.25.6/test/specs/graphql/test_pytest.py +0 -59
- schemathesis-3.25.6/test/specs/openapi/__snapshots__/test_examples/test_network_error_with_flaky_generation.raw +0 -33
- schemathesis-3.25.6/test/specs/openapi/conftest.py +0 -157
- schemathesis-3.25.6/test/specs/openapi/parameters/test_forms.py +0 -136
- schemathesis-3.25.6/test/specs/openapi/parameters/test_non_payload.py +0 -17
- schemathesis-3.25.6/test/specs/openapi/parameters/test_simple_payloads.py +0 -76
- schemathesis-3.25.6/test/specs/openapi/test_examples.py +0 -916
- schemathesis-3.25.6/test/specs/openapi/test_expressions.py +0 -165
- schemathesis-3.25.6/test/specs/openapi/test_hypothesis.py +0 -426
- schemathesis-3.25.6/test/specs/openapi/test_links.py +0 -356
- schemathesis-3.25.6/test/specs/openapi/test_negative.py +0 -380
- schemathesis-3.25.6/test/specs/openapi/test_parameters.py +0 -56
- schemathesis-3.25.6/test/specs/openapi/test_schemas.py +0 -65
- schemathesis-3.25.6/test/specs/openapi/test_security.py +0 -65
- schemathesis-3.25.6/test/specs/openapi/test_serializing.py +0 -582
- schemathesis-3.25.6/test/specs/openapi/test_stateful.py +0 -305
- schemathesis-3.25.6/test/specs/openapi/test_utils.py +0 -16
- schemathesis-3.25.6/test/specs/openapi/test_validation.py +0 -8
- schemathesis-3.25.6/test/test_app.py +0 -42
- schemathesis-3.25.6/test/test_asgi.py +0 -222
- schemathesis-3.25.6/test/test_async.py +0 -119
- schemathesis-3.25.6/test/test_common_parameters.py +0 -164
- schemathesis-3.25.6/test/test_converter.py +0 -80
- schemathesis-3.25.6/test/test_dereferencing.py +0 -732
- schemathesis-3.25.6/test/test_direct_access.py +0 -74
- schemathesis-3.25.6/test/test_errors.py +0 -26
- schemathesis-3.25.6/test/test_examples.py +0 -42
- schemathesis-3.25.6/test/test_filters.py +0 -215
- schemathesis-3.25.6/test/test_fixups.py +0 -75
- schemathesis-3.25.6/test/test_hypothesis.py +0 -544
- schemathesis-3.25.6/test/test_internal.py +0 -12
- schemathesis-3.25.6/test/test_lazy.py +0 -941
- schemathesis-3.25.6/test/test_models.py +0 -664
- schemathesis-3.25.6/test/test_package.py +0 -13
- schemathesis-3.25.6/test/test_parameters.py +0 -624
- schemathesis-3.25.6/test/test_parametrization.py +0 -804
- schemathesis-3.25.6/test/test_petstore.py +0 -302
- schemathesis-3.25.6/test/test_pytest.py +0 -909
- schemathesis-3.25.6/test/test_rate_limit.py +0 -45
- schemathesis-3.25.6/test/test_recoverable_errors.py +0 -121
- schemathesis-3.25.6/test/test_required.py +0 -106
- schemathesis-3.25.6/test/test_sanitizing_output.py +0 -321
- schemathesis-3.25.6/test/test_schemas.py +0 -221
- schemathesis-3.25.6/test/test_serialization.py +0 -479
- schemathesis-3.25.6/test/test_stateful.py +0 -261
- schemathesis-3.25.6/test/test_unittest.py +0 -47
- schemathesis-3.25.6/test/test_utils.py +0 -12
- schemathesis-3.25.6/test/test_wsgi.py +0 -141
- schemathesis-3.25.6/test/transports/test_content_types.py +0 -42
- schemathesis-3.25.6/test/utils.py +0 -122
- schemathesis-3.25.6/test-corpus/test_corpus.py +0 -219
- schemathesis-3.25.6/tox.ini +0 -50
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.dockerignore +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.github/FUNDING.yml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.github/dependabot.yml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.github/workflows/example-no-build.yml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.gitignore +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.readthedocs.yml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.rstcheck.cfg +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/.yamllint +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/CITATION.cff +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/Dockerfile +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/Dockerfile.bookworm +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/LICENSE +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/codecov.yml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/docs/Makefile +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/docs/conf.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/docs/continuous_integration.rst +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/docs/examples.rst +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/docs/requirements.txt +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/docs/targeted.rst +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/Dockerfile +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/compose.yml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/openapi.json +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/requirements-app.in +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/requirements-pytest.in +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/tests/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/example/tests/conftest.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/img/service_github_report.png +0 -0
- {schemathesis-3.25.6/src/schemathesis/extra → schemathesis-4.0.0a1/src/schemathesis/cli/ext}/__init__.py +0 -0
- {schemathesis-3.25.6/src/schemathesis/specs → schemathesis-4.0.0a1/src/schemathesis/openapi/generation}/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/src/schemathesis/py.typed +0 -0
- {schemathesis-3.25.6/test → schemathesis-4.0.0a1/src/schemathesis/python}/__init__.py +0 -0
- {schemathesis-3.25.6/test/auth → schemathesis-4.0.0a1/src/schemathesis/specs}/__init__.py +0 -0
- {schemathesis-3.25.6/test/cli → schemathesis-4.0.0a1/src/schemathesis/specs/graphql}/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/src/schemathesis/specs/openapi/constants.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/src/schemathesis/specs/openapi/expressions/errors.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/src/schemathesis/specs/openapi/negative/types.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/src/schemathesis/specs/openapi/negative/utils.py +0 -0
- {schemathesis-3.25.6/test/cli/output → schemathesis-4.0.0a1/test}/__init__.py +0 -0
- {schemathesis-3.25.6/test/extra → schemathesis-4.0.0a1/test/_pytest}/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/_graphql/_fastapi/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/_graphql/_fastapi/app.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/_graphql/_flask/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/_graphql/_flask/app.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/_graphql/schema.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/openapi/_aiohttp/app.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/openapi/_fastapi/app.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/apps/openapi/_flask/app.py +0 -0
- {schemathesis-3.25.6/test/service → schemathesis-4.0.0a1/test/auth}/__init__.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/auth/conftest.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/cli/__snapshots__/test_commands/test_hooks_module_not_found.raw +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/cli/cert.pem +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/contrib/openapi/test_fill_missing_examples.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/data/petstore_v2.yaml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/data/petstore_v3.yaml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/data/simple_openapi.yaml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/data/simple_swagger.yaml +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/experimental/__snapshots__/test_experiments/test_not_enabled.raw +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test/experimental/conftest.py +0 -0
- {schemathesis-3.25.6 → schemathesis-4.0.0a1}/test_server.sh +0 -0
@@ -0,0 +1,123 @@
|
|
1
|
+
name: CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request:
|
5
|
+
paths:
|
6
|
+
- "**.py"
|
7
|
+
- ".github/workflows/*.yml"
|
8
|
+
- ".pre-commit-config.yaml"
|
9
|
+
- ".relint.yml"
|
10
|
+
- ".yamllint"
|
11
|
+
- "pyproject.toml"
|
12
|
+
- "tox.ini"
|
13
|
+
- "mypy.ini"
|
14
|
+
push:
|
15
|
+
branches:
|
16
|
+
- master
|
17
|
+
workflow_dispatch:
|
18
|
+
|
19
|
+
env:
|
20
|
+
FORCE_COLOR: "1"
|
21
|
+
TOX_TESTENV_PASSENV: FORCE_COLOR
|
22
|
+
|
23
|
+
jobs:
|
24
|
+
pre-commit:
|
25
|
+
name: Generic pre-commit checks
|
26
|
+
runs-on: ubuntu-22.04
|
27
|
+
steps:
|
28
|
+
- uses: actions/checkout@v4.2.1
|
29
|
+
with:
|
30
|
+
fetch-depth: 1
|
31
|
+
|
32
|
+
- uses: actions/setup-python@v5
|
33
|
+
with:
|
34
|
+
python-version: 3.11
|
35
|
+
|
36
|
+
- uses: hynek/setup-cached-uv@v2
|
37
|
+
|
38
|
+
- run: uvx pre-commit run --all-files
|
39
|
+
|
40
|
+
docs:
|
41
|
+
name: Documentation
|
42
|
+
runs-on: ubuntu-22.04
|
43
|
+
steps:
|
44
|
+
- uses: actions/checkout@v4.2.1
|
45
|
+
with:
|
46
|
+
fetch-depth: 1
|
47
|
+
- uses: ammaraskar/sphinx-action@7.0.0
|
48
|
+
with:
|
49
|
+
docs-folder: "docs/"
|
50
|
+
|
51
|
+
tests:
|
52
|
+
strategy:
|
53
|
+
matrix:
|
54
|
+
os: [ubuntu-22.04, windows-2019]
|
55
|
+
python: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
56
|
+
fail-fast: false
|
57
|
+
|
58
|
+
name: Tests (Python ${{ matrix.python }} on ${{ matrix.os }} ${{ matrix.tox_env }})
|
59
|
+
runs-on: ${{ matrix.os }}
|
60
|
+
steps:
|
61
|
+
- uses: actions/checkout@v4.2.1
|
62
|
+
with:
|
63
|
+
fetch-depth: 1
|
64
|
+
|
65
|
+
- uses: actions/setup-python@v5
|
66
|
+
with:
|
67
|
+
python-version: ${{ matrix.python }}
|
68
|
+
|
69
|
+
- uses: hynek/setup-cached-uv@v2
|
70
|
+
|
71
|
+
- if: ${{ matrix.tox_env }}
|
72
|
+
run: uvx --with="tox" --with="tox-gh-actions" --with="tox-uv" tox -e ${{ matrix.tox_env }}
|
73
|
+
|
74
|
+
- if: ${{ !matrix.tox_env }}
|
75
|
+
run: uvx --with="tox" --with="tox-gh-actions" --with="tox-uv" tox
|
76
|
+
|
77
|
+
- name: Upload coverage to Codecov
|
78
|
+
uses: codecov/codecov-action@v5.1.2
|
79
|
+
with:
|
80
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
81
|
+
|
82
|
+
# On windows redirecting output to a file could lead to an error due to the default IO encoding being CP-1252
|
83
|
+
tests-pipe-with-encoding:
|
84
|
+
strategy:
|
85
|
+
matrix:
|
86
|
+
os: [ubuntu-22.04, windows-2019]
|
87
|
+
fail-fast: false
|
88
|
+
name: Test piping output to a file with CP1252 encoding on ${{ matrix.os }}
|
89
|
+
runs-on: ${{ matrix.os }}
|
90
|
+
steps:
|
91
|
+
- uses: actions/checkout@v4.2.1
|
92
|
+
with:
|
93
|
+
fetch-depth: 1
|
94
|
+
|
95
|
+
- uses: actions/setup-python@v5
|
96
|
+
with:
|
97
|
+
python-version: "3.12"
|
98
|
+
|
99
|
+
- uses: hynek/setup-cached-uv@v2
|
100
|
+
|
101
|
+
- run: uv tool install ".[dev]"
|
102
|
+
|
103
|
+
- run: uv tool run schemathesis run /openapi.json --app=cp1252_app:app -c custom_check > out.txt || true
|
104
|
+
working-directory: ./test/apps
|
105
|
+
env:
|
106
|
+
SCHEMATHESIS_HOOKS: hooks
|
107
|
+
PYTHONIOENCODING: cp1252
|
108
|
+
|
109
|
+
- run: |
|
110
|
+
if grep -Fq "UnicodeEncodeError" "out.txt"; then
|
111
|
+
echo "Failed!"
|
112
|
+
exit 1
|
113
|
+
fi
|
114
|
+
working-directory: ./test/apps
|
115
|
+
shell: bash
|
116
|
+
|
117
|
+
spell-check:
|
118
|
+
name: Spell Check
|
119
|
+
runs-on: ubuntu-22.04
|
120
|
+
steps:
|
121
|
+
- uses: actions/checkout@v4
|
122
|
+
|
123
|
+
- uses: crate-ci/typos@master
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# For most projects, this workflow file will not need changing; you simply need
|
2
|
+
# to commit it to your repository.
|
3
|
+
#
|
4
|
+
# You may wish to alter this file to override the set of languages analyzed,
|
5
|
+
# or to provide custom queries or build logic.
|
6
|
+
name: "CodeQL"
|
7
|
+
|
8
|
+
on:
|
9
|
+
push:
|
10
|
+
branches: [master]
|
11
|
+
pull_request:
|
12
|
+
# The branches below must be a subset of the branches above
|
13
|
+
branches: [master]
|
14
|
+
schedule:
|
15
|
+
- cron: "0 15 * * 5"
|
16
|
+
|
17
|
+
jobs:
|
18
|
+
analyze:
|
19
|
+
name: Analyze
|
20
|
+
runs-on: ubuntu-22.04
|
21
|
+
|
22
|
+
strategy:
|
23
|
+
fail-fast: false
|
24
|
+
matrix:
|
25
|
+
# Override automatic language detection by changing the below list
|
26
|
+
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
|
27
|
+
language: ["python"]
|
28
|
+
# Learn more...
|
29
|
+
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
|
30
|
+
|
31
|
+
steps:
|
32
|
+
- name: Checkout repository
|
33
|
+
uses: actions/checkout@v4.2.1
|
34
|
+
with:
|
35
|
+
# We must fetch at least the immediate parents so that if this is
|
36
|
+
# a pull request then we can checkout the head.
|
37
|
+
fetch-depth: 2
|
38
|
+
|
39
|
+
# Initializes the CodeQL tools for scanning.
|
40
|
+
- name: Initialize CodeQL
|
41
|
+
uses: github/codeql-action/init@v3.28.0
|
42
|
+
with:
|
43
|
+
languages: ${{ matrix.language }}
|
44
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
45
|
+
# By default, queries listed here will override any specified in a config file.
|
46
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
47
|
+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
48
|
+
|
49
|
+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
50
|
+
# If this step fails, then you should remove it and run the build manually (see below)
|
51
|
+
- name: Autobuild
|
52
|
+
uses: github/codeql-action/autobuild@v3.28.0
|
53
|
+
|
54
|
+
# ℹ️ Command-line programs to run using the OS shell.
|
55
|
+
# 📚 https://git.io/JvXDl
|
56
|
+
|
57
|
+
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
58
|
+
# and modify them (or add more) to build your code if your project
|
59
|
+
# uses a compiled language
|
60
|
+
|
61
|
+
#- run: |
|
62
|
+
# make bootstrap
|
63
|
+
# make release
|
64
|
+
|
65
|
+
- name: Perform CodeQL Analysis
|
66
|
+
uses: github/codeql-action/analyze@v3.28.0
|
@@ -0,0 +1,29 @@
|
|
1
|
+
name: Benchmarks
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches:
|
6
|
+
- "master"
|
7
|
+
pull_request:
|
8
|
+
workflow_dispatch:
|
9
|
+
|
10
|
+
env:
|
11
|
+
SCHEMATHESIS_BENCHMARK_SEED: "42"
|
12
|
+
|
13
|
+
jobs:
|
14
|
+
benchmarks:
|
15
|
+
runs-on: ubuntu-latest
|
16
|
+
steps:
|
17
|
+
- uses: actions/checkout@v4.2.1
|
18
|
+
- uses: actions/setup-python@v5
|
19
|
+
with:
|
20
|
+
# Python 3.12 for flamegraph support
|
21
|
+
python-version: "3.12"
|
22
|
+
|
23
|
+
- uses: hynek/setup-cached-uv@v2
|
24
|
+
|
25
|
+
- name: Run benchmarks
|
26
|
+
uses: CodSpeedHQ/action@v3
|
27
|
+
with:
|
28
|
+
token: ${{ secrets.CODSPEED_TOKEN }}
|
29
|
+
run: uvx --from=".[bench]" pytest benches/* --codspeed -p no:schemathesis -p no:hypothesispytest -p no:subtests -p no:anyio
|
@@ -0,0 +1,19 @@
|
|
1
|
+
name: Checks for every commit
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request: ~
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
commitsar:
|
11
|
+
name: Verify commit messages
|
12
|
+
runs-on: ubuntu-22.04
|
13
|
+
steps:
|
14
|
+
- name: Check out code
|
15
|
+
uses: actions/checkout@v4.2.1
|
16
|
+
with:
|
17
|
+
fetch-depth: 0
|
18
|
+
- name: Run commitsar
|
19
|
+
uses: aevea/commitsar@v0.20.2
|
@@ -0,0 +1,40 @@
|
|
1
|
+
name: Manual build API example
|
2
|
+
|
3
|
+
on:
|
4
|
+
pull_request:
|
5
|
+
paths:
|
6
|
+
- ".github/workflows/example-build.yml"
|
7
|
+
- "example/**"
|
8
|
+
push:
|
9
|
+
branches:
|
10
|
+
- master
|
11
|
+
workflow_dispatch:
|
12
|
+
|
13
|
+
jobs:
|
14
|
+
local-ci:
|
15
|
+
name: Example app
|
16
|
+
runs-on: ubuntu-22.04
|
17
|
+
|
18
|
+
steps:
|
19
|
+
- uses: actions/checkout@v4.2.1
|
20
|
+
|
21
|
+
- name: Start containers
|
22
|
+
run: docker compose up -d --build
|
23
|
+
working-directory: "./example"
|
24
|
+
|
25
|
+
# Runs positive Schemathesis tests
|
26
|
+
- uses: schemathesis/action@v1
|
27
|
+
continue-on-error: true
|
28
|
+
with:
|
29
|
+
# A local API schema location
|
30
|
+
schema: "http://127.0.0.1:5123/openapi.json"
|
31
|
+
# Set your token from secrets
|
32
|
+
token: ${{ secrets.SCHEMATHESIS_TOKEN }}
|
33
|
+
max-examples: "10"
|
34
|
+
# To avoid failing the build
|
35
|
+
args: "-E does-not-exist"
|
36
|
+
|
37
|
+
- name: Stop containers
|
38
|
+
if: always()
|
39
|
+
run: docker compose down
|
40
|
+
working-directory: "./example"
|
@@ -0,0 +1,53 @@
|
|
1
|
+
name: Post-update master jobs
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches:
|
6
|
+
- master
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
containers:
|
10
|
+
name: Build container images
|
11
|
+
runs-on: ubuntu-22.04
|
12
|
+
|
13
|
+
strategy:
|
14
|
+
fail-fast: false
|
15
|
+
matrix:
|
16
|
+
include:
|
17
|
+
- dockerfile: Dockerfile
|
18
|
+
tag: "latest"
|
19
|
+
- dockerfile: Dockerfile.bookworm
|
20
|
+
tag: "latest-bookworm"
|
21
|
+
|
22
|
+
steps:
|
23
|
+
- uses: actions/checkout@v4.2.1
|
24
|
+
|
25
|
+
- name: Set up QEMU
|
26
|
+
uses: docker/setup-qemu-action@v3
|
27
|
+
|
28
|
+
- name: Set up Docker Buildx
|
29
|
+
uses: docker/setup-buildx-action@v3
|
30
|
+
|
31
|
+
- name: Login to Docker Hub
|
32
|
+
uses: docker/login-action@v3
|
33
|
+
with:
|
34
|
+
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
35
|
+
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
36
|
+
|
37
|
+
- name: Login to GitHub Container Registry
|
38
|
+
uses: docker/login-action@v3
|
39
|
+
with:
|
40
|
+
registry: ghcr.io
|
41
|
+
username: ${{ github.repository_owner }}
|
42
|
+
password: ${{ secrets.GITHUB_TOKEN }}
|
43
|
+
|
44
|
+
- name: Build and push
|
45
|
+
uses: docker/build-push-action@v6
|
46
|
+
with:
|
47
|
+
context: .
|
48
|
+
file: ${{ matrix.dockerfile }}
|
49
|
+
platforms: linux/amd64,linux/arm64
|
50
|
+
push: true
|
51
|
+
tags: |
|
52
|
+
schemathesis/schemathesis:${{ matrix.tag }}
|
53
|
+
ghcr.io/schemathesis/schemathesis:${{ matrix.tag }}
|
@@ -0,0 +1,87 @@
|
|
1
|
+
name: Post-release jobs
|
2
|
+
|
3
|
+
on:
|
4
|
+
release:
|
5
|
+
types: [published]
|
6
|
+
|
7
|
+
jobs:
|
8
|
+
containers:
|
9
|
+
name: Build container images
|
10
|
+
runs-on: ubuntu-22.04
|
11
|
+
|
12
|
+
strategy:
|
13
|
+
fail-fast: false
|
14
|
+
matrix:
|
15
|
+
include:
|
16
|
+
- dockerfile: Dockerfile
|
17
|
+
tag-suffix: ""
|
18
|
+
- dockerfile: Dockerfile.bookworm
|
19
|
+
tag-suffix: "-bookworm"
|
20
|
+
|
21
|
+
steps:
|
22
|
+
- uses: actions/checkout@v4.2.1
|
23
|
+
|
24
|
+
- name: Docker meta
|
25
|
+
id: meta
|
26
|
+
uses: docker/metadata-action@v5
|
27
|
+
with:
|
28
|
+
flavor: |
|
29
|
+
latest=false
|
30
|
+
images: |
|
31
|
+
schemathesis/schemathesis
|
32
|
+
ghcr.io/schemathesis/schemathesis
|
33
|
+
tags: |
|
34
|
+
type=semver,pattern={{raw}}${{ matrix.tag-suffix }}
|
35
|
+
type=semver,pattern={{version}}${{ matrix.tag-suffix }}
|
36
|
+
type=raw,value=stable${{ matrix.tag-suffix }}
|
37
|
+
|
38
|
+
- name: Set up QEMU
|
39
|
+
uses: docker/setup-qemu-action@v3
|
40
|
+
|
41
|
+
- name: Set up Docker Buildx
|
42
|
+
uses: docker/setup-buildx-action@v3
|
43
|
+
|
44
|
+
- name: Login to Docker Hub
|
45
|
+
uses: docker/login-action@v3
|
46
|
+
with:
|
47
|
+
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
48
|
+
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
49
|
+
|
50
|
+
- name: Login to GitHub Container Registry
|
51
|
+
uses: docker/login-action@v3
|
52
|
+
with:
|
53
|
+
registry: ghcr.io
|
54
|
+
username: ${{ github.repository_owner }}
|
55
|
+
password: ${{ secrets.GITHUB_TOKEN }}
|
56
|
+
|
57
|
+
- name: Build and push
|
58
|
+
uses: docker/build-push-action@v6
|
59
|
+
with:
|
60
|
+
context: .
|
61
|
+
file: ${{ matrix.dockerfile }}
|
62
|
+
platforms: linux/amd64,linux/arm64
|
63
|
+
push: true
|
64
|
+
tags: ${{ steps.meta.outputs.tags }}
|
65
|
+
labels: ${{ steps.meta.outputs.labels }}
|
66
|
+
|
67
|
+
release_package:
|
68
|
+
name: Build and publish package to pypi.org
|
69
|
+
runs-on: ubuntu-22.04
|
70
|
+
steps:
|
71
|
+
- uses: actions/checkout@v4.2.1
|
72
|
+
with:
|
73
|
+
fetch-depth: 1
|
74
|
+
|
75
|
+
- uses: actions/setup-python@v5
|
76
|
+
with:
|
77
|
+
python-version: "3.10"
|
78
|
+
|
79
|
+
- uses: hynek/setup-cached-uv@v2
|
80
|
+
|
81
|
+
- name: Build package
|
82
|
+
run: uvx hatchling build
|
83
|
+
|
84
|
+
- name: Publish distribution package to PyPI
|
85
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
86
|
+
with:
|
87
|
+
password: ${{ secrets.PYPI_API_TOKEN }}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
name: Run corpus tests
|
2
|
+
|
3
|
+
on:
|
4
|
+
schedule:
|
5
|
+
# Every day at 00:00
|
6
|
+
- cron: "0 0 * * *"
|
7
|
+
workflow_dispatch:
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
|
11
|
+
corpus-default:
|
12
|
+
name: Default corpus tests
|
13
|
+
runs-on: ubuntu-22.04
|
14
|
+
steps:
|
15
|
+
- uses: actions/checkout@v4.2.1
|
16
|
+
with:
|
17
|
+
fetch-depth: 1
|
18
|
+
submodules: true
|
19
|
+
|
20
|
+
- uses: actions/setup-python@v5
|
21
|
+
with:
|
22
|
+
python-version: "3.11"
|
23
|
+
|
24
|
+
- uses: hynek/setup-cached-uv@v2
|
25
|
+
|
26
|
+
- run: uvx --from=".[tests]" pytest test-corpus -n auto -k test_default
|
27
|
+
|
28
|
+
corpus-coverage:
|
29
|
+
name: Corpus tests for the coverage phase
|
30
|
+
runs-on: ubuntu-22.04
|
31
|
+
steps:
|
32
|
+
- uses: actions/checkout@v4.2.1
|
33
|
+
with:
|
34
|
+
fetch-depth: 1
|
35
|
+
submodules: true
|
36
|
+
|
37
|
+
- uses: actions/setup-python@v5
|
38
|
+
with:
|
39
|
+
python-version: "3.11"
|
40
|
+
|
41
|
+
- uses: hynek/setup-cached-uv@v2
|
42
|
+
|
43
|
+
- run: uvx --from=".[tests]" pytest test-corpus -n auto -k test_coverage_phase
|
@@ -0,0 +1,24 @@
|
|
1
|
+
name: Hypothesis tests
|
2
|
+
|
3
|
+
on:
|
4
|
+
schedule:
|
5
|
+
# Every day at 00:00
|
6
|
+
- cron: "0 0 * * *"
|
7
|
+
workflow_dispatch:
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
hypothesis-tests:
|
11
|
+
name: Hypothesis tests with CI profile
|
12
|
+
runs-on: ubuntu-22.04
|
13
|
+
steps:
|
14
|
+
- uses: actions/checkout@v4.2.1
|
15
|
+
with:
|
16
|
+
fetch-depth: 1
|
17
|
+
|
18
|
+
- uses: actions/setup-python@v5
|
19
|
+
with:
|
20
|
+
python-version: "3.11"
|
21
|
+
|
22
|
+
- uses: hynek/setup-cached-uv@v2
|
23
|
+
|
24
|
+
- run: uvx --from=".[tests]" pytest -m hypothesis -m hypothesis_nested --hypothesis-profile CI test
|
@@ -0,0 +1,32 @@
|
|
1
|
+
name: Update pre-commit
|
2
|
+
|
3
|
+
on:
|
4
|
+
schedule:
|
5
|
+
- cron: 0 0 * * 0
|
6
|
+
workflow_dispatch:
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
release:
|
10
|
+
name: Update pre-commit
|
11
|
+
runs-on: ubuntu-22.04
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v4.2.1
|
14
|
+
with:
|
15
|
+
fetch-depth: 1
|
16
|
+
submodules: true
|
17
|
+
|
18
|
+
- uses: hynek/setup-cached-uv@v2
|
19
|
+
|
20
|
+
- run: uvx pre-commit autoupdate
|
21
|
+
|
22
|
+
- name: Open pull request
|
23
|
+
uses: peter-evans/create-pull-request@v7
|
24
|
+
with:
|
25
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
26
|
+
delete-branch: true
|
27
|
+
title: Update pre-commit
|
28
|
+
body: Automatically update pre-commit
|
29
|
+
commit-message: 'chore: Update pre-commit'
|
30
|
+
committer: 'CI on behalf of the Schemathesis team <team@schemathesis.io>'
|
31
|
+
author: 'CI on behalf of the Schemathesis team <team@schemathesis.io>'
|
32
|
+
branch: "create-pull-request/update-pre-commit"
|
@@ -0,0 +1,54 @@
|
|
1
|
+
default_language_version:
|
2
|
+
python: python3.11
|
3
|
+
|
4
|
+
repos:
|
5
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
6
|
+
rev: v5.0.0
|
7
|
+
hooks:
|
8
|
+
- id: check-yaml
|
9
|
+
- id: end-of-file-fixer
|
10
|
+
- id: trailing-whitespace
|
11
|
+
exclude: ^.*\.(md|rst|raw)$
|
12
|
+
- id: debug-statements
|
13
|
+
- id: mixed-line-ending
|
14
|
+
args: [--fix=lf]
|
15
|
+
- id: check-merge-conflict
|
16
|
+
|
17
|
+
- repo: https://github.com/jorisroovers/gitlint
|
18
|
+
rev: v0.19.1
|
19
|
+
hooks:
|
20
|
+
- id: gitlint
|
21
|
+
|
22
|
+
- repo: https://github.com/adrienverge/yamllint
|
23
|
+
rev: v1.35.1
|
24
|
+
hooks:
|
25
|
+
- id: yamllint
|
26
|
+
|
27
|
+
- repo: https://github.com/pre-commit/mirrors-mypy
|
28
|
+
rev: v1.14.1
|
29
|
+
hooks:
|
30
|
+
- id: mypy
|
31
|
+
exclude: ^(docs/|test/|test-corpus/|example/|benches/).*$
|
32
|
+
args: ["--ignore-missing-imports"]
|
33
|
+
additional_dependencies: [types-requests, types-PyYAML]
|
34
|
+
|
35
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
36
|
+
rev: v0.9.1
|
37
|
+
hooks:
|
38
|
+
- id: ruff-format
|
39
|
+
|
40
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
41
|
+
rev: v0.9.1
|
42
|
+
hooks:
|
43
|
+
- id: ruff
|
44
|
+
|
45
|
+
- repo: https://github.com/myint/rstcheck
|
46
|
+
rev: v6.2.4
|
47
|
+
hooks:
|
48
|
+
- id: rstcheck
|
49
|
+
additional_dependencies:
|
50
|
+
- sphinx==7.1.2
|
51
|
+
- sphinx_rtd_theme==1.3
|
52
|
+
- sphinx-click==5.1
|
53
|
+
args:
|
54
|
+
- --ignore-roles=issue,version
|
@@ -0,0 +1,121 @@
|
|
1
|
+
# Architecture
|
2
|
+
|
3
|
+
This document describes the high-level architecture of Schemathesis.
|
4
|
+
|
5
|
+
## Core concepts
|
6
|
+
|
7
|
+
Schemathesis is initially built around Hypothesis, a framework for property-based testing and inherits a lot of design decisions from it. These are the main steps of how Schemathesis tests API:
|
8
|
+
|
9
|
+
1. Break down an API schema into a set of data generators
|
10
|
+
2. Generate test cases with these generators and send them to the API under test
|
11
|
+
3. Run a set of checks on the received responses
|
12
|
+
4. Report any found failures
|
13
|
+
|
14
|
+
Steps 2 to 4 follow the common action - assert pattern and either generated by Schemathesis dynamically, or exposed via its Python API so the users can extend this flow.
|
15
|
+
|
16
|
+
However, to run the generators, store results, de-duplicate failures and such, Schemathesis runs this test flow by means provided by Hypothesis. That is, Schemathesis generates a test and provides tools to configure it, then this test is executed by Hypothesis.
|
17
|
+
|
18
|
+
It is important to note that Schemathesis has a Python API and integrates with `pytest`, however, it is main usage scenario is a CLI.
|
19
|
+
|
20
|
+
## `core` - low-level core components
|
21
|
+
|
22
|
+
These components do not depend on any API specification.
|
23
|
+
|
24
|
+
### `core/schemas`
|
25
|
+
|
26
|
+
The first layer is how Schemathesis works with API schemas. This package contains various functions to facilitate easy access to different components of API schemas based on a spec.
|
27
|
+
|
28
|
+
- `core/schemas/selection`. Tools to select a subset of a schema.
|
29
|
+
|
30
|
+
### `core/generator`
|
31
|
+
|
32
|
+
Another component is data generation where Schemathesis uses Hypothesis & its plugins to produce data samples of needed shape and form. This package contains:
|
33
|
+
|
34
|
+
- `core/generator/filters` - facilities to detect whether generated samples can be used for a test.
|
35
|
+
|
36
|
+
Generally, Schemathesis' generators try to create data without using filters to avoid spending resources on generation, but it is not always easily possible, and `filters` contain rather performance-sensitive code.
|
37
|
+
|
38
|
+
### `core/errors`
|
39
|
+
|
40
|
+
Base error handling that is not tied to any specific API specification or execution context. Contains fundamental error types for:
|
41
|
+
|
42
|
+
- Schema processing
|
43
|
+
- Data serialization
|
44
|
+
- Generic validation
|
45
|
+
|
46
|
+
### `core/marks`
|
47
|
+
|
48
|
+
A mechanism for attaching Schemathesis-specific metadata to test functions. Since Schemathesis integrates with external testing frameworks (Hypothesis, pytest) that primarily operate on test functions, we need a way to associate additional context with these functions.
|
49
|
+
|
50
|
+
### `core/checks`
|
51
|
+
|
52
|
+
Tools to check API responses.
|
53
|
+
|
54
|
+
### `core/hooks`
|
55
|
+
|
56
|
+
A system to extend Schemathesis
|
57
|
+
|
58
|
+
### `core/loaders`
|
59
|
+
|
60
|
+
Loading API schemas.
|
61
|
+
|
62
|
+
### `core/transports`
|
63
|
+
|
64
|
+
Utilities for sending & receiving data.
|
65
|
+
|
66
|
+
- `core/rate_limit`
|
67
|
+
|
68
|
+
### `core/output`
|
69
|
+
|
70
|
+
Utilities to work with how Schemathesis output its results.
|
71
|
+
|
72
|
+
## Intermediate-level API
|
73
|
+
|
74
|
+
This layer is built on top of `core` and combines its different components to provide building blocks for concrete API specification.
|
75
|
+
Some parts are re-exported to the public API in order to provide a way to extend Schemathesis.
|
76
|
+
|
77
|
+
### `openapi`
|
78
|
+
|
79
|
+
- `openapi/checks`. Open API-specific checks
|
80
|
+
|
81
|
+
### `graphql`
|
82
|
+
|
83
|
+
- `graphql/checks`. GraphQL-specific checks
|
84
|
+
|
85
|
+
### `engine`
|
86
|
+
|
87
|
+
Schemathesis Engine brings together other low-level components and executes tests. It is designed to be embeddable and powers Schemathesis CLI. Its execution flow contains separate phases that may share context to improve subsequent phases. The main interface it provides is a stream of events. During execution, the engine
|
88
|
+
collects information about the API and uses it to improve data generation in subsequent phases.
|
89
|
+
|
90
|
+
- `engine/phases/probes`. Makes requests to learn about API capabilities, for example, whether it accepts `NULL` bytes or immediately rejects it, so Schemathesis won't spend time generating data with `NULL` bytes.
|
91
|
+
- `engine/phases/explicit`. Tests based on examples specified in the schema with minimal data generation.
|
92
|
+
- `engine/phases/coverage`. Deterministically generates test cases to cover common "positive" and "negative" testing scenarios depending on the configuration.
|
93
|
+
- `engine/phases/unit`. Unit testing phase. Each available API operation is tested in isolation.
|
94
|
+
- `engine/phases/stateful`. Stateful testing phase. This phase builds connections between different API endpoints and tests them in random sequences reusing response data as input for other operations.
|
95
|
+
|
96
|
+
### `service`
|
97
|
+
|
98
|
+
Integration with SaaS
|
99
|
+
|
100
|
+
## High-level API
|
101
|
+
|
102
|
+
### `cli`
|
103
|
+
|
104
|
+
CLI is built on top of `engine` and consumes events coming from it. The execution process is based on a set of event handlers that process events. Other than that, handlers use actor-based communication model to share information among other handlers (i.e. ask the output handler to print to stdout or report handler to add an entry to report). This model is intended to decouple handlers, allow graceful error handling, and centralize output tasks (especially for stdout).
|
105
|
+
|
106
|
+
- `cli/commands`
|
107
|
+
- `cli/bus`
|
108
|
+
- `cli/validation`
|
109
|
+
- `cli/handlers/junit`
|
110
|
+
- `cli/handlers/vcr`
|
111
|
+
- `cli/handlers/har`
|
112
|
+
- `cli/handlers/debug`
|
113
|
+
- `cli/handlers/stdout`
|
114
|
+
|
115
|
+
### `python`
|
116
|
+
|
117
|
+
A public Python API to core components. Some core components are re-exported here.
|
118
|
+
|
119
|
+
- `pytest_plugin`. Schemathesis' pytest plugin.
|
120
|
+
- `asgi`. ASGI integration
|
121
|
+
- `wsgi`. WSGI integration
|