Sourcing python-remove-tests-dir-hook Sourcing python-catch-conflicts-hook.sh Sourcing python-remove-bin-bytecode-hook.sh Sourcing setuptools-build-hook Using setuptoolsBuildPhase Using setuptoolsShellHook Sourcing pip-install-hook Using pipInstallPhase Sourcing python-imports-check-hook.sh Using pythonImportsCheckPhase Sourcing python-namespaces-hook Sourcing python-catch-conflicts-hook.sh Sourcing setuptools-check-hook Using setuptoolsCheckPhase Sourcing pytest-check-hook Using pytestCheckPhase Removing setuptoolsCheckPhase Running phase: unpackPhase unpacking sources unpacking source archive /nix/store/w5aclspb1adjpdnz16bpl8vbngj2s5jc-source source root is source setting SOURCE_DATE_EPOCH to timestamp 315619200 of file source/tests/tls/server_chain.pem Running phase: patchPhase patching sources Running phase: configurePhase configuring no configure script, doing nothing Running phase: buildPhase building Executing setuptoolsBuildPhase running bdist_wheel running build running build_py creating build creating build/lib creating build/lib/httplib2 copying python3/httplib2/auth.py -> build/lib/httplib2 copying python3/httplib2/iri2uri.py -> build/lib/httplib2 copying python3/httplib2/socks.py -> build/lib/httplib2 copying python3/httplib2/__init__.py -> build/lib/httplib2 copying python3/httplib2/error.py -> build/lib/httplib2 copying python3/httplib2/certs.py -> build/lib/httplib2 copying python3/httplib2/cacerts.txt -> build/lib/httplib2 /nix/store/3pqwnc3n91037mvmdm7204qnh9x378mi-python3.9-setuptools-65.3.0/lib/python3.9/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( installing to build/bdist.linux-i686/wheel running install running install_lib creating build/bdist.linux-i686 creating build/bdist.linux-i686/wheel creating build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/iri2uri.py -> build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/cacerts.txt -> build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/socks.py -> build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/auth.py -> build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/__init__.py -> build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/error.py -> build/bdist.linux-i686/wheel/httplib2 copying build/lib/httplib2/certs.py -> build/bdist.linux-i686/wheel/httplib2 running install_egg_info running egg_info creating python3/httplib2.egg-info writing python3/httplib2.egg-info/PKG-INFO writing dependency_links to python3/httplib2.egg-info/dependency_links.txt writing requirements to python3/httplib2.egg-info/requires.txt writing top-level names to python3/httplib2.egg-info/top_level.txt writing manifest file 'python3/httplib2.egg-info/SOURCES.txt' reading manifest file 'python3/httplib2.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no previously-included files found matching 'codecov.yml' warning: no previously-included files found matching '.pre-commit-*.yaml' no previously-included directories found matching 'ref' warning: no previously-included files matching '__pycache__' found anywhere in distribution warning: no previously-included files matching '*.py[cod]' found anywhere in distribution adding license file 'LICENSE' writing manifest file 'python3/httplib2.egg-info/SOURCES.txt' Copying python3/httplib2.egg-info to build/bdist.linux-i686/wheel/httplib2-0.21.0-py3.9.egg-info running install_scripts adding license file "LICENSE" (matched pattern "LICEN[CS]E*") creating build/bdist.linux-i686/wheel/httplib2-0.21.0.dist-info/WHEEL creating 'dist/httplib2-0.21.0-py3-none-any.whl' and adding 'build/bdist.linux-i686/wheel' to it adding 'httplib2/__init__.py' adding 'httplib2/auth.py' adding 'httplib2/cacerts.txt' adding 'httplib2/certs.py' adding 'httplib2/error.py' adding 'httplib2/iri2uri.py' adding 'httplib2/socks.py' adding 'httplib2-0.21.0.dist-info/LICENSE' adding 'httplib2-0.21.0.dist-info/METADATA' adding 'httplib2-0.21.0.dist-info/WHEEL' adding 'httplib2-0.21.0.dist-info/top_level.txt' adding 'httplib2-0.21.0.dist-info/RECORD' removing build/bdist.linux-i686/wheel Finished executing setuptoolsBuildPhase Running phase: installPhase installing Executing pipInstallPhase /build/source/dist /build/source Processing ./httplib2-0.21.0-py3-none-any.whl Requirement already satisfied: pyparsing!=3.0.0,!=3.0.1,!=3.0.2,!=3.0.3,<4,>=2.4.2 in /nix/store/n2ab13wnnyaf9x8k3maxmj0p0jjk11g3-python3.9-pyparsing-3.0.9/lib/python3.9/site-packages (from httplib2==0.21.0) (3.0.9) Installing collected packages: httplib2 Successfully installed httplib2-0.21.0 /build/source Finished executing pipInstallPhase Running phase: pythonOutputDistPhase pythonOutputDistPhase Executing pythonOutputDistPhase Finished executing pythonOutputDistPhase Running phase: fixupPhase post-installation fixup shrinking RPATHs of ELF executables and libraries in /nix/store/pq9wm7s36x78pi2f3lykd666irgq2sda-python3.9-httplib2-0.21.0 strip is /nix/store/rkwixq2wda45gxx7zg1qh329zhkbvzzb-gcc-wrapper-11.3.0/bin/strip stripping (with command strip and flags -S) in /nix/store/pq9wm7s36x78pi2f3lykd666irgq2sda-python3.9-httplib2-0.21.0/lib patching script interpreter paths in /nix/store/pq9wm7s36x78pi2f3lykd666irgq2sda-python3.9-httplib2-0.21.0 checking for references to /build/ in /nix/store/pq9wm7s36x78pi2f3lykd666irgq2sda-python3.9-httplib2-0.21.0... shrinking RPATHs of ELF executables and libraries in /nix/store/jp0f6s3kb9by3yygvbmn1vff36sf73px-python3.9-httplib2-0.21.0-dist strip is /nix/store/rkwixq2wda45gxx7zg1qh329zhkbvzzb-gcc-wrapper-11.3.0/bin/strip patching script interpreter paths in /nix/store/jp0f6s3kb9by3yygvbmn1vff36sf73px-python3.9-httplib2-0.21.0-dist checking for references to /build/ in /nix/store/jp0f6s3kb9by3yygvbmn1vff36sf73px-python3.9-httplib2-0.21.0-dist... Executing pythonRemoveTestsDir Finished executing pythonRemoveTestsDir Running phase: installCheckPhase running install tests no Makefile or custom installCheckPhase, doing nothing Running phase: pythonCatchConflictsPhase pythonCatchConflictsPhase Running phase: pythonRemoveBinBytecodePhase pythonRemoveBinBytecodePhase Running phase: pythonImportsCheckPhase pythonImportsCheckPhase Executing pythonImportsCheckPhase Check whether the following modules can be imported: httplib2 Running phase: pytestCheckPhase pytestCheckPhase Executing pytestCheckPhase ============================= test session starts ============================== platform linux -- Python 3.9.16, pytest-7.1.3, pluggy-1.0.0 -- /nix/store/v3jjnrxnsi318mgkpnzh7qb18a9y98ig-python3-3.9.16/bin/python3.9 cachedir: .pytest_cache Using --randomly-seed=1496270976 rootdir: /build/source, configfile: setup.cfg plugins: forked-1.4.0, randomly-3.12.0, timeout-2.1.0 timeout: 17.0s timeout method: signal timeout func_only: False collected 493 items / 3 deselected / 490 selected tests/test_https.py::test_get_301_via_https PASSED [ 0%] tests/test_https.py::test_set_tls_version[TLSv1_2-minimum_version] PASSED [ 0%] tests/test_https.py::test_set_tls_version[TLSVersion.TLSv1_2-minimum_version] PASSED [ 0%] tests/test_https.py::test_invalid_ca_certs_path PASSED [ 0%] tests/test_https.py::test_max_tls_version PASSED [ 1%] tests/test_https.py::test_get_301_via_https_spec_violation_on_location PASSED [ 1%] tests/test_https.py::test_set_tls_version[None-maximum_version] PASSED [ 1%] tests/test_https.py::test_https_redirect_http PASSED [ 1%] tests/test_https.py::test_set_tls_version[TLSv1_2-maximum_version] PASSED [ 1%] tests/test_https.py::test_not_trusted_ca PASSED [ 2%] tests/test_https.py::test_client_cert_verified PASSED [ 2%] tests/test_https.py::test_set_tls_version[TLSVersion.TLSv1_2-maximum_version] PASSED [ 2%] tests/test_https.py::test_sni_set_servername_callback PASSED [ 2%] tests/test_https.py::test_set_tls_version[None-minimum_version] PASSED [ 2%] tests/test_https.py::test_get_via_https PASSED [ 3%] tests/test_https.py::test_http_redirect_https PASSED [ 3%] tests/test_uri.py::test_safename[('\u043f\u0440', ',9f18c0db74a9734e9d18461e16345083')] PASSED [ 3%] tests/test_uri.py::test_safename[('foo://dom/path/brath/carapath', 'dompathbrathcarapath,83db942781ed975c7a5b7c24039f8ca3')] PASSED [ 3%] tests/test_uri.py::test_safename[('', ',d41d8cd98f00b204e9800998ecf8427e')] PASSED [ 3%] tests/test_uri.py::test_safename2 PASSED [ 4%] tests/test_uri.py::test_norm PASSED [ 4%] tests/test_uri.py::test_safename[('http://example.org/fred/?a=b', 'example.orgfreda=b,58489f63a7a83c3b7794a6a398ee8b1f')] PASSED [ 4%] tests/test_uri.py::test_safename[('https://www.example.org/fred?/a=b', 'www.example.orgfreda=b,692e843a333484ce0095b070497ab45d')] PASSED [ 4%] tests/test_uri.py::test_safename[('http://www/', 'www,1c73b6efd55cef1164fc084ecc331965')] PASSED [ 4%] tests/test_uri.py::test_safename[('thisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuch', 'thisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuchthisistoomuc,c4553439dd179422c6acf6a8ac093eb6')] PASSED [ 5%] tests/test_uri.py::test_safename[('http://\u2304.org/fred/?a=b', '.orgfreda=b,ecaf0f97756c0716de76f593bd60a35e')] PASSED [ 5%] tests/test_uri.py::test_safename[(b'column\\tvalues/unstr.zip', 'columnvaluesunstr.zip,b9740dcd0553e11b526450ceb8f76683')] PASSED [ 5%] tests/test_uri.py::test_safename[('with/slash', 'withslash,17cc656656bb8ce2411bd41ead56d176')] PASSED [ 5%] tests/test_uri.py::test_safename[('normal-resource-name.js', 'normal-resource-name.js,8ff7c46fd6e61bf4e91a0a1606954a54')] PASSED [ 5%] tests/test_uri.py::test_safename[('http://example.org/fred?/a=b', 'example.orgfreda=b,8c5946d56fec453071f43329ff0be46b')] PASSED [ 6%] tests/test_uri.py::test_safename[('http://www.example.org/fred?/a=b', 'www.example.orgfreda=b,499c44b8d844a011b67ea2c015116968')] PASSED [ 6%] tests/test_uri.py::test_safename[(b'\\xd0\\xbf\\xd1\\x80', ',9f18c0db74a9734e9d18461e16345083')] PASSED [ 6%] tests/test_uri.py::test_from_std66 PASSED [ 6%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Basic realm="me",other="fred" '}] PASSED [ 6%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Digest realm="com3d", Basic realm="com3b", WSSE realm="com3w", profile="token"'}] PASSED [ 7%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Test realm="a \\\\"test\\\\" realm"'}] PASSED [ 7%] tests/test_auth.py::test_benchmark_parse_www_authenticate[Bearer 0b79bab50daca910b000d4f1a2b675d604257e42] SKIPPED [ 7%] tests/test_auth.py::test_digest_object PASSED [ 7%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Basic realm="me", algorithm=MD5'}] PASSED [ 7%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'T*!%#st realm=to*!%#en, to*!%#en="quoted string"'}] PASSED [ 8%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Digest realm="myrealm", nonce="KBAA=3", algorithm=MD5, qop="auth", stale=true'}] PASSED [ 8%] tests/test_auth.py::test_basic PASSED [ 8%] tests/test_auth.py::test_digest_auth_stale PASSED [ 8%] tests/test_auth.py::test_benchmark_parse_www_authenticate[Digest realm="digest1", qop="auth,auth-int", nonce="7102dd2", opaque="e9517f"] SKIPPED [ 8%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Test realm="a \\\\"test\\\\" realm"'}] PASSED [ 9%] tests/test_auth.py::test_digest_object_stale PASSED [ 9%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': "Basic param='single quote'"}] PASSED [ 9%] tests/test_auth.py::test_digest_next_nonce_nc PASSED [ 9%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{}] PASSED [ 10%] tests/test_auth.py::test_basic_for_domain PASSED [ 10%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Digest realm="myrealm", nonce="KBAA=3", algorithm=MD5, qop="auth", stale=true'}] PASSED [ 10%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Basic realm="me"'}] PASSED [ 10%] tests/test_auth.py::test_wsse_ok PASSED [ 10%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{}] PASSED [ 11%] tests/test_auth.py::test_wsse_algorithm PASSED [ 11%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': "Basic param='single quote'"}] PASSED [ 11%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Digest realm="2-comma-d", qop="auth-int", nonce="c0c8ff1", Basic realm="2-comma-b"'}] PASSED [ 11%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Digest realm="com3d", Basic realm="com3b", WSSE realm="com3w", profile="token"'}] PASSED [ 11%] tests/test_auth.py::test_parse_www_authenticate_complexity PASSED [ 12%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Basic realm="me", algorithm="MD5"'}] PASSED [ 12%] tests/test_auth.py::test_credentials PASSED [ 12%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Digest realm="2-comma-d", qop="auth-int", nonce="c0c8ff1", Basic realm="2-comma-b"'}] PASSED [ 12%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'T*!%#st realm=to*!%#en, to*!%#en="quoted string"'}] PASSED [ 12%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Basic realm="me",other="fred" '}] PASSED [ 13%] tests/test_auth.py::test_digest_object_auth_info PASSED [ 13%] tests/test_auth.py::test_benchmark_parse_www_authenticate[Digest realm="2-comma-d", qop="auth-int", nonce="c0c8ff1", Basic realm="2-comma-b"] SKIPPED [ 13%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Digest realm="digest1", qop="auth,auth-int", nonce="7102dd2", opaque="e9517f"'}] PASSED [ 13%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Basic realm="me"'}] PASSED [ 13%] tests/test_auth.py::test_digest PASSED [ 14%] tests/test_auth.py::test_benchmark_parse_www_authenticate[Basic realm="me", algorithm="MD5"] SKIPPED [ 14%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': ''}] PASSED [ 14%] tests/test_auth.py::test_basic_two_credentials PASSED [ 14%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Basic REAlm="me" '}] PASSED [ 14%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Basic realm="me", algorithm="MD5"'}] PASSED [ 15%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Basic REAlm="me" '}] PASSED [ 15%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Test realm="test realm" , foo=foo ,bar="bar", baz=baz,qux=qux'}] PASSED [ 15%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': ''}] PASSED [ 15%] tests/test_auth.py::test_digest_object_with_opaque PASSED [ 15%] tests/test_auth.py::test_parse_www_authenticate_correct[relax-{'www-authenticate': 'Digest realm="digest1", qop="auth,auth-int", nonce="7102dd2", opaque="e9517f"'}] PASSED [ 16%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Test realm="test realm" , foo=foo ,bar="bar", baz=baz,qux=qux'}] PASSED [ 16%] tests/test_auth.py::test_parse_www_authenticate_correct[strict-{'www-authenticate': 'Basic realm="me", algorithm=MD5'}] PASSED [ 16%] tests/test_auth.py::test_parse_www_authenticate_malformed[{'www-authenticate': 'OAuth "Facebook Platform" "invalid_token" "Invalid OAuth access token."'}] PASSED [ 16%] tests/test_auth.py::test_wsse_invalid PASSED [ 16%] tests/test_proxy.py::test_from_env_none PASSED [ 17%] tests/test_proxy.py::test_proxy_info_repr PASSED [ 17%] tests/test_proxy.py::test_auth_str_bytes PASSED [ 17%] tests/test_proxy.py::test_functional_noproxy_star_https PASSED [ 17%] tests/test_proxy.py::test_from_url_ipv6 PASSED [ 17%] tests/test_proxy.py::test_noproxy_trailing_comma PASSED [ 18%] tests/test_proxy.py::test_functional_noproxy_star_http PASSED [ 18%] tests/test_proxy.py::test_from_env PASSED [ 18%] tests/test_proxy.py::test_noproxy_star PASSED [ 18%] tests/test_proxy.py::test_server_not_found_error_is_raised_for_invalid_hostname PASSED [ 18%] tests/test_proxy.py::test_headers PASSED [ 19%] tests/test_proxy.py::test_from_url_ident PASSED [ 19%] tests/test_proxy.py::test_applies_to PASSED [ 19%] tests/test_proxy.py::test_from_env_https PASSED [ 19%] tests/test_proxy.py::test_from_url PASSED [ 20%] tests/test_proxy.py::test_socks5_auth PASSED [ 20%] tests/test_proxy.py::test_from_env_other PASSED [ 20%] tests/test_proxy.py::test_from_url_no_password PASSED [ 20%] tests/test_http.py::test_get_300_with_location_noredirect PASSED [ 20%] tests/test_http.py::test_get_307 PASSED [ 21%] tests/test_http.py::test_connection_type PASSED [ 21%] tests/test_http.py::test_get_is_default_method PASSED [ 21%] tests/test_http.py::test_change_308 PASSED [ 21%] tests/test_http.py::test_get_duplicate_headers PASSED [ 21%] tests/test_http.py::test_get_304_last_modified PASSED [ 22%] tests/test_http.py::test_connection_refused_returns_response PASSED [ 22%] tests/test_http.py::test_get_no_cache PASSED [ 22%] tests/test_http.py::test_get_302_no_location PASSED [ 22%] tests/test_http.py::test_get_302_redirection_limit PASSED [ 22%] tests/test_http.py::test_get_304_end_to_end SKIPPED (was commented i...) [ 23%] tests/test_http.py::test_unknown_server PASSED [ 23%] tests/test_http.py::test_bad_status_line_retry PASSED [ 23%] tests/test_http.py::test_etag_used PASSED [ 23%] tests/test_http.py::test_inject_space PASSED [ 23%] tests/test_http.py::test_etag_ignore PASSED [ 24%] tests/test_http.py::test_head_read PASSED [ 24%] tests/test_http.py::test_connection_refused_raises_exception PASSED [ 24%] tests/test_http.py::test_get_410 PASSED [ 24%] tests/test_http.py::test_cwe93_inject_crlf PASSED [ 24%] tests/test_http.py::test_get_300_with_location PASSED [ 25%] tests/test_http.py::test_get_301 PASSED [ 25%] tests/test_http.py::test_get_iri PASSED [ 25%] tests/test_http.py::test_get_302 PASSED [ 25%] tests/test_http.py::test_different_methods PASSED [ 25%] tests/test_http.py::test_etag_override PASSED [ 26%] tests/test_http.py::test_post_307 PASSED [ 26%] tests/test_http.py::test_user_agent PASSED [ 26%] tests/test_http.py::test_get_300_without_location PASSED [ 26%] tests/test_http.py::test_get_301_no_redirect XFAIL (FIXME: 301 cache...) [ 26%] tests/test_http.py::test_user_agent_non_default PASSED [ 27%] tests/test_http.py::test_custom_redirect_codes PASSED [ 27%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=fqdn.-port=81-path=/] PASSED [ 27%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=[fe80::1]-port=None-path=/] PASSED [ 27%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=1.1.1.1-port=_-path=/] PASSED [ 27%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=1.1.1.1-port=None-path=_] PASSED [ 28%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=_-port=81-path=_] PASSED [ 28%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=_-port=_-path=/] PASSED [ 28%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=1.1.1.1-port=_-path=_] PASSED [ 28%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=fqdn.-port=81-path=_] PASSED [ 28%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=[fe80::1]-port=None-path=/] PASSED [ 29%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=_-port=None-path=/] PASSED [ 29%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=1.1.1.1-port=None-path=_] PASSED [ 29%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=fqdn.-port=None-path=/] PASSED [ 29%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=_-port=81-path=_] PASSED [ 30%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=fqdn.-port=81-path=_] PASSED [ 30%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=_-port=None-path=/] PASSED [ 30%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=_-port=_-path=/] PASSED [ 30%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=fqdn.-port=_-path=/] PASSED [ 30%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=fqdn.-port=81-path=/] PASSED [ 31%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=[fe80::1]-port=_-path=_] PASSED [ 31%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=1.1.1.1-port=None-path=/] PASSED [ 31%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=fqdn.-port=81-path=_] PASSED [ 31%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=[fe80::1]-port=None-path=/] PASSED [ 31%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=_-port=None-path=/] PASSED [ 32%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=1.1.1.1-port=_-path=/] PASSED [ 32%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=fqdn.-port=None-path=/] PASSED [ 32%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=[fe80::1]-port=_-path=/] PASSED [ 32%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=_-port=_-path=/] PASSED [ 32%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=1.1.1.1-port=None-path=/] PASSED [ 33%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=1.1.1.1-port=None-path=/] PASSED [ 33%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=1.1.1.1-port=_-path=/] PASSED [ 33%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=_-port=None-path=_] PASSED [ 33%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=fqdn.-port=81-path=/] PASSED [ 33%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=[fe80::1]-port=81-path=_] PASSED [ 34%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=fqdn.-port=_-path=_] PASSED [ 34%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=fqdn.-port=_-path=/] PASSED [ 34%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=1.1.1.1-port=_-path=/] PASSED [ 34%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=[fe80::1]-port=81-path=/] PASSED [ 34%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=fqdn.-port=81-path=/] PASSED [ 35%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=[fe80::1]-port=81-path=/] PASSED [ 35%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=[fe80::1]-port=_-path=_] PASSED [ 35%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=fqdn.-port=None-path=_] PASSED [ 35%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=1.1.1.1-port=81-path=_] PASSED [ 35%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=1.1.1.1-port=None-path=_] PASSED [ 36%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=1.1.1.1-port=81-path=/] PASSED [ 36%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=[fe80::1]-port=81-path=/] PASSED [ 36%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=1.1.1.1-port=None-path=_] PASSED [ 36%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=fqdn.-port=_-path=/] PASSED [ 36%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=[fe80::1]-port=_-path=/] PASSED [ 37%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=[fe80::1]-port=_-path=_] PASSED [ 37%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=1.1.1.1-port=81-path=_] PASSED [ 37%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=1.1.1.1-port=81-path=_] PASSED [ 37%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=fqdn.-port=None-path=_] PASSED [ 37%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=fqdn.-port=None-path=/] PASSED [ 38%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=fqdn.-port=81-path=/] PASSED [ 38%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=[fe80::1]-port=81-path=_] PASSED [ 38%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=[fe80::1]-port=_-path=_] PASSED [ 38%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=[fe80::1]-port=81-path=/] PASSED [ 38%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=_-port=81-path=/] PASSED [ 39%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=1.1.1.1-port=_-path=/] PASSED [ 39%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=[fe80::1]-port=_-path=/] PASSED [ 39%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=fqdn.-port=_-path=_] PASSED [ 39%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=_-port=None-path=/] PASSED [ 40%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=1.1.1.1-port=_-path=_] PASSED [ 40%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=fqdn.-port=_-path=_] PASSED [ 40%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=[fe80::1]-port=81-path=_] PASSED [ 40%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=fqdn.-port=81-path=/] PASSED [ 40%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=fqdn.-port=_-path=/] PASSED [ 41%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=[fe80::1]-port=None-path=/] PASSED [ 41%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=fqdn.-port=_-path=/] PASSED [ 41%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=_-port=_-path=/] PASSED [ 41%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=_-port=None-path=/] PASSED [ 41%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=fqdn.-port=None-path=_] PASSED [ 42%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=1.1.1.1-port=_-path=/] PASSED [ 42%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=1.1.1.1-port=None-path=/] PASSED [ 42%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=[fe80::1]-port=None-path=/] PASSED [ 42%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=_-port=_-path=_] PASSED [ 42%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=_-port=81-path=/] PASSED [ 43%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=fqdn.-port=None-path=/] PASSED [ 43%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=fqdn.-port=81-path=_] PASSED [ 43%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=[fe80::1]-port=None-path=_] PASSED [ 43%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=1.1.1.1-port=81-path=/] PASSED [ 43%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=_-port=_-path=_] PASSED [ 44%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=[fe80::1]-port=None-path=/] PASSED [ 44%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=_-port=_-path=/] PASSED [ 44%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=[fe80::1]-port=_-path=_] PASSED [ 44%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=[fe80::1]-port=None-path=_] PASSED [ 44%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=[fe80::1]-port=81-path=/] PASSED [ 45%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=fqdn.-port=_-path=_] PASSED [ 45%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=fqdn.-port=81-path=_] PASSED [ 45%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=[fe80::1]-port=None-path=_] PASSED [ 45%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=fqdn.-port=81-path=/] PASSED [ 45%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=fqdn.-port=_-path=_] PASSED [ 46%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=fqdn.-port=None-path=_] PASSED [ 46%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=1.1.1.1-port=81-path=_] PASSED [ 46%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=_-port=None-path=/] PASSED [ 46%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=fqdn.-port=_-path=_] PASSED [ 46%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=1.1.1.1-port=None-path=/] PASSED [ 47%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=fqdn.-port=None-path=_] PASSED [ 47%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=fqdn.-port=81-path=_] PASSED [ 47%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=[fe80::1]-port=None-path=/] PASSED [ 47%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=_-port=81-path=/] PASSED [ 47%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=[fe80::1]-port=81-path=_] PASSED [ 48%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=[fe80::1]-port=_-path=_] PASSED [ 48%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=fqdn.-port=None-path=_] PASSED [ 48%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=fqdn.-port=None-path=_] PASSED [ 48%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=_-port=81-path=/] PASSED [ 48%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=_-port=_-path=_] PASSED [ 49%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=1.1.1.1-port=_-path=_] PASSED [ 49%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=fqdn.-port=_-path=_] PASSED [ 49%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=fqdn.-port=None-path=_] PASSED [ 49%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=_-port=81-path=/] PASSED [ 50%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=1.1.1.1-port=None-path=_] PASSED [ 50%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=_-port=None-path=_] PASSED [ 50%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=1.1.1.1-port=81-path=/] PASSED [ 50%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=_-port=_-path=/] PASSED [ 50%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=1.1.1.1-port=81-path=/] PASSED [ 51%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=[fe80::1]-port=_-path=_] PASSED [ 51%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=[fe80::1]-port=None-path=/] PASSED [ 51%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=fqdn.-port=None-path=/] PASSED [ 51%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=[fe80::1]-port=81-path=/] PASSED [ 51%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=1.1.1.1-port=81-path=_] PASSED [ 52%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=_-port=81-path=/] PASSED [ 52%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=[fe80::1]-port=_-path=/] PASSED [ 52%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=fqdn.-port=81-path=/] PASSED [ 52%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=_-port=None-path=_] PASSED [ 52%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=fqdn.-port=None-path=_] PASSED [ 53%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=1.1.1.1-port=81-path=_] PASSED [ 53%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=[fe80::1]-port=_-path=/] PASSED [ 53%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=[fe80::1]-port=81-path=_] PASSED [ 53%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=[fe80::1]-port=81-path=/] PASSED [ 53%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=1.1.1.1-port=81-path=/] PASSED [ 54%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=_-port=_-path=_] PASSED [ 54%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=fqdn.-port=81-path=_] PASSED [ 54%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=[fe80::1]-port=None-path=/] PASSED [ 54%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=1.1.1.1-port=None-path=/] PASSED [ 54%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=1.1.1.1-port=81-path=/] PASSED [ 55%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=[fe80::1]-port=_-path=/] PASSED [ 55%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=[fe80::1]-port=_-path=/] PASSED [ 55%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=1.1.1.1-port=_-path=/] PASSED [ 55%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=[fe80::1]-port=None-path=_] PASSED [ 55%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=fqdn.-port=None-path=_] PASSED [ 56%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=fqdn.-port=None-path=/] PASSED [ 56%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=[fe80::1]-port=None-path=_] PASSED [ 56%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=[fe80::1]-port=None-path=_] PASSED [ 56%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=fqdn.-port=_-path=_] PASSED [ 56%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=1.1.1.1-port=None-path=/] PASSED [ 57%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=fqdn.-port=None-path=/] PASSED [ 57%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=1.1.1.1-port=_-path=_] PASSED [ 57%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=1.1.1.1-port=81-path=_] PASSED [ 57%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=1.1.1.1-port=81-path=/] PASSED [ 57%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=_-port=81-path=/] PASSED [ 58%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=_-port=None-path=_] PASSED [ 58%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=[fe80::1]-port=_-path=_] PASSED [ 58%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=_-port=None-path=_] PASSED [ 58%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=fqdn.-port=81-path=_] PASSED [ 58%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=1.1.1.1-port=None-path=/] PASSED [ 59%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=1.1.1.1-port=81-path=/] PASSED [ 59%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=[fe80::1]-port=81-path=_] PASSED [ 59%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=_-port=81-path=/] PASSED [ 59%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=[fe80::1]-port=81-path=_] PASSED [ 60%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=_-port=81-path=/] PASSED [ 60%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=_-port=None-path=/] PASSED [ 60%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=_-port=None-path=/] PASSED [ 60%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=1.1.1.1-port=81-path=/] PASSED [ 60%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=fqdn.-port=None-path=_] PASSED [ 61%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=_-port=81-path=/] PASSED [ 61%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=[fe80::1]-port=81-path=/] PASSED [ 61%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=[fe80::1]-port=_-path=/] PASSED [ 61%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=fqdn.-port=81-path=_] PASSED [ 61%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=_-port=_-path=_] PASSED [ 62%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=[fe80::1]-port=None-path=_] PASSED [ 62%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=fqdn.-port=None-path=/] PASSED [ 62%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=fqdn.-port=None-path=/] PASSED [ 62%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=1.1.1.1-port=_-path=_] PASSED [ 62%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=1.1.1.1-port=_-path=_] PASSED [ 63%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=_-port=None-path=_] PASSED [ 63%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=fqdn.-port=_-path=/] PASSED [ 63%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=1.1.1.1-port=_-path=_] PASSED [ 63%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=_-port=None-path=_] PASSED [ 63%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=[fe80::1]-port=None-path=/] PASSED [ 64%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=_-port=_-path=_] PASSED [ 64%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=1.1.1.1-port=None-path=_] PASSED [ 64%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=[fe80::1]-port=_-path=_] PASSED [ 64%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=_-port=None-path=/] PASSED [ 64%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=_-port=None-path=_] PASSED [ 65%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=1.1.1.1-port=_-path=_] PASSED [ 65%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=_-port=81-path=/] PASSED [ 65%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=fqdn.-port=81-path=_] PASSED [ 65%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=_-port=_-path=_] PASSED [ 65%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=1.1.1.1-port=None-path=/] PASSED [ 66%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=1.1.1.1-port=81-path=_] PASSED [ 66%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=1.1.1.1-port=_-path=_] PASSED [ 66%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=1.1.1.1-port=None-path=_] PASSED [ 66%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=_-port=_-path=_] PASSED [ 66%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=fqdn.-port=_-path=_] PASSED [ 67%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=1.1.1.1-port=_-path=/] PASSED [ 67%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=[fe80::1]-port=_-path=_] PASSED [ 67%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=_-port=_-path=/] PASSED [ 67%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=fqdn.-port=81-path=/] PASSED [ 67%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=fqdn.-port=_-path=/] PASSED [ 68%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=_-port=81-path=_] PASSED [ 68%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=_-port=_-path=_] PASSED [ 68%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=1.1.1.1-port=_-path=_] PASSED [ 68%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=fqdn.-port=None-path=/] PASSED [ 68%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=1.1.1.1-port=81-path=/] PASSED [ 69%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=1.1.1.1-port=None-path=_] PASSED [ 69%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=fqdn.-port=None-path=_] PASSED [ 69%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=_-port=None-path=_] PASSED [ 69%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=[fe80::1]-port=None-path=_] PASSED [ 70%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=fqdn.-port=81-path=/] PASSED [ 70%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=fqdn.-port=_-path=/] PASSED [ 70%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=[fe80::1]-port=81-path=/] PASSED [ 70%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=_-port=_-path=/] PASSED [ 70%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=[fe80::1]-port=None-path=_] PASSED [ 71%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=_-port=None-path=_] PASSED [ 71%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=1.1.1.1-port=81-path=_] PASSED [ 71%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=_-port=_-path=_] PASSED [ 71%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=_-port=_-path=/] PASSED [ 71%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=[fe80::1]-port=_-path=/] PASSED [ 72%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=1.1.1.1-port=None-path=_] PASSED [ 72%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=_-port=81-path=_] PASSED [ 72%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=[fe80::1]-port=81-path=_] PASSED [ 72%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=fqdn.-port=_-path=/] PASSED [ 72%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=_-port=_-path=_] PASSED [ 73%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=_-port=81-path=_] PASSED [ 73%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=1.1.1.1-port=None-path=/] PASSED [ 73%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=[fe80::1]-port=_-path=_] PASSED [ 73%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=fqdn.-port=_-path=_] PASSED [ 73%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=_-port=None-path=_] PASSED [ 74%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=fqdn.-port=None-path=/] PASSED [ 74%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=_-port=81-path=_] PASSED [ 74%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=1.1.1.1-port=_-path=_] PASSED [ 74%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=_-port=81-path=_] PASSED [ 74%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=fqdn.-port=_-path=/] PASSED [ 75%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=_-port=None-path=/] PASSED [ 75%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=random-host=_-port=81-path=_] PASSED [ 75%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=[fe80::1]-port=81-path=_] PASSED [ 75%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=_-port=_-path=/] PASSED [ 75%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=fqdn.-port=81-path=_] PASSED [ 76%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=_-port=81-path=_] PASSED [ 76%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=1.1.1.1-port=81-path=_] PASSED [ 76%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=1.1.1.1-port=_-path=/] PASSED [ 76%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=1.1.1.1-port=81-path=_] PASSED [ 76%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=_-port=None-path=_] PASSED [ 77%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=[fe80::1]-port=None-path=_] PASSED [ 77%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=1.1.1.1-port=None-path=_] PASSED [ 77%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=_-port=81-path=/] PASSED [ 77%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=1.1.1.1-port=None-path=/] PASSED [ 77%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=fqdn.-port=81-path=/] PASSED [ 78%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=1.1.1.1-port=None-path=/] PASSED [ 78%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=fqdn.-port=None-path=/] PASSED [ 78%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=fqdn.-port=_-path=/] PASSED [ 78%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=[fe80::1]-port=81-path=/] PASSED [ 78%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=1.1.1.1-port=81-path=_] PASSED [ 79%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=[fe80::1]-port=_-path=/] PASSED [ 79%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=[fe80::1]-port=81-path=_] PASSED [ 79%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=[fe80::1]-port=None-path=/] PASSED [ 79%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=[fe80::1]-port=81-path=/] PASSED [ 80%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=[fe80::1]-port=None-path=_] PASSED [ 80%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=1.1.1.1-port=81-path=/] PASSED [ 80%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=[fe80::1]-port=None-path=_] PASSED [ 80%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=fqdn.-port=_-path=_] PASSED [ 80%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=1.1.1.1-port=_-path=/] PASSED [ 81%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=fqdn.-port=81-path=_] PASSED [ 81%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=fqdn.-port=_-path=/] PASSED [ 81%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=1.1.1.1-port=None-path=_] PASSED [ 81%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=[fe80::1]-port=_-path=_] PASSED [ 81%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=[fe80::1]-port=81-path=_] PASSED [ 82%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=https-host=fqdn.-port=81-path=/] PASSED [ 82%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=[fe80::1]-port=_-path=/] PASSED [ 82%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=_-port=_-path=_] PASSED [ 82%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=1.1.1.1-port=_-path=_] PASSED [ 82%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=fqdn.-port=_-path=_] PASSED [ 83%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=1.1.1.1-port=None-path=_] PASSED [ 83%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=[fe80::1]-port=None-path=/] PASSED [ 83%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=https-host=_-port=81-path=_] PASSED [ 83%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=http-host=_-port=_-path=/] PASSED [ 83%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=[fe80::1]-port=_-path=/] PASSED [ 84%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=1.1.1.1-port=81-path=/] PASSED [ 84%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=_-host=_-port=None-path=/] PASSED [ 84%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=https-host=[fe80::1]-port=81-path=_] PASSED [ 84%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=_-port=None-path=/] PASSED [ 84%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=_-host=1.1.1.1-port=_-path=/] PASSED [ 85%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=http-host=[fe80::1]-port=81-path=/] PASSED [ 85%] tests/test_test_helpers.py::test_rebuild_uri[base=127.0.0.1:8001-scheme=random-host=1.1.1.1-port=_-path=/] PASSED [ 85%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=_-host=_-port=_-path=/] PASSED [ 85%] tests/test_test_helpers.py::test_rebuild_uri[base=https://foo.bar:8443/p?query-scheme=http-host=_-port=81-path=_] PASSED [ 85%] tests/test_test_helpers.py::test_rebuild_uri[base=//[::1]/path1-scheme=random-host=_-port=81-path=_] PASSED [ 86%] tests/test_cache.py::test_expiration_model_fresh PASSED [ 86%] tests/test_cache.py::test_get_only_if_cached_cache_hit PASSED [ 86%] tests/test_cache.py::test_get_cache_control_no_cache PASSED [ 86%] tests/test_cache.py::test_entry_disposition[({}, {'cache-control': 'must-revalidate'}, 'STALE')] PASSED [ 86%] tests/test_cache.py::test_update_uses_cached_etag[PUT] PASSED [ 87%] tests/test_cache.py::test_entry_disposition[({'cache-control': 'min-fresh=2'}, {'date': '{now}', 'expires': '{now+4}'}, 'FRESH')] PASSED [ 87%] tests/test_cache.py::test_get_only_if_cached_no_cache_at_all PASSED [ 87%] tests/test_cache.py::test_entry_disposition[({'cache-control': 'only-if-cached'}, {}, 'FRESH')] PASSED [ 87%] tests/test_cache.py::test_update_uses_cached_etag[PATCH] PASSED [ 87%] tests/test_cache.py::test_entry_disposition[({'cache-control': 'must-revalidate'}, {}, 'STALE')] PASSED [ 88%] tests/test_cache.py::test_entry_disposition[({}, {'cache-control': 'max-age=fred, min-fresh=barney'}, 'STALE')] PASSED [ 88%] tests/test_cache.py::test_expiration_model_date_and_expires PASSED [ 88%] tests/test_cache.py::test_get_cache_control_pragma_no_cache PASSED [ 88%] tests/test_cache.py::test_entry_disposition[({'cache-control': 'no-cache'}, {'cache-control': 'max-age=7200'}, 'TRANSPARENT')] PASSED [ 88%] tests/test_cache.py::test_entry_disposition[({}, {'date': '{now}', 'cache-control': 'max-age=0'}, 'STALE')] PASSED [ 89%] tests/test_cache.py::test_get_cache_control_no_store_request PASSED [ 89%] tests/test_cache.py::test_entry_disposition[({}, {'data': '{now+3}'}, 'STALE')] PASSED [ 89%] tests/test_cache.py::test_parse_cache_control[{'cache-control': 'Max-age=3600;post-check=1800,pre-check=3600'}] PASSED [ 89%] tests/test_cache.py::test_get_only_if_cached_cache_miss PASSED [ 90%] tests/test_cache.py::test_entry_disposition[({'cache-control': 'min-fresh=2'}, {'date': '{now}', 'expires': '{now+2}'}, 'STALE')] PASSED [ 90%] tests/test_cache.py::test_parse_cache_control[{'cache-control': ' no-cache'}] PASSED [ 90%] tests/test_cache.py::test_parse_cache_control[{}] PASSED [ 90%] tests/test_cache.py::test_entry_disposition[({'cache-control': 'max-age=0'}, {'date': '{now}', 'cache-control': 'max-age=2'}, 'STALE')] PASSED [ 90%] tests/test_cache.py::test_get_cache_control_no_store_response PASSED [ 91%] tests/test_cache.py::test_parse_cache_control[{'cache-control': ' no-store, max-age = 7200'}] PASSED [ 91%] tests/test_cache.py::test_vary_header_is_sent PASSED [ 91%] tests/test_cache.py::test_parse_cache_control[{'cache-control': ' , '}] PASSED [ 91%] tests/test_cache.py::test_update_uses_cached_etag_overridden PASSED [ 91%] tests/test_cache.py::test_entry_disposition[({}, {'date': '{now}', 'expires': '{now+3}', 'cache-control': 'no-cache'}, 'STALE')] PASSED [ 92%] tests/test_cache.py::test_entry_disposition[({}, {'date': '{now}', 'expires': '0'}, 'STALE')] PASSED [ 92%] tests/test_cache.py::test_update_uses_cached_etag_and_oc_method PASSED [ 92%] tests/test_cache.py::test_vary_header_double PASSED [ 92%] tests/test_cache.py::test_update_invalidates_cache PASSED [ 92%] tests/test_cache.py::test_get_cache_control_no_cache_no_store_request PASSED [ 93%] tests/test_cache.py::test_TODO_vary_no SKIPPED (was commented in leg...) [ 93%] tests/test_cache.py::test_vary_unused_header PASSED [ 93%] tests/test_cache.py::test_entry_disposition[({}, {'date': '{now}', 'expires': '{now+3}'}, 'FRESH')] PASSED [ 93%] tests/test_cache.py::test_normalize_headers PASSED [ 93%] tests/test_encoding.py::test_gzip_get PASSED [ 94%] tests/test_encoding.py::test_gzip_malformed_response PASSED [ 94%] tests/test_encoding.py::test_gzip_post_response PASSED [ 94%] tests/test_encoding.py::test_gzip_head PASSED [ 94%] tests/test_encoding.py::test_deflate_get PASSED [ 94%] tests/test_encoding.py::test_zlib_get PASSED [ 95%] tests/test_encoding.py::test_deflate_malformed_response PASSED [ 95%] tests/test_other.py::test_pickle_custom_request_http PASSED [ 95%] tests/test_other.py::test_close PASSED [ 95%] tests/test_other.py::test_convert_byte_str PASSED [ 95%] tests/test_other.py::test_connection_close PASSED [ 96%] tests/test_other.py::test_timeout_subsequent PASSED [ 96%] tests/test_other.py::test_timeout_global XPASS (FIXME: for unknown r...) [ 96%] tests/test_other.py::test_get_end2end_headers PASSED [ 96%] tests/test_other.py::test_http_443_forced_https PASSED [ 96%] tests/test_other.py::test_reflect PASSED [ 97%] tests/test_other.py::test_timeout_individual PASSED [ 97%] tests/test_other.py::test_pickle_http_with_connection PASSED [ 97%] tests/test_other.py::test_ipv6[http] PASSED [ 97%] tests/test_other.py::test_connection_proxy_info_attribute_error[HTTPSConnectionWithTimeout] PASSED [ 97%] tests/test_other.py::test_timeout_https PASSED [ 98%] tests/test_other.py::test_connection_proxy_info_attribute_error[HTTPConnectionWithTimeout] PASSED [ 98%] tests/test_other.py::test_pickle_http PASSED [ 98%] tests/test_other.py::test_connect_exception_type PASSED [ 98%] tests/test_other.py::test_ipv6[https] PASSED [ 98%] tests/test_cacerts_from_env.py::test_certs_file_from_builtin PASSED [ 99%] tests/test_cacerts_from_env.py::test_with_certifi_removed_from_modules PASSED [ 99%] tests/test_cacerts_from_env.py::test_certs_file_from_certifi PASSED [ 99%] tests/test_cacerts_from_env.py::test_certs_file_from_custom_getter PASSED [ 99%] tests/test_cacerts_from_env.py::test_certs_file_from_environment PASSED [100%] =========================== short test summary info ============================ SKIPPED [4] tests/test_auth.py:249: benchmark disabled by default, set env httplib2_test_bench=1 SKIPPED [1] tests/test_http.py:525: was commented in legacy code SKIPPED [1] tests/test_cache.py:48: was commented in legacy code XFAIL tests/test_http.py::test_get_301_no_redirect FIXME: 301 cache works only with follow_redirects, should work regardless XPASS tests/test_other.py::test_timeout_global FIXME: for unknown reason global timeout test fails in Python3 with response 200 ===== 482 passed, 6 skipped, 3 deselected, 1 xfailed, 1 xpassed in 22.26s ====== Finished executing pytestCheckPhase Running phase: pytestcachePhase pytestcachePhase Running phase: pytestRemoveBytecodePhase pytestRemoveBytecodePhase