schemathesis 3.36.3__tar.gz → 3.37.0__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.
Files changed (673) hide show
  1. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/build.yml +5 -5
  2. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/codeql-analysis.yml +4 -4
  3. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/codspeed.yml +4 -1
  4. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/commit.yml +1 -1
  5. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/example-build.yml +1 -1
  6. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/master_update.yml +1 -1
  7. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/release.yml +2 -2
  8. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/test-corpus.yml +2 -2
  9. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/test-hypothesis.yml +1 -1
  10. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/update-pre-commit.yml +1 -1
  11. {schemathesis-3.36.3 → schemathesis-3.37.0}/.pre-commit-config.yaml +3 -3
  12. {schemathesis-3.36.3 → schemathesis-3.37.0}/PKG-INFO +2 -2
  13. schemathesis-3.37.0/benches/coverage_phase.py +133 -0
  14. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/changelog.rst +33 -1
  15. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/experimental.rst +43 -0
  16. {schemathesis-3.36.3 → schemathesis-3.37.0}/pyproject.toml +2 -2
  17. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/__init__.py +41 -5
  18. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/callbacks.py +42 -0
  19. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/cassettes.py +6 -9
  20. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/options.py +7 -0
  21. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/exceptions.py +4 -0
  22. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/experimental/__init__.py +7 -0
  23. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/failures.py +13 -0
  24. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/generation/_hypothesis.py +7 -1
  25. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/generation/_methods.py +4 -0
  26. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/generation/coverage.py +67 -26
  27. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/hooks.py +2 -2
  28. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/checks.py +21 -2
  29. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/lazy.py +4 -3
  30. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/__init__.py +9 -0
  31. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/impl/context.py +11 -2
  32. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/impl/core.py +18 -5
  33. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/checks.py +40 -3
  34. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/definitions.py +7 -11
  35. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/utils.py +5 -1
  36. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/runner.py +5 -1
  37. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/validation.py +11 -14
  38. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/transports/__init__.py +1 -1
  39. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args0].raw +34 -0
  40. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args10].raw +54 -0
  41. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args1].raw +34 -0
  42. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args2].raw +54 -0
  43. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args3].raw +34 -0
  44. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args4].raw +54 -0
  45. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args5].raw +34 -0
  46. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args6].raw +54 -0
  47. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args7].raw +34 -0
  48. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args8].raw +7 -0
  49. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[args9].raw +7 -0
  50. schemathesis-3.37.0/test/cli/__snapshots__/test_checks/test_positive_data_acceptance_with_env_vars.raw +54 -0
  51. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args24].raw +19 -9
  52. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_callbacks.py +32 -0
  53. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_checks.py +75 -1
  54. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_commands.py +2 -0
  55. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/code_samples/test_curl.py +1 -1
  56. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/conftest.py +13 -3
  57. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/coverage/test_combinations.py +15 -2
  58. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/experimental/test_openapi_3_1.py +16 -0
  59. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/hooks/test_hooks.py +0 -17
  60. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_cli.py +5 -1
  61. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/test_basic.py +11 -25
  62. schemathesis-3.37.0/test/specs/openapi/__snapshots__/test_ignored_auth/test_stateful_in_cli_no_error[Open API 3.0-False].raw +42 -0
  63. schemathesis-3.37.0/test/specs/openapi/__snapshots__/test_ignored_auth/test_stateful_in_cli_no_error[Open API 3.0-True].raw +62 -0
  64. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/stateful/conftest.py +33 -1
  65. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/stateful/test_runner.py +32 -1
  66. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_checks.py +56 -1
  67. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_ignored_auth.py +76 -0
  68. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_lazy.py +36 -12
  69. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_recoverable_errors.py +14 -2
  70. schemathesis-3.37.0/test-corpus/conftest.py +7 -0
  71. {schemathesis-3.36.3 → schemathesis-3.37.0}/.dockerignore +0 -0
  72. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/FUNDING.yml +0 -0
  73. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  74. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  75. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  76. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/dependabot.yml +0 -0
  77. {schemathesis-3.36.3 → schemathesis-3.37.0}/.github/workflows/example-no-build.yml +0 -0
  78. {schemathesis-3.36.3 → schemathesis-3.37.0}/.gitignore +0 -0
  79. {schemathesis-3.36.3 → schemathesis-3.37.0}/.readthedocs.yml +0 -0
  80. {schemathesis-3.36.3 → schemathesis-3.37.0}/.relint.yml +0 -0
  81. {schemathesis-3.36.3 → schemathesis-3.37.0}/.rstcheck.cfg +0 -0
  82. {schemathesis-3.36.3 → schemathesis-3.37.0}/.yamllint +0 -0
  83. {schemathesis-3.36.3 → schemathesis-3.37.0}/CITATION.cff +0 -0
  84. {schemathesis-3.36.3 → schemathesis-3.37.0}/CODE_OF_CONDUCT.md +0 -0
  85. {schemathesis-3.36.3 → schemathesis-3.37.0}/CONTRIBUTING.rst +0 -0
  86. {schemathesis-3.36.3 → schemathesis-3.37.0}/Dockerfile +0 -0
  87. {schemathesis-3.36.3 → schemathesis-3.37.0}/Dockerfile.bookworm +0 -0
  88. {schemathesis-3.36.3 → schemathesis-3.37.0}/LICENSE +0 -0
  89. {schemathesis-3.36.3 → schemathesis-3.37.0}/README.md +0 -0
  90. {schemathesis-3.36.3 → schemathesis-3.37.0}/benches/cli.py +0 -0
  91. {schemathesis-3.36.3 → schemathesis-3.37.0}/benches/references.py +0 -0
  92. {schemathesis-3.36.3 → schemathesis-3.37.0}/benches/schema.py +0 -0
  93. {schemathesis-3.36.3 → schemathesis-3.37.0}/changelog.py +0 -0
  94. {schemathesis-3.36.3 → schemathesis-3.37.0}/codecov.yml +0 -0
  95. {schemathesis-3.36.3 → schemathesis-3.37.0}/corpus/data/graphql.tar.gz +0 -0
  96. {schemathesis-3.36.3 → schemathesis-3.37.0}/corpus/data/openapi-3.0.tar.gz +0 -0
  97. {schemathesis-3.36.3 → schemathesis-3.37.0}/corpus/data/openapi-3.1.tar.gz +0 -0
  98. {schemathesis-3.36.3 → schemathesis-3.37.0}/corpus/data/swagger-2.0.tar.gz +0 -0
  99. {schemathesis-3.36.3 → schemathesis-3.37.0}/corpus/tools.py +0 -0
  100. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/Makefile +0 -0
  101. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/additional-content.rst +0 -0
  102. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/api.rst +0 -0
  103. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/auth.rst +0 -0
  104. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/cli.rst +0 -0
  105. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/compatibility.rst +0 -0
  106. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/conf.py +0 -0
  107. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/continuous_integration.rst +0 -0
  108. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/contrib.rst +0 -0
  109. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/data-generation.rst +0 -0
  110. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/examples.rst +0 -0
  111. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/extending.rst +0 -0
  112. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/faq.rst +0 -0
  113. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/getting-started.rst +0 -0
  114. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/graphql.rst +0 -0
  115. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/index.rst +0 -0
  116. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/python.rst +0 -0
  117. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/recipes.rst +0 -0
  118. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/requirements.txt +0 -0
  119. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/sanitizing.rst +0 -0
  120. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/service.rst +0 -0
  121. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/stateful.rst +0 -0
  122. {schemathesis-3.36.3 → schemathesis-3.37.0}/docs/targeted.rst +0 -0
  123. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/Dockerfile +0 -0
  124. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/README.md +0 -0
  125. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/app.py +0 -0
  126. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/compose.yml +0 -0
  127. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/openapi.json +0 -0
  128. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/requirements-app.in +0 -0
  129. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/requirements-app.txt +0 -0
  130. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/requirements-pytest.in +0 -0
  131. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/requirements-pytest.txt +0 -0
  132. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/tests/__init__.py +0 -0
  133. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/tests/conftest.py +0 -0
  134. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/tests/extensions.py +0 -0
  135. {schemathesis-3.36.3 → schemathesis-3.37.0}/example/tests/test_app.py +0 -0
  136. {schemathesis-3.36.3 → schemathesis-3.37.0}/img/demo.gif +0 -0
  137. {schemathesis-3.36.3 → schemathesis-3.37.0}/img/service_github_report.png +0 -0
  138. {schemathesis-3.36.3 → schemathesis-3.37.0}/mypy.ini +0 -0
  139. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/__init__.py +0 -0
  140. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_compat.py +0 -0
  141. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_dependency_versions.py +0 -0
  142. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_hypothesis.py +1 -1
  143. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_lazy_import.py +0 -0
  144. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_override.py +0 -0
  145. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_rate_limiter.py +0 -0
  146. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/_xml.py +0 -0
  147. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/auths.py +0 -0
  148. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/checks.py +0 -0
  149. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/__main__.py +0 -0
  150. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/constants.py +0 -0
  151. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/context.py +0 -0
  152. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/debug.py +0 -0
  153. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/handlers.py +0 -0
  154. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/junitxml.py +0 -0
  155. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/output/__init__.py +0 -0
  156. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/output/default.py +0 -0
  157. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/output/short.py +0 -0
  158. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/reporting.py +0 -0
  159. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/cli/sanitization.py +0 -0
  160. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/code_samples.py +0 -0
  161. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/constants.py +0 -0
  162. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/contrib/__init__.py +0 -0
  163. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/contrib/openapi/__init__.py +0 -0
  164. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/contrib/openapi/fill_missing_examples.py +0 -0
  165. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/contrib/openapi/formats/__init__.py +0 -0
  166. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/contrib/openapi/formats/uuid.py +0 -0
  167. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/contrib/unique_data.py +0 -0
  168. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/extra/__init__.py +0 -0
  169. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/extra/_aiohttp.py +0 -0
  170. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/extra/_flask.py +0 -0
  171. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/extra/_server.py +0 -0
  172. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/extra/pytest_plugin.py +0 -0
  173. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/filters.py +0 -0
  174. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/fixups/__init__.py +0 -0
  175. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/fixups/fast_api.py +0 -0
  176. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/fixups/utf8_bom.py +0 -0
  177. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/generation/__init__.py +0 -0
  178. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/graphql.py +0 -0
  179. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/__init__.py +0 -0
  180. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/copy.py +0 -0
  181. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/datetime.py +0 -0
  182. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/deprecation.py +0 -0
  183. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/extensions.py +0 -0
  184. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/jsonschema.py +0 -0
  185. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/output.py +0 -0
  186. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/result.py +0 -0
  187. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/transformation.py +0 -0
  188. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/internal/validation.py +0 -0
  189. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/loaders.py +0 -0
  190. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/models.py +0 -0
  191. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/parameters.py +0 -0
  192. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/py.typed +0 -0
  193. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/events.py +0 -0
  194. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/impl/__init__.py +0 -0
  195. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/impl/solo.py +0 -0
  196. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/impl/threadpool.py +0 -0
  197. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/probes.py +0 -0
  198. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/runner/serialization.py +0 -0
  199. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/sanitization.py +0 -0
  200. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/schemas.py +0 -0
  201. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/serializers.py +0 -0
  202. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/__init__.py +0 -0
  203. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/auth.py +0 -0
  204. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/ci.py +0 -0
  205. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/client.py +0 -0
  206. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/constants.py +0 -0
  207. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/events.py +0 -0
  208. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/extensions.py +0 -0
  209. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/hosts.py +0 -0
  210. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/metadata.py +0 -0
  211. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/models.py +0 -0
  212. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/report.py +0 -0
  213. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/serialization.py +0 -0
  214. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/service/usage.py +0 -0
  215. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/__init__.py +0 -0
  216. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/__init__.py +0 -0
  217. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/_cache.py +0 -0
  218. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/loaders.py +0 -0
  219. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/nodes.py +0 -0
  220. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/scalars.py +0 -0
  221. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/schemas.py +0 -0
  222. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/graphql/validation.py +0 -0
  223. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/__init__.py +0 -0
  224. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/_cache.py +0 -0
  225. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/_hypothesis.py +0 -0
  226. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/constants.py +0 -0
  227. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/converter.py +0 -0
  228. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/examples.py +0 -0
  229. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/__init__.py +0 -0
  230. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/context.py +0 -0
  231. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/errors.py +0 -0
  232. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/extractors.py +0 -0
  233. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/lexer.py +0 -0
  234. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/nodes.py +0 -0
  235. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/expressions/parser.py +0 -0
  236. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/formats.py +0 -0
  237. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/links.py +0 -0
  238. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/loaders.py +0 -0
  239. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/media_types.py +0 -0
  240. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/negative/__init__.py +0 -0
  241. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/negative/mutations.py +0 -0
  242. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/negative/types.py +0 -0
  243. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/negative/utils.py +0 -0
  244. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/parameters.py +0 -0
  245. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/patterns.py +0 -0
  246. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/references.py +0 -0
  247. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/schemas.py +0 -0
  248. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/security.py +0 -0
  249. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/serialization.py +0 -0
  250. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/stateful/__init__.py +0 -0
  251. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/stateful/statistic.py +0 -0
  252. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/stateful/types.py +0 -0
  253. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/specs/openapi/validation.py +0 -0
  254. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/__init__.py +0 -0
  255. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/config.py +0 -0
  256. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/context.py +0 -0
  257. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/events.py +0 -0
  258. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/sink.py +0 -0
  259. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/state_machine.py +0 -0
  260. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/stateful/statistic.py +0 -0
  261. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/targets.py +0 -0
  262. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/throttling.py +0 -0
  263. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/transports/asgi.py +0 -0
  264. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/transports/auth.py +0 -0
  265. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/transports/content_types.py +0 -0
  266. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/transports/headers.py +0 -0
  267. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/transports/responses.py +0 -0
  268. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/types.py +0 -0
  269. {schemathesis-3.36.3 → schemathesis-3.37.0}/src/schemathesis/utils.py +0 -0
  270. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__init__.py +0 -0
  271. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__snapshots__/test_dereferencing/test_global_security_schemes_with_custom_scope.raw +0 -0
  272. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__snapshots__/test_dereferencing/test_missing_file_in_resolution.raw +0 -0
  273. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__snapshots__/test_hypothesis/test_health_check_failed_large_base_example.raw +0 -0
  274. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__snapshots__/test_recoverable_errors/test_in_cli[1].raw +0 -0
  275. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__snapshots__/test_recoverable_errors/test_in_cli[2].raw +0 -0
  276. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/__snapshots__/test_serialization/test_in_cli[Open API 3.0].raw +0 -0
  277. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/__init__.py +0 -0
  278. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/_graphql/__init__.py +0 -0
  279. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/_graphql/_fastapi/__init__.py +0 -0
  280. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/_graphql/_fastapi/app.py +0 -0
  281. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/_graphql/_flask/__init__.py +0 -0
  282. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/_graphql/_flask/app.py +0 -0
  283. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/_graphql/schema.py +0 -0
  284. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/cp1252_app.py +0 -0
  285. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/hooks.py +0 -0
  286. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/__init__.py +0 -0
  287. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_aiohttp/__init__.py +0 -0
  288. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_aiohttp/app.py +0 -0
  289. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_aiohttp/handlers.py +0 -0
  290. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_fastapi/__init__.py +0 -0
  291. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_fastapi/app.py +0 -0
  292. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_flask/__init__.py +0 -0
  293. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/_flask/app.py +0 -0
  294. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/apps/openapi/schema.py +0 -0
  295. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__init__.py +0 -0
  296. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_conditional[Open API 3.0].raw +0 -0
  297. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_custom_auth[Open API 3.0].raw +0 -0
  298. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args0-Basic dXNlcjpwYXNz].raw +0 -0
  299. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args1-Bearer EXPLICIT].raw +0 -0
  300. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_multiple_auth_mechanisms_with_explicit_auth.raw +0 -0
  301. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_multiple_threads[Open API 3.0].raw +0 -0
  302. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/__snapshots__/test_cli/test_requests_auth[Open API 3.0].raw +0 -0
  303. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/conftest.py +0 -0
  304. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/test_cli.py +0 -0
  305. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/test_provider.py +0 -0
  306. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/auth/test_pytest.py +0 -0
  307. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/checks/__init__.py +0 -0
  308. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/checks/test_checks.py +0 -0
  309. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__init__.py +0 -0
  310. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_cassettes/test_forbid_preserve_exact_bytes_without_cassette_path[Open API 3.0].raw +0 -0
  311. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_cassettes/test_forbid_simultaneous_use_of_deprecated_and_new_options[Open API 3.0].raw +0 -0
  312. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_checks/test_deduplication_on_sanitized_header.raw +0 -0
  313. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_add_case_output[Open API 2.0].raw +0 -0
  314. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_add_case_output[Open API 3.0].raw +0 -0
  315. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-Authorization].raw +0 -0
  316. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-authorization].raw +0 -0
  317. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0---auth='testwrong'].raw +0 -0
  318. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -0
  319. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0---auth='testwrong'].raw +0 -0
  320. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -0
  321. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_binary_payload.raw +0 -0
  322. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_certificate_only_key.raw +0 -0
  323. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_chunked_encoding_error[Open API 3.0].raw +0 -0
  324. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 2.0-1].raw +0 -0
  325. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 2.0-2].raw +0 -0
  326. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 3.0-1].raw +0 -0
  327. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 3.0-2].raw +0 -0
  328. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 2.0-1].raw +0 -0
  329. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 2.0-2].raw +0 -0
  330. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 3.0-1].raw +0 -0
  331. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 3.0-2].raw +0 -0
  332. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_commands_help.raw +0 -0
  333. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_complex_urlencoded_example.raw +0 -0
  334. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-1].raw +0 -0
  335. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-2].raw +0 -0
  336. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-1].raw +0 -0
  337. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-2].raw +0 -0
  338. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-1].raw +0 -0
  339. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-2].raw +0 -0
  340. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-1].raw +0 -0
  341. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-2].raw +0 -0
  342. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_custom_cli_option[Open API 3.0].raw +0 -0
  343. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_deprecated_filters[Open API 3.0].raw +0 -0
  344. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_duplicated_filters[Open API 3.0].raw +0 -0
  345. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_empty_schema_file[args0].raw +0 -0
  346. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_empty_schema_file[args1].raw +0 -0
  347. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_explicit_example_failure_output.raw +0 -0
  348. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_explicit_headers_in_output_on_errors[Open API 3.0].raw +0 -0
  349. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_explicit_query_token_sanitization[Open API 3.0].raw +0 -0
  350. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_filter_by[Open API 3.0---exclude-by=x-property != 42].raw +0 -0
  351. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_filter_by[Open API 3.0---include-by=x-property == 42].raw +0 -0
  352. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_force_color_nocolor[Open API 3.0].raw +0 -0
  353. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_get_request_with_body[Open API 2.0].raw +0 -0
  354. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_get_request_with_body[Open API 3.0].raw +0 -0
  355. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_graphql_asgi.raw +0 -0
  356. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args0].raw +0 -0
  357. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args1].raw +0 -0
  358. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args0].raw +0 -0
  359. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args1].raw +0 -0
  360. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_group_errors.raw +0 -0
  361. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hooks_module_not_found.raw +0 -0
  362. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hooks_with_inner_import_error.raw +0 -0
  363. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_database_with_derandomize[Open API 3.0].raw +0 -0
  364. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 2.0-1].raw +0 -0
  365. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 2.0-2].raw +0 -0
  366. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 3.0-1].raw +0 -0
  367. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 3.0-2].raw +0 -0
  368. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 2.0-1].raw +0 -0
  369. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 2.0-2].raw +0 -0
  370. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 3.0-1].raw +0 -0
  371. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 3.0-2].raw +0 -0
  372. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_filter[Open API 3.0].raw +0 -0
  373. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[real-Open API 2.0].raw +0 -0
  374. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[real-Open API 3.0].raw +0 -0
  375. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[wsgi-Open API 2.0].raw +0 -0
  376. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[wsgi-Open API 3.0].raw +0 -0
  377. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.0.2].raw +0 -0
  378. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.1.0].raw +0 -0
  379. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_invalid_yaml.raw +0 -0
  380. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_long_payload.raw +0 -0
  381. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[real-Open API 3.0].raw +0 -0
  382. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[wsgi-Open API 3.0].raw +0 -0
  383. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-1].raw +0 -0
  384. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-2].raw +0 -0
  385. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-1].raw +0 -0
  386. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-2].raw +0 -0
  387. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie-None].raw +0 -0
  388. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie-http127.0.0.1apiv2].raw +0 -0
  389. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header-None].raw +0 -0
  390. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header-http127.0.0.1apiv2].raw +0 -0
  391. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path-None].raw +0 -0
  392. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path-http127.0.0.1apiv2].raw +0 -0
  393. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query-None].raw +0 -0
  394. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query-http127.0.0.1apiv2].raw +0 -0
  395. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_multiple_errors.raw +0 -0
  396. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 2.0].raw +0 -0
  397. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 3.0].raw +0 -0
  398. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_in_single_check.raw +0 -0
  399. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 2.0].raw +0 -0
  400. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 3.0].raw +0 -0
  401. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_nested_binary_in_yaml.raw +0 -0
  402. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner[Open API 3.0-1].raw +0 -0
  403. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner[Open API 3.0-2].raw +0 -0
  404. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_filtered_out[Open API 3.0].raw +0 -0
  405. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_generation_config[Open API 3.0].raw +0 -0
  406. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_keyboard_interrupt[Open API 3.0].raw +0 -0
  407. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_max_failures[Open API 3.0].raw +0 -0
  408. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_proxy_error[Open API 3.0].raw +0 -0
  409. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_stateful_only[Open API 3.0].raw +0 -0
  410. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_stateful_only_with_error[Open API 3.0].raw +0 -0
  411. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_no_schema_in_media_type[Open API 3.0].raw +0 -0
  412. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_no_useless_traceback.raw +0 -0
  413. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_null_byte_in_header_probe.raw +0 -0
  414. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links[real-Open API 2.0].raw +0 -0
  415. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links[real-Open API 3.0].raw +0 -0
  416. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links[wsgi-Open API 2.0].raw +0 -0
  417. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links[wsgi-Open API 3.0].raw +0 -0
  418. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_disabled[Open API 2.0].raw +0 -0
  419. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_disabled[Open API 3.0].raw +0 -0
  420. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 2.0-1].raw +0 -0
  421. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 2.0-5].raw +0 -0
  422. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 3.0-1].raw +0 -0
  423. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 3.0-5].raw +0 -0
  424. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 2.0-1].raw +0 -0
  425. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 2.0-5].raw +0 -0
  426. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 3.0-1].raw +0 -0
  427. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 3.0-5].raw +0 -0
  428. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_proxy_error[Open API 3.0].raw +0 -0
  429. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_read_content_timeout[Open API 3.0].raw +0 -0
  430. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_recursive_reference_error_message.raw +0 -0
  431. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 2.0].raw +0 -0
  432. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 3.0].raw +0 -0
  433. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 2.0].raw +0 -0
  434. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 3.0].raw +0 -0
  435. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_remote_disconnected_error[Open API 3.0].raw +0 -0
  436. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[real-Open API 2.0].raw +0 -0
  437. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[real-Open API 3.0].raw +0 -0
  438. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[wsgi-Open API 2.0].raw +0 -0
  439. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[wsgi-Open API 3.0].raw +0 -0
  440. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[real-Open API 2.0].raw +0 -0
  441. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[real-Open API 3.0].raw +0 -0
  442. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[wsgi-Open API 2.0].raw +0 -0
  443. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[wsgi-Open API 3.0].raw +0 -0
  444. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args0].raw +0 -0
  445. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args10].raw +0 -0
  446. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args11].raw +0 -0
  447. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args12].raw +0 -0
  448. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args13].raw +0 -0
  449. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args14].raw +0 -0
  450. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args15].raw +0 -0
  451. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args16].raw +0 -0
  452. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args17].raw +0 -0
  453. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args18].raw +0 -0
  454. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args19].raw +0 -0
  455. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args1].raw +0 -0
  456. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args20].raw +0 -0
  457. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args21].raw +0 -0
  458. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args22].raw +0 -0
  459. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args23].raw +0 -0
  460. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args25].raw +0 -0
  461. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args26].raw +0 -0
  462. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args27].raw +0 -0
  463. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args28].raw +0 -0
  464. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args29].raw +0 -0
  465. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args2].raw +0 -0
  466. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args30].raw +0 -0
  467. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args31].raw +0 -0
  468. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args32].raw +0 -0
  469. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args33].raw +0 -0
  470. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args34].raw +0 -0
  471. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args35].raw +0 -0
  472. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args36].raw +0 -0
  473. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args37].raw +0 -0
  474. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args3].raw +0 -0
  475. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args4].raw +0 -0
  476. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args5].raw +0 -0
  477. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args6].raw +0 -0
  478. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args7].raw +0 -0
  479. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args8].raw +0 -0
  480. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_run_output[args9].raw +0 -0
  481. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_schema_not_available[1].raw +0 -0
  482. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_schema_not_available[2].raw +0 -0
  483. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_schema_not_available_wsgi.raw +0 -0
  484. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_stateful_explicit_examples_with_filters[Open API 3.0].raw +0 -0
  485. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 2.0-1].raw +0 -0
  486. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 2.0-2].raw +0 -0
  487. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 3.0-1].raw +0 -0
  488. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 3.0-2].raw +0 -0
  489. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 2.0-1].raw +0 -0
  490. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 2.0-2].raw +0 -0
  491. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 3.0-1].raw +0 -0
  492. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 3.0-2].raw +0 -0
  493. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unknown_schema_error[Open API 3.0].raw +0 -0
  494. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unresolvable_links[Open API 3.0].raw +0 -0
  495. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unresolvable_reference_with_disabled_validation.raw +0 -0
  496. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 2.0-1].raw +0 -0
  497. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 2.0-2].raw +0 -0
  498. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 3.0-1].raw +0 -0
  499. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 3.0-2].raw +0 -0
  500. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 2.0-1].raw +0 -0
  501. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 2.0-2].raw +0 -0
  502. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 3.0-1].raw +0 -0
  503. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 3.0-2].raw +0 -0
  504. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_unsupported_regex.raw +0 -0
  505. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_useful_traceback[Open API 3.0].raw +0 -0
  506. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_wait_for_schema_not_enough.raw +0 -0
  507. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_commands/test_yaml_parsing_of_floats[Open API 3.0].raw +0 -0
  508. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_hooks/test_after_call[real-Open API 3.0].raw +0 -0
  509. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/__snapshots__/test_hooks/test_after_call[wsgi-Open API 3.0].raw +0 -0
  510. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/cert.pem +0 -0
  511. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/conftest.py +0 -0
  512. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/output/__init__.py +0 -0
  513. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/output/test_default.py +0 -0
  514. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_asgi.py +0 -0
  515. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_cassettes.py +0 -0
  516. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_crashes.py +0 -0
  517. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_hooks.py +0 -0
  518. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_junitxml.py +0 -0
  519. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_options.py +0 -0
  520. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_reporting.py +0 -0
  521. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/cli/test_targeted.py +0 -0
  522. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/code_samples/__snapshots__/test_python/test_cli_output[Open API 2.0].raw +0 -0
  523. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/code_samples/__snapshots__/test_python/test_cli_output[Open API 3.0].raw +0 -0
  524. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/code_samples/conftest.py +0 -0
  525. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/code_samples/test_python.py +0 -0
  526. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_cli[None].raw +0 -0
  527. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema0].raw +0 -0
  528. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema1].raw +0 -0
  529. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema2].raw +0 -0
  530. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_cli_failure.raw +0 -0
  531. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[1].raw +0 -0
  532. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[2].raw +0 -0
  533. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/__snapshots__/test_unique_data/test_graphql_url.raw +0 -0
  534. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/openapi/__snapshots__/test_fill_missing_examples/test_fills_missing_examples.raw +0 -0
  535. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/openapi/formats/test_uuid.py +0 -0
  536. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/openapi/test_fill_missing_examples.py +0 -0
  537. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/test_install.py +0 -0
  538. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/contrib/test_unique_data.py +0 -0
  539. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/coverage/__init__.py +0 -0
  540. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/coverage/test_examples.py +0 -0
  541. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/coverage/test_phase.py +0 -0
  542. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/petstore_v2.yaml +0 -0
  543. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/petstore_v3.yaml +0 -0
  544. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/relative_files/components/parameters.yaml +0 -0
  545. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/relative_files/components/responses.yaml +0 -0
  546. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/relative_files/components/schemas.yaml +0 -0
  547. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/relative_files/main.yaml +0 -0
  548. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/relative_files/paths/user-account.yaml +0 -0
  549. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/simple_openapi.yaml +0 -0
  550. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/data/simple_swagger.yaml +0 -0
  551. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/experimental/__snapshots__/test_experiments/test_not_enabled.raw +0 -0
  552. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/experimental/conftest.py +0 -0
  553. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/experimental/test_experiments.py +0 -0
  554. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/extra/__init__.py +0 -0
  555. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/extra/test_aiohttp.py +0 -0
  556. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/filters/__init__.py +0 -0
  557. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/filters/test_expressions.py +0 -0
  558. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/filters/test_matching.py +0 -0
  559. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/hooks/test_filter_operations.py +0 -0
  560. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/hooks/test_filters.py +0 -0
  561. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/loaders/conftest.py +0 -0
  562. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/loaders/test_app.py +0 -0
  563. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/loaders/test_common.py +0 -0
  564. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/loaders/test_graphql.py +0 -0
  565. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/loaders/test_openapi.py +0 -0
  566. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/loaders/test_yaml.py +0 -0
  567. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/runner/__init__.py +0 -0
  568. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/runner/test_checks.py +0 -0
  569. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/runner/test_events.py +0 -0
  570. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/runner/test_probes.py +0 -0
  571. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/runner/test_runner.py +0 -0
  572. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__init__.py +0 -0
  573. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_client_error_on_project_details[Open API 3.0].raw +0 -0
  574. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_client_error_on_upload[Open API 3.0].raw +0 -0
  575. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_error_in_another_handler[Open API 3.0].raw +0 -0
  576. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_github_suggestion[Open API 3.0].raw +0 -0
  577. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_not_authenticated_with_name.raw +0 -0
  578. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_two_names.raw +0 -0
  579. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_unauthorized[Open API 3.0].raw +0 -0
  580. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_unknown_error_on_upload[Open API 3.0].raw +0 -0
  581. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_upload_failure[Open API 3.0].raw +0 -0
  582. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_cli/test_upload_success[Open API 3.0].raw +0 -0
  583. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_connection_error[Open API 3.0].raw +0 -0
  584. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_custom_format.raw +0 -0
  585. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_dry_run[Open API 3.0].raw +0 -0
  586. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_forbidden[Open API 3.0].raw +0 -0
  587. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_graphql_scalars.raw +0 -0
  588. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_internal_server_error[Open API 3.0].raw +0 -0
  589. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_invalid_extension[Open API 3.0-42].raw +0 -0
  590. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_invalid_extension[Open API 3.0-extension1].raw +0 -0
  591. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_invalid_payload[Open API 3.0].raw +0 -0
  592. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_media_type_extension[strategy0].raw +0 -0
  593. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_media_type_extension[strategy1].raw +0 -0
  594. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_oversize_text[Open API 3.0].raw +0 -0
  595. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_schema_patches[patch0-expected0].raw +0 -0
  596. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_schema_patches[patch1-expected1].raw +0 -0
  597. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_schema_patches[patch2-expected2].raw +0 -0
  598. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/__snapshots__/test_extensions/test_unknown_extension_in_cli[Open API 3.0].raw +0 -0
  599. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/conftest.py +0 -0
  600. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_auth.py +0 -0
  601. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_ci.py +0 -0
  602. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_extensions.py +0 -0
  603. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_report.py +0 -0
  604. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_serialization.py +0 -0
  605. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/service/test_usage.py +0 -0
  606. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_basic/test_disallow_null.raw +0 -0
  607. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_basic/test_filter_operations[--exclude-name=Query.getBooks].raw +0 -0
  608. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_basic/test_filter_operations[--include-name=Query.getBooks].raw +0 -0
  609. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n 123(created Int!) Int!n}-.whatever].raw +0 -0
  610. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n func(created Unknown!) Int!n}-.gql].raw +0 -0
  611. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_custom_scalars/test_built_in_scalars_in_cli.raw +0 -0
  612. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/__snapshots__/test_custom_scalars/test_custom_scalar_in_cli.raw +0 -0
  613. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/test_custom_scalars.py +0 -0
  614. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/graphql/test_pytest.py +0 -0
  615. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/__snapshots__/test_examples/test_network_error_with_flaky_generation.raw +0 -0
  616. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/__snapshots__/test_examples/test_parameter_override.raw +0 -0
  617. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/__snapshots__/test_ignored_auth/test_explicit_auth_cli[Open API 3.0].raw +0 -0
  618. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/__snapshots__/test_media_types/test_explicit_example_with_custom_media_type.raw +0 -0
  619. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/blank.pdf +0 -0
  620. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/conftest.py +0 -0
  621. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/parameters/test_forms.py +0 -0
  622. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/parameters/test_non_payload.py +0 -0
  623. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/parameters/test_simple_payloads.py +0 -0
  624. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/stateful/__init__.py +0 -0
  625. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/stateful/test_config.py +0 -0
  626. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/stateful/test_stateful.py +0 -0
  627. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_examples.py +0 -0
  628. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_expressions.py +0 -0
  629. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_hypothesis.py +0 -0
  630. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_links.py +0 -0
  631. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_media_types.py +0 -0
  632. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_negative.py +0 -0
  633. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_parameters.py +0 -0
  634. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_patterns.py +0 -0
  635. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_randomized.py +0 -0
  636. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_schemas.py +0 -0
  637. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_security.py +0 -0
  638. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_serializing.py +0 -0
  639. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_utils.py +0 -0
  640. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/specs/openapi/test_validation.py +0 -0
  641. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_app.py +0 -0
  642. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_asgi.py +0 -0
  643. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_async.py +0 -0
  644. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_common_parameters.py +0 -0
  645. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_converter.py +0 -0
  646. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_dereferencing.py +0 -0
  647. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_direct_access.py +0 -0
  648. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_examples.py +0 -0
  649. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_filters.py +0 -0
  650. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_fixups.py +0 -0
  651. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_hypothesis.py +0 -0
  652. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_internal.py +0 -0
  653. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_models.py +0 -0
  654. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_output.py +0 -0
  655. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_package.py +0 -0
  656. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_parameters.py +0 -0
  657. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_parametrization.py +0 -0
  658. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_petstore.py +0 -0
  659. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_pytest.py +0 -0
  660. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_rate_limit.py +0 -0
  661. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_required.py +0 -0
  662. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_sanitizing_output.py +0 -0
  663. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_schemas.py +0 -0
  664. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_serialization.py +0 -0
  665. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_stateful.py +0 -0
  666. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_unittest.py +0 -0
  667. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_utils.py +0 -0
  668. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/test_wsgi.py +0 -0
  669. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/transports/test_content_types.py +0 -0
  670. {schemathesis-3.36.3 → schemathesis-3.37.0}/test/utils.py +0 -0
  671. {schemathesis-3.36.3 → schemathesis-3.37.0}/test-corpus/test_corpus.py +0 -0
  672. {schemathesis-3.36.3 → schemathesis-3.37.0}/test_server.sh +0 -0
  673. {schemathesis-3.36.3 → schemathesis-3.37.0}/tox.ini +0 -0
@@ -25,7 +25,7 @@ jobs:
25
25
  name: Generic pre-commit checks
26
26
  runs-on: ubuntu-22.04
27
27
  steps:
28
- - uses: actions/checkout@v4.1.7
28
+ - uses: actions/checkout@v4.2.0
29
29
  with:
30
30
  fetch-depth: 1
31
31
 
@@ -41,7 +41,7 @@ jobs:
41
41
  name: Documentation
42
42
  runs-on: ubuntu-22.04
43
43
  steps:
44
- - uses: actions/checkout@v4.1.7
44
+ - uses: actions/checkout@v4.2.0
45
45
  with:
46
46
  fetch-depth: 1
47
47
  - uses: ammaraskar/sphinx-action@master
@@ -63,7 +63,7 @@ jobs:
63
63
  name: Tests (Python ${{ matrix.python }} on ${{ matrix.os }} ${{ matrix.tox_env }})
64
64
  runs-on: ${{ matrix.os }}
65
65
  steps:
66
- - uses: actions/checkout@v4.1.7
66
+ - uses: actions/checkout@v4.2.0
67
67
  with:
68
68
  fetch-depth: 1
69
69
 
@@ -80,7 +80,7 @@ jobs:
80
80
  run: uvx --with="tox" --with="tox-gh-actions" --with="tox-uv" tox
81
81
 
82
82
  - name: Upload coverage to Codecov
83
- uses: codecov/codecov-action@v4.5.0
83
+ uses: codecov/codecov-action@v4.6.0
84
84
  with:
85
85
  token: ${{ secrets.CODECOV_TOKEN }}
86
86
 
@@ -93,7 +93,7 @@ jobs:
93
93
  name: Test piping output to a file with CP1252 encoding on ${{ matrix.os }}
94
94
  runs-on: ${{ matrix.os }}
95
95
  steps:
96
- - uses: actions/checkout@v4.1.7
96
+ - uses: actions/checkout@v4.2.0
97
97
  with:
98
98
  fetch-depth: 1
99
99
 
@@ -30,7 +30,7 @@ jobs:
30
30
 
31
31
  steps:
32
32
  - name: Checkout repository
33
- uses: actions/checkout@v4.1.7
33
+ uses: actions/checkout@v4.2.0
34
34
  with:
35
35
  # We must fetch at least the immediate parents so that if this is
36
36
  # a pull request then we can checkout the head.
@@ -38,7 +38,7 @@ jobs:
38
38
 
39
39
  # Initializes the CodeQL tools for scanning.
40
40
  - name: Initialize CodeQL
41
- uses: github/codeql-action/init@v3.26.8
41
+ uses: github/codeql-action/init@v3.26.11
42
42
  with:
43
43
  languages: ${{ matrix.language }}
44
44
  # If you wish to specify custom queries, you can do so here or in a config file.
@@ -49,7 +49,7 @@ jobs:
49
49
  # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
50
50
  # If this step fails, then you should remove it and run the build manually (see below)
51
51
  - name: Autobuild
52
- uses: github/codeql-action/autobuild@v3.26.8
52
+ uses: github/codeql-action/autobuild@v3.26.11
53
53
 
54
54
  # ℹ️ Command-line programs to run using the OS shell.
55
55
  # 📚 https://git.io/JvXDl
@@ -63,4 +63,4 @@ jobs:
63
63
  # make release
64
64
 
65
65
  - name: Perform CodeQL Analysis
66
- uses: github/codeql-action/analyze@v3.26.8
66
+ uses: github/codeql-action/analyze@v3.26.11
@@ -7,11 +7,14 @@ on:
7
7
  pull_request:
8
8
  workflow_dispatch:
9
9
 
10
+ env:
11
+ SCHEMATHESIS_BENCHMARK_SEED: "42"
12
+
10
13
  jobs:
11
14
  benchmarks:
12
15
  runs-on: ubuntu-latest
13
16
  steps:
14
- - uses: actions/checkout@v4.1.7
17
+ - uses: actions/checkout@v4.2.0
15
18
  - uses: actions/setup-python@v5
16
19
  with:
17
20
  # Python 3.12 for flamegraph support
@@ -12,7 +12,7 @@ jobs:
12
12
  runs-on: ubuntu-22.04
13
13
  steps:
14
14
  - name: Check out code
15
- uses: actions/checkout@v4.1.7
15
+ uses: actions/checkout@v4.2.0
16
16
  with:
17
17
  fetch-depth: 0
18
18
  - name: Run commitsar
@@ -16,7 +16,7 @@ jobs:
16
16
  runs-on: ubuntu-22.04
17
17
 
18
18
  steps:
19
- - uses: actions/checkout@v4.1.7
19
+ - uses: actions/checkout@v4.2.0
20
20
 
21
21
  - name: Start containers
22
22
  run: docker compose up -d --build
@@ -20,7 +20,7 @@ jobs:
20
20
  tag: "latest-bookworm"
21
21
 
22
22
  steps:
23
- - uses: actions/checkout@v4.1.7
23
+ - uses: actions/checkout@v4.2.0
24
24
 
25
25
  - name: Set up QEMU
26
26
  uses: docker/setup-qemu-action@v3
@@ -19,7 +19,7 @@ jobs:
19
19
  tag-suffix: "-bookworm"
20
20
 
21
21
  steps:
22
- - uses: actions/checkout@v4.1.7
22
+ - uses: actions/checkout@v4.2.0
23
23
 
24
24
  - name: Docker meta
25
25
  id: meta
@@ -68,7 +68,7 @@ jobs:
68
68
  name: Build and publish package to pypi.org
69
69
  runs-on: ubuntu-22.04
70
70
  steps:
71
- - uses: actions/checkout@v4.1.7
71
+ - uses: actions/checkout@v4.2.0
72
72
  with:
73
73
  fetch-depth: 1
74
74
 
@@ -12,7 +12,7 @@ jobs:
12
12
  name: Default corpus tests
13
13
  runs-on: ubuntu-22.04
14
14
  steps:
15
- - uses: actions/checkout@v4.1.7
15
+ - uses: actions/checkout@v4.2.0
16
16
  with:
17
17
  fetch-depth: 1
18
18
  submodules: true
@@ -29,7 +29,7 @@ jobs:
29
29
  name: Corpus tests for the coverage phase
30
30
  runs-on: ubuntu-22.04
31
31
  steps:
32
- - uses: actions/checkout@v4.1.7
32
+ - uses: actions/checkout@v4.2.0
33
33
  with:
34
34
  fetch-depth: 1
35
35
  submodules: true
@@ -11,7 +11,7 @@ jobs:
11
11
  name: Hypothesis tests with CI profile
12
12
  runs-on: ubuntu-22.04
13
13
  steps:
14
- - uses: actions/checkout@v4.1.7
14
+ - uses: actions/checkout@v4.2.0
15
15
  with:
16
16
  fetch-depth: 1
17
17
 
@@ -10,7 +10,7 @@ jobs:
10
10
  name: Update pre-commit
11
11
  runs-on: ubuntu-22.04
12
12
  steps:
13
- - uses: actions/checkout@v4.1.7
13
+ - uses: actions/checkout@v4.2.0
14
14
  with:
15
15
  fetch-depth: 1
16
16
  submodules: true
@@ -3,7 +3,7 @@ default_language_version:
3
3
 
4
4
  repos:
5
5
  - repo: https://github.com/pre-commit/pre-commit-hooks
6
- rev: v4.6.0
6
+ rev: v5.0.0
7
7
  hooks:
8
8
  - id: check-yaml
9
9
  - id: end-of-file-fixer
@@ -38,12 +38,12 @@ repos:
38
38
  additional_dependencies: [types-click, types-requests, types-PyYAML]
39
39
 
40
40
  - repo: https://github.com/astral-sh/ruff-pre-commit
41
- rev: v0.6.8
41
+ rev: v0.6.9
42
42
  hooks:
43
43
  - id: ruff-format
44
44
 
45
45
  - repo: https://github.com/astral-sh/ruff-pre-commit
46
- rev: v0.6.8
46
+ rev: v0.6.9
47
47
  hooks:
48
48
  - id: ruff
49
49
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: schemathesis
3
- Version: 3.36.3
3
+ Version: 3.37.0
4
4
  Summary: Property-based testing framework for Open API and GraphQL based apps
5
5
  Project-URL: Documentation, https://schemathesis.readthedocs.io/en/stable/
6
6
  Project-URL: Changelog, https://schemathesis.readthedocs.io/en/stable/changelog.html
@@ -40,7 +40,7 @@ Requires-Dist: hypothesis[zoneinfo]<7,>=6.103.4; python_version == '3.8'
40
40
  Requires-Dist: jsonschema[format]<5.0,>=4.18.0
41
41
  Requires-Dist: junit-xml<2.0,>=1.9
42
42
  Requires-Dist: pyrate-limiter<4.0,>=2.10
43
- Requires-Dist: pytest-subtests<0.8.0,>=0.2.1
43
+ Requires-Dist: pytest-subtests<0.14.0,>=0.2.1
44
44
  Requires-Dist: pytest<9,>=4.6.4
45
45
  Requires-Dist: pyyaml<7.0,>=5.1
46
46
  Requires-Dist: requests<3,>=2.22
@@ -0,0 +1,133 @@
1
+ """Benchmarks for the coverage phase."""
2
+
3
+ import pytest
4
+
5
+ from schemathesis.generation.coverage import cover_schema_iter, CoverageContext
6
+
7
+ CONTEXTS = [CoverageContext.with_positive(), CoverageContext.with_negative()]
8
+ CONTEXT_NAMES = [",".join([m.value for m in ctx.data_generation_methods]) for ctx in CONTEXTS]
9
+
10
+ BASIC_TYPES = [
11
+ {"type": "string"},
12
+ {"type": "integer"},
13
+ {"type": "number"},
14
+ {"type": "boolean"},
15
+ {"type": "null"},
16
+ ]
17
+
18
+
19
+ @pytest.mark.benchmark
20
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
21
+ @pytest.mark.parametrize("schema", BASIC_TYPES, ids=lambda x: f"basic-{x['type']}")
22
+ def test_basic_types(benchmark, ctx, schema):
23
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
24
+
25
+
26
+ STRING_CONSTRAINTS = [
27
+ {"type": "string", "minLength": 5},
28
+ {"type": "string", "maxLength": 10},
29
+ {"type": "string", "pattern": "^[a-z]+$"},
30
+ {"type": "string", "format": "email"},
31
+ ]
32
+
33
+
34
+ @pytest.mark.benchmark
35
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
36
+ @pytest.mark.parametrize("schema", STRING_CONSTRAINTS, ids=lambda x: f"string-{list(x.keys())[1]}")
37
+ def test_string_constraints(benchmark, ctx, schema):
38
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
39
+
40
+
41
+ NUMBER_CONSTRAINTS = [
42
+ {"type": "number", "minimum": 0, "maximum": 100},
43
+ {"type": "integer", "multipleOf": 5},
44
+ {"type": "number", "exclusiveMinimum": 0, "exclusiveMaximum": 1},
45
+ ]
46
+
47
+
48
+ @pytest.mark.benchmark
49
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
50
+ @pytest.mark.parametrize("schema", NUMBER_CONSTRAINTS, ids=lambda x: f"number-{list(x.keys())[1]}")
51
+ def test_number_constraints(benchmark, ctx, schema):
52
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
53
+
54
+
55
+ ARRAY_CONSTRAINTS = [
56
+ {"type": "array", "items": {"type": "string"}},
57
+ {"type": "array", "minItems": 2, "maxItems": 5},
58
+ {"type": "array", "uniqueItems": True},
59
+ ]
60
+
61
+
62
+ @pytest.mark.benchmark
63
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
64
+ @pytest.mark.parametrize("schema", ARRAY_CONSTRAINTS, ids=lambda x: f"array-{list(x.keys())[1]}")
65
+ def test_array_constraints(benchmark, ctx, schema):
66
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
67
+
68
+
69
+ OBJECT_CONSTRAINTS = [
70
+ {"type": "object", "properties": {"name": {"type": "string"}, "age": {"type": "integer"}}},
71
+ {"type": "object", "required": ["id"], "properties": {"id": {"type": "string"}}},
72
+ {"type": "object", "additionalProperties": False, "properties": {"key": {"type": "string"}}},
73
+ ]
74
+
75
+
76
+ @pytest.mark.benchmark
77
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
78
+ @pytest.mark.parametrize("schema", OBJECT_CONSTRAINTS, ids=lambda x: f"object-{list(x.keys())[1]}")
79
+ def test_object_constraints(benchmark, ctx, schema):
80
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
81
+
82
+
83
+ # Combined schemas
84
+ COMBINED_SCHEMAS = [
85
+ {"anyOf": [{"type": "string"}, {"type": "integer"}]},
86
+ {"oneOf": [{"type": "number", "multipleOf": 5}, {"type": "number", "multipleOf": 3}]},
87
+ {"allOf": [{"type": "string"}, {"minLength": 5}]},
88
+ ]
89
+
90
+
91
+ @pytest.mark.benchmark
92
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
93
+ @pytest.mark.parametrize("schema", COMBINED_SCHEMAS, ids=lambda x: f"combined-{list(x.keys())[0]}")
94
+ def test_combined_schemas(benchmark, ctx, schema):
95
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
96
+
97
+
98
+ COMPLEX_NESTED_SCHEMAS = [
99
+ {
100
+ "type": "object",
101
+ "properties": {
102
+ "user": {
103
+ "type": "object",
104
+ "properties": {
105
+ "name": {"type": "string"},
106
+ "age": {"type": "integer", "minimum": 18},
107
+ "emails": {"type": "array", "items": {"type": "string", "format": "email"}},
108
+ },
109
+ "required": ["name", "age"],
110
+ }
111
+ },
112
+ },
113
+ {
114
+ "type": "array",
115
+ "items": {
116
+ "type": "object",
117
+ "properties": {
118
+ "id": {"type": "integer"},
119
+ "tags": {"type": "array", "items": {"type": "string"}, "uniqueItems": True},
120
+ },
121
+ "required": ["id"],
122
+ },
123
+ "minItems": 1,
124
+ "maxItems": 10,
125
+ },
126
+ ]
127
+
128
+
129
+ @pytest.mark.benchmark
130
+ @pytest.mark.parametrize("ctx", CONTEXTS, ids=CONTEXT_NAMES)
131
+ @pytest.mark.parametrize("schema", COMPLEX_NESTED_SCHEMAS, ids=lambda x: f"complex-{x['type']}")
132
+ def test_complex_nested_schemas(benchmark, ctx, schema):
133
+ benchmark(lambda: list(cover_schema_iter(ctx, schema)))
@@ -1,9 +1,41 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
- :version:`Unreleased <v3.36.3...HEAD>` - TBD
4
+ :version:`Unreleased <v3.37.0...HEAD>` - TBD
5
5
  --------------------------------------------
6
6
 
7
+ .. _v3.37.0:
8
+
9
+ :version:`3.37.0 <v3.36.4...v3.37.0>` - 2024-10-09
10
+ --------------------------------------------------
11
+
12
+ **Added**
13
+
14
+ - Support for ``pytest-subtests`` up to ``0.14``.
15
+ - Experimental "Positive Data Acceptance" check to verify that schema-conforming data receives 2xx status responses. Enable with `--experimental=positive_data_acceptance`
16
+ - Experimental CLI options to configure the ``negative_data_rejection`` check.
17
+ - More negative string combinations with patterns in the coverage phase.
18
+
19
+ **Fixed**
20
+
21
+ - Internal error in conditional hooks.
22
+ - Negative test cases for patterns in the coverage phase.
23
+
24
+ .. _v3.36.4:
25
+
26
+ :version:`3.36.4 <v3.36.3...v3.36.4>` - 2024-10-05
27
+ --------------------------------------------------
28
+
29
+ **Fixed**
30
+
31
+ - False positive for ``ignored_auth`` when used in stateful test runner. :issue:`2482`
32
+ - Open Api 3.1 spec using ``$ref`` in a path is incorrectly validated as invalid. :issue:`2484`
33
+ - Properly serialize ``seed`` in cassettes if ``--hypothesis-derandomize`` is present.
34
+
35
+ **Performance**
36
+
37
+ - Improvements for the coverage phase.
38
+
7
39
  .. _v3.36.3:
8
40
 
9
41
  :version:`3.36.3 <v3.36.2...v3.36.3>` - 2024-09-29
@@ -144,6 +144,49 @@ Using Environment Variables
144
144
 
145
145
  For more details, join the `GitHub Discussion #2418 <https://github.com/schemathesis/schemathesis/discussions/2418>`_.
146
146
 
147
+ Positive Data Acceptance
148
+ ~~~~~~~~~~~~~~~~~~~~~~~~
149
+
150
+ Verifies that schema-conforming data receives 2xx status responses, highlighting mismatches between schema and API behavior across all endpoints.
151
+
152
+ **Allowed status codes**: 2xx, 401, 403, 404
153
+
154
+ **Note**: May produce false positives with complex validation that is not reflected in the schema.
155
+
156
+ .. _positive-data-acceptance-cli:
157
+
158
+ In CLI
159
+ ~~~~~~
160
+
161
+ .. code-block:: bash
162
+
163
+ st run https://example.schemathesis.io/openapi.json --experimental=positive_data_acceptance
164
+
165
+ Configuration options:
166
+
167
+ .. code-block:: bash
168
+
169
+ --experimental-positive-data-acceptance-allowed-statuses=202
170
+
171
+ .. _positive-data-acceptance-env-vars:
172
+
173
+ Using Environment Variables
174
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
175
+
176
+ To enable Positive Data Acceptance via environment variables:
177
+
178
+ .. code-block:: bash
179
+
180
+ export SCHEMATHESIS_EXPERIMENTAL_POSITIVE_DATA_ACCEPTANCE=true
181
+
182
+ Configure status codes:
183
+
184
+ .. code-block:: bash
185
+
186
+ export SCHEMATHESIS_EXPERIMENTAL_POSITIVE_DATA_ACCEPTANCE_ALLOWED_STATUSES=201,202,204
187
+
188
+ For more details, join the `GitHub Discussion #2499 <https://github.com/schemathesis/schemathesis/discussions/2499>`_.
189
+
147
190
  .. _stateful-test-runner:
148
191
 
149
192
  New Stateful Test Runner
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "schemathesis"
7
- version = "3.36.3"
7
+ version = "3.37.0"
8
8
  description = "Property-based testing framework for Open API and GraphQL based apps"
9
9
  keywords = ["pytest", "hypothesis", "openapi", "graphql", "testing"]
10
10
  authors = [{ name = "Dmitry Dygalo", email = "dmitry@dygalo.dev" }]
@@ -43,7 +43,7 @@ dependencies = [
43
43
  "jsonschema[format]>=4.18.0,<5.0",
44
44
  "junit-xml>=1.9,<2.0",
45
45
  "pyrate-limiter>=2.10,<4.0",
46
- "pytest-subtests>=0.2.1,<0.8.0",
46
+ "pytest-subtests>=0.2.1,<0.14.0",
47
47
  "pytest>=4.6.4,<9",
48
48
  "PyYAML>=5.1,<7.0",
49
49
  "requests>=2.22,<3",
@@ -36,6 +36,7 @@ from ..filters import FilterSet, expression_to_filter_function, is_deprecated
36
36
  from ..fixups import ALL_FIXUPS
37
37
  from ..generation import DEFAULT_DATA_GENERATION_METHODS, DataGenerationMethod
38
38
  from ..hooks import GLOBAL_HOOK_DISPATCHER, HookContext, HookDispatcher, HookScope
39
+ from ..internal.checks import CheckConfig, PositiveDataAcceptanceConfig
39
40
  from ..internal.datetime import current_datetime
40
41
  from ..internal.output import OutputConfig
41
42
  from ..internal.validation import file_exists
@@ -52,7 +53,7 @@ from .context import ExecutionContext, FileReportContext, ServiceReportContext
52
53
  from .debug import DebugOutputHandler
53
54
  from .handlers import EventHandler
54
55
  from .junitxml import JunitXMLHandler
55
- from .options import CsvChoice, CsvEnumChoice, CustomHelpMessageChoice, OptionalInt
56
+ from .options import CsvChoice, CsvEnumChoice, CsvListChoice, CustomHelpMessageChoice, OptionalInt
56
57
  from .sanitization import SanitizationHandler
57
58
 
58
59
  if TYPE_CHECKING:
@@ -296,6 +297,14 @@ REPORT_TO_SERVICE = ReportToService()
296
297
  default=False,
297
298
  help="Simulate test execution without making any actual requests, useful for validating data generation",
298
299
  )
300
+ @grouped_option(
301
+ "--fixups",
302
+ help="Apply compatibility adjustments",
303
+ multiple=True,
304
+ type=click.Choice([*ALL_FIXUPS, "all"]),
305
+ metavar="",
306
+ )
307
+ @group("Experimental options")
299
308
  @grouped_option(
300
309
  "--experimental",
301
310
  "experiments",
@@ -307,6 +316,7 @@ REPORT_TO_SERVICE = ReportToService()
307
316
  experimental.STATEFUL_TEST_RUNNER.name,
308
317
  experimental.STATEFUL_ONLY.name,
309
318
  experimental.COVERAGE_PHASE.name,
319
+ experimental.POSITIVE_DATA_ACCEPTANCE.name,
310
320
  ]
311
321
  ),
312
322
  callback=callbacks.convert_experimental,
@@ -314,11 +324,22 @@ REPORT_TO_SERVICE = ReportToService()
314
324
  metavar="",
315
325
  )
316
326
  @grouped_option(
317
- "--fixups",
318
- help="Apply compatibility adjustments",
319
- multiple=True,
320
- type=click.Choice([*ALL_FIXUPS, "all"]),
327
+ "--experimental-positive-data-acceptance-allowed-statuses",
328
+ "positive_data_acceptance_allowed_statuses",
329
+ help="Comma-separated list of status codes considered as successful responses",
330
+ type=CsvListChoice(),
331
+ callback=callbacks.convert_status_codes,
332
+ metavar="",
333
+ envvar="SCHEMATHESIS_EXPERIMENTAL_POSITIVE_DATA_ACCEPTANCE_ALLOWED_STATUSES",
334
+ )
335
+ @grouped_option(
336
+ "--experimental-negative-data-rejection-allowed-statuses",
337
+ "negative_data_rejection_allowed_statuses",
338
+ help="Comma-separated list of status codes expected for rejected negative data",
339
+ type=CsvListChoice(),
340
+ callback=callbacks.convert_status_codes,
321
341
  metavar="",
342
+ envvar="SCHEMATHESIS_EXPERIMENTAL_NEGATIVE_DATA_REJECTION_ALLOWED_STATUSES",
322
343
  )
323
344
  @group("API validation options")
324
345
  @grouped_option(
@@ -834,6 +855,8 @@ def run(
834
855
  set_cookie: dict[str, str],
835
856
  set_path: dict[str, str],
836
857
  experiments: list,
858
+ positive_data_acceptance_allowed_statuses: list[str],
859
+ negative_data_rejection_allowed_statuses: list[str],
837
860
  checks: Iterable[str] = DEFAULT_CHECKS_NAMES,
838
861
  exclude_checks: Iterable[str] = (),
839
862
  data_generation_methods: tuple[DataGenerationMethod, ...] = DEFAULT_DATA_GENERATION_METHODS,
@@ -1142,6 +1165,16 @@ def run(
1142
1165
  else:
1143
1166
  selected_checks = tuple(check for check in checks_module.ALL_CHECKS if check.__name__ in checks)
1144
1167
 
1168
+ checks_config = CheckConfig()
1169
+ if experimental.POSITIVE_DATA_ACCEPTANCE.is_enabled:
1170
+ from ..specs.openapi.checks import positive_data_acceptance
1171
+
1172
+ selected_checks += (positive_data_acceptance,)
1173
+ if positive_data_acceptance_allowed_statuses:
1174
+ checks_config.positive_data_acceptance.allowed_statuses = positive_data_acceptance_allowed_statuses
1175
+ if negative_data_rejection_allowed_statuses:
1176
+ checks_config.negative_data_rejection.allowed_statuses = negative_data_rejection_allowed_statuses
1177
+
1145
1178
  selected_checks = tuple(check for check in selected_checks if check.__name__ not in exclude_checks)
1146
1179
 
1147
1180
  if fixups:
@@ -1197,6 +1230,7 @@ def run(
1197
1230
  stateful_recursion_limit=stateful_recursion_limit,
1198
1231
  hypothesis_settings=hypothesis_settings,
1199
1232
  generation_config=generation_config,
1233
+ checks_config=checks_config,
1200
1234
  output_config=output_config,
1201
1235
  service_client=client,
1202
1236
  filter_set=filter_set,
@@ -1300,6 +1334,7 @@ def into_event_stream(
1300
1334
  filter_set: FilterSet,
1301
1335
  # Runtime behavior
1302
1336
  checks: Iterable[CheckFunction],
1337
+ checks_config: CheckConfig,
1303
1338
  max_response_time: int | None,
1304
1339
  targets: Iterable[Target],
1305
1340
  workers_num: int,
@@ -1358,6 +1393,7 @@ def into_event_stream(
1358
1393
  dry_run=dry_run,
1359
1394
  store_interactions=store_interactions,
1360
1395
  checks=checks,
1396
+ checks_config=checks_config,
1361
1397
  max_response_time=max_response_time,
1362
1398
  targets=targets,
1363
1399
  workers_num=workers_num,
@@ -344,6 +344,48 @@ def convert_checks(ctx: click.core.Context, param: click.core.Parameter, value:
344
344
  return reduce(operator.iadd, value, [])
345
345
 
346
346
 
347
+ def convert_status_codes(
348
+ ctx: click.core.Context, param: click.core.Parameter, value: list[str] | None
349
+ ) -> list[str] | None:
350
+ if not value:
351
+ return value
352
+
353
+ invalid = []
354
+
355
+ for code in value:
356
+ if len(code) != 3:
357
+ invalid.append(code)
358
+ continue
359
+
360
+ if code[0] not in {"1", "2", "3", "4", "5"}:
361
+ invalid.append(code)
362
+ continue
363
+
364
+ upper_code = code.upper()
365
+
366
+ if "X" in upper_code:
367
+ if (
368
+ upper_code[1:] == "XX"
369
+ or (upper_code[1] == "X" and upper_code[2].isdigit())
370
+ or (upper_code[1].isdigit() and upper_code[2] == "X")
371
+ ):
372
+ continue
373
+ else:
374
+ invalid.append(code)
375
+ continue
376
+
377
+ if not code.isnumeric():
378
+ invalid.append(code)
379
+
380
+ if invalid:
381
+ raise click.UsageError(
382
+ f"Invalid status code(s): {', '.join(invalid)}. "
383
+ "Use valid 3-digit codes between 100 and 599, "
384
+ "or wildcards (e.g., 2XX, 2X0, 20X), where X is a wildcard digit."
385
+ )
386
+ return value
387
+
388
+
347
389
  def convert_code_sample_style(ctx: click.core.Context, param: click.core.Parameter, value: str) -> CodeSampleStyle:
348
390
  return CodeSampleStyle.from_str(value)
349
391