schemathesis 3.31.0__tar.gz → 3.32.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 (634) hide show
  1. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/codeql-analysis.yml +3 -3
  2. {schemathesis-3.31.0 → schemathesis-3.32.0}/.pre-commit-config.yaml +2 -2
  3. {schemathesis-3.31.0 → schemathesis-3.32.0}/PKG-INFO +2 -1
  4. {schemathesis-3.31.0 → schemathesis-3.32.0}/benches/schema.py +21 -0
  5. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/changelog.rst +49 -1
  6. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/requirements-pytest.txt +1 -1
  7. {schemathesis-3.31.0 → schemathesis-3.32.0}/pyproject.toml +2 -1
  8. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/checks.py +4 -0
  9. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/__init__.py +11 -4
  10. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/cassettes.py +1 -8
  11. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/constants.py +6 -2
  12. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/output/default.py +18 -7
  13. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/exceptions.py +7 -1
  14. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/copy.py +3 -0
  15. schemathesis-3.32.0/src/schemathesis/internal/extensions.py +27 -0
  16. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/models.py +15 -0
  17. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/__init__.py +9 -8
  18. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/impl/core.py +71 -60
  19. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/impl/solo.py +1 -9
  20. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/impl/threadpool.py +2 -8
  21. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/probes.py +10 -9
  22. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/serialization.py +3 -0
  23. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/_hypothesis.py +28 -13
  24. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/checks.py +34 -1
  25. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/negative/mutations.py +9 -2
  26. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/schemas.py +10 -7
  27. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/stateful/__init__.py +16 -3
  28. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/config.py +20 -2
  29. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/context.py +15 -1
  30. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/events.py +2 -2
  31. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/runner.py +50 -11
  32. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/sink.py +1 -1
  33. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/state_machine.py +5 -3
  34. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/validation.py +38 -18
  35. schemathesis-3.32.0/src/schemathesis/targets.py +77 -0
  36. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/transports/__init__.py +13 -1
  37. schemathesis-3.32.0/src/schemathesis/transports/auth.py +37 -0
  38. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-1].raw +6 -0
  39. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-2].raw +6 -0
  40. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-1].raw +6 -0
  41. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-2].raw +6 -0
  42. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_group_errors.raw +6 -0
  43. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_multiple_errors.raw +6 -0
  44. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner[Open API 3.0-1].raw +2 -2
  45. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner[Open API 3.0-2].raw +2 -2
  46. schemathesis-3.32.0/test/cli/__snapshots__/test_commands/test_new_stateful_runner_generation_config[Open API 3.0].raw +45 -0
  47. schemathesis-3.32.0/test/cli/__snapshots__/test_commands/test_new_stateful_runner_keyboard_interrupt[Open API 3.0].raw +46 -0
  48. schemathesis-3.32.0/test/cli/__snapshots__/test_commands/test_new_stateful_runner_max_failures[Open API 3.0].raw +82 -0
  49. schemathesis-3.32.0/test/cli/__snapshots__/test_commands/test_new_stateful_runner_proxy_error[Open API 3.0].raw +61 -0
  50. schemathesis-3.32.0/test/cli/__snapshots__/test_commands/test_new_stateful_runner_stateful_only_with_error[Open API 3.0].raw +61 -0
  51. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_proxy_error[Open API 3.0].raw +7 -1
  52. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_read_content_timeout[Open API 3.0].raw +10 -0
  53. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args24].raw +1 -1
  54. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_commands.py +94 -10
  55. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/runner/test_probes.py +6 -3
  56. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/runner/test_runner.py +84 -2
  57. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/__snapshots__/test_examples/test_network_error_with_flaky_generation.raw +6 -0
  58. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/stateful/conftest.py +15 -0
  59. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/stateful/test_runner.py +205 -4
  60. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_checks.py +98 -1
  61. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_negative.py +19 -16
  62. {schemathesis-3.31.0/test/specs/openapi/randomized → schemathesis-3.32.0/test/specs/openapi}/test_randomized.py +4 -5
  63. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_direct_access.py +1 -1
  64. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_hypothesis.py +1 -0
  65. schemathesis-3.32.0/test/test_internal.py +49 -0
  66. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_lazy.py +0 -1
  67. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_sanitizing_output.py +7 -1
  68. schemathesis-3.31.0/src/schemathesis/targets.py +0 -46
  69. schemathesis-3.31.0/src/schemathesis/transports/auth.py +0 -16
  70. schemathesis-3.31.0/test/specs/openapi/randomized/factory.py +0 -24
  71. schemathesis-3.31.0/test/specs/openapi/randomized/types.py +0 -28
  72. schemathesis-3.31.0/test/specs/openapi/randomized/v2.py +0 -202
  73. schemathesis-3.31.0/test/specs/openapi/stateful/__init__.py +0 -0
  74. schemathesis-3.31.0/test/test_internal.py +0 -12
  75. {schemathesis-3.31.0 → schemathesis-3.32.0}/.dockerignore +0 -0
  76. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/FUNDING.yml +0 -0
  77. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  78. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  79. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  80. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/dependabot.yml +0 -0
  81. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/build.yml +0 -0
  82. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/codspeed.yml +0 -0
  83. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/commit.yml +0 -0
  84. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/example-build.yml +0 -0
  85. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/example-no-build.yml +0 -0
  86. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/master_update.yml +0 -0
  87. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/release.yml +0 -0
  88. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/test-corpus.yml +0 -0
  89. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/test-hypothesis.yml +0 -0
  90. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/update-corpus.yml +0 -0
  91. {schemathesis-3.31.0 → schemathesis-3.32.0}/.github/workflows/update-pre-commit.yml +0 -0
  92. {schemathesis-3.31.0 → schemathesis-3.32.0}/.gitignore +0 -0
  93. {schemathesis-3.31.0 → schemathesis-3.32.0}/.gitmodules +0 -0
  94. {schemathesis-3.31.0 → schemathesis-3.32.0}/.readthedocs.yml +0 -0
  95. {schemathesis-3.31.0 → schemathesis-3.32.0}/.relint.yml +0 -0
  96. {schemathesis-3.31.0 → schemathesis-3.32.0}/.rstcheck.cfg +0 -0
  97. {schemathesis-3.31.0 → schemathesis-3.32.0}/.yamllint +0 -0
  98. {schemathesis-3.31.0 → schemathesis-3.32.0}/CITATION.cff +0 -0
  99. {schemathesis-3.31.0 → schemathesis-3.32.0}/CODE_OF_CONDUCT.md +0 -0
  100. {schemathesis-3.31.0 → schemathesis-3.32.0}/CONTRIBUTING.rst +0 -0
  101. {schemathesis-3.31.0 → schemathesis-3.32.0}/Dockerfile +0 -0
  102. {schemathesis-3.31.0 → schemathesis-3.32.0}/Dockerfile.bookworm +0 -0
  103. {schemathesis-3.31.0 → schemathesis-3.32.0}/LICENSE +0 -0
  104. {schemathesis-3.31.0 → schemathesis-3.32.0}/README.md +0 -0
  105. {schemathesis-3.31.0 → schemathesis-3.32.0}/benches/cli.py +0 -0
  106. {schemathesis-3.31.0 → schemathesis-3.32.0}/benches/references.py +0 -0
  107. {schemathesis-3.31.0 → schemathesis-3.32.0}/changelog.py +0 -0
  108. {schemathesis-3.31.0 → schemathesis-3.32.0}/codecov.yml +0 -0
  109. {schemathesis-3.31.0 → schemathesis-3.32.0}/corpus/data/graphql.tar.gz +0 -0
  110. {schemathesis-3.31.0 → schemathesis-3.32.0}/corpus/data/openapi-3.0.tar.gz +0 -0
  111. {schemathesis-3.31.0 → schemathesis-3.32.0}/corpus/data/openapi-3.1.tar.gz +0 -0
  112. {schemathesis-3.31.0 → schemathesis-3.32.0}/corpus/data/swagger-2.0.tar.gz +0 -0
  113. {schemathesis-3.31.0 → schemathesis-3.32.0}/corpus/tools.py +0 -0
  114. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/Makefile +0 -0
  115. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/additional-content.rst +0 -0
  116. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/api.rst +0 -0
  117. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/auth.rst +0 -0
  118. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/cli.rst +0 -0
  119. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/compatibility.rst +0 -0
  120. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/conf.py +0 -0
  121. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/continuous_integration.rst +0 -0
  122. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/contrib.rst +0 -0
  123. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/data-generation.rst +0 -0
  124. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/examples.rst +0 -0
  125. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/experimental.rst +0 -0
  126. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/extending.rst +0 -0
  127. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/faq.rst +0 -0
  128. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/getting-started.rst +0 -0
  129. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/graphql.rst +0 -0
  130. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/index.rst +0 -0
  131. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/python.rst +0 -0
  132. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/recipes.rst +0 -0
  133. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/requirements.txt +0 -0
  134. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/sanitizing.rst +0 -0
  135. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/service.rst +0 -0
  136. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/stateful.rst +0 -0
  137. {schemathesis-3.31.0 → schemathesis-3.32.0}/docs/targeted.rst +0 -0
  138. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/Dockerfile +0 -0
  139. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/README.md +0 -0
  140. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/app.py +0 -0
  141. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/compose.yml +0 -0
  142. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/openapi.json +0 -0
  143. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/requirements-app.in +0 -0
  144. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/requirements-app.txt +0 -0
  145. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/requirements-pytest.in +0 -0
  146. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/tests/__init__.py +0 -0
  147. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/tests/conftest.py +0 -0
  148. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/tests/extensions.py +0 -0
  149. {schemathesis-3.31.0 → schemathesis-3.32.0}/example/tests/test_app.py +0 -0
  150. {schemathesis-3.31.0 → schemathesis-3.32.0}/img/demo.gif +0 -0
  151. {schemathesis-3.31.0 → schemathesis-3.32.0}/img/service_github_report.png +0 -0
  152. {schemathesis-3.31.0 → schemathesis-3.32.0}/mypy.ini +0 -0
  153. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/__init__.py +0 -0
  154. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_compat.py +0 -0
  155. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_dependency_versions.py +0 -0
  156. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_hypothesis.py +0 -0
  157. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_lazy_import.py +0 -0
  158. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_override.py +0 -0
  159. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_rate_limiter.py +0 -0
  160. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/_xml.py +0 -0
  161. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/auths.py +0 -0
  162. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/__main__.py +0 -0
  163. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/callbacks.py +0 -0
  164. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/context.py +0 -0
  165. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/debug.py +0 -0
  166. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/handlers.py +0 -0
  167. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/junitxml.py +0 -0
  168. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/options.py +0 -0
  169. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/output/__init__.py +0 -0
  170. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/output/short.py +0 -0
  171. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/reporting.py +0 -0
  172. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/cli/sanitization.py +0 -0
  173. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/code_samples.py +0 -0
  174. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/constants.py +0 -0
  175. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/contrib/__init__.py +0 -0
  176. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/contrib/openapi/__init__.py +0 -0
  177. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/contrib/openapi/fill_missing_examples.py +0 -0
  178. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/contrib/openapi/formats/__init__.py +0 -0
  179. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/contrib/openapi/formats/uuid.py +0 -0
  180. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/contrib/unique_data.py +0 -0
  181. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/experimental/__init__.py +0 -0
  182. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/extra/__init__.py +0 -0
  183. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/extra/_aiohttp.py +0 -0
  184. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/extra/_flask.py +0 -0
  185. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/extra/_server.py +0 -0
  186. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/extra/pytest_plugin.py +0 -0
  187. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/failures.py +0 -0
  188. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/filters.py +0 -0
  189. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/fixups/__init__.py +0 -0
  190. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/fixups/fast_api.py +0 -0
  191. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/fixups/utf8_bom.py +0 -0
  192. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/generation/__init__.py +0 -0
  193. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/graphql.py +0 -0
  194. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/hooks.py +0 -0
  195. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/__init__.py +0 -0
  196. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/datetime.py +0 -0
  197. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/deprecation.py +0 -0
  198. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/jsonschema.py +0 -0
  199. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/output.py +0 -0
  200. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/result.py +0 -0
  201. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/transformation.py +0 -0
  202. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/internal/validation.py +0 -0
  203. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/lazy.py +0 -0
  204. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/loaders.py +0 -0
  205. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/parameters.py +0 -0
  206. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/py.typed +0 -0
  207. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/events.py +0 -0
  208. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/runner/impl/__init__.py +0 -0
  209. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/sanitization.py +0 -0
  210. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/schemas.py +0 -0
  211. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/serializers.py +0 -0
  212. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/__init__.py +0 -0
  213. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/auth.py +0 -0
  214. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/ci.py +0 -0
  215. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/client.py +0 -0
  216. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/constants.py +0 -0
  217. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/events.py +0 -0
  218. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/extensions.py +0 -0
  219. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/hosts.py +0 -0
  220. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/metadata.py +0 -0
  221. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/models.py +0 -0
  222. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/report.py +0 -0
  223. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/serialization.py +0 -0
  224. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/service/usage.py +0 -0
  225. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/__init__.py +0 -0
  226. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/__init__.py +0 -0
  227. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/_cache.py +0 -0
  228. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/loaders.py +0 -0
  229. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/nodes.py +0 -0
  230. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/scalars.py +0 -0
  231. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/schemas.py +0 -0
  232. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/graphql/validation.py +0 -0
  233. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/__init__.py +0 -0
  234. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/_cache.py +0 -0
  235. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/constants.py +0 -0
  236. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/converter.py +0 -0
  237. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/definitions.py +0 -0
  238. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/examples.py +0 -0
  239. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/__init__.py +0 -0
  240. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/context.py +0 -0
  241. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/errors.py +0 -0
  242. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/extractors.py +0 -0
  243. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/lexer.py +0 -0
  244. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/nodes.py +0 -0
  245. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/expressions/parser.py +0 -0
  246. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/filters.py +0 -0
  247. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/formats.py +0 -0
  248. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/links.py +0 -0
  249. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/loaders.py +0 -0
  250. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/media_types.py +0 -0
  251. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/negative/__init__.py +0 -0
  252. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/negative/types.py +0 -0
  253. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/negative/utils.py +0 -0
  254. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/parameters.py +0 -0
  255. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/references.py +0 -0
  256. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/security.py +0 -0
  257. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/serialization.py +0 -0
  258. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/stateful/statistic.py +0 -0
  259. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/stateful/types.py +0 -0
  260. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/utils.py +0 -0
  261. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/specs/openapi/validation.py +0 -0
  262. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/__init__.py +0 -0
  263. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/stateful/statistic.py +0 -0
  264. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/throttling.py +0 -0
  265. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/transports/content_types.py +0 -0
  266. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/transports/headers.py +0 -0
  267. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/transports/responses.py +0 -0
  268. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/types.py +0 -0
  269. {schemathesis-3.31.0 → schemathesis-3.32.0}/src/schemathesis/utils.py +0 -0
  270. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__init__.py +0 -0
  271. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__snapshots__/test_dereferencing/test_global_security_schemes_with_custom_scope.raw +0 -0
  272. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__snapshots__/test_dereferencing/test_missing_file_in_resolution.raw +0 -0
  273. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__snapshots__/test_hypothesis/test_health_check_failed_large_base_example.raw +0 -0
  274. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__snapshots__/test_recoverable_errors/test_in_cli[1].raw +0 -0
  275. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__snapshots__/test_recoverable_errors/test_in_cli[2].raw +0 -0
  276. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/__snapshots__/test_serialization/test_in_cli[Open API 3.0].raw +0 -0
  277. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/__init__.py +0 -0
  278. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/_graphql/__init__.py +0 -0
  279. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/_graphql/_fastapi/__init__.py +0 -0
  280. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/_graphql/_fastapi/app.py +0 -0
  281. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/_graphql/_flask/__init__.py +0 -0
  282. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/_graphql/_flask/app.py +0 -0
  283. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/_graphql/schema.py +0 -0
  284. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/cp1252_app.py +0 -0
  285. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/hooks.py +0 -0
  286. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/__init__.py +0 -0
  287. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_aiohttp/__init__.py +0 -0
  288. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_aiohttp/app.py +0 -0
  289. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_aiohttp/handlers.py +0 -0
  290. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_fastapi/__init__.py +0 -0
  291. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_fastapi/app.py +0 -0
  292. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_flask/__init__.py +0 -0
  293. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/_flask/app.py +0 -0
  294. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/apps/openapi/schema.py +0 -0
  295. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__init__.py +0 -0
  296. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_conditional[Open API 3.0].raw +0 -0
  297. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_custom_auth[Open API 3.0].raw +0 -0
  298. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args0-Basic dXNlcjpwYXNz].raw +0 -0
  299. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args1-Bearer EXPLICIT].raw +0 -0
  300. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_multiple_auth_mechanisms_with_explicit_auth.raw +0 -0
  301. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_multiple_threads[Open API 3.0].raw +0 -0
  302. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/__snapshots__/test_cli/test_requests_auth[Open API 3.0].raw +0 -0
  303. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/conftest.py +0 -0
  304. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/test_cli.py +0 -0
  305. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/test_provider.py +0 -0
  306. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/auth/test_pytest.py +0 -0
  307. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__init__.py +0 -0
  308. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_cassettes/test_forbid_preserve_exact_bytes_without_cassette_path[Open API 3.0].raw +0 -0
  309. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_cassettes/test_forbid_simultaneous_use_of_deprecated_and_new_options[Open API 3.0].raw +0 -0
  310. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_checks/test_deduplication_on_sanitized_header.raw +0 -0
  311. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_add_case_output[Open API 2.0].raw +0 -0
  312. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_add_case_output[Open API 3.0].raw +0 -0
  313. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-Authorization].raw +0 -0
  314. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-authorization].raw +0 -0
  315. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0---auth='testwrong'].raw +0 -0
  316. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -0
  317. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0---auth='testwrong'].raw +0 -0
  318. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -0
  319. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_binary_payload.raw +0 -0
  320. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_certificate_only_key.raw +0 -0
  321. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_chunked_encoding_error[Open API 3.0].raw +0 -0
  322. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 2.0-1].raw +0 -0
  323. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 2.0-2].raw +0 -0
  324. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 3.0-1].raw +0 -0
  325. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[real-Open API 3.0-2].raw +0 -0
  326. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 2.0-1].raw +0 -0
  327. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 2.0-2].raw +0 -0
  328. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 3.0-1].raw +0 -0
  329. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[wsgi-Open API 3.0-2].raw +0 -0
  330. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_commands_help.raw +0 -0
  331. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_complex_urlencoded_example.raw +0 -0
  332. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-1].raw +0 -0
  333. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-2].raw +0 -0
  334. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-1].raw +0 -0
  335. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-2].raw +0 -0
  336. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_empty_schema_file[args0].raw +0 -0
  337. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_empty_schema_file[args1].raw +0 -0
  338. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_explicit_example_failure_output.raw +0 -0
  339. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_explicit_headers_in_output_on_errors[Open API 3.0].raw +0 -0
  340. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_force_color_nocolor[Open API 3.0].raw +0 -0
  341. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_get_request_with_body[Open API 2.0].raw +0 -0
  342. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_get_request_with_body[Open API 3.0].raw +0 -0
  343. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_graphql_asgi.raw +0 -0
  344. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args0].raw +0 -0
  345. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args1].raw +0 -0
  346. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args0].raw +0 -0
  347. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args1].raw +0 -0
  348. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hooks_module_not_found.raw +0 -0
  349. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hooks_with_inner_import_error.raw +0 -0
  350. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_database_with_derandomize[Open API 3.0].raw +0 -0
  351. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 2.0-1].raw +0 -0
  352. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 2.0-2].raw +0 -0
  353. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 3.0-1].raw +0 -0
  354. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[real-Open API 3.0-2].raw +0 -0
  355. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 2.0-1].raw +0 -0
  356. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 2.0-2].raw +0 -0
  357. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 3.0-1].raw +0 -0
  358. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_hypothesis_failed_event[wsgi-Open API 3.0-2].raw +0 -0
  359. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[real-Open API 2.0].raw +0 -0
  360. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[real-Open API 3.0].raw +0 -0
  361. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[wsgi-Open API 2.0].raw +0 -0
  362. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_operation_suggestion[wsgi-Open API 3.0].raw +0 -0
  363. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.0.2].raw +0 -0
  364. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.1.0].raw +0 -0
  365. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_invalid_yaml.raw +0 -0
  366. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_long_payload.raw +0 -0
  367. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[real-Open API 3.0].raw +0 -0
  368. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[wsgi-Open API 3.0].raw +0 -0
  369. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-1].raw +0 -0
  370. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-2].raw +0 -0
  371. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-1].raw +0 -0
  372. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-2].raw +0 -0
  373. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie-None].raw +0 -0
  374. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie-http127.0.0.1apiv2].raw +0 -0
  375. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header-None].raw +0 -0
  376. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header-http127.0.0.1apiv2].raw +0 -0
  377. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path-None].raw +0 -0
  378. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path-http127.0.0.1apiv2].raw +0 -0
  379. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query-None].raw +0 -0
  380. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query-http127.0.0.1apiv2].raw +0 -0
  381. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 2.0].raw +0 -0
  382. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 3.0].raw +0 -0
  383. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_in_single_check.raw +0 -0
  384. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 2.0].raw +0 -0
  385. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 3.0].raw +0 -0
  386. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_nested_binary_in_yaml.raw +0 -0
  387. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_filtered_out[Open API 3.0].raw +0 -0
  388. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_new_stateful_runner_stateful_only[Open API 3.0].raw +0 -0
  389. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_no_schema_in_media_type[Open API 3.0].raw +0 -0
  390. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_no_useless_traceback.raw +0 -0
  391. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_null_byte_in_header_probe.raw +0 -0
  392. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links[real-Open API 2.0].raw +0 -0
  393. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links[real-Open API 3.0].raw +0 -0
  394. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links[wsgi-Open API 2.0].raw +0 -0
  395. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links[wsgi-Open API 3.0].raw +0 -0
  396. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_disabled[Open API 2.0].raw +0 -0
  397. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_disabled[Open API 3.0].raw +0 -0
  398. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 2.0-1].raw +0 -0
  399. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 2.0-5].raw +0 -0
  400. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 3.0-1].raw +0 -0
  401. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[real-Open API 3.0-5].raw +0 -0
  402. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 2.0-1].raw +0 -0
  403. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 2.0-5].raw +0 -0
  404. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 3.0-1].raw +0 -0
  405. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_openapi_links_multiple_threads[wsgi-Open API 3.0-5].raw +0 -0
  406. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_recursive_reference_error_message.raw +0 -0
  407. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 2.0].raw +0 -0
  408. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 3.0].raw +0 -0
  409. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 2.0].raw +0 -0
  410. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 3.0].raw +0 -0
  411. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_remote_disconnected_error[Open API 3.0].raw +0 -0
  412. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[real-Open API 2.0].raw +0 -0
  413. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[real-Open API 3.0].raw +0 -0
  414. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[wsgi-Open API 2.0].raw +0 -0
  415. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[wsgi-Open API 3.0].raw +0 -0
  416. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[real-Open API 2.0].raw +0 -0
  417. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[real-Open API 3.0].raw +0 -0
  418. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[wsgi-Open API 2.0].raw +0 -0
  419. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[wsgi-Open API 3.0].raw +0 -0
  420. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args0].raw +0 -0
  421. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args10].raw +0 -0
  422. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args11].raw +0 -0
  423. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args12].raw +0 -0
  424. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args13].raw +0 -0
  425. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args14].raw +0 -0
  426. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args15].raw +0 -0
  427. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args16].raw +0 -0
  428. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args17].raw +0 -0
  429. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args18].raw +0 -0
  430. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args19].raw +0 -0
  431. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args1].raw +0 -0
  432. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args20].raw +0 -0
  433. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args21].raw +0 -0
  434. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args22].raw +0 -0
  435. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args23].raw +0 -0
  436. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args25].raw +0 -0
  437. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args26].raw +0 -0
  438. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args27].raw +0 -0
  439. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args28].raw +0 -0
  440. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args29].raw +0 -0
  441. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args2].raw +0 -0
  442. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args30].raw +0 -0
  443. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args31].raw +0 -0
  444. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args32].raw +0 -0
  445. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args33].raw +0 -0
  446. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args34].raw +0 -0
  447. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args35].raw +0 -0
  448. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args36].raw +0 -0
  449. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args37].raw +0 -0
  450. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args3].raw +0 -0
  451. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args4].raw +0 -0
  452. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args5].raw +0 -0
  453. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args6].raw +0 -0
  454. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args7].raw +0 -0
  455. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args8].raw +0 -0
  456. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_run_output[args9].raw +0 -0
  457. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_schema_not_available[1].raw +0 -0
  458. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_schema_not_available[2].raw +0 -0
  459. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_schema_not_available_wsgi.raw +0 -0
  460. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 2.0-1].raw +0 -0
  461. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 2.0-2].raw +0 -0
  462. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 3.0-1].raw +0 -0
  463. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[real-Open API 3.0-2].raw +0 -0
  464. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 2.0-1].raw +0 -0
  465. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 2.0-2].raw +0 -0
  466. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 3.0-1].raw +0 -0
  467. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_status_code_conformance[wsgi-Open API 3.0-2].raw +0 -0
  468. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unknown_schema_error[Open API 3.0].raw +0 -0
  469. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unresolvable_links[Open API 3.0].raw +0 -0
  470. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unresolvable_reference_with_disabled_validation.raw +0 -0
  471. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 2.0-1].raw +0 -0
  472. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 2.0-2].raw +0 -0
  473. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 3.0-1].raw +0 -0
  474. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[real-Open API 3.0-2].raw +0 -0
  475. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 2.0-1].raw +0 -0
  476. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 2.0-2].raw +0 -0
  477. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 3.0-1].raw +0 -0
  478. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsatisfiable[wsgi-Open API 3.0-2].raw +0 -0
  479. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_unsupported_regex.raw +0 -0
  480. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_useful_traceback[Open API 3.0].raw +0 -0
  481. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_wait_for_schema_not_enough.raw +0 -0
  482. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_commands/test_yaml_parsing_of_floats[Open API 3.0].raw +0 -0
  483. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_hooks/test_after_call[real-Open API 3.0].raw +0 -0
  484. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/__snapshots__/test_hooks/test_after_call[wsgi-Open API 3.0].raw +0 -0
  485. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/cert.pem +0 -0
  486. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/conftest.py +0 -0
  487. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/output/__init__.py +0 -0
  488. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/output/test_default.py +0 -0
  489. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_asgi.py +0 -0
  490. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_callbacks.py +0 -0
  491. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_cassettes.py +0 -0
  492. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_checks.py +0 -0
  493. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_crashes.py +0 -0
  494. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_hooks.py +0 -0
  495. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_junitxml.py +0 -0
  496. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_options.py +0 -0
  497. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/cli/test_targeted.py +0 -0
  498. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/code_samples/__snapshots__/test_python/test_cli_output[Open API 2.0].raw +0 -0
  499. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/code_samples/__snapshots__/test_python/test_cli_output[Open API 3.0].raw +0 -0
  500. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/code_samples/conftest.py +0 -0
  501. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/code_samples/test_curl.py +0 -0
  502. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/code_samples/test_python.py +0 -0
  503. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/conftest.py +0 -0
  504. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/__snapshots__/test_unique_data/test_cli[None].raw +0 -0
  505. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema0].raw +0 -0
  506. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema1].raw +0 -0
  507. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema2].raw +0 -0
  508. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[1].raw +0 -0
  509. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[2].raw +0 -0
  510. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/openapi/__snapshots__/test_fill_missing_examples/test_fills_missing_examples.raw +0 -0
  511. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/openapi/formats/test_uuid.py +0 -0
  512. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/openapi/test_fill_missing_examples.py +0 -0
  513. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/test_install.py +0 -0
  514. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/contrib/test_unique_data.py +0 -0
  515. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/petstore_v2.yaml +0 -0
  516. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/petstore_v3.yaml +0 -0
  517. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/relative_files/components/parameters.yaml +0 -0
  518. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/relative_files/components/responses.yaml +0 -0
  519. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/relative_files/components/schemas.yaml +0 -0
  520. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/relative_files/main.yaml +0 -0
  521. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/relative_files/paths/user-account.yaml +0 -0
  522. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/simple_openapi.yaml +0 -0
  523. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/data/simple_swagger.yaml +0 -0
  524. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/experimental/__snapshots__/test_experiments/test_not_enabled.raw +0 -0
  525. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/experimental/conftest.py +0 -0
  526. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/experimental/test_experiments.py +0 -0
  527. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/experimental/test_openapi_3_1.py +0 -0
  528. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/extra/__init__.py +0 -0
  529. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/extra/test_aiohttp.py +0 -0
  530. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/filters/test_matching.py +0 -0
  531. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/hooks/test_filter_operations.py +0 -0
  532. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/hooks/test_hooks.py +0 -0
  533. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/loaders/conftest.py +0 -0
  534. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/loaders/test_app.py +0 -0
  535. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/loaders/test_common.py +0 -0
  536. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/loaders/test_graphql.py +0 -0
  537. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/loaders/test_openapi.py +0 -0
  538. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/loaders/test_yaml.py +0 -0
  539. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/runner/__init__.py +0 -0
  540. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/runner/test_checks.py +0 -0
  541. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/runner/test_events.py +0 -0
  542. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__init__.py +0 -0
  543. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_client_error_on_project_details[Open API 3.0].raw +0 -0
  544. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_client_error_on_upload[Open API 3.0].raw +0 -0
  545. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_error_in_another_handler[Open API 3.0].raw +0 -0
  546. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_github_suggestion[Open API 3.0].raw +0 -0
  547. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_not_authenticated_with_name.raw +0 -0
  548. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_two_names.raw +0 -0
  549. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_unauthorized[Open API 3.0].raw +0 -0
  550. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_unknown_error_on_upload[Open API 3.0].raw +0 -0
  551. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_upload_failure[Open API 3.0].raw +0 -0
  552. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_cli/test_upload_success[Open API 3.0].raw +0 -0
  553. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_connection_error[Open API 3.0].raw +0 -0
  554. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_custom_format.raw +0 -0
  555. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_dry_run[Open API 3.0].raw +0 -0
  556. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_forbidden[Open API 3.0].raw +0 -0
  557. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_graphql_scalars.raw +0 -0
  558. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_internal_server_error[Open API 3.0].raw +0 -0
  559. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_invalid_extension[Open API 3.0-42].raw +0 -0
  560. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_invalid_extension[Open API 3.0-extension1].raw +0 -0
  561. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_invalid_payload[Open API 3.0].raw +0 -0
  562. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_media_type_extension[strategy0].raw +0 -0
  563. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_media_type_extension[strategy1].raw +0 -0
  564. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_oversize_text[Open API 3.0].raw +0 -0
  565. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_schema_patches[patch0-expected0].raw +0 -0
  566. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_schema_patches[patch1-expected1].raw +0 -0
  567. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_schema_patches[patch2-expected2].raw +0 -0
  568. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/__snapshots__/test_extensions/test_unknown_extension_in_cli[Open API 3.0].raw +0 -0
  569. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/conftest.py +0 -0
  570. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_auth.py +0 -0
  571. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_ci.py +0 -0
  572. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_cli.py +0 -0
  573. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_extensions.py +0 -0
  574. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_report.py +0 -0
  575. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_serialization.py +0 -0
  576. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/service/test_usage.py +0 -0
  577. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n 123(created Int!) Int!n}-.whatever].raw +0 -0
  578. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n func(created Unknown!) Int!n}-.gql].raw +0 -0
  579. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/__snapshots__/test_custom_scalars/test_built_in_scalars_in_cli.raw +0 -0
  580. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/__snapshots__/test_custom_scalars/test_custom_scalar_in_cli.raw +0 -0
  581. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/test_basic.py +0 -0
  582. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/test_custom_scalars.py +0 -0
  583. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/graphql/test_pytest.py +0 -0
  584. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/__snapshots__/test_examples/test_parameter_override.raw +0 -0
  585. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/__snapshots__/test_media_types/test_explicit_example_with_custom_media_type.raw +0 -0
  586. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/blank.pdf +0 -0
  587. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/conftest.py +0 -0
  588. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/parameters/test_forms.py +0 -0
  589. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/parameters/test_non_payload.py +0 -0
  590. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/parameters/test_simple_payloads.py +0 -0
  591. {schemathesis-3.31.0/test/specs/openapi/randomized → schemathesis-3.32.0/test/specs/openapi/stateful}/__init__.py +0 -0
  592. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/stateful/test_config.py +0 -0
  593. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/stateful/test_stateful.py +0 -0
  594. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_examples.py +0 -0
  595. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_expressions.py +0 -0
  596. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_hypothesis.py +0 -0
  597. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_links.py +0 -0
  598. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_media_types.py +0 -0
  599. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_parameters.py +0 -0
  600. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_schemas.py +0 -0
  601. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_security.py +0 -0
  602. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_serializing.py +0 -0
  603. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_utils.py +0 -0
  604. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/specs/openapi/test_validation.py +0 -0
  605. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_app.py +0 -0
  606. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_asgi.py +0 -0
  607. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_async.py +0 -0
  608. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_common_parameters.py +0 -0
  609. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_converter.py +0 -0
  610. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_dereferencing.py +0 -0
  611. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_examples.py +0 -0
  612. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_filters.py +0 -0
  613. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_fixups.py +0 -0
  614. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_models.py +0 -0
  615. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_output.py +0 -0
  616. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_package.py +0 -0
  617. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_parameters.py +0 -0
  618. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_parametrization.py +0 -0
  619. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_petstore.py +0 -0
  620. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_pytest.py +0 -0
  621. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_rate_limit.py +0 -0
  622. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_recoverable_errors.py +0 -0
  623. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_required.py +0 -0
  624. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_schemas.py +0 -0
  625. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_serialization.py +0 -0
  626. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_stateful.py +0 -0
  627. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_unittest.py +0 -0
  628. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_utils.py +0 -0
  629. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/test_wsgi.py +0 -0
  630. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/transports/test_content_types.py +0 -0
  631. {schemathesis-3.31.0 → schemathesis-3.32.0}/test/utils.py +0 -0
  632. {schemathesis-3.31.0 → schemathesis-3.32.0}/test-corpus/test_corpus.py +0 -0
  633. {schemathesis-3.31.0 → schemathesis-3.32.0}/test_server.sh +0 -0
  634. {schemathesis-3.31.0 → schemathesis-3.32.0}/tox.ini +0 -0
@@ -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.25.10
41
+ uses: github/codeql-action/init@v3.25.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.25.10
52
+ uses: github/codeql-action/autobuild@v3.25.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.25.10
66
+ uses: github/codeql-action/analyze@v3.25.11
@@ -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.5.0
41
+ rev: v0.5.1
42
42
  hooks:
43
43
  - id: ruff-format
44
44
 
45
45
  - repo: https://github.com/astral-sh/ruff-pre-commit
46
- rev: v0.5.0
46
+ rev: v0.5.1
47
47
  hooks:
48
48
  - id: ruff
49
49
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: schemathesis
3
- Version: 3.31.0
3
+ Version: 3.32.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
@@ -66,6 +66,7 @@ Requires-Dist: aiohttp<4.0,>=3.9.1; extra == 'tests'
66
66
  Requires-Dist: coverage>=6; extra == 'tests'
67
67
  Requires-Dist: fastapi>=0.86.0; extra == 'tests'
68
68
  Requires-Dist: flask<3.0,>=2.1.1; extra == 'tests'
69
+ Requires-Dist: hypothesis-openapi<1,>=0.2; python_version >= '3.10' and extra == 'tests'
69
70
  Requires-Dist: pydantic>=1.10.2; extra == 'tests'
70
71
  Requires-Dist: pytest-asyncio<1.0,>=0.18.0; extra == 'tests'
71
72
  Requires-Dist: pytest-httpserver<2.0,>=1.0; extra == 'tests'
@@ -7,6 +7,7 @@ from hypothesis import HealthCheck, Phase, Verbosity
7
7
 
8
8
  import schemathesis
9
9
  from schemathesis.runner import from_schema
10
+ from schemathesis.internal.copy import fast_deepcopy
10
11
 
11
12
  CURRENT_DIR = pathlib.Path(__file__).parent.absolute()
12
13
  sys.path.append(str(CURRENT_DIR.parent))
@@ -222,3 +223,23 @@ def test_links_count(raw_schema):
222
223
  schema = schemathesis.from_dict(raw_schema)
223
224
 
224
225
  _ = schema.links_count
226
+
227
+
228
+ @pytest.mark.benchmark
229
+ @pytest.mark.parametrize(
230
+ "schema",
231
+ [
232
+ BBCI,
233
+ VMWARE,
234
+ STRIPE,
235
+ UNIVERSE,
236
+ APPVEYOR,
237
+ EVETECH,
238
+ OSISOFT,
239
+ ML_WEBSERVICES,
240
+ AZURE_NETWORK,
241
+ ],
242
+ ids=("bbci", "vmware", "stripe", "universe", "appveyor", "evetech", "osisoft", "ml_webservices", "azure_network"),
243
+ )
244
+ def test_deepcopy(schema):
245
+ fast_deepcopy(schema)
@@ -1,9 +1,57 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
- :version:`Unreleased <v3.31.0...HEAD>` - TBD
4
+ :version:`Unreleased <v3.32.0...HEAD>` - TBD
5
5
  --------------------------------------------
6
6
 
7
+ .. _v3.32.0:
8
+
9
+ :version:`3.32.0 <v3.31.1...v3.32.0>` - 2024-07-14
10
+ --------------------------------------------------
11
+
12
+ **Added**
13
+
14
+ - Support for authentication via CLI arguments in new-style stateful tests.
15
+ - Support for ``--hypothesis-seed`` in new-style stateful tests.
16
+ - Support for ``--set-*`` CLI options in new-style stateful tests.
17
+ - Support for ``--max-response-time`` in new-style stateful tests.
18
+ - Support for targeted property-based testing in new-style stateful tests.
19
+ - Support for ``--request-*`` CLI options in new-style stateful tests.
20
+ - Support for ``--generation-*`` CLI options in new-style stateful tests.
21
+ - Support for ``--max-failures`` in new-style stateful tests.
22
+ - Support for ``--dry-run`` in new-style stateful tests.
23
+ - ``all`` variant for the ``--hypothesis-suppress-health-check`` CLI option.
24
+ - Support for Hypothesis >= ``6.108.0``.
25
+
26
+ **Fixed**
27
+
28
+ - WSGI support for new-style stateful tests.
29
+ - Ignoring configured data generation methods in new-style stateful tests.
30
+ - Using constant ``data_generation_method`` value for HTTP interactions in VCR cassettes.
31
+ - Not reporting errors with ``--experimental=stateful-only``. :issue:`2326`
32
+ - Internal error on CRTL-C during new-style stateful tests.
33
+ - Use ``--request-proxy`` for API probing.
34
+ - Fill the ``seed`` field in cassettes for new-style stateful tests.
35
+ - Ignoring remote scope when getting API operation by reference.
36
+
37
+ **Changed**
38
+
39
+ - Do not run new-style stateful tests if unit tests exited due to ``--exitfirst``.
40
+ - Display error details if API probing fails.
41
+
42
+ .. _v3.31.1:
43
+
44
+ :version:`3.31.1 <v3.31.0...v3.31.1>` - 2024-07-03
45
+ --------------------------------------------------
46
+
47
+ **Fixed**
48
+
49
+ - Generating negative test cases for path and query parameters. :issue:`2312`
50
+
51
+ **Changed**
52
+
53
+ - Do not consider ignoring additional parameters as a failure in ``negative_data_rejection``.
54
+
7
55
  .. _v3.31.0:
8
56
 
9
57
  :version:`3.31.0 <v3.30.4...v3.31.0>` - 2024-06-30
@@ -15,7 +15,7 @@ attrs==23.1.0
15
15
  # referencing
16
16
  backoff==2.2.1
17
17
  # via schemathesis
18
- certifi==2023.11.17
18
+ certifi==2024.7.4
19
19
  # via
20
20
  # httpcore
21
21
  # httpx
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "schemathesis"
7
- version = "3.31.0"
7
+ version = "3.32.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" }]
@@ -60,6 +60,7 @@ tests = [
60
60
  "coverage>=6",
61
61
  "fastapi>=0.86.0",
62
62
  "Flask>=2.1.1,<3.0",
63
+ "hypothesis-openapi>=0.2,<1; python_version >= '3.10'",
63
64
  "pydantic>=1.10.2",
64
65
  "pytest-asyncio>=0.18.0,<1.0",
65
66
  "pytest-httpserver>=1.0,<2.0",
@@ -39,6 +39,10 @@ def not_a_server_error(response: GenericResponse, case: Case) -> bool | None:
39
39
  return None
40
40
 
41
41
 
42
+ def _make_max_response_time_failure_message(elapsed_time: float, max_response_time: int) -> str:
43
+ return f"Actual: {elapsed_time:.2f}ms\nLimit: {max_response_time}.00ms"
44
+
45
+
42
46
  DEFAULT_CHECKS: tuple[CheckFunction, ...] = (not_a_server_error,)
43
47
  OPTIONAL_CHECKS = (
44
48
  status_code_conformance,
@@ -47,6 +47,7 @@ from ..specs.graphql import loaders as gql_loaders
47
47
  from ..specs.openapi import loaders as oas_loaders
48
48
  from ..stateful import Stateful
49
49
  from ..targets import Target
50
+ from ..transports import RequestConfig
50
51
  from ..transports.auth import get_requests_auth
51
52
  from ..types import Filter, PathLike, RequestCert
52
53
  from . import callbacks, cassettes, output
@@ -850,7 +851,7 @@ def run(
850
851
  _hypothesis_suppress_health_check: list[hypothesis.HealthCheck] | None = None
851
852
  if hypothesis_suppress_health_check is not None:
852
853
  _hypothesis_suppress_health_check = [
853
- health_check.as_hypothesis() for health_check in hypothesis_suppress_health_check
854
+ entry for health_check in hypothesis_suppress_health_check for entry in health_check.as_hypothesis()
854
855
  ]
855
856
 
856
857
  if contrib_unique_data:
@@ -1073,6 +1074,7 @@ class LoaderConfig:
1073
1074
  wait_for_schema: float | None
1074
1075
  rate_limit: str | None
1075
1076
  output_config: OutputConfig
1077
+ generation_config: generation.GenerationConfig
1076
1078
  # Network request parameters
1077
1079
  auth: tuple[str, str] | None
1078
1080
  auth_type: str | None
@@ -1151,6 +1153,7 @@ def into_event_stream(
1151
1153
  tag=tag or None,
1152
1154
  operation_id=operation_id or None,
1153
1155
  output_config=output_config,
1156
+ generation_config=generation_config,
1154
1157
  )
1155
1158
  schema = load_schema(config)
1156
1159
  yield from runner.from_schema(
@@ -1179,9 +1182,12 @@ def into_event_stream(
1179
1182
  generation_config=generation_config,
1180
1183
  probe_config=probes.ProbeConfig(
1181
1184
  base_url=config.base_url,
1182
- request_tls_verify=config.request_tls_verify,
1183
- request_proxy=config.request_proxy,
1184
- request_cert=config.request_cert,
1185
+ request=RequestConfig(
1186
+ timeout=request_timeout,
1187
+ tls_verify=config.request_tls_verify,
1188
+ proxy=config.request_proxy,
1189
+ cert=config.request_cert,
1190
+ ),
1185
1191
  auth=config.auth,
1186
1192
  auth_type=config.auth_type,
1187
1193
  headers=config.headers,
@@ -1297,6 +1303,7 @@ def get_loader_kwargs(loader: Callable, config: LoaderConfig) -> dict[str, Any]:
1297
1303
  "data_generation_methods": config.data_generation_methods,
1298
1304
  "rate_limit": config.rate_limit,
1299
1305
  "output_config": config.output_config,
1306
+ "generation_config": config.generation_config,
1300
1307
  }
1301
1308
  if loader not in (oas_loaders.from_path, oas_loaders.from_dict):
1302
1309
  kwargs["headers"] = config.headers
@@ -23,7 +23,6 @@ if TYPE_CHECKING:
23
23
  import click
24
24
  import requests
25
25
 
26
- from ..generation import DataGenerationMethod
27
26
  from ..models import Request, Response
28
27
  from ..runner.serialization import SerializedCheck, SerializedInteraction
29
28
  from .context import ExecutionContext
@@ -90,10 +89,6 @@ class CassetteWriter(EventHandler):
90
89
  seed=seed,
91
90
  correlation_id=event.correlation_id,
92
91
  thread_id=event.thread_id,
93
- # NOTE: For backward compatibility reasons AfterExecution stores a list of data generation methods
94
- # The list always contains one element - the method that was actually used for generation
95
- # This will change in the future
96
- data_generation_method=event.data_generation_method[0],
97
92
  interactions=event.result.interactions,
98
93
  )
99
94
  )
@@ -105,7 +100,6 @@ class CassetteWriter(EventHandler):
105
100
  # Correlation ID is not used in stateful testing
106
101
  correlation_id="",
107
102
  thread_id=event.thread_id,
108
- data_generation_method=event.data_generation_method[0],
109
103
  interactions=event.result.interactions,
110
104
  )
111
105
  )
@@ -132,7 +126,6 @@ class Process:
132
126
  seed: int
133
127
  correlation_id: str
134
128
  thread_id: int
135
- data_generation_method: DataGenerationMethod
136
129
  interactions: list[SerializedInteraction]
137
130
 
138
131
 
@@ -239,7 +232,7 @@ http_interactions:"""
239
232
  seed: '{item.seed}'
240
233
  thread_id: {item.thread_id}
241
234
  correlation_id: '{item.correlation_id}'
242
- data_generation_method: '{item.data_generation_method.value}'
235
+ data_generation_method: '{interaction.data_generation_method.value}'
243
236
  elapsed: '{interaction.response.elapsed}'
244
237
  recorded_at: '{interaction.recorded_at}'
245
238
  checks:
@@ -42,11 +42,15 @@ class HealthCheck(IntEnum):
42
42
  filter_too_much = 2
43
43
  too_slow = 3
44
44
  large_base_example = 7
45
+ all = 8
45
46
 
46
- def as_hypothesis(self) -> hypothesis.HealthCheck:
47
+ def as_hypothesis(self) -> list[hypothesis.HealthCheck]:
47
48
  from hypothesis import HealthCheck
48
49
 
49
- return HealthCheck[self.name]
50
+ if self.name == "all":
51
+ return list(HealthCheck)
52
+
53
+ return [HealthCheck[self.name]]
50
54
 
51
55
 
52
56
  @unique
@@ -143,7 +143,9 @@ def display_hypothesis_output(hypothesis_output: list[str]) -> None:
143
143
 
144
144
  def display_errors(context: ExecutionContext, event: events.Finished) -> None:
145
145
  """Display all errors in the test run."""
146
- if not event.has_errors:
146
+ probes = context.probes or []
147
+ has_probe_errors = any(probe.outcome == ProbeOutcome.ERROR for probe in probes)
148
+ if not event.has_errors and not has_probe_errors:
147
149
  return
148
150
 
149
151
  display_section_name("ERRORS")
@@ -160,6 +162,12 @@ def display_errors(context: ExecutionContext, event: events.Finished) -> None:
160
162
  should_display_full_traceback_message |= display_single_error(context, result)
161
163
  if event.generic_errors:
162
164
  display_generic_errors(context, event.generic_errors)
165
+ if has_probe_errors:
166
+ display_section_name("API Probe errors", "_", fg="red")
167
+ for probe in probes:
168
+ if probe.error is not None:
169
+ error = SerializedError.from_exception(probe.error)
170
+ _display_error(context, error)
163
171
  if should_display_full_traceback_message and not context.show_trace:
164
172
  click.secho(
165
173
  "\nAdd this option to your command line parameters to see full tracebacks: --show-trace",
@@ -848,6 +856,10 @@ def handle_finished(context: ExecutionContext, event: events.Finished) -> None:
848
856
 
849
857
  def handle_interrupted(context: ExecutionContext, event: events.Interrupted) -> None:
850
858
  click.echo()
859
+ _handle_interrupted(context)
860
+
861
+
862
+ def _handle_interrupted(context: ExecutionContext) -> None:
851
863
  context.is_interrupted = True
852
864
  display_section_name("KeyboardInterrupt", "!", bold=False)
853
865
 
@@ -863,12 +875,11 @@ def handle_stateful_event(context: ExecutionContext, event: events.StatefulEvent
863
875
  if not experimental.STATEFUL_ONLY.is_enabled:
864
876
  click.echo()
865
877
  click.secho("Stateful tests\n", bold=True)
866
- elif (
867
- isinstance(event.data, stateful_events.ScenarioFinished)
868
- and not event.data.is_final
869
- and event.data.status != stateful_events.ScenarioStatus.REJECTED
870
- ):
871
- display_execution_result(context, event.data.status.value)
878
+ elif isinstance(event.data, stateful_events.ScenarioFinished) and not event.data.is_final:
879
+ if event.data.status == stateful_events.ScenarioStatus.INTERRUPTED:
880
+ _handle_interrupted(context)
881
+ elif event.data.status != stateful_events.ScenarioStatus.REJECTED:
882
+ display_execution_result(context, event.data.status.value)
872
883
  elif isinstance(event.data, stateful_events.RunFinished):
873
884
  click.echo()
874
885
  # It is initialized in `RunStarted`
@@ -520,6 +520,12 @@ def remove_ssl_line_number(text: str) -> str:
520
520
  return re.sub(r"\(_ssl\.c:\d+\)", "", text)
521
521
 
522
522
 
523
+ def _clean_inner_request_message(message: Any) -> str:
524
+ if isinstance(message, str) and message.startswith("HTTPConnectionPool"):
525
+ return re.sub(r"HTTPConnectionPool\(.+?\): ", "", message).rstrip(".")
526
+ return str(message)
527
+
528
+
523
529
  def extract_requests_exception_details(exc: RequestException) -> tuple[str, list[str]]:
524
530
  from requests.exceptions import ChunkedEncodingError, ConnectionError, SSLError
525
531
  from urllib3.exceptions import MaxRetryError
@@ -542,7 +548,7 @@ def extract_requests_exception_details(exc: RequestException) -> tuple[str, list
542
548
  reason = f"Max retries exceeded with url: {inner.url}"
543
549
  extra = [reason.strip()]
544
550
  else:
545
- extra = [" ".join(map(str, inner.args))]
551
+ extra = [" ".join(map(_clean_inner_request_message, inner.args))]
546
552
  elif isinstance(exc, ChunkedEncodingError):
547
553
  message = "Connection broken. The server declared chunked encoding but sent an invalid chunk"
548
554
  extra = [str(exc.args[0].args[1])]
@@ -1,6 +1,9 @@
1
1
  from typing import Any
2
2
 
3
+ from .extensions import extensible
3
4
 
5
+
6
+ @extensible("SCHEMATHESIS_EXTENSION_FAST_DEEP_COPY")
4
7
  def fast_deepcopy(value: Any) -> Any:
5
8
  """A specialized version of `deepcopy` that copies only `dict` and `list` and does unrolling.
6
9
 
@@ -0,0 +1,27 @@
1
+ import os
2
+ from typing import Any, Callable
3
+
4
+
5
+ class ExtensionLoadingError(ImportError):
6
+ """Raised when an extension cannot be loaded."""
7
+
8
+
9
+ def import_extension(path: str) -> Any:
10
+ try:
11
+ module, item = path.rsplit(".", 1)
12
+ imported = __import__(module, fromlist=[item])
13
+ return getattr(imported, item)
14
+ except ValueError as exc:
15
+ raise ExtensionLoadingError(f"Invalid path: {path}") from exc
16
+ except (ImportError, AttributeError) as exc:
17
+ raise ExtensionLoadingError(f"Could not import {path}") from exc
18
+
19
+
20
+ def extensible(env_var: str) -> Callable[[Any], Any]:
21
+ def decorator(item: Any) -> Any:
22
+ path = os.getenv(env_var)
23
+ if path is not None:
24
+ return import_extension(path)
25
+ return item
26
+
27
+ return decorator
@@ -119,6 +119,19 @@ def prepare_request_data(kwargs: dict[str, Any]) -> PreparedRequestData:
119
119
  )
120
120
 
121
121
 
122
+ @dataclass
123
+ class GenerationMetadata:
124
+ """Stores various information about how data is generated."""
125
+
126
+ query: DataGenerationMethod | None
127
+ path_parameters: DataGenerationMethod | None
128
+ headers: DataGenerationMethod | None
129
+ cookies: DataGenerationMethod | None
130
+ body: DataGenerationMethod | None
131
+
132
+ __slots__ = ("query", "path_parameters", "headers", "cookies", "body")
133
+
134
+
122
135
  @dataclass(repr=False)
123
136
  class Case:
124
137
  """A single test case parameters."""
@@ -139,6 +152,8 @@ class Case:
139
152
  media_type: str | None = None
140
153
  source: CaseSource | None = None
141
154
 
155
+ meta: GenerationMetadata | None = None
156
+
142
157
  # The way the case was generated (None for manually crafted ones)
143
158
  data_generation_method: DataGenerationMethod | None = None
144
159
  _auth: requests.auth.AuthBase | None = None
@@ -19,6 +19,7 @@ from ..loaders import load_app
19
19
  from ..specs.graphql import loaders as gql_loaders
20
20
  from ..specs.openapi import loaders as oas_loaders
21
21
  from ..targets import DEFAULT_TARGETS, Target
22
+ from ..transports import RequestConfig
22
23
  from ..transports.auth import get_requests_auth
23
24
  from ..types import Filter, NotSet, RawAuth, RequestCert
24
25
  from .probes import ProbeConfig
@@ -373,6 +374,12 @@ def from_schema(
373
374
 
374
375
  hypothesis_settings = hypothesis_settings or hypothesis.settings(deadline=DEFAULT_DEADLINE)
375
376
  generation_config = generation_config or GenerationConfig()
377
+ request_config = RequestConfig(
378
+ timeout=request_timeout,
379
+ tls_verify=request_tls_verify,
380
+ proxy=request_proxy,
381
+ cert=request_cert,
382
+ )
376
383
 
377
384
  # Use the same seed for all tests unless `derandomize=True` is used
378
385
  if seed is None and not hypothesis_settings.derandomize:
@@ -394,10 +401,7 @@ def from_schema(
394
401
  headers=headers,
395
402
  seed=seed,
396
403
  workers_num=workers_num,
397
- request_timeout=request_timeout,
398
- request_tls_verify=request_tls_verify,
399
- request_proxy=request_proxy,
400
- request_cert=request_cert,
404
+ request_config=request_config,
401
405
  exit_first=exit_first,
402
406
  max_failures=max_failures,
403
407
  started_at=started_at,
@@ -473,10 +477,7 @@ def from_schema(
473
477
  override=override,
474
478
  headers=headers,
475
479
  seed=seed,
476
- request_timeout=request_timeout,
477
- request_tls_verify=request_tls_verify,
478
- request_proxy=request_proxy,
479
- request_cert=request_cert,
480
+ request_config=request_config,
480
481
  exit_first=exit_first,
481
482
  max_failures=max_failures,
482
483
  started_at=started_at,