============================= test session starts ============================== platform sunos5 -- Python $(PYTHON_VERSION).X -- $(PYTHON) cachedir: .pytest_cache rootdir: $(@D) configfile: pyproject.toml collecting ... collected 112 items tests/examples/test_example_blocking_httpserver.py::test_simplified PASSED tests/examples/test_example_query_params1.py::test_query_params PASSED tests/examples/test_example_query_params2.py::test_query_params PASSED tests/examples/test_howto_authorization_headers.py::test_authorization_headers PASSED tests/examples/test_howto_case_insensitive_matcher.py::test_case_insensitive_matching PASSED tests/examples/test_howto_check.py::test_check_assertions XFAIL tests/examples/test_howto_check_handler_errors.py::test_check_assertions_raises_handler_assertions PASSED tests/examples/test_howto_check_handler_errors.py::test_check_handler_errors_raises_handler_error PASSED tests/examples/test_howto_custom_handler.py::test_expected_request_handler PASSED tests/examples/test_howto_custom_hooks.py::test_custom_hook PASSED tests/examples/test_howto_header_value_matcher.py::test_own_matcher_object PASSED tests/examples/test_howto_hooks.py::test_delay PASSED tests/examples/test_howto_json_matcher.py::test_json_matcher PASSED tests/examples/test_howto_log_querying.py::test_log_querying_example PASSED tests/examples/test_howto_query_params_dict.py::test_query_params PASSED tests/examples/test_howto_query_params_never_do_this.py::test_query_params PASSED tests/examples/test_howto_query_params_proper_use.py::test_query_params PASSED tests/examples/test_howto_regexp.py::test_httpserver_with_regexp PASSED tests/examples/test_howto_timeout_requests.py::test_connection_refused PASSED tests/examples/test_howto_url_matcher.py::test_uripattern_object PASSED tests/examples/test_howto_wait_success.py::test_wait_success PASSED tests/test_blocking_httpserver.py::test_behave_workflow PASSED tests/test_blocking_httpserver.py::test_raises_assertion_error_when_request_does_not_match PASSED tests/test_blocking_httpserver.py::test_raises_assertion_error_when_request_was_not_sent PASSED tests/test_blocking_httpserver.py::test_ignores_when_request_is_not_asserted PASSED tests/test_blocking_httpserver.py::test_raises_assertion_error_when_request_was_not_responded PASSED tests/test_blocking_httpserver.py::test_repr PASSED tests/test_handler_errors.py::test_check_assertions_raises_handler_assertions PASSED tests/test_handler_errors.py::test_check_handler_errors_raises_handler_error PASSED tests/test_handler_errors.py::test_check_handler_errors_correct_order PASSED tests/test_handler_errors.py::test_missing_matcher_raises_exception PASSED tests/test_handler_errors.py::test_check_raises_errors_in_order PASSED tests/test_headers.py::test_custom_headers PASSED tests/test_headers.py::test_authorization_headers PASSED tests/test_headers.py::test_header_one_key_multiple_values PASSED tests/test_hooks.py::test_hook PASSED tests/test_hooks.py::test_delay_hook PASSED tests/test_hooks.py::test_garbage_hook PASSED tests/test_hooks.py::test_chain PASSED tests/test_hooks.py::test_multiple_hooks PASSED tests/test_hooks.py::test_multiple_hooks_correct_order PASSED tests/test_ip_protocols.py::test_ipv4 PASSED tests/test_ip_protocols.py::test_ipv6 PASSED tests/test_json_matcher.py::test_json_matcher PASSED tests/test_json_matcher.py::test_json_matcher_with_none PASSED tests/test_json_matcher.py::test_json_matcher_without_content_type PASSED tests/test_json_matcher.py::test_json_matcher_with_invalid_json PASSED tests/test_json_matcher.py::test_data_and_json_mutually_exclusive PASSED tests/test_log_leak.py::test_1 PASSED tests/test_log_leak.py::test_2 PASSED tests/test_log_querying.py::test_verify PASSED tests/test_log_querying.py::test_verify_assert_msg PASSED tests/test_log_querying.py::test_verify_assert_msg_no_similar_requests PASSED tests/test_mixed.py::test_oneshot_and_permanent_happy_path1 PASSED tests/test_mixed.py::test_oneshot_and_permanent_happy_path2 PASSED tests/test_mixed.py::test_all_happy_path1 PASSED tests/test_mixed.py::test_all_ordered_missing PASSED tests/test_mixed.py::test_repr PASSED tests/test_oneshot.py::test_oneshot PASSED tests/test_oneshot.py::test_oneshot_any_method PASSED tests/test_ordered.py::test_ordered_ok PASSED tests/test_ordered.py::test_ordered_invalid_order PASSED tests/test_parse_qs.py::test_qsl[&-expected0] PASSED tests/test_parse_qs.py::test_qsl[&&-expected1] PASSED tests/test_parse_qs.py::test_qsl[&a=b-expected2] PASSED tests/test_parse_qs.py::test_qsl[a=a+b&b=b+c-expected3] PASSED tests/test_parse_qs.py::test_qsl[a=1&a=2-expected4] PASSED tests/test_parse_qs.py::test_qsl[a=-expected5] PASSED tests/test_parse_qs.py::test_qsl[a=foo bar&b=bar foo-expected6] PASSED tests/test_parse_qs.py::test_qsl[a=foo%20bar&b=bar%20foo-expected7] PASSED tests/test_parse_qs.py::test_qsl[a=%20%21%22%23%24%25%26%27%28%29%2A%2B%2C%2F%3A%3B%3D%3F%40%5B%5D-expected8] PASSED tests/test_permanent.py::test_expected_request_json PASSED tests/test_permanent.py::test_expected_request_data PASSED tests/test_permanent.py::test_expected_request_handler PASSED tests/test_permanent.py::test_expected_request_response PASSED tests/test_permanent.py::test_expected_request_response_as_string PASSED tests/test_permanent.py::test_request_post PASSED tests/test_permanent.py::test_request_post_case_insensitive_method PASSED tests/test_permanent.py::test_request_any_method PASSED tests/test_permanent.py::test_unexpected_request PASSED tests/test_permanent.py::test_no_handler_status_code PASSED tests/test_permanent.py::test_server_cleared_for_each_test PASSED tests/test_permanent.py::test_response_handler_replaced PASSED tests/test_permanent.py::test_request_handler_repr PASSED tests/test_port_changing.py::test_host_changing_by_environment SKIPPED tests/test_port_changing.py::test_port_changing_by_environment SKIPPED tests/test_port_changing.py::test_get_httpserver_listen_address_with_env PASSED tests/test_querymatcher.py::test_qm_string PASSED tests/test_querymatcher.py::test_qm_bytes PASSED tests/test_querymatcher.py::test_qm_boolean PASSED tests/test_querymatcher.py::test_qm_mapping_string PASSED tests/test_querymatcher.py::test_qm_mapping_unordered PASSED tests/test_querymatcher.py::test_qm_mapping_first_value PASSED tests/test_querymatcher.py::test_qm_mapping_multiple_values PASSED tests/test_querystring.py::test_querystring_str PASSED tests/test_querystring.py::test_querystring_bytes PASSED tests/test_querystring.py::test_querystring_dict PASSED tests/test_release.py::test_no_duplicate_classifiers SKIPPED tests/test_release.py::test_python_version SKIPPED tests/test_release.py::test_wheel_no_extra_contents SKIPPED tests/test_release.py::test_sdist_contents SKIPPED tests/test_release.py::test_poetry_check SKIPPED tests/test_ssl.py::test_ssl SKIPPED tests/test_threaded.py::test_threaded PASSED tests/test_urimatch.py::test_uripattern_object PASSED tests/test_urimatch.py::test_regexp PASSED tests/test_urimatch.py::test_object_with_eq PASSED tests/test_wait.py::test_wait_success PASSED tests/test_wait.py::test_wait_unexpected_request PASSED tests/test_wait.py::test_wait_timeout PASSED tests/test_wait.py::test_wait_raise_assertion_false PASSED tests/test_with_statement.py::test_server_with_statement PASSED ======== 103 passed, 8 skipped, 1 xfailed ========