>>> py3-yarl: Building community/py3-yarl 1.8.1-r1 (using abuild 3.10.0_rc1-r2) started Wed, 09 Nov 2022 07:11:39 +0000 >>> py3-yarl: Checking sanity of /home/buildozer/aports/community/py3-yarl/APKBUILD... >>> py3-yarl: Analyzing dependencies... >>> py3-yarl: Installing for build: build-base python3 py3-idna py3-multidict py3-setuptools python3-dev py3-pytest py3-pytest-cov (1/24) Installing libbz2 (1.0.8-r3) (2/24) Installing libffi (3.4.4-r0) (3/24) Installing gdbm (1.23-r0) (4/24) Installing xz-libs (5.2.7-r0) (5/24) Installing mpdecimal (2.5.1-r1) (6/24) Installing readline (8.2.0-r0) (7/24) Installing sqlite-libs (3.39.4-r0) (8/24) Installing python3 (3.10.8-r3) (9/24) Installing py3-idna (3.4-r2) (10/24) Installing py3-multidict (6.0.2-r1) (11/24) Installing py3-parsing (3.0.9-r0) (12/24) Installing py3-packaging (21.3-r2) (13/24) Installing py3-setuptools (65.5.1-r0) (14/24) Installing python3-dev (3.10.8-r3) (15/24) Installing py3-attrs (22.1.0-r0) (16/24) Installing py3-exceptiongroup (1.0.1-r0) (17/24) Installing py3-iniconfig (1.1.1-r3) (18/24) Installing py3-pluggy (1.0.0-r1) (19/24) Installing py3-py (1.11.0-r0) (20/24) Installing py3-tomli (2.0.1-r1) (21/24) Installing py3-pytest (7.2.0-r1) (22/24) Installing py3-coverage (5.5-r2) (23/24) Installing py3-pytest-cov (4.0.0-r0) (24/24) Installing .makedepends-py3-yarl (20221109.071140) Executing busybox-1.35.0-r27.trigger OK: 379 MiB in 118 packages >>> py3-yarl: Cleaning up srcdir >>> py3-yarl: Cleaning up pkgdir >>> py3-yarl: Fetching https://distfiles.alpinelinux.org/distfiles/v3.17/yarl-1.8.1.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 168k 100 168k 0 0 1224k 0 --:--:-- --:--:-- --:--:-- 1228k >>> py3-yarl: Fetching https://distfiles.alpinelinux.org/distfiles/v3.17/yarl-1.8.1.tar.gz >>> py3-yarl: Checking sha512sums... yarl-1.8.1.tar.gz: OK >>> py3-yarl: Unpacking /var/cache/distfiles/v3.17/yarl-1.8.1.tar.gz... /usr/lib/python3.10/site-packages/setuptools/config/setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead. warnings.warn(msg, warning_class) ********************** * Accelerated build * ********************** running build running build_py creating build creating build/lib.linux-x86_64-cpython-310 creating build/lib.linux-x86_64-cpython-310/yarl copying yarl/_quoting_py.py -> build/lib.linux-x86_64-cpython-310/yarl copying yarl/__init__.py -> build/lib.linux-x86_64-cpython-310/yarl copying yarl/_url.py -> build/lib.linux-x86_64-cpython-310/yarl copying yarl/_quoting.py -> build/lib.linux-x86_64-cpython-310/yarl running egg_info writing yarl.egg-info/PKG-INFO writing dependency_links to yarl.egg-info/dependency_links.txt writing requirements to yarl.egg-info/requires.txt writing top-level names to yarl.egg-info/top_level.txt reading manifest file 'yarl.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no previously-included files matching '*.pyc' found anywhere in distribution warning: no previously-included files matching '*.cache' found anywhere in distribution warning: no previously-included files found matching 'yarl/*.html' warning: no previously-included files found matching 'yarl/*.so' warning: no previously-included files found matching 'yarl/*.pyd' no previously-included directories found matching 'docs/_build' adding license file 'LICENSE' writing manifest file 'yarl.egg-info/SOURCES.txt' copying yarl/__init__.pyi -> build/lib.linux-x86_64-cpython-310/yarl copying yarl/_quoting_c.pyi -> build/lib.linux-x86_64-cpython-310/yarl copying yarl/_quoting_c.pyx -> build/lib.linux-x86_64-cpython-310/yarl copying yarl/py.typed -> build/lib.linux-x86_64-cpython-310/yarl running build_ext building 'yarl._quoting_c' extension creating build/temp.linux-x86_64-cpython-310 creating build/temp.linux-x86_64-cpython-310/yarl gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Os -fomit-frame-pointer -g -O2 -Os -fomit-frame-pointer -g -O2 -Os -fomit-frame-pointer -g -O2 -DTHREAD_STACK_SIZE=0x100000 -Os -fomit-frame-pointer -Os -fomit-frame-pointer -fPIC -I/usr/include/python3.10 -c yarl/_quoting_c.c -o build/temp.linux-x86_64-cpython-310/yarl/_quoting_c.o gcc -shared -Wl,--as-needed,-O1,--sort-common -Wl,--as-needed,-O1,--sort-common -Wl,--as-needed,-O1,--sort-common -Os -fomit-frame-pointer -Os -fomit-frame-pointer build/temp.linux-x86_64-cpython-310/yarl/_quoting_c.o -L/usr/lib -o build/lib.linux-x86_64-cpython-310/yarl/_quoting_c.cpython-310-x86_64-linux-gnu.so ============================= test session starts ============================== platform linux -- Python 3.10.8, pytest-7.2.0, pluggy-1.0.0 -- /usr/bin/python3 cachedir: .pytest_cache rootdir: /home/buildozer/aports/community/py3-yarl/src/yarl-1.8.1, configfile: setup.cfg, testpaths: tests/ plugins: cov-4.0.0 collecting ... collected 1047 items tests/test_cache.py::test_cache_clear PASSED [ 0%] tests/test_cache.py::test_cache_info PASSED [ 0%] tests/test_cache.py::test_cache_configure_default PASSED [ 0%] tests/test_cache.py::test_cache_configure_None PASSED [ 0%] tests/test_cache.py::test_cache_configure_explicit PASSED [ 0%] tests/test_cached_property.py::test_reify PASSED [ 0%] tests/test_cached_property.py::test_reify_class PASSED [ 0%] tests/test_cached_property.py::test_reify_assignment PASSED [ 0%] tests/test_normalize_path.py::test__normalize_path[-] PASSED [ 0%] tests/test_normalize_path.py::test__normalize_path[/-/] PASSED [ 0%] tests/test_normalize_path.py::test__normalize_path[//-//] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[///-///] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/to-path/to] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[././path/to-path/to] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/./to-path/to] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/././to-path/to] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/to/.-path/to/] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/to/./.-path/to/] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[../path/to-path/to] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/../to-to] PASSED [ 1%] tests/test_normalize_path.py::test__normalize_path[path/../../to-to] PASSED [ 2%] tests/test_normalize_path.py::test__normalize_path[\u03bc\u03bf\u03bd\u03bf\u03c0\u03ac\u03c4\u03b9/../../\u03bd\u03b1/\u1d1c\u0274\u026a/\u1d04\u1d0f\u1d05\u1d07-\u03bd\u03b1/\u1d1c\u0274\u026a/\u1d04\u1d0f\u1d05\u1d07] PASSED [ 2%] tests/test_normalize_path.py::test__normalize_path[\u03bc\u03bf\u03bd\u03bf\u03c0\u03ac\u03c4\u03b9/../../\u03bd\u03b1/\U0001d566\U0001d55f\U0001d55a/\U0001d554\U0001d560\U0001d555\U0001d556/.-\u03bd\u03b1/\U0001d566\U0001d55f\U0001d55a/\U0001d554\U0001d560\U0001d555\U0001d556/] PASSED [ 2%] tests/test_pickle.py::test_pickle PASSED [ 2%] tests/test_pickle.py::test_default_style_state PASSED [ 2%] tests/test_quoting.py::test_quote_not_allowed_non_strict[py_quoter] PASSED [ 2%] tests/test_quoting.py::test_quote_not_allowed_non_strict[c_quoter] PASSED [ 2%] tests/test_quoting.py::test_quote_unfinished_tail_percent_non_strict[py_quoter] PASSED [ 2%] tests/test_quoting.py::test_quote_unfinished_tail_percent_non_strict[c_quoter] PASSED [ 2%] tests/test_quoting.py::test_quote_unfinished_tail_digit_non_strict[py_quoter] PASSED [ 2%] tests/test_quoting.py::test_quote_unfinished_tail_digit_non_strict[c_quoter] PASSED [ 2%] tests/test_quoting.py::test_quote_unfinished_tail_safe_non_strict[py_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_safe_non_strict[c_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_unsafe_non_strict[py_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_unsafe_non_strict[c_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_non_ascii_non_strict[py_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_non_ascii_non_strict[c_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_non_ascii2_non_strict[py_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_non_ascii2_non_strict[c_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_non_ascii3_non_strict[py_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_unfinished_tail_non_ascii3_non_strict[c_quoter] PASSED [ 3%] tests/test_quoting.py::test_quote_from_bytes[py_quoter] PASSED [ 4%] tests/test_quoting.py::test_quote_from_bytes[c_quoter] PASSED [ 4%] tests/test_quoting.py::test_quote_ignore_broken_unicode[py_quoter] PASSED [ 4%] tests/test_quoting.py::test_quote_ignore_broken_unicode[c_quoter] PASSED [ 4%] tests/test_quoting.py::test_unquote_to_bytes[py_unquoter] PASSED [ 4%] tests/test_quoting.py::test_unquote_to_bytes[c_unquoter] PASSED [ 4%] tests/test_quoting.py::test_never_quote[py_quoter] PASSED [ 4%] tests/test_quoting.py::test_never_quote[c_quoter] PASSED [ 4%] tests/test_quoting.py::test_safe[py_quoter] PASSED [ 4%] tests/test_quoting.py::test_safe[c_quoter] PASSED [ 4%] tests/test_quoting.py::test_default_quoting[py_quoter-\x00] PASSED [ 4%] tests/test_quoting.py::test_default_quoting[py_quoter-\x01] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x02] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x03] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x04] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x05] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x06] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x07] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x08] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\t] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\n] PASSED [ 5%] tests/test_quoting.py::test_default_quoting[py_quoter-\x0b] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x0c] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\r] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x0e] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x0f] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x10] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x11] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x12] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x13] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x14] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x15] PASSED [ 6%] tests/test_quoting.py::test_default_quoting[py_quoter-\x16] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x17] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x18] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x19] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x1a] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x1b] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x1c] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x1d] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x1e] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-\x1f] PASSED [ 7%] tests/test_quoting.py::test_default_quoting[py_quoter-<] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter->] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-#] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-"] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-{] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-}] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-|] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-\\] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-^] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-[] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-]] PASSED [ 8%] tests/test_quoting.py::test_default_quoting[py_quoter-`] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[py_quoter-\x7f] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x00] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x01] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x02] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x03] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x04] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x05] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x06] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x07] PASSED [ 9%] tests/test_quoting.py::test_default_quoting[c_quoter-\x08] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\t] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\n] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x0b] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x0c] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\r] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x0e] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x0f] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x10] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x11] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x12] PASSED [ 10%] tests/test_quoting.py::test_default_quoting[c_quoter-\x13] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x14] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x15] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x16] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x17] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x18] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x19] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x1a] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x1b] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x1c] PASSED [ 11%] tests/test_quoting.py::test_default_quoting[c_quoter-\x1d] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-\x1e] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-\x1f] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-<] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter->] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-#] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-"] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-{] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-}] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-|] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-\\] PASSED [ 12%] tests/test_quoting.py::test_default_quoting[c_quoter-^] PASSED [ 13%] tests/test_quoting.py::test_default_quoting[c_quoter-[] PASSED [ 13%] tests/test_quoting.py::test_default_quoting[c_quoter-]] PASSED [ 13%] tests/test_quoting.py::test_default_quoting[c_quoter-`] PASSED [ 13%] tests/test_quoting.py::test_default_quoting[c_quoter-\x7f] PASSED [ 13%] tests/test_quoting.py::test_default_quoting_percent[py_quoter] PASSED [ 13%] tests/test_quoting.py::test_default_quoting_percent[c_quoter] PASSED [ 13%] tests/test_quoting.py::test_default_quoting_partial[py_quoter] PASSED [ 13%] tests/test_quoting.py::test_default_quoting_partial[c_quoter] PASSED [ 13%] tests/test_quoting.py::test_quoting_space[py_quoter] PASSED [ 13%] tests/test_quoting.py::test_quoting_space[c_quoter] PASSED [ 14%] tests/test_quoting.py::test_quoting_plus[py_quoter] PASSED [ 14%] tests/test_quoting.py::test_quoting_plus[c_quoter] PASSED [ 14%] tests/test_quoting.py::test_quote_with_unicode[py_quoter] PASSED [ 14%] tests/test_quoting.py::test_quote_with_unicode[c_quoter] PASSED [ 14%] tests/test_quoting.py::test_quote_plus_with_unicode[py_quoter] PASSED [ 14%] tests/test_quoting.py::test_quote_plus_with_unicode[c_quoter] PASSED [ 14%] tests/test_quoting.py::test_unquoting[py_unquoter-0] PASSED [ 14%] tests/test_quoting.py::test_unquoting[py_unquoter-1] PASSED [ 14%] tests/test_quoting.py::test_unquoting[py_unquoter-2] PASSED [ 14%] tests/test_quoting.py::test_unquoting[py_unquoter-3] PASSED [ 14%] tests/test_quoting.py::test_unquoting[py_unquoter-4] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-5] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-6] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-7] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-8] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-9] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-10] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-11] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-12] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-13] PASSED [ 15%] tests/test_quoting.py::test_unquoting[py_unquoter-14] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-15] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-16] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-17] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-18] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-19] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-20] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-21] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-22] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-23] PASSED [ 16%] tests/test_quoting.py::test_unquoting[py_unquoter-24] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-25] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-26] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-27] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-28] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-29] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-30] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-31] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-32] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-33] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-34] PASSED [ 17%] tests/test_quoting.py::test_unquoting[py_unquoter-35] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-36] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-37] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-38] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-39] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-40] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-41] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-42] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-43] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-44] PASSED [ 18%] tests/test_quoting.py::test_unquoting[py_unquoter-45] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-46] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-47] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-48] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-49] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-50] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-51] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-52] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-53] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-54] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-55] PASSED [ 19%] tests/test_quoting.py::test_unquoting[py_unquoter-56] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-57] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-58] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-59] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-60] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-61] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-62] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-63] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-64] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-65] PASSED [ 20%] tests/test_quoting.py::test_unquoting[py_unquoter-66] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-67] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-68] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-69] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-70] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-71] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-72] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-73] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-74] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-75] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-76] PASSED [ 21%] tests/test_quoting.py::test_unquoting[py_unquoter-77] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-78] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-79] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-80] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-81] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-82] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-83] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-84] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-85] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-86] PASSED [ 22%] tests/test_quoting.py::test_unquoting[py_unquoter-87] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-88] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-89] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-90] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-91] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-92] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-93] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-94] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-95] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-96] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-97] PASSED [ 23%] tests/test_quoting.py::test_unquoting[py_unquoter-98] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-99] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-100] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-101] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-102] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-103] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-104] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-105] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-106] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-107] PASSED [ 24%] tests/test_quoting.py::test_unquoting[py_unquoter-108] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-109] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-110] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-111] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-112] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-113] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-114] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-115] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-116] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-117] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-118] PASSED [ 25%] tests/test_quoting.py::test_unquoting[py_unquoter-119] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-120] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-121] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-122] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-123] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-124] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-125] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-126] PASSED [ 26%] tests/test_quoting.py::test_unquoting[py_unquoter-127] PASSED [ 26%] tests/test_quoting.py::test_unquoting[c_unquoter-0] PASSED [ 26%] tests/test_quoting.py::test_unquoting[c_unquoter-1] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-2] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-3] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-4] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-5] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-6] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-7] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-8] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-9] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-10] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-11] PASSED [ 27%] tests/test_quoting.py::test_unquoting[c_unquoter-12] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-13] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-14] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-15] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-16] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-17] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-18] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-19] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-20] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-21] PASSED [ 28%] tests/test_quoting.py::test_unquoting[c_unquoter-22] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-23] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-24] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-25] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-26] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-27] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-28] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-29] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-30] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-31] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-32] PASSED [ 29%] tests/test_quoting.py::test_unquoting[c_unquoter-33] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-34] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-35] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-36] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-37] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-38] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-39] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-40] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-41] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-42] PASSED [ 30%] tests/test_quoting.py::test_unquoting[c_unquoter-43] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-44] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-45] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-46] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-47] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-48] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-49] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-50] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-51] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-52] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-53] PASSED [ 31%] tests/test_quoting.py::test_unquoting[c_unquoter-54] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-55] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-56] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-57] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-58] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-59] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-60] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-61] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-62] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-63] PASSED [ 32%] tests/test_quoting.py::test_unquoting[c_unquoter-64] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-65] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-66] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-67] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-68] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-69] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-70] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-71] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-72] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-73] PASSED [ 33%] tests/test_quoting.py::test_unquoting[c_unquoter-74] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-75] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-76] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-77] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-78] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-79] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-80] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-81] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-82] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-83] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-84] PASSED [ 34%] tests/test_quoting.py::test_unquoting[c_unquoter-85] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-86] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-87] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-88] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-89] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-90] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-91] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-92] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-93] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-94] PASSED [ 35%] tests/test_quoting.py::test_unquoting[c_unquoter-95] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-96] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-97] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-98] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-99] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-100] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-101] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-102] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-103] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-104] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-105] PASSED [ 36%] tests/test_quoting.py::test_unquoting[c_unquoter-106] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-107] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-108] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-109] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-110] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-111] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-112] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-113] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-114] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-115] PASSED [ 37%] tests/test_quoting.py::test_unquoting[c_unquoter-116] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-117] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-118] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-119] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-120] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-121] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-122] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-123] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-124] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-125] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-126] PASSED [ 38%] tests/test_quoting.py::test_unquoting[c_unquoter-127] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%-%] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%2-%2] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%x-%x] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%\u20ac-%\u20ac] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%2x-%2x] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%2 -%2 ] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-% 2-% 2] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%xa-%xa] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%%-%%] PASSED [ 39%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%%3f-%?] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%2%-%2%] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%2%3f-%2?] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%x%3f-%x?] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[py_unquoter-%\u20ac%3f-%\u20ac?] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%-%] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%2-%2] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%x-%x] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%\u20ac-%\u20ac] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%2x-%2x] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%2 -%2 ] PASSED [ 40%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-% 2-% 2] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%xa-%xa] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%%-%%] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%%3f-%?] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%2%-%2%] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%2%3f-%2?] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%x%3f-%x?] PASSED [ 41%] tests/test_quoting.py::test_unquoting_bad_percent_escapes[c_unquoter-%\u20ac%3f-%\u20ac?] PASSED [ 41%] tests/test_quoting.py::test_unquoting_invalid_utf8_sequence[py_unquoter] XFAIL [ 41%] tests/test_quoting.py::test_unquoting_invalid_utf8_sequence[c_unquoter] XFAIL [ 41%] tests/test_quoting.py::test_unquoting_mixed_case_percent_escapes[py_unquoter] PASSED [ 42%] tests/test_quoting.py::test_unquoting_mixed_case_percent_escapes[c_unquoter] PASSED [ 42%] tests/test_quoting.py::test_unquoting_parts[py_unquoter] PASSED [ 42%] tests/test_quoting.py::test_unquoting_parts[c_unquoter] PASSED [ 42%] tests/test_quoting.py::test_quote_None[py_quoter] PASSED [ 42%] tests/test_quoting.py::test_quote_None[c_quoter] PASSED [ 42%] tests/test_quoting.py::test_unquote_None[py_unquoter] PASSED [ 42%] tests/test_quoting.py::test_unquote_None[c_unquoter] PASSED [ 42%] tests/test_quoting.py::test_quote_empty_string[py_quoter] PASSED [ 42%] tests/test_quoting.py::test_quote_empty_string[c_quoter] PASSED [ 42%] tests/test_quoting.py::test_unquote_empty_string[py_unquoter] PASSED [ 42%] tests/test_quoting.py::test_unquote_empty_string[c_unquoter] PASSED [ 43%] tests/test_quoting.py::test_quote_bad_types[py_quoter] PASSED [ 43%] tests/test_quoting.py::test_quote_bad_types[c_quoter] PASSED [ 43%] tests/test_quoting.py::test_unquote_bad_types[py_unquoter] PASSED [ 43%] tests/test_quoting.py::test_unquote_bad_types[c_unquoter] PASSED [ 43%] tests/test_quoting.py::test_quote_lowercase[py_quoter] PASSED [ 43%] tests/test_quoting.py::test_quote_lowercase[c_quoter] PASSED [ 43%] tests/test_quoting.py::test_quote_unquoted[py_quoter] PASSED [ 43%] tests/test_quoting.py::test_quote_unquoted[c_quoter] PASSED [ 43%] tests/test_quoting.py::test_quote_space[py_quoter] PASSED [ 43%] tests/test_quoting.py::test_quote_space[c_quoter] PASSED [ 44%] tests/test_quoting.py::test_quote_percent_last_character[py_quoter] PASSED [ 44%] tests/test_quoting.py::test_quote_percent_last_character[c_quoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe[py_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe[c_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe2[py_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe2[c_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe3[py_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe3[c_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe4[py_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_unsafe4[c_unquoter] PASSED [ 44%] tests/test_quoting.py::test_unquote_non_utf8[py_unquoter-%e2%82-%e2%82] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[py_unquoter-%e2%82ac-%e2%82ac] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[py_unquoter-%e2%82%f8-%e2%82%f8] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[py_unquoter-%e2%82%2b-%e2%82+] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[py_unquoter-%e2%82%e2%82%ac-%e2%82\u20ac] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[py_unquoter-%e2%82%e2%82-%e2%82%e2%82] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[c_unquoter-%e2%82-%e2%82] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[c_unquoter-%e2%82ac-%e2%82ac] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[c_unquoter-%e2%82%f8-%e2%82%f8] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[c_unquoter-%e2%82%2b-%e2%82+] PASSED [ 45%] tests/test_quoting.py::test_unquote_non_utf8[c_unquoter-%e2%82%e2%82%ac-%e2%82\u20ac] PASSED [ 46%] tests/test_quoting.py::test_unquote_non_utf8[c_unquoter-%e2%82%e2%82-%e2%82%e2%82] PASSED [ 46%] tests/test_quoting.py::test_unquote_unsafe_non_utf8[py_unquoter] PASSED [ 46%] tests/test_quoting.py::test_unquote_unsafe_non_utf8[c_unquoter] PASSED [ 46%] tests/test_quoting.py::test_unquote_plus_non_utf8[py_unquoter] PASSED [ 46%] tests/test_quoting.py::test_unquote_plus_non_utf8[c_unquoter] PASSED [ 46%] tests/test_quoting.py::test_quote_non_ascii[py_quoter] PASSED [ 46%] tests/test_quoting.py::test_quote_non_ascii[c_quoter] PASSED [ 46%] tests/test_quoting.py::test_quote_non_ascii2[py_quoter] PASSED [ 46%] tests/test_quoting.py::test_quote_non_ascii2[c_quoter] PASSED [ 46%] tests/test_quoting.py::test_quote_percent_percent_encoded[py_quoter] PASSED [ 46%] tests/test_quoting.py::test_quote_percent_percent_encoded[c_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_digit_percent_encoded[py_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_digit_percent_encoded[c_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_safe_percent_encoded[py_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_safe_percent_encoded[c_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_unsafe_percent_encoded[py_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_unsafe_percent_encoded[c_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_non_ascii_percent_encoded[py_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_non_ascii_percent_encoded[c_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_non_ascii2_percent_encoded[py_quoter] PASSED [ 47%] tests/test_quoting.py::test_quote_percent_non_ascii2_percent_encoded[c_quoter] PASSED [ 48%] tests/test_quoting.py::test_quote_percent_non_ascii3_percent_encoded[py_quoter] PASSED [ 48%] tests/test_quoting.py::test_quote_percent_non_ascii3_percent_encoded[c_quoter] PASSED [ 48%] tests/test_quoting.py::test_quote_str_like[py_quoter] PASSED [ 48%] tests/test_quoting.py::test_quote_str_like[c_quoter] PASSED [ 48%] tests/test_quoting.py::test_unquote_str_like[py_unquoter] PASSED [ 48%] tests/test_quoting.py::test_unquote_str_like[c_unquoter] PASSED [ 48%] tests/test_quoting.py::test_quote_sub_delims[py_quoter] PASSED [ 48%] tests/test_quoting.py::test_quote_sub_delims[c_quoter] PASSED [ 48%] tests/test_quoting.py::test_requote_sub_delims[py_quoter] PASSED [ 48%] tests/test_quoting.py::test_requote_sub_delims[c_quoter] PASSED [ 48%] tests/test_quoting.py::test_unquoting_plus[py_unquoter] PASSED [ 49%] tests/test_quoting.py::test_unquoting_plus[c_unquoter] PASSED [ 49%] tests/test_quoting.py::test_unquote_plus_to_space[py_unquoter] PASSED [ 49%] tests/test_quoting.py::test_unquote_plus_to_space[c_unquoter] PASSED [ 49%] tests/test_quoting.py::test_unquote_plus_to_space_unsafe[py_unquoter] PASSED [ 49%] tests/test_quoting.py::test_unquote_plus_to_space_unsafe[c_unquoter] PASSED [ 49%] tests/test_quoting.py::test_quote_qs_with_colon[py_quoter] PASSED [ 49%] tests/test_quoting.py::test_quote_qs_with_colon[c_quoter] PASSED [ 49%] tests/test_quoting.py::test_quote_protected[py_quoter] PASSED [ 49%] tests/test_quoting.py::test_quote_protected[c_quoter] PASSED [ 49%] tests/test_quoting.py::test_quote_fastpath_safe[py_quoter] PASSED [ 50%] tests/test_quoting.py::test_quote_fastpath_safe[c_quoter] PASSED [ 50%] tests/test_quoting.py::test_quote_fastpath_pct[py_quoter] PASSED [ 50%] tests/test_quoting.py::test_quote_fastpath_pct[c_quoter] PASSED [ 50%] tests/test_quoting.py::test_quote_very_large_string[py_quoter] PASSED [ 50%] tests/test_quoting.py::test_quote_very_large_string[c_quoter] PASSED [ 50%] tests/test_quoting.py::test_space[py_quoter] PASSED [ 50%] tests/test_quoting.py::test_space[c_quoter] PASSED [ 50%] tests/test_quoting.py::test_quoter_path_with_plus[py_quoter] PASSED [ 50%] tests/test_quoting.py::test_quoter_path_with_plus[c_quoter] PASSED [ 50%] tests/test_quoting.py::test_unquoter_path_with_plus[py_unquoter] PASSED [ 51%] tests/test_quoting.py::test_unquoter_path_with_plus[c_unquoter] PASSED [ 51%] tests/test_update_query.py::test_with_query PASSED [ 51%] tests/test_update_query.py::test_update_query PASSED [ 51%] tests/test_update_query.py::test_update_query_with_args_and_kwargs PASSED [ 51%] tests/test_update_query.py::test_update_query_with_multiple_args PASSED [ 51%] tests/test_update_query.py::test_with_query_list_of_pairs PASSED [ 51%] tests/test_update_query.py::test_with_query_list_non_pairs PASSED [ 51%] tests/test_update_query.py::test_with_query_kwargs PASSED [ 51%] tests/test_update_query.py::test_with_query_kwargs_and_args_are_mutually_exclusive PASSED [ 51%] tests/test_update_query.py::test_with_query_only_single_arg_is_supported PASSED [ 51%] tests/test_update_query.py::test_with_query_empty_dict PASSED [ 52%] tests/test_update_query.py::test_with_query_empty_str PASSED [ 52%] tests/test_update_query.py::test_with_query_empty_value PASSED [ 52%] tests/test_update_query.py::test_with_query_str PASSED [ 52%] tests/test_update_query.py::test_with_query_str_non_ascii_and_spaces PASSED [ 52%] tests/test_update_query.py::test_with_query_int PASSED [ 52%] tests/test_update_query.py::test_with_query_kwargs_int PASSED [ 52%] tests/test_update_query.py::test_with_query_list_int PASSED [ 52%] tests/test_update_query.py::test_with_query_sequence[empty list] PASSED [ 52%] tests/test_update_query.py::test_with_query_sequence[empty tuple] PASSED [ 52%] tests/test_update_query.py::test_with_query_sequence[single list] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[single tuple] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[list] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[tuple] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[key with braces] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[quote key] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[mixed types] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[quote key and value] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[single then list] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[list then single] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[ampersand then int] PASSED [ 53%] tests/test_update_query.py::test_with_query_sequence[int then ampersand] PASSED [ 54%] tests/test_update_query.py::test_with_query_sequence_invalid_use[nested] PASSED [ 54%] tests/test_update_query.py::test_with_query_sequence_invalid_use[tuple list] PASSED [ 54%] tests/test_update_query.py::test_with_query_valid_type[str] PASSED [ 54%] tests/test_update_query.py::test_with_query_valid_type[custom str] PASSED [ 54%] tests/test_update_query.py::test_with_query_valid_type[int] PASSED [ 54%] tests/test_update_query.py::test_with_query_valid_type[custom int] PASSED [ 54%] tests/test_update_query.py::test_with_query_valid_type[float] PASSED [ 54%] tests/test_update_query.py::test_with_query_valid_type[custom float] PASSED [ 54%] tests/test_update_query.py::test_with_query_invalid_type[bool] PASSED [ 54%] tests/test_update_query.py::test_with_query_invalid_type[none] PASSED [ 55%] tests/test_update_query.py::test_with_query_invalid_type[non-finite float] PASSED [ 55%] tests/test_update_query.py::test_with_query_invalid_type[NaN float] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_valid_type[str] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_valid_type[custom str] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_valid_type[int] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_valid_type[custom int] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_valid_type[float] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_valid_type[custom float] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_invalid_type[bool] PASSED [ 55%] tests/test_update_query.py::test_with_query_list_invalid_type[none] PASSED [ 55%] tests/test_update_query.py::test_with_int_enum PASSED [ 56%] tests/test_update_query.py::test_with_float_enum PASSED [ 56%] tests/test_update_query.py::test_with_query_multidict PASSED [ 56%] tests/test_update_query.py::test_with_multidict_with_spaces_and_non_ascii PASSED [ 56%] tests/test_update_query.py::test_with_query_multidict_with_unsafe PASSED [ 56%] tests/test_update_query.py::test_with_query_None PASSED [ 56%] tests/test_update_query.py::test_with_query_bad_type PASSED [ 56%] tests/test_update_query.py::test_with_query_bytes PASSED [ 56%] tests/test_update_query.py::test_with_query_bytearray PASSED [ 56%] tests/test_update_query.py::test_with_query_memoryview PASSED [ 56%] tests/test_update_query.py::test_with_query_params[tuple list semicolon] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[mapping semicolon] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[tuple list ampersand] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[mapping ampersand] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[tuple list quote key] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[mapping quote key] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[quote one key braces] PASSED [ 57%] tests/test_update_query.py::test_with_query_params[quote many key braces] PASSED [ 57%] tests/test_update_query.py::test_with_query_only PASSED [ 57%] tests/test_update_query.py::test_with_query_complex_url PASSED [ 57%] tests/test_update_query.py::test_update_query_multiple_keys PASSED [ 57%] tests/test_update_query.py::test_update_query_with_mod_operator PASSED [ 58%] tests/test_url.py::test_inheritance PASSED [ 58%] tests/test_url.py::test_str_subclass PASSED [ 58%] tests/test_url.py::test_is PASSED [ 58%] tests/test_url.py::test_bool PASSED [ 58%] tests/test_url.py::test_absolute_url_without_host PASSED [ 58%] tests/test_url.py::test_url_is_not_str PASSED [ 58%] tests/test_url.py::test_str PASSED [ 58%] tests/test_url.py::test_repr PASSED [ 58%] tests/test_url.py::test_origin PASSED [ 58%] tests/test_url.py::test_origin_nonascii PASSED [ 59%] tests/test_url.py::test_origin_ipv6 PASSED [ 59%] tests/test_url.py::test_origin_not_absolute_url PASSED [ 59%] tests/test_url.py::test_origin_no_scheme PASSED [ 59%] tests/test_url.py::test_drop_dots PASSED [ 59%] tests/test_url.py::test_abs_cmp PASSED [ 59%] tests/test_url.py::test_abs_hash PASSED [ 59%] tests/test_url.py::test_scheme PASSED [ 59%] tests/test_url.py::test_raw_user PASSED [ 59%] tests/test_url.py::test_raw_user_non_ascii PASSED [ 59%] tests/test_url.py::test_no_user PASSED [ 59%] tests/test_url.py::test_user_non_ascii PASSED [ 60%] tests/test_url.py::test_raw_password PASSED [ 60%] tests/test_url.py::test_raw_password_non_ascii PASSED [ 60%] tests/test_url.py::test_password_non_ascii PASSED [ 60%] tests/test_url.py::test_password_without_user PASSED [ 60%] tests/test_url.py::test_user_empty_password PASSED [ 60%] tests/test_url.py::test_raw_host PASSED [ 60%] tests/test_url.py::test_raw_host_non_ascii PASSED [ 60%] tests/test_url.py::test_host_non_ascii PASSED [ 60%] tests/test_url.py::test_localhost PASSED [ 60%] tests/test_url.py::test_host_with_underscore PASSED [ 61%] tests/test_url.py::test_raw_host_when_port_is_specified PASSED [ 61%] tests/test_url.py::test_raw_host_from_str_with_ipv4 PASSED [ 61%] tests/test_url.py::test_raw_host_from_str_with_ipv6 PASSED [ 61%] tests/test_url.py::test_authority_full PASSED [ 61%] tests/test_url.py::test_authority_short PASSED [ 61%] tests/test_url.py::test_authority_full_nonasci PASSED [ 61%] tests/test_url.py::test_lowercase PASSED [ 61%] tests/test_url.py::test_lowercase_nonascii PASSED [ 61%] tests/test_url.py::test_compressed_ipv6 PASSED [ 61%] tests/test_url.py::test_ipv6_zone PASSED [ 61%] tests/test_url.py::test_ipv4_zone PASSED [ 62%] tests/test_url.py::test_port_for_explicit_port PASSED [ 62%] tests/test_url.py::test_port_for_implicit_port PASSED [ 62%] tests/test_url.py::test_port_for_relative_url PASSED [ 62%] tests/test_url.py::test_port_for_unknown_scheme PASSED [ 62%] tests/test_url.py::test_explicit_port_for_explicit_port PASSED [ 62%] tests/test_url.py::test_explicit_port_for_implicit_port PASSED [ 62%] tests/test_url.py::test_explicit_port_for_relative_url PASSED [ 62%] tests/test_url.py::test_explicit_port_for_unknown_scheme PASSED [ 62%] tests/test_url.py::test_raw_path_string_empty PASSED [ 62%] tests/test_url.py::test_raw_path PASSED [ 63%] tests/test_url.py::test_raw_path_non_ascii PASSED [ 63%] tests/test_url.py::test_path_non_ascii PASSED [ 63%] tests/test_url.py::test_path_with_spaces PASSED [ 63%] tests/test_url.py::test_raw_path_for_empty_url PASSED [ 63%] tests/test_url.py::test_raw_path_for_colon_and_at PASSED [ 63%] tests/test_url.py::test_raw_query_string PASSED [ 63%] tests/test_url.py::test_raw_query_string_non_ascii PASSED [ 63%] tests/test_url.py::test_query_string_non_ascii PASSED [ 63%] tests/test_url.py::test_path_qs PASSED [ 63%] tests/test_url.py::test_raw_path_qs PASSED [ 63%] tests/test_url.py::test_query_string_spaces PASSED [ 64%] tests/test_url.py::test_raw_fragment_empty PASSED [ 64%] tests/test_url.py::test_raw_fragment PASSED [ 64%] tests/test_url.py::test_raw_fragment_non_ascii PASSED [ 64%] tests/test_url.py::test_raw_fragment_safe PASSED [ 64%] tests/test_url.py::test_fragment_non_ascii PASSED [ 64%] tests/test_url.py::test_raw_parts_empty PASSED [ 64%] tests/test_url.py::test_raw_parts PASSED [ 64%] tests/test_url.py::test_raw_parts_without_path PASSED [ 64%] tests/test_url.py::test_raw_path_parts_with_2F_in_path PASSED [ 64%] tests/test_url.py::test_raw_path_parts_with_2f_in_path PASSED [ 65%] tests/test_url.py::test_raw_parts_for_relative_path PASSED [ 65%] tests/test_url.py::test_raw_parts_for_relative_path_starting_from_slash PASSED [ 65%] tests/test_url.py::test_raw_parts_for_relative_double_path PASSED [ 65%] tests/test_url.py::test_parts_for_empty_url PASSED [ 65%] tests/test_url.py::test_raw_parts_non_ascii PASSED [ 65%] tests/test_url.py::test_parts_non_ascii PASSED [ 65%] tests/test_url.py::test_name_for_empty_url PASSED [ 65%] tests/test_url.py::test_raw_name PASSED [ 65%] tests/test_url.py::test_raw_name_root PASSED [ 65%] tests/test_url.py::test_raw_name_root2 PASSED [ 65%] tests/test_url.py::test_raw_name_root3 PASSED [ 66%] tests/test_url.py::test_relative_raw_name PASSED [ 66%] tests/test_url.py::test_relative_raw_name_starting_from_slash PASSED [ 66%] tests/test_url.py::test_relative_raw_name_slash PASSED [ 66%] tests/test_url.py::test_name_non_ascii PASSED [ 66%] tests/test_url.py::test_suffix_for_empty_url PASSED [ 66%] tests/test_url.py::test_raw_suffix PASSED [ 66%] tests/test_url.py::test_raw_suffix_root PASSED [ 66%] tests/test_url.py::test_raw_suffix_root2 PASSED [ 66%] tests/test_url.py::test_raw_suffix_root3 PASSED [ 66%] tests/test_url.py::test_relative_raw_suffix PASSED [ 67%] tests/test_url.py::test_relative_raw_suffix_starting_from_slash PASSED [ 67%] tests/test_url.py::test_relative_raw_suffix_dot PASSED [ 67%] tests/test_url.py::test_suffix_non_ascii PASSED [ 67%] tests/test_url.py::test_suffix_with_empty_name PASSED [ 67%] tests/test_url.py::test_suffix_multi_dot PASSED [ 67%] tests/test_url.py::test_suffix_with_dot_name PASSED [ 67%] tests/test_url.py::test_suffixes_for_empty_url PASSED [ 67%] tests/test_url.py::test_raw_suffixes PASSED [ 67%] tests/test_url.py::test_raw_suffixes_root PASSED [ 67%] tests/test_url.py::test_raw_suffixes_root2 PASSED [ 68%] tests/test_url.py::test_raw_suffixes_root3 PASSED [ 68%] tests/test_url.py::test_relative_raw_suffixes PASSED [ 68%] tests/test_url.py::test_relative_raw_suffixes_starting_from_slash PASSED [ 68%] tests/test_url.py::test_relative_raw_suffixes_dot PASSED [ 68%] tests/test_url.py::test_suffixes_non_ascii PASSED [ 68%] tests/test_url.py::test_suffixes_with_empty_name PASSED [ 68%] tests/test_url.py::test_suffixes_multi_dot PASSED [ 68%] tests/test_url.py::test_suffixes_with_dot_name PASSED [ 68%] tests/test_url.py::test_plus_in_path PASSED [ 68%] tests/test_url.py::test_nonascii_in_qs PASSED [ 68%] tests/test_url.py::test_percent_encoded_in_qs PASSED [ 69%] tests/test_url.py::test_parent_raw_path PASSED [ 69%] tests/test_url.py::test_parent_raw_parts PASSED [ 69%] tests/test_url.py::test_double_parent_raw_path PASSED [ 69%] tests/test_url.py::test_empty_parent_raw_path PASSED [ 69%] tests/test_url.py::test_empty_parent_raw_path2 PASSED [ 69%] tests/test_url.py::test_clear_fragment_on_getting_parent PASSED [ 69%] tests/test_url.py::test_clear_fragment_on_getting_parent_toplevel PASSED [ 69%] tests/test_url.py::test_clear_query_on_getting_parent PASSED [ 69%] tests/test_url.py::test_clear_query_on_getting_parent_toplevel PASSED [ 69%] tests/test_url.py::test_div_root PASSED [ 70%] tests/test_url.py::test_div_root_with_slash PASSED [ 70%] tests/test_url.py::test_div PASSED [ 70%] tests/test_url.py::test_div_with_slash PASSED [ 70%] tests/test_url.py::test_div_path_starting_from_slash_is_forbidden PASSED [ 70%] tests/test_url.py::test_div_cleanup_query_and_fragment PASSED [ 70%] tests/test_url.py::test_div_for_empty_url PASSED [ 70%] tests/test_url.py::test_div_for_relative_url PASSED [ 70%] tests/test_url.py::test_div_for_relative_url_started_with_slash PASSED [ 70%] tests/test_url.py::test_div_non_ascii PASSED [ 70%] tests/test_url.py::test_div_percent_encoded PASSED [ 70%] tests/test_url.py::test_div_with_colon_and_at PASSED [ 71%] tests/test_url.py::test_div_with_dots PASSED [ 71%] tests/test_url.py::test_with_path PASSED [ 71%] tests/test_url.py::test_with_path_nonascii PASSED [ 71%] tests/test_url.py::test_with_path_percent_encoded PASSED [ 71%] tests/test_url.py::test_with_path_encoded PASSED [ 71%] tests/test_url.py::test_with_path_encoded_nonascii PASSED [ 71%] tests/test_url.py::test_with_path_encoded_percent_encoded PASSED [ 71%] tests/test_url.py::test_with_path_dots PASSED [ 71%] tests/test_url.py::test_with_path_relative PASSED [ 71%] tests/test_url.py::test_with_path_query PASSED [ 72%] tests/test_url.py::test_with_path_fragment PASSED [ 72%] tests/test_url.py::test_with_path_empty PASSED [ 72%] tests/test_url.py::test_with_path_leading_slash PASSED [ 72%] tests/test_url.py::test_with_fragment PASSED [ 72%] tests/test_url.py::test_with_fragment_safe PASSED [ 72%] tests/test_url.py::test_with_fragment_non_ascii PASSED [ 72%] tests/test_url.py::test_with_fragment_percent_encoded PASSED [ 72%] tests/test_url.py::test_with_fragment_None PASSED [ 72%] tests/test_url.py::test_with_fragment_None_matching PASSED [ 72%] tests/test_url.py::test_with_fragment_matching PASSED [ 72%] tests/test_url.py::test_with_fragment_bad_type PASSED [ 73%] tests/test_url.py::test_with_name PASSED [ 73%] tests/test_url.py::test_with_name_for_naked_path PASSED [ 73%] tests/test_url.py::test_with_name_for_relative_path PASSED [ 73%] tests/test_url.py::test_with_name_for_relative_path2 PASSED [ 73%] tests/test_url.py::test_with_name_for_relative_path_starting_from_slash PASSED [ 73%] tests/test_url.py::test_with_name_for_relative_path_starting_from_slash2 PASSED [ 73%] tests/test_url.py::test_with_name_empty PASSED [ 73%] tests/test_url.py::test_with_name_non_ascii PASSED [ 73%] tests/test_url.py::test_with_name_percent_encoded PASSED [ 73%] tests/test_url.py::test_with_name_with_slash PASSED [ 74%] tests/test_url.py::test_with_name_non_str PASSED [ 74%] tests/test_url.py::test_with_name_within_colon_and_at PASSED [ 74%] tests/test_url.py::test_with_name_dot PASSED [ 74%] tests/test_url.py::test_with_name_double_dot PASSED [ 74%] tests/test_url.py::test_with_suffix PASSED [ 74%] tests/test_url.py::test_with_suffix_for_naked_path PASSED [ 74%] tests/test_url.py::test_with_suffix_for_relative_path PASSED [ 74%] tests/test_url.py::test_with_suffix_for_relative_path2 PASSED [ 74%] tests/test_url.py::test_with_suffix_for_relative_path_starting_from_slash PASSED [ 74%] tests/test_url.py::test_with_suffix_for_relative_path_starting_from_slash2 PASSED [ 74%] tests/test_url.py::test_with_suffix_empty PASSED [ 75%] tests/test_url.py::test_with_suffix_non_ascii PASSED [ 75%] tests/test_url.py::test_with_suffix_percent_encoded PASSED [ 75%] tests/test_url.py::test_with_suffix_without_dot PASSED [ 75%] tests/test_url.py::test_with_suffix_non_str PASSED [ 75%] tests/test_url.py::test_with_suffix_dot PASSED [ 75%] tests/test_url.py::test_with_suffix_with_slash PASSED [ 75%] tests/test_url.py::test_with_suffix_with_slash2 PASSED [ 75%] tests/test_url.py::test_with_suffix_replace PASSED [ 75%] tests/test_url.py::test_is_absolute_for_relative_url PASSED [ 75%] tests/test_url.py::test_is_absolute_for_absolute_url PASSED [ 76%] tests/test_url.py::test_is_non_absolute_for_empty_url PASSED [ 76%] tests/test_url.py::test_is_non_absolute_for_empty_url2 PASSED [ 76%] tests/test_url.py::test_is_absolute_path_starting_from_double_slash PASSED [ 76%] tests/test_url.py::test_is_default_port_for_relative_url PASSED [ 76%] tests/test_url.py::test_is_default_port_for_absolute_url_without_port PASSED [ 76%] tests/test_url.py::test_is_default_port_for_absolute_url_with_default_port PASSED [ 76%] tests/test_url.py::test_is_default_port_for_absolute_url_with_nondefault_port PASSED [ 76%] tests/test_url.py::test_is_default_port_for_unknown_scheme PASSED [ 76%] tests/test_url.py::test_no_scheme PASSED [ 76%] tests/test_url.py::test_no_scheme2 PASSED [ 76%] tests/test_url.py::test_from_non_allowed PASSED [ 77%] tests/test_url.py::test_from_idna PASSED [ 77%] tests/test_url.py::test_to_idna PASSED [ 77%] tests/test_url.py::test_from_ascii_login PASSED [ 77%] tests/test_url.py::test_from_non_ascii_login PASSED [ 77%] tests/test_url.py::test_from_ascii_login_and_password PASSED [ 77%] tests/test_url.py::test_from_non_ascii_login_and_password PASSED [ 77%] tests/test_url.py::test_from_ascii_path PASSED [ 77%] tests/test_url.py::test_from_ascii_path_lower_case PASSED [ 77%] tests/test_url.py::test_from_non_ascii_path PASSED [ 77%] tests/test_url.py::test_bytes PASSED [ 78%] tests/test_url.py::test_from_ascii_query_parts PASSED [ 78%] tests/test_url.py::test_from_non_ascii_query_parts PASSED [ 78%] tests/test_url.py::test_from_non_ascii_query_parts2 PASSED [ 78%] tests/test_url.py::test_from_ascii_fragment PASSED [ 78%] tests/test_url.py::test_from_bytes_with_non_ascii_fragment PASSED [ 78%] tests/test_url.py::test_to_str PASSED [ 78%] tests/test_url.py::test_to_str_long PASSED [ 78%] tests/test_url.py::test_decoding_with_2F_in_path PASSED [ 78%] tests/test_url.py::test_decoding_with_26_and_3D_in_query PASSED [ 78%] tests/test_url.py::test_fragment_only_url PASSED [ 78%] tests/test_url.py::test_url_from_url PASSED [ 79%] tests/test_url.py::test_lowercase_scheme PASSED [ 79%] tests/test_url.py::test_str_for_empty_url PASSED [ 79%] tests/test_url.py::test_parent_for_empty_url PASSED [ 79%] tests/test_url.py::test_empty_value_for_query PASSED [ 79%] tests/test_url.py::test_none_value_for_query PASSED [ 79%] tests/test_url.py::test_decode_pct_in_path PASSED [ 79%] tests/test_url.py::test_decode_pct_in_path_lower_case PASSED [ 79%] tests/test_url.py::test_join PASSED [ 79%] tests/test_url.py::test_join_absolute PASSED [ 79%] tests/test_url.py::test_join_non_url PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[g:h-g:h] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[g-http://a/b/c/g] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[./g-http://a/b/c/g] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[g/-http://a/b/c/g/] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[/g-http://a/g] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[//g-http://g] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[?y-http://a/b/c/d;p?y] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[g?y-http://a/b/c/g?y] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[#s-http://a/b/c/d;p?q#s] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[g#s-http://a/b/c/g#s] PASSED [ 80%] tests/test_url.py::test_join_from_rfc_3986_normal[g?y#s-http://a/b/c/g?y#s] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[;x-http://a/b/c/;x] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[g;x-http://a/b/c/g;x] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[g;x?y#s-http://a/b/c/g;x?y#s] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[-http://a/b/c/d;p?q] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[.-http://a/b/c/] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[./-http://a/b/c/] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[..-http://a/b/] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[../-http://a/b/] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[../g-http://a/b/g] PASSED [ 81%] tests/test_url.py::test_join_from_rfc_3986_normal[../..-http://a/] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_normal[../../-http://a/] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_normal[../../g-http://a/g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[../../../g-http://a/g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[../../../../g-http://a/g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[/./g-http://a/g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[/../g-http://a/g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g.-http://a/b/c/g.] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[.g-http://a/b/c/.g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g..-http://a/b/c/g..] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[..g-http://a/b/c/..g] PASSED [ 82%] tests/test_url.py::test_join_from_rfc_3986_abnormal[./../g-http://a/b/g] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[./g/.-http://a/b/c/g/] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g/./h-http://a/b/c/g/h] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g/../h-http://a/b/c/h] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g;x=1/./y-http://a/b/c/g;x=1/y] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g;x=1/../y-http://a/b/c/y] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g?y/./x-http://a/b/c/g?y/./x] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g?y/../x-http://a/b/c/g?y/../x] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g#s/./x-http://a/b/c/g#s/./x] PASSED [ 83%] tests/test_url.py::test_join_from_rfc_3986_abnormal[g#s/../x-http://a/b/c/g#s/../x] PASSED [ 83%] tests/test_url.py::test_split_result_non_decoded PASSED [ 84%] tests/test_url.py::test_human_repr PASSED [ 84%] tests/test_url.py::test_human_repr_defaults PASSED [ 84%] tests/test_url.py::test_human_repr_default_port PASSED [ 84%] tests/test_url.py::test_human_repr_ipv6 PASSED [ 84%] tests/test_url.py::test_human_repr_delimiters PASSED [ 84%] tests/test_url.py::test_human_repr_non_printable PASSED [ 84%] tests/test_url.py::test_relative PASSED [ 84%] tests/test_url.py::test_relative_is_relative PASSED [ 84%] tests/test_url.py::test_relative_abs_parts_are_removed PASSED [ 84%] tests/test_url.py::test_relative_fails_on_rel_url PASSED [ 85%] tests/test_url.py::test_slash_and_question_in_query PASSED [ 85%] tests/test_url.py::test_slash_and_question_in_fragment PASSED [ 85%] tests/test_url.py::test_requoting PASSED [ 85%] tests/test_url_build.py::test_build_without_arguments PASSED [ 85%] tests/test_url_build.py::test_build_simple PASSED [ 85%] tests/test_url_build.py::test_build_with_scheme PASSED [ 85%] tests/test_url_build.py::test_build_with_host PASSED [ 85%] tests/test_url_build.py::test_build_with_scheme_and_host PASSED [ 85%] tests/test_url_build.py::test_build_with_port PASSED [ 85%] tests/test_url_build.py::test_build_with_user PASSED [ 85%] tests/test_url_build.py::test_build_with_user_password PASSED [ 86%] tests/test_url_build.py::test_build_with_query_and_query_string PASSED [ 86%] tests/test_url_build.py::test_build_with_all PASSED [ 86%] tests/test_url_build.py::test_build_with_authority_and_host PASSED [ 86%] tests/test_url_build.py::test_build_with_authority PASSED [ 86%] tests/test_url_build.py::test_build_with_authority_without_encoding PASSED [ 86%] tests/test_url_build.py::test_query_str PASSED [ 86%] tests/test_url_build.py::test_query_dict PASSED [ 86%] tests/test_url_build.py::test_build_path_quoting PASSED [ 86%] tests/test_url_build.py::test_build_query_quoting PASSED [ 86%] tests/test_url_build.py::test_build_query_only PASSED [ 87%] tests/test_url_build.py::test_build_drop_dots PASSED [ 87%] tests/test_url_build.py::test_build_encode PASSED [ 87%] tests/test_url_build.py::test_build_already_encoded PASSED [ 87%] tests/test_url_build.py::test_build_percent_encoded PASSED [ 87%] tests/test_url_build.py::test_build_with_authority_percent_encoded PASSED [ 87%] tests/test_url_build.py::test_build_with_authority_percent_encoded_already_encoded PASSED [ 87%] tests/test_url_build.py::test_build_with_authority_with_path_with_leading_slash PASSED [ 87%] tests/test_url_build.py::test_build_with_authority_with_empty_path PASSED [ 87%] tests/test_url_build.py::test_build_with_authority_with_path_without_leading_slash PASSED [ 87%] tests/test_url_build.py::test_build_with_none_path PASSED [ 87%] tests/test_url_build.py::test_build_with_none_query_string PASSED [ 88%] tests/test_url_build.py::test_build_with_none_fragment PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_ne_str PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_eq PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_hash PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_hash_double_call PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_le_less PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_le_eq PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_le_not_implemented PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_lt PASSED [ 88%] tests/test_url_cmp_and_hash.py::test_lt_not_implemented PASSED [ 89%] tests/test_url_cmp_and_hash.py::test_ge_more PASSED [ 89%] tests/test_url_cmp_and_hash.py::test_ge_eq PASSED [ 89%] tests/test_url_cmp_and_hash.py::test_ge_not_implemented PASSED [ 89%] tests/test_url_cmp_and_hash.py::test_gt PASSED [ 89%] tests/test_url_cmp_and_hash.py::test_gt_not_implemented PASSED [ 89%] tests/test_url_parsing.py::TestScheme::test_scheme_path PASSED [ 89%] tests/test_url_parsing.py::TestScheme::test_scheme_path_other PASSED [ 89%] tests/test_url_parsing.py::TestScheme::test_complex_scheme PASSED [ 89%] tests/test_url_parsing.py::TestScheme::test_scheme_only PASSED [ 89%] tests/test_url_parsing.py::TestScheme::test_no_scheme1 PASSED [ 89%] tests/test_url_parsing.py::TestScheme::test_no_scheme2 PASSED [ 90%] tests/test_url_parsing.py::TestScheme::test_not_a_scheme1 PASSED [ 90%] tests/test_url_parsing.py::TestScheme::test_not_a_scheme2 PASSED [ 90%] tests/test_url_parsing.py::TestScheme::test_scheme_rel_path1 PASSED [ 90%] tests/test_url_parsing.py::TestScheme::test_scheme_rel_path2 PASSED [ 90%] tests/test_url_parsing.py::TestScheme::test_scheme_weird PASSED [ 90%] tests/test_url_parsing.py::TestHost::test_canonical PASSED [ 90%] tests/test_url_parsing.py::TestHost::test_absolute_no_scheme PASSED [ 90%] tests/test_url_parsing.py::TestHost::test_absolute_no_scheme_complex_host PASSED [ 90%] tests/test_url_parsing.py::TestHost::test_absolute_no_scheme_simple_host PASSED [ 90%] tests/test_url_parsing.py::TestHost::test_weird_host PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_scheme_no_host PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_scheme_no_host2 PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_no_scheme_no_host PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_ipv4 PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_masked_ipv4 PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_ipv6 PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_strange_ip PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_strange_ip_2 PASSED [ 91%] tests/test_url_parsing.py::TestHost::test_strange_ip_3 PASSED [ 91%] tests/test_url_parsing.py::TestPort::test_canonical PASSED [ 91%] tests/test_url_parsing.py::TestPort::test_no_path PASSED [ 92%] tests/test_url_parsing.py::TestPort::test_no_host PASSED [ 92%] tests/test_url_parsing.py::TestPort::test_double_port PASSED [ 92%] tests/test_url_parsing.py::TestPort::test_bad_port PASSED [ 92%] tests/test_url_parsing.py::TestPort::test_another_bad_port PASSED [ 92%] tests/test_url_parsing.py::TestPort::test_bad_port_again PASSED [ 92%] tests/test_url_parsing.py::TestUserInfo::test_canonical PASSED [ 92%] tests/test_url_parsing.py::TestUserInfo::test_user_pass PASSED [ 92%] tests/test_url_parsing.py::TestUserInfo::test_complex_userinfo PASSED [ 92%] tests/test_url_parsing.py::TestUserInfo::test_no_user PASSED [ 92%] tests/test_url_parsing.py::TestUserInfo::test_weird_user PASSED [ 93%] tests/test_url_parsing.py::TestUserInfo::test_weird_user2 PASSED [ 93%] tests/test_url_parsing.py::TestUserInfo::test_weird_user3 PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_simple PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_scheme_query PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_abs_url_query PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_abs_url_path_query PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_double_question_mark PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_complex_query PASSED [ 93%] tests/test_url_parsing.py::TestQuery_String::test_query_in_fragment PASSED [ 93%] tests/test_url_parsing.py::TestFragment::test_simple PASSED [ 93%] tests/test_url_parsing.py::TestFragment::test_scheme_frag PASSED [ 94%] tests/test_url_parsing.py::TestFragment::test_host_frag PASSED [ 94%] tests/test_url_parsing.py::TestFragment::test_scheme_path_frag PASSED [ 94%] tests/test_url_parsing.py::TestFragment::test_scheme_query_frag PASSED [ 94%] tests/test_url_parsing.py::TestFragment::test_host_frag_query PASSED [ 94%] tests/test_url_parsing.py::TestFragment::test_complex_frag PASSED [ 94%] tests/test_url_parsing.py::TestStripEmptyParts::test_all_empty PASSED [ 94%] tests/test_url_parsing.py::TestStripEmptyParts::test_path_only PASSED [ 94%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_user PASSED [ 94%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_port PASSED [ 94%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_port_and_path PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_path_only PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_relative_path_only PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_path PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_query_with_path PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_query PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_query_with_frag PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_path_empty_frag PASSED [ 95%] tests/test_url_parsing.py::TestStripEmptyParts::test_empty_path PASSED [ 95%] tests/test_url_query.py::test_query_spaces PASSED [ 95%] tests/test_url_query.py::test_query_empty PASSED [ 95%] tests/test_url_query.py::test_query PASSED [ 96%] tests/test_url_query.py::test_query_repeated_args PASSED [ 96%] tests/test_url_query.py::test_query_empty_arg PASSED [ 96%] tests/test_url_query.py::test_query_dont_unqoute_twice PASSED [ 96%] tests/test_url_query.py::test_query_nonascii PASSED [ 96%] tests/test_url_query.py::test_ampersand_as_separator PASSED [ 96%] tests/test_url_query.py::test_ampersand_as_value PASSED [ 96%] tests/test_url_update_netloc.py::test_with_scheme PASSED [ 96%] tests/test_url_update_netloc.py::test_with_scheme_uppercased PASSED [ 96%] tests/test_url_update_netloc.py::test_with_scheme_for_relative_url PASSED [ 96%] tests/test_url_update_netloc.py::test_with_scheme_invalid_type PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_non_ascii PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_percent_encoded PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_for_relative_url PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_invalid_type PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_None PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_ipv6 PASSED [ 97%] tests/test_url_update_netloc.py::test_with_user_None_when_password_present PASSED [ 97%] tests/test_url_update_netloc.py::test_with_password PASSED [ 97%] tests/test_url_update_netloc.py::test_with_password_ipv6 PASSED [ 97%] tests/test_url_update_netloc.py::test_with_password_non_ascii PASSED [ 98%] tests/test_url_update_netloc.py::test_with_password_percent_encoded PASSED [ 98%] tests/test_url_update_netloc.py::test_with_password_non_ascii_with_colon PASSED [ 98%] tests/test_url_update_netloc.py::test_with_password_for_relative_url PASSED [ 98%] tests/test_url_update_netloc.py::test_with_password_None PASSED [ 98%] tests/test_url_update_netloc.py::test_with_password_invalid_type PASSED [ 98%] tests/test_url_update_netloc.py::test_with_password_and_empty_user PASSED [ 98%] tests/test_url_update_netloc.py::test_from_str_with_host_ipv4 PASSED [ 98%] tests/test_url_update_netloc.py::test_from_str_with_host_ipv6 PASSED [ 98%] tests/test_url_update_netloc.py::test_with_host PASSED [ 98%] tests/test_url_update_netloc.py::test_with_host_empty PASSED [ 99%] tests/test_url_update_netloc.py::test_with_host_non_ascii PASSED [ 99%] tests/test_url_update_netloc.py::test_with_host_percent_encoded PASSED [ 99%] tests/test_url_update_netloc.py::test_with_host_for_relative_url PASSED [ 99%] tests/test_url_update_netloc.py::test_with_host_invalid_type PASSED [ 99%] tests/test_url_update_netloc.py::test_with_port PASSED [ 99%] tests/test_url_update_netloc.py::test_with_port_ipv6 PASSED [ 99%] tests/test_url_update_netloc.py::test_with_port_keeps_query_and_fragment PASSED [ 99%] tests/test_url_update_netloc.py::test_with_port_percent_encoded PASSED [ 99%] tests/test_url_update_netloc.py::test_with_port_for_relative_url PASSED [ 99%] tests/test_url_update_netloc.py::test_with_port_invalid_type PASSED [100%]Coverage.py warning: No data was collected. (no-data-collected) ---------- coverage: platform linux, python 3.10.8-final-0 ----------- Name Stmts Miss Cover ----------------------------------------- yarl/__init__.py 3 3 0% yarl/_quoting.py 10 10 0% yarl/_quoting_py.py 155 155 0% yarl/_url.py 582 582 0% ----------------------------------------- TOTAL 750 750 0% ======================= 1045 passed, 2 xfailed in 4.40s ======================== >>> py3-yarl: Entering fakeroot... /usr/lib/python3.10/site-packages/setuptools/config/setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead. warnings.warn(msg, warning_class) ********************** * Accelerated build * ********************** running install /usr/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( running install_lib creating /home/buildozer/aports/community/py3-yarl/pkg creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10 creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/_quoting_py.py -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/__init__.py -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/_url.py -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/_quoting_c.pyi -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/_quoting.py -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/py.typed -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/_quoting_c.pyx -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl copying build/lib.linux-x86_64-cpython-310/yarl/_quoting_c.cpython-310-x86_64-linux-gnu.so -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl creating /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl/__pycache__ copying build/lib.linux-x86_64-cpython-310/yarl/__pycache__/_url.cpython-310.pyc -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl/__pycache__ copying build/lib.linux-x86_64-cpython-310/yarl/__pycache__/_quoting.cpython-310.pyc -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl/__pycache__ copying build/lib.linux-x86_64-cpython-310/yarl/__pycache__/_quoting_py.cpython-310.pyc -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl/__pycache__ copying build/lib.linux-x86_64-cpython-310/yarl/__pycache__/__init__.cpython-310.pyc -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl/__pycache__ copying build/lib.linux-x86_64-cpython-310/yarl/__init__.pyi -> /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl running install_egg_info running egg_info writing yarl.egg-info/PKG-INFO writing dependency_links to yarl.egg-info/dependency_links.txt writing requirements to yarl.egg-info/requires.txt writing top-level names to yarl.egg-info/top_level.txt reading manifest file 'yarl.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no previously-included files matching '*.cache' found anywhere in distribution warning: no previously-included files found matching 'yarl/*.html' warning: no previously-included files found matching 'yarl/*.so' warning: no previously-included files found matching 'yarl/*.pyd' no previously-included directories found matching 'docs/_build' adding license file 'LICENSE' writing manifest file 'yarl.egg-info/SOURCES.txt' Copying yarl.egg-info to /home/buildozer/aports/community/py3-yarl/pkg/py3-yarl/usr/lib/python3.10/site-packages/yarl-1.8.1-py3.10.egg-info running install_scripts >>> py3-yarl*: Running postcheck for py3-yarl >>> py3-yarl*: Preparing package py3-yarl... >>> py3-yarl*: Stripping binaries >>> py3-yarl*: Scanning shared objects >>> py3-yarl*: Tracing dependencies... python3 py3-idna py3-multidict so:libc.musl-x86_64.so.1 >>> py3-yarl*: Package size: 260.0 KB >>> py3-yarl*: Compressing data... >>> py3-yarl*: Create checksum... >>> py3-yarl*: Create py3-yarl-1.8.1-r1.apk >>> py3-yarl: Build complete at Wed, 09 Nov 2022 07:11:50 +0000 elapsed time 0h 0m 11s >>> py3-yarl: Cleaning up srcdir >>> py3-yarl: Cleaning up pkgdir >>> py3-yarl: Uninstalling dependencies... (1/24) Purging .makedepends-py3-yarl (20221109.071140) (2/24) Purging py3-idna (3.4-r2) (3/24) Purging py3-multidict (6.0.2-r1) (4/24) Purging py3-setuptools (65.5.1-r0) (5/24) Purging python3-dev (3.10.8-r3) (6/24) Purging py3-pytest-cov (4.0.0-r0) (7/24) Purging py3-pytest (7.2.0-r1) (8/24) Purging py3-attrs (22.1.0-r0) (9/24) Purging py3-exceptiongroup (1.0.1-r0) (10/24) Purging py3-iniconfig (1.1.1-r3) (11/24) Purging py3-packaging (21.3-r2) (12/24) Purging py3-parsing (3.0.9-r0) (13/24) Purging py3-pluggy (1.0.0-r1) (14/24) Purging py3-py (1.11.0-r0) (15/24) Purging py3-tomli (2.0.1-r1) (16/24) Purging python3 (3.10.8-r3) (17/24) Purging py3-coverage (5.5-r2) (18/24) Purging libbz2 (1.0.8-r3) (19/24) Purging libffi (3.4.4-r0) (20/24) Purging gdbm (1.23-r0) (21/24) Purging xz-libs (5.2.7-r0) (22/24) Purging mpdecimal (2.5.1-r1) (23/24) Purging readline (8.2.0-r0) (24/24) Purging sqlite-libs (3.39.4-r0) Executing busybox-1.35.0-r27.trigger OK: 268 MiB in 94 packages >>> py3-yarl: Updating the community/x86_64 repository index... >>> py3-yarl: Signing the index...