schemathesis 4.0.8__tar.gz → 4.0.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {schemathesis-4.0.8 → schemathesis-4.0.9}/CHANGELOG.md +14 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/PKG-INFO +1 -1
- schemathesis-4.0.9/docs/reference/hooks.md +80 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/pyproject.toml +1 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/handlers/output.py +7 -14
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/errors.py +10 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/probes.py +4 -9
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/coverage.py +14 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/hypothesis/builder.py +22 -18
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_dereferencing/test_global_security_schemes_with_custom_scope.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_dereferencing/test_missing_file_in_resolution.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_hypothesis/test_health_check_failed_large_base_example.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_recoverable_errors/test_in_cli[1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_recoverable_errors/test_in_cli[2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_serialization/test_in_cli[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_all_not_found[default].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_all_not_found[disabled-all].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_all_not_found[disabled-operation].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_all_not_found[selected].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_many_operations.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_no_2xx.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_no_2xx_options_only.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__snapshots__/test_warnings/test_warning_on_unauthorized.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_conditional[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_custom_auth[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args0-Basic dXNlcjpwYXNz].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_explicit_auth_precedence[Open API 3.0-args1-Bearer EXPLICIT].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_multiple_auth_mechanisms_with_explicit_auth.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_multiple_threads[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__snapshots__/test_cli/test_requests_auth[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_cassettes/test_run_subprocess[Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_cassettes/test_run_subprocess[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_format_parameter_csv_response.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_negative_data_rejection_displays_all_cases.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_not_a_server_error.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[None].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses10].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses3].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses4].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses5].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses6].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses7].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_app_crash.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0---auth='testwrong'].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 2.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0---auth='testwrong'].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_auth_override_on_protected_operation[Open API 3.0--H Authorization Basic J3Rlc3Q6d3Jvbmcn].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_binary_payload.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_chunked_encoding_error[Open API 3.0].raw +4 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_cli_run_changed_base_url[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 2.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_cli_run_only_failure[Open API 3.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_complex_urlencoded_example.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-1].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 2.0-2].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-1].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_error[Open API 3.0-2].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 2.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_connection_timeout[Open API 3.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_custom_cli_option[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_dont_skip_when_generation_is_possible[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_exit_first[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_explicit_example_failure_output.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_explicit_headers_in_output_on_errors[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_explicit_query_token_sanitization[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_filter_by[Open API 3.0---exclude-by=x-property != 42].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_filter_by[Open API 3.0---include-by=x-property == 42].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_filter_case_sensitivity[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_graphql_url[foo-args1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_graphql_url[graphql-args1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_group_errors.raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_invalid_operation[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_invalid_operation[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.0.2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_invalid_schema_with_disabled_validation[3.1.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_keyboard_interrupt[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_keyboard_interrupt[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_keyboard_interrupt_threaded[Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_keyboard_interrupt_threaded[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_long_operation_output.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_long_payload.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_malformed_json_deduplication[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 2.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_max_response_time_invalid[Open API 3.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[cookie].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[header].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[path].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_missing_content_and_schema[query].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_multiple_errors.raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_multiple_failures_different_check[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_multiple_failures_in_single_check.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_multiple_failures_single_check[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_nested_binary_in_yaml.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_no_schema_in_media_type[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_no_useless_traceback.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_null_byte_in_header_probe.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_partial_response.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_proxy_error[Open API 3.0].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_read_content_timeout[Open API 3.0].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_recursive_reference_error_message.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_rediscover_the_same_failure_in_different_phases_and_store_junit[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError(Custom check failed!)-Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_register_check[AssertionError-Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_reserved_characters_in_operation_name.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_response_payload_encoding[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[Open API 2.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_response_schema_conformance_deduplication[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_skip_not_negated_tests[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_skipped_on_no_explicit_examples.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_stateful_crash.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 2.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_status_code_conformance[Open API 3.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unknown_schema_error[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unresolvable_reference_with_disabled_validation.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 2.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 2.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unsatisfiable[Open API 3.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_unsupported_regex.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_useful_traceback[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_hooks/test_after_call[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_multi_project/test_disable_operations[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_multi_project/test_disable_phases[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_phase_config/test_phase_configuration[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_cli[None].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_cli[raw_schema2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_cli_failure.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_explicit_headers[2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/__snapshots__/test_unique_data/test_graphql_url.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/openapi/__snapshots__/test_fill_missing_examples/test_fills_missing_examples.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/coverage/__snapshots__/test_phase/test_negative_data_rejection.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/coverage/__snapshots__/test_phase/test_unspecified_http_methods.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/coverage/test_phase.py +37 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/engine/__snapshots__/test_probes/test_ctrl_c.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/__snapshots__/test_basic/test_disallow_null.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/__snapshots__/test_basic/test_filter_operations[--exclude-name=Query.getBooks].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/__snapshots__/test_basic/test_filter_operations[--include-name=Query.getBooks].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/__snapshots__/test_custom_scalars/test_custom_scalar_in_cli.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_checks/test_method_not_allowed[basic-post].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_checks/test_method_not_allowed[success-get].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[basic-Authorization-406].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[success-Authorization-200].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[success-X-API-Key-1-200].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_checks/test_missing_required_header[success-X-API-Key-1-406].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_examples/test_network_error_with_flaky_generation.raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_examples/test_parameter_override.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_ignored_auth/test_explicit_auth_cli[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_ignored_auth/test_stateful_in_cli_no_error[Open API 3.0-False].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_ignored_auth/test_stateful_in_cli_no_error[Open API 3.0-True].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_media_types/test_explicit_example_with_custom_media_type.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/__snapshots__/test_patterns/test_response_schema_is_not_mutated.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_default[Open API 3.0-1].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_default[Open API 3.0-2].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_filtered_out[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_generation_config[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_invalid_parameter_reference.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_keyboard_interrupt[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_max_failures[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_missing_body_parameter.raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_missing_link[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_non_json_response[User data as plain text].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_non_json_response[].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_not_enough_links[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_proxy_error[Open API 3.0].raw +3 -2
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_stateful_only[Open API 3.0].raw +0 -1
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__snapshots__/test_cli/test_stateful_only_with_error[Open API 3.0].raw +3 -2
- schemathesis-4.0.8/docs/reference/hooks.md +0 -41
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.dockerignore +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/FUNDING.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/dependabot.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/build.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/codeql-analysis.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/codspeed.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/commit.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/example-build.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/master_update.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/release.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/test-corpus.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/test-hypothesis.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.github/workflows/update-pre-commit.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.gitignore +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.pre-commit-config.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.readthedocs.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/.yamllint +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/ARCHITECTURE.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/CITATION.cff +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/CODE_OF_CONDUCT.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/CONTRIBUTING.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/Dockerfile +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/Dockerfile.bookworm +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/LICENSE +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/MIGRATION.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/README.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/SECURITY.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/benches/cli.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/benches/coverage_phase.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/benches/references.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/benches/schema.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/changelog.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/codecov.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/corpus/data/graphql.tar.gz +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/corpus/data/openapi-3.0.tar.gz +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/corpus/data/openapi-3.1.tar.gz +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/corpus/data/swagger-2.0.tar.gz +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/corpus/tools.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/configuration.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/explanations/data-generation.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/explanations/examples.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/explanations/pytest.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/explanations/stateful.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/faq.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/auth.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/cicd.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/config-optimization.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/custom-media-types.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/custom-serializers.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/extending-cli.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/extending.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/graphql-custom-scalars.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/hypothesis-strategies.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/index.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/python-apps.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/schema-conformance.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/stateful-testing.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/guides/targeted.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/index.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/quick-start.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/reference/checks.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/reference/cli.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/reference/configuration.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/reference/python.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/reference/warnings.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/resources.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/stylesheets/extra.css +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/tutorials/cli.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/docs/tutorials/pytest.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/examples/booking/Dockerfile +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/examples/booking/README.md +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/examples/booking/app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/examples/booking/docker-compose.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/img/demo.gif +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/mkdocs.yml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/mypy.ini +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/auths.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/__main__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/data.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/context.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/events.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/executor.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/filters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/handlers/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/handlers/base.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/handlers/cassettes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/handlers/junitxml.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/loaders.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/validation.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/constants.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/core.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/ext/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/ext/fs.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/ext/groups.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/ext/options.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_auth.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_diff_base.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_env.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_error.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_generation.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_health_check.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_operations.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_output.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_parameters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_phases.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_projects.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_rate_limit.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_report.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_validator.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/_warnings.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/config/schema.json +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/compat.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/control.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/curl.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/deserialization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/errors.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/failures.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/fs.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/hooks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/lazy_import.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/loaders.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/marks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/media_types.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/output/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/output/sanitization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/rate_limit.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/registries.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/result.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/transforms.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/transport.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/validation.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/core/version.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/context.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/control.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/core.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/events.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/stateful/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/stateful/_executor.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/stateful/context.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/unit/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/unit/_executor.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/phases/unit/_pool.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/engine/recorder.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/errors.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/filters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/case.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/hypothesis/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/hypothesis/examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/hypothesis/given.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/hypothesis/reporting.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/hypothesis/strategies.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/meta.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/metrics.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/modes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/overrides.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/stateful/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/generation/stateful/state_machine.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/graphql/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/graphql/checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/graphql/loaders.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/hooks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/openapi/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/openapi/checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/openapi/generation/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/openapi/generation/filters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/openapi/loaders.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/py.typed +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/pytest/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/pytest/control_flow.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/pytest/lazy.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/pytest/loaders.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/pytest/plugin.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/python/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/python/asgi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/python/wsgi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/schemas.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/graphql/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/graphql/_cache.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/graphql/nodes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/graphql/scalars.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/graphql/schemas.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/graphql/validation.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/_cache.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/_hypothesis.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/constants.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/converter.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/definitions.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/expressions/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/expressions/errors.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/expressions/extractors.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/expressions/lexer.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/expressions/nodes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/expressions/parser.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/formats.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/media_types.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/negative/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/negative/mutations.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/negative/types.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/negative/utils.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/parameters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/patterns.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/references.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/schemas.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/security.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/serialization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/stateful/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/stateful/control.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/stateful/links.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/specs/openapi/utils.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/transport/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/transport/asgi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/transport/prepare.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/transport/requests.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/transport/serialization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/transport/wsgi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/_pytest/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/_pytest/test_markers.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/_graphql/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/_graphql/_fastapi/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/_graphql/_fastapi/app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/_graphql/_flask/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/_graphql/_flask/app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/_graphql/schema.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/cp1252_app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/hooks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_aiohttp/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_aiohttp/app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_aiohttp/handlers.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_fastapi/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_fastapi/app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_flask/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/_flask/app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/apps/openapi/schema.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/test_cli.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/test_provider.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/auth/test_pytest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_cassettes/test_forbid_preserve_bytes_without_cassette_path[Open API 3.0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses8].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance[expected_statuses9].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_checks/test_positive_data_acceptance_with_env_vars.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-Authorization].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_auth_and_authorization_header_are_disallowed[Open API 3.0-authorization].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_certificate_only_key.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_commands_help.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_duplicated_filters[Open API 3.0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_empty_schema_file.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_force_color_nocolor[Open API 3.0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_hooks_module_not_found.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_hooks_with_inner_import_error.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_hypothesis_database_with_derandomize[Open API 3.0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_invalid_filter[Open API 3.0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_invalid_yaml.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_keyboard_interrupt_during_schema_loading.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_remote_disconnected_error[Open API 3.0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args10].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args11].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args12].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args13].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args14].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args15].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args16].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args17].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args18].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args19].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args1].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args20].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args21].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args22].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args23].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args24].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args25].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args26].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args27].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args28].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args29].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args2].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args30].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args3].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args4].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args5].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args6].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args7].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args8].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_run_output[args9].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_schema_not_available[1].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_schema_not_available[2].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/__snapshots__/test_commands/test_wait_for_schema_not_enough.raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/cert.pem +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_cassettes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_commands.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_crashes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_hooks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_junitxml.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_options.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_targeted.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/cli/test_validation.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/code_samples/test_curl.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[null_byte].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[operation_duplicate_filter].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[operation_invalid_expression].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[operation_invalid_regex].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[operation_missing_includes].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[syntactic_error].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_cli/test_incorrect_config[unknown_property].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.generation-mode-negative].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-auth-basic-non-latin1].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-auth-basic].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-headers].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-health-check-close-match].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-health-check].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-placeholder].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-project].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-rate-limit].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-request-timeout-negative].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-request-timeout].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.incorrect-tls-verify].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.root].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.warnings-off].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.warnings-on].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[common.warnings-selection].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[operations.basic].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[operations.complex_many].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[operations.missing_config_options].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[operations.warnings-off].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[operations.warnings-on].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[parameters.basic].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[parameters.mixed].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[parameters.with_locations].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.all_enabled].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.incorrect_section_type].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.incorrect_types].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.incorrect_types_in_vcr].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.invalid_format_names].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.one_enabled].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.unknown_keyword_vcr].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.unknown_keywords].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.with_env_var].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.with_env_var_in_path].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_config/test_configs[report.with_env_var_missing].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[auth_basic_username_username0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[auth_basic_username_username1].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[base_url_https_api_host_v1_he].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[base_url_https_environment_ap].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[checks_disable_globally_conte].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[checks_enabled_false_only_che].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[checks_max_response_time_2_0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[checks_positive_data_acceptan].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[checks_response_schema_confor].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[client_certificate_with_bundl].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[color_false].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[continue_on_failure_true].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[default_auth_for_most_operati].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[default_fast_testing_generati].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[default_timeout_request_timeo].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[disable_all_warnings_warnings].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[enable_specific_warnings_only].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_allow_x00_false].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_codec_ascii].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_database_memory].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_database_schemathe].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_deterministic_true].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_exclude_header_cha].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_graphql_allow_null].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_max_examples_1000].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_max_examples_200].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_max_examples_50].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_maximize_response].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_mode_negative].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_no_shrink_true].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_unique_inputs_true].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[generation_with_security_para].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[global_defaults_generation_ma].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[global_hooks_for_all_projects].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[global_parameters_parameters].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[headers_authorization_bearer].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[headers_x_api_key_api_key0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[headers_x_api_key_api_key1].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[headers_x_api_key_api_key_acc].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[max_failures_42].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[operations_by_exact_path_incl].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[operations_exclude_path_billi].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[operations_include_name_post].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[operations_include_path_billi].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[operations_without_operationi].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[optionally_under_a_named_proj].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_sanitization_enabled_f].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_sanitization_keys_to_s].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_sanitization_replaceme].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_sanitization_sensitive].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_truncation_enabled_fal].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_truncation_max_lines_2].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_truncation_max_payload].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[output_truncation_max_width_1].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_coverage_checks_not_a].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_coverage_enabled_false].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_coverage_generate_dupl].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_coverage_unexpected_me].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_examples_fill_missing].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_skip_stateful_testing].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[phases_stateful_max_steps_50].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[proxy_http_localhost_8080].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[proxy_https_username_password].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[rate_limit_1000_h].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[rate_limit_100_m].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[rate_limit_5_s].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[reports_directory_test_result].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[reports_junit_enabled_true].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[reports_junit_path_test_repor].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[reports_preserve_bytes_true].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[request_timeout_0_5].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[request_timeout_30_0_30_secon].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[request_timeout_5_0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[run_more_tests_for_better_cov].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[seed_42].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[set_certificate_and_separate].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[suppress_health_check_too_slo].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[tls_verify_false].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[tls_verify_path_to_ca_bundle].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[wait_for_schema_5_0].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/__snapshots__/test_doc_examples/test_configs[workers_4_use_exactly_4_worke].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/generation-mode-negative.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-auth-basic-non-latin1.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-auth-basic.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-headers.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-health-check-close-match.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-health-check.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-placeholder.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-project.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-rate-limit.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-request-timeout-negative.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-request-timeout.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/incorrect-tls-verify.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/root.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/warnings-off.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/warnings-on.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/common/warnings-selection.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/operations/basic.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/operations/complex_many.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/operations/missing_config_options.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/operations/warnings-off.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/operations/warnings-on.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/parameters/basic.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/parameters/mixed.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/parameters/with_locations.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/all_enabled.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/incorrect_section_type.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/incorrect_types.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/incorrect_types_in_vcr.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/invalid_format_names.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/one_enabled.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/unknown_keyword_vcr.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/unknown_keywords.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/with_env_var.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/with_env_var_in_path.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/configs/report/with_env_var_missing.toml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/hooks/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/hooks/error.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/hooks/example.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/hooks/hello.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_cli.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_config.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_discovery.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_doc_examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_hierarchy.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_hooks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_merging.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_multi_project.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_phase_config.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/config/test_status_code_validation.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/openapi/test_fill_missing_examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/contrib/test_unique_data.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/core/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/core/test_deserialization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/core/test_media_types.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/coverage/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/coverage/test_combinations.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/coverage/test_examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/petstore_v2.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/petstore_v3.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/relative_files/components/parameters.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/relative_files/components/responses.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/relative_files/components/schemas.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/relative_files/main.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/relative_files/paths/user-account.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/simple_openapi.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/data/simple_swagger.yaml +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/engine/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/engine/test_checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/engine/test_engine.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/engine/test_errors.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/engine/test_probes.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/filters/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/filters/test_cli.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/filters/test_expressions.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/filters/test_matching.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/fixtures/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/fixtures/app_runner.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/fixtures/ctx.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/hooks/test_filters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/hooks/test_hooks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/loaders/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/loaders/test_common.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/loaders/test_graphql.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/loaders/test_openapi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/openapi/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/openapi/test_filters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/python/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/python/test_case.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/python/test_models.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n 123(created Int!) Int!n}-.whatever].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/__snapshots__/test_basic/test_schema_error[ntype Query {n func(created Unknown!) Int!n}-.gql].raw +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/test_basic.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/test_custom_scalars.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/graphql/test_pytest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/blank.pdf +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/parameters/test_forms.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/parameters/test_non_payload.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/parameters/test_simple_payloads.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/__init__.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/test_cli.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/test_engine.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/stateful/test_stateful.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_checks.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_expressions.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_hypothesis.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_ignored_auth.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_media_types.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_negative.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_parameters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_patterns.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_randomized.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_schemas.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_security.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_serializing.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/specs/openapi/test_utils.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_app.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_asgi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_async.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_common_parameters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_converter.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_dereferencing.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_direct_access.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_examples.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_filters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_hypothesis.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_lazy.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_output.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_package.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_parameters.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_parametrization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_petstore.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_pytest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_rate_limit.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_recoverable_errors.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_required.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_sanitizing_output.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_schemas.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_serialization.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_stateful.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_unittest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_warnings.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/test_wsgi.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test/utils.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test-corpus/conftest.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test-corpus/test_corpus.py +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/test_server.sh +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/tox.ini +0 -0
- {schemathesis-4.0.8 → schemathesis-4.0.9}/typos.toml +0 -0
@@ -1,6 +1,18 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
## [Unreleased](https://github.com/schemathesis/schemathesis/compare/v4.0.
|
3
|
+
## [Unreleased](https://github.com/schemathesis/schemathesis/compare/v4.0.9...HEAD) - TBD
|
4
|
+
|
5
|
+
## [4.0.9](https://github.com/schemathesis/schemathesis/compare/v4.0.8...v4.0.9) - 2025-07-13
|
6
|
+
|
7
|
+
### :bug: Fixed
|
8
|
+
|
9
|
+
- Do not generate negative test cases during the coverage phase if the original schema accepts any value.
|
10
|
+
|
11
|
+
### :wrench: Changed
|
12
|
+
|
13
|
+
- Do not display API probing result in the test phases summary.
|
14
|
+
- Do not display API probing errors in CLI output. Treat errors as a missing capability.
|
15
|
+
- Display cURL code samples on more network errors. [#2940](https://github.com/schemathesis/schemathesis/issues/2940)
|
4
16
|
|
5
17
|
## [4.0.8](https://github.com/schemathesis/schemathesis/compare/v4.0.7...v4.0.8) - 2025-07-12
|
6
18
|
|
@@ -39,7 +51,7 @@
|
|
39
51
|
|
40
52
|
### :bug: Fixed
|
41
53
|
|
42
|
-
- Ignoring some string formats during positive test case generation in the coverage phase. [#2930](https://github.com/schemathesis/schemathesis/issues/2930)
|
54
|
+
- Ignoring some string formats during positive test case generation in the coverage phase. [#2930](https://github.com/schemathesis/schemathesis/issues/2930)
|
43
55
|
|
44
56
|
## [4.0.4](https://github.com/schemathesis/schemathesis/compare/v4.0.3...v4.0.4) - 2025-07-02
|
45
57
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: schemathesis
|
3
|
-
Version: 4.0.
|
3
|
+
Version: 4.0.9
|
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://github.com/schemathesis/schemathesis/blob/master/CHANGELOG.md
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# Hooks Reference
|
2
|
+
|
3
|
+
## Schema-Level Hooks
|
4
|
+
|
5
|
+
Hooks that execute during schema loading and operation initialization.
|
6
|
+
|
7
|
+
| Hook | Signature | Execution Order | Modifies |
|
8
|
+
|------|-----------|-----------------|----------|
|
9
|
+
| **before_load_schema** | `(ctx, raw_schema: dict) -> None` | Before schema parsing | `raw_schema` dict |
|
10
|
+
| **after_load_schema** | `(ctx, schema: BaseSchema) -> None` | After schema instance created | `schema` object |
|
11
|
+
| **before_process_path** | `(ctx, path: str, methods: dict) -> None` | For each API path | `methods` dict |
|
12
|
+
| **before_init_operation** | `(ctx, operation: APIOperation) -> None` | For each operation | `APIOperation` object |
|
13
|
+
| **before_add_examples** | `(ctx, examples: list[Case]) -> None` | Before scheduling all existing examples for testing | `Case` list |
|
14
|
+
|
15
|
+
!!! note
|
16
|
+
|
17
|
+
All schema-level hooks return `None` and modify their arguments in-place.
|
18
|
+
|
19
|
+
## Data-Generation Hooks
|
20
|
+
|
21
|
+
Control how test data is generated for each request component.
|
22
|
+
|
23
|
+
| Hook Pattern | Signature | Purpose | Return |
|
24
|
+
|--------------|-----------|---------|---------|
|
25
|
+
| **filter_{component}** | `(ctx, value: Any) -> bool` | Exclude generated values | `True` to keep, `False` to reject |
|
26
|
+
| **map_{component}** | `(ctx, value: Any) -> Any` | Transform generated values | Modified value |
|
27
|
+
| **flatmap_{component}** | `(ctx, value: Any) -> SearchStrategy` | Generate dependent values | New strategy based on input |
|
28
|
+
|
29
|
+
Where `{component}` is one of: `path_parameters`, `headers`, `cookies`, `query`, `body`, `case`
|
30
|
+
|
31
|
+
## Request-Lifecycle Hooks
|
32
|
+
|
33
|
+
Hooks that execute during test case execution.
|
34
|
+
|
35
|
+
| Hook | Signature | Execution Stage | Purpose |
|
36
|
+
|------|-----------|-----------------|---------|
|
37
|
+
| **before_call** | `(ctx, case: Case) -> None` | Before HTTP request | Modify test case (headers, body, etc.) |
|
38
|
+
| **process_call_kwargs** | `(ctx, case: Case, kwargs: dict) -> dict` | Before `case.call()` | Modify request library arguments (timeout, verify, etc.) |
|
39
|
+
| **after_call** | `(ctx, case: Case, response: Response) -> None` | After HTTP response | Inspect/modify response before checks |
|
40
|
+
|
41
|
+
**Flow:** `before_call` → `process_call_kwargs` → HTTP Request → `after_call` → Checks
|
42
|
+
|
43
|
+
## Hook Registration
|
44
|
+
|
45
|
+
| Scope | Registration Method | Available Hooks |
|
46
|
+
|-------|-------------------|-----------------|
|
47
|
+
| **Global** | `@schemathesis.hook` or `@schemathesis.hook("hook_name")` | All hooks |
|
48
|
+
| **Schema** | `@schema.hooks.hook` or `@schema.hooks.hook("hook_name")` | All hooks except `before_load_schema`, `after_load_schema` |
|
49
|
+
| **Test** | `@schema.hooks.apply(hook_func)` | All hooks except `before_load_schema`, `after_load_schema` |
|
50
|
+
|
51
|
+
**Hook Name Detection:** If not specified, uses function name (must match hook name exactly).
|
52
|
+
|
53
|
+
## Conditional Application
|
54
|
+
|
55
|
+
Apply hooks selectively using filters.
|
56
|
+
|
57
|
+
### Filter Methods
|
58
|
+
|
59
|
+
| Method | Logic | Description |
|
60
|
+
|--------|-------|-------------|
|
61
|
+
| `.apply_to(...)` | AND | Apply only when ALL conditions match |
|
62
|
+
| `.skip_for(...)` | OR | Skip when ANY condition matches |
|
63
|
+
|
64
|
+
### Available Filters
|
65
|
+
|
66
|
+
| Filter | Type | Example | Description |
|
67
|
+
|--------|------|---------|-------------|
|
68
|
+
| `path` | `str | list[str]` | `"/users"` | Exact path match |
|
69
|
+
| `path_regex` | `str` | `r"^/users/\d+$"` | Path pattern match |
|
70
|
+
| `method` | `str | list[str]` | `["GET", "POST"]` | HTTP method |
|
71
|
+
| `method_regex` | `str` | `"GET|POST"` | HTTP method pattern match |
|
72
|
+
| `name` | `str | list[str]` | `"GET /users"` | Operation name |
|
73
|
+
| `name_regex` | `str` | `"(GET|POST) /(users|orders)"` | Operation name pattern match |
|
74
|
+
| `tag` | `str | list[str]` | `["users", "admin"]` | OpenAPI tags |
|
75
|
+
| `tag_regex` | `str` | `"users|payments"` | OpenAPI tags pattern match |
|
76
|
+
| `operation_id` | `str | list[str]` | `"get_user"` | operationId |
|
77
|
+
| `operation_id_regex` | `str` | `"(get|list)_user"` | operationId pattern match |
|
78
|
+
|
79
|
+
!!! note
|
80
|
+
Filters are not available for `before_process_path`, `before_load_schema`, and `after_load_schema` hooks.
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
4
4
|
|
5
5
|
[project]
|
6
6
|
name = "schemathesis"
|
7
|
-
version = "4.0.
|
7
|
+
version = "4.0.9"
|
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" }]
|
{schemathesis-4.0.8 → schemathesis-4.0.9}/src/schemathesis/cli/commands/run/handlers/output.py
RENAMED
@@ -20,10 +20,9 @@ from schemathesis.config import ProjectConfig, ReportFormat, SchemathesisWarning
|
|
20
20
|
from schemathesis.core.errors import LoaderError, LoaderErrorKind, format_exception, split_traceback
|
21
21
|
from schemathesis.core.failures import MessageBlock, Severity, format_failures
|
22
22
|
from schemathesis.core.output import prepare_response_payload
|
23
|
-
from schemathesis.core.result import
|
23
|
+
from schemathesis.core.result import Ok
|
24
24
|
from schemathesis.core.version import SCHEMATHESIS_VERSION
|
25
25
|
from schemathesis.engine import Status, events
|
26
|
-
from schemathesis.engine.errors import EngineErrorInfo
|
27
26
|
from schemathesis.engine.phases import PhaseName, PhaseSkipReason
|
28
27
|
from schemathesis.engine.phases.probes import ProbeOutcome
|
29
28
|
from schemathesis.engine.recorder import Interaction, ScenarioRecorder
|
@@ -960,7 +959,9 @@ class OutputHandler(EventHandler):
|
|
960
959
|
table.add_row(f"{probe_run.probe.name}:", Text(icon, style=style))
|
961
960
|
|
962
961
|
message = Padding(table, BLOCK_PADDING)
|
963
|
-
|
962
|
+
else:
|
963
|
+
assert event.status == Status.SKIP
|
964
|
+
assert isinstance(event.payload, Ok)
|
964
965
|
message = Padding(
|
965
966
|
Text.assemble(
|
966
967
|
("⏭ ", ""),
|
@@ -968,17 +969,6 @@ class OutputHandler(EventHandler):
|
|
968
969
|
),
|
969
970
|
BLOCK_PADDING,
|
970
971
|
)
|
971
|
-
else:
|
972
|
-
assert event.status == Status.ERROR
|
973
|
-
assert isinstance(event.payload, Err)
|
974
|
-
error = EngineErrorInfo(event.payload.err())
|
975
|
-
message = Padding(
|
976
|
-
Text.assemble(
|
977
|
-
("🚫 ", ""),
|
978
|
-
(f"API probing failed: {error.message}", Style(color="red")),
|
979
|
-
),
|
980
|
-
BLOCK_PADDING,
|
981
|
-
)
|
982
972
|
self.console.print(message)
|
983
973
|
self.console.print()
|
984
974
|
elif phase.name == PhaseName.STATEFUL_TESTING and phase.is_enabled and self.stateful_tests_manager is not None:
|
@@ -1337,6 +1327,9 @@ class OutputHandler(EventHandler):
|
|
1337
1327
|
click.echo(_style("Test Phases:", bold=True))
|
1338
1328
|
|
1339
1329
|
for phase in PhaseName:
|
1330
|
+
if phase == PhaseName.PROBING:
|
1331
|
+
# It is not a test phase
|
1332
|
+
continue
|
1340
1333
|
status, skip_reason = self.phases[phase]
|
1341
1334
|
|
1342
1335
|
if status == Status.SKIP:
|
@@ -426,7 +426,15 @@ def is_unrecoverable_network_error(exc: Exception) -> bool:
|
|
426
426
|
|
427
427
|
def has_connection_reset(inner: BaseException) -> bool:
|
428
428
|
exc_str = str(inner)
|
429
|
-
if any(
|
429
|
+
if any(
|
430
|
+
pattern in exc_str
|
431
|
+
for pattern in [
|
432
|
+
"Connection reset by peer",
|
433
|
+
"[Errno 104]",
|
434
|
+
"ECONNRESET",
|
435
|
+
"An established connection was aborted",
|
436
|
+
]
|
437
|
+
):
|
430
438
|
return True
|
431
439
|
|
432
440
|
if inner.__context__ is not None:
|
@@ -434,7 +442,7 @@ def is_unrecoverable_network_error(exc: Exception) -> bool:
|
|
434
442
|
|
435
443
|
return False
|
436
444
|
|
437
|
-
if isinstance(exc, requests.Timeout):
|
445
|
+
if isinstance(exc, (requests.Timeout, requests.exceptions.ChunkedEncodingError)):
|
438
446
|
return True
|
439
447
|
if isinstance(exc.__context__, ProtocolError):
|
440
448
|
if len(exc.__context__.args) == 2 and isinstance(exc.__context__.args[1], RemoteDisconnected):
|
@@ -13,7 +13,7 @@ import warnings
|
|
13
13
|
from dataclasses import dataclass
|
14
14
|
from typing import TYPE_CHECKING
|
15
15
|
|
16
|
-
from schemathesis.core.result import
|
16
|
+
from schemathesis.core.result import Ok, Result
|
17
17
|
from schemathesis.core.transport import USER_AGENT
|
18
18
|
from schemathesis.engine import Status, events
|
19
19
|
from schemathesis.transport.prepare import get_default_headers
|
@@ -41,16 +41,11 @@ def execute(ctx: EngineContext, phase: Phase) -> EventGenerator:
|
|
41
41
|
payload: Result[ProbePayload, Exception] | None = None
|
42
42
|
for result in probes:
|
43
43
|
if isinstance(result.probe, NullByteInHeader) and result.is_failure:
|
44
|
-
from
|
45
|
-
from
|
44
|
+
from schemathesis.specs.openapi import formats
|
45
|
+
from schemathesis.specs.openapi.formats import HEADER_FORMAT, header_values
|
46
46
|
|
47
47
|
formats.register(HEADER_FORMAT, header_values(exclude_characters="\n\r\x00"))
|
48
|
-
|
49
|
-
status = Status.ERROR
|
50
|
-
payload = Err(result.error)
|
51
|
-
else:
|
52
|
-
status = Status.SUCCESS
|
53
|
-
payload = Ok(ProbePayload(probes=probes))
|
48
|
+
payload = Ok(ProbePayload(probes=probes))
|
54
49
|
yield events.PhaseFinished(phase=phase, status=status, payload=payload)
|
55
50
|
|
56
51
|
|
@@ -177,6 +177,18 @@ class CoverageContext:
|
|
177
177
|
return bool(value)
|
178
178
|
return True
|
179
179
|
|
180
|
+
def can_be_negated(self, schema: dict[str, Any]) -> bool:
|
181
|
+
# Path, query, header, and cookie parameters will be stringified anyway
|
182
|
+
# If there are no constraints, then anything will match the original schema after serialization
|
183
|
+
if self.location in ("query", "path", "header", "cookie"):
|
184
|
+
cleaned = {
|
185
|
+
k: v
|
186
|
+
for k, v in schema.items()
|
187
|
+
if not k.startswith("x-") and k not in ["description", "example", "examples"]
|
188
|
+
}
|
189
|
+
return cleaned != {}
|
190
|
+
return True
|
191
|
+
|
180
192
|
def generate_from(self, strategy: st.SearchStrategy) -> Any:
|
181
193
|
return cached_draw(strategy)
|
182
194
|
|
@@ -389,6 +401,8 @@ def cover_schema_iter(
|
|
389
401
|
yield from _cover_positive_for_type(ctx, schema, ty)
|
390
402
|
if GenerationMode.NEGATIVE in ctx.generation_modes:
|
391
403
|
template = None
|
404
|
+
if not ctx.can_be_negated(schema):
|
405
|
+
return
|
392
406
|
for key, value in schema.items():
|
393
407
|
with _ignore_unfixable(), ctx.at(key):
|
394
408
|
if key == "enum":
|
@@ -624,7 +624,9 @@ def _iter_coverage_cases(
|
|
624
624
|
),
|
625
625
|
)
|
626
626
|
# Generate duplicate query parameters
|
627
|
-
if
|
627
|
+
# NOTE: if the query schema has no constraints, then we may have no negative test cases at all
|
628
|
+
# as they all will match the original schema and therefore will be considered as positive ones
|
629
|
+
if generate_duplicate_query_parameters and operation.query and "query" in template:
|
628
630
|
container = template["query"]
|
629
631
|
for parameter in operation.query:
|
630
632
|
instant = Instant()
|
@@ -656,24 +658,26 @@ def _iter_coverage_cases(
|
|
656
658
|
name = parameter.name
|
657
659
|
location = parameter.location
|
658
660
|
container_name = LOCATION_TO_CONTAINER[location]
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
661
|
+
# NOTE: if the schema is overly permissive we may not have any negative test cases
|
662
|
+
if container_name in template:
|
663
|
+
container = template[container_name]
|
664
|
+
data = template.with_container(
|
665
|
+
container_name=container_name,
|
666
|
+
value={k: v for k, v in container.items() if k != name},
|
667
|
+
generation_mode=GenerationMode.NEGATIVE,
|
668
|
+
)
|
669
|
+
yield operation.Case(
|
670
|
+
**data.kwargs,
|
671
|
+
_meta=CaseMetadata(
|
672
|
+
generation=GenerationInfo(time=instant.elapsed, mode=GenerationMode.NEGATIVE),
|
673
|
+
components=data.components,
|
674
|
+
phase=PhaseInfo.coverage(
|
675
|
+
description=f"Missing `{name}` at {location}",
|
676
|
+
parameter=name,
|
677
|
+
parameter_location=location,
|
678
|
+
),
|
674
679
|
),
|
675
|
-
)
|
676
|
-
)
|
680
|
+
)
|
677
681
|
# Generate combinations for each location
|
678
682
|
for location, parameter_set in [
|
679
683
|
("query", operation.query),
|