Mock Version: 4.1
Mock Version: 4.1
Mock Version: 4.1
ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-yarl.spec'], chrootPath='/var/lib/mock/dist-ocs23-python311-build-74725-4450/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;<mock-chroot>\\007"', 'PS1': '<mock-chroot> \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=<mockbuild.trace_decorator.getLog object at 0x7f602e826ec0>timeout=86400uid=982gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=False)
Using nspawn with args ['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']
Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', 'a9f48c8ee26a4a5d901b6df7422f1582', '-D', '/var/lib/mock/dist-ocs23-python311-build-74725-4450/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;<mock-chroot>\\007"', '--setenv=PS1=<mock-chroot> \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-yarl.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;<mock-chroot>\\007"', 'PS1': '<mock-chroot> \\s-\\v\\$ ', 'LANG': 'C.UTF-8', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False
Building target platforms: x86_64
Building for target x86_64
Wrote: /builddir/build/SRPMS/python-yarl-1.8.2-3.ocs23.src.rpm
Child return code was: 0
ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-yarl.spec'], chrootPath='/var/lib/mock/dist-ocs23-python311-build-74725-4450/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;<mock-chroot>\\007"', 'PS1': '<mock-chroot> \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=<mockbuild.trace_decorator.getLog object at 0x7f602e826ec0>timeout=86400uid=982gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=False)
Using nspawn with args ['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']
Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '8c9509bf19774dc4880fefba6f21a631', '-D', '/var/lib/mock/dist-ocs23-python311-build-74725-4450/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;<mock-chroot>\\007"', '--setenv=PS1=<mock-chroot> \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-yarl.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;<mock-chroot>\\007"', 'PS1': '<mock-chroot> \\s-\\v\\$ ', 'LANG': 'C.UTF-8', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False
Building target platforms: x86_64
Building for target x86_64
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.v2sd4k
+ umask 022
+ cd /builddir/build/BUILD
+ cd /builddir/build/BUILD
+ rm -rf yarl-1.8.2
+ /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/yarl-1.8.2.tar.gz
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd yarl-1.8.2
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ sed -e /addopts/d -i setup.cfg
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.fRYGLk
+ umask 022
+ cd /builddir/build/BUILD
+ PYTHONPATH=:/usr/lib/python3.10/site-packages/:/usr/lib64/python3.10/site-packages/
+ export PYTHONPATH
+ CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ export CFLAGS
+ CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ export CXXFLAGS
+ FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules'
+ export FFLAGS
+ FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules'
+ export FCFLAGS
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld  -Wl,--build-id=sha1'
+ export LDFLAGS
+ LT_SYS_LIBRARY_PATH=/usr/lib64:
+ export LT_SYS_LIBRARY_PATH
+ CC=gcc
+ export CC
+ CXX=g++
+ export CXX
+ cd yarl-1.8.2
+ /usr/bin/python3 -m cython -3 -o yarl/_quoting_c.c yarl/_quoting_c.pyx -I yarl
+ CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld  -Wl,--build-id=sha1'
+ /usr/bin/python3 setup.py build '--executable=/usr/bin/python3 -s'
/usr/lib/python3.11/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-311
creating build/lib.linux-x86_64-cpython-311/yarl
copying yarl/_quoting_py.py -> build/lib.linux-x86_64-cpython-311/yarl
copying yarl/_quoting.py -> build/lib.linux-x86_64-cpython-311/yarl
copying yarl/__init__.py -> build/lib.linux-x86_64-cpython-311/yarl
copying yarl/_url.py -> build/lib.linux-x86_64-cpython-311/yarl
running egg_info
creating yarl.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
writing manifest file 'yarl.egg-info/SOURCES.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-311/yarl
copying yarl/_quoting_c.pyi -> build/lib.linux-x86_64-cpython-311/yarl
copying yarl/_quoting_c.pyx -> build/lib.linux-x86_64-cpython-311/yarl
copying yarl/py.typed -> build/lib.linux-x86_64-cpython-311/yarl
running build_ext
building 'yarl._quoting_c' extension
creating build/temp.linux-x86_64-cpython-311
creating build/temp.linux-x86_64-cpython-311/yarl
gcc -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -I/usr/include/python3.11 -c yarl/_quoting_c.c -o build/temp.linux-x86_64-cpython-311/yarl/_quoting_c.o
gcc -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,--build-id=sha1 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld -Wl,--build-id=sha1 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-cpython-311/yarl/_quoting_c.o -L/usr/lib64 -o build/lib.linux-x86_64-cpython-311/yarl/_quoting_c.cpython-311-x86_64-linux-gnu.so
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.aVgyxM
+ umask 022
+ cd /builddir/build/BUILD
+ PYTHONPATH=:/usr/lib/python3.10/site-packages/:/usr/lib64/python3.10/site-packages/
+ export PYTHONPATH
+ '[' /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64 '!=' / ']'
+ rm -rf /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64
++ dirname /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64
+ mkdir -p /builddir/build/BUILDROOT
+ mkdir /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64
+ cd yarl-1.8.2
+ CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld  -Wl,--build-id=sha1'
+ /usr/bin/python3 setup.py install -O1 --skip-build --root /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64
/usr/lib/python3.11/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.11/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 /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr
creating /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64
creating /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11
creating /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages
creating /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/_quoting_py.py -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/__init__.pyi -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/_quoting_c.pyx -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/_quoting.py -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/__init__.py -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/_url.py -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/py.typed -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/_quoting_c.pyi -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
copying build/lib.linux-x86_64-cpython-311/yarl/_quoting_c.cpython-311-x86_64-linux-gnu.so -> /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl
byte-compiling /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_quoting_py.py to _quoting_py.cpython-311.pyc
byte-compiling /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_quoting.py to _quoting.cpython-311.pyc
byte-compiling /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/__init__.py to __init__.cpython-311.pyc
byte-compiling /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_url.py to _url.cpython-311.pyc
writing byte-compilation script '/tmp/tmpss79gws3.py'
/usr/bin/python3 /tmp/tmpss79gws3.py
removing /tmp/tmpss79gws3.py
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 '*.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.egg-info to /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl-1.8.2-py3.11.egg-info
running install_scripts
+ rm -rfv /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/bin/__pycache__
+ /usr/bin/find-debuginfo -j32 --strict-build-id -m -i --build-id-seed 1.8.2-3.ocs23 --unique-debug-suffix -1.8.2-3.ocs23.x86_64 --unique-debug-src-base python-yarl-1.8.2-3.ocs23.x86_64 -S debugsourcefiles.list /builddir/build/BUILD/yarl-1.8.2
extracting debug info from /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_quoting_c.cpython-311-x86_64-linux-gnu.so
918 blocks
+ /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/OpenCloudOS/brp-ldconfig
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/OpenCloudOS/brp-strip-lto /usr/bin/strip
+ /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/check-rpaths
+ /usr/lib/rpm/OpenCloudOS/brp-mangle-shebangs
+ /usr/lib/rpm/OpenCloudOS/brp-python-bytecompile '' 1 0
Bytecompiling .py files below /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11 using python3.11
Bytecompiling .py files below /builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib/debug/usr/lib64/python3.11 using python3.11
+ /usr/lib/rpm/OpenCloudOS/brp-python-hardlink
Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.0tFJEE
+ umask 022
+ cd /builddir/build/BUILD
+ PYTHONPATH=:/usr/lib/python3.10/site-packages/:/usr/lib64/python3.10/site-packages/
+ export PYTHONPATH
+ CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ export CFLAGS
+ CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ export CXXFLAGS
+ FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules'
+ export FFLAGS
+ FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I/usr/lib64/gfortran/modules'
+ export FCFLAGS
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld  -Wl,--build-id=sha1'
+ export LDFLAGS
+ LT_SYS_LIBRARY_PATH=/usr/lib64:
+ export LT_SYS_LIBRARY_PATH
+ CC=gcc
+ export CC
+ CXX=g++
+ export CXX
+ cd yarl-1.8.2
+ CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-cc1 -fstack-protector-strong  -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
+ LDFLAGS='-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/OpenCloudOS/OpenCloudOS-hardened-ld  -Wl,--build-id=sha1'
+ PATH=/builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin
+ PYTHONPATH=/builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages:/builddir/build/BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib/python3.11/site-packages::/usr/lib/python3.10/site-packages/:/usr/lib64/python3.10/site-packages/
+ PYTHONDONTWRITEBYTECODE=1
+ /usr/bin/pytest -v tests
============================= test session starts ==============================
platform linux -- Python 3.11.4, pytest-7.4.0, pluggy-1.0.0 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /builddir/build/BUILD/yarl-1.8.2
configfile: setup.cfg
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 FAILED                                 [ 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 FAILED                     [ 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 FAILED         [ 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 FAILED             [ 91%]
tests/test_url_parsing.py::TestHost::test_ipv6 PASSED                    [ 91%]
tests/test_url_parsing.py::TestHost::test_strange_ip FAILED              [ 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 FAILED         [ 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%]
=================================== FAILURES ===================================
________________________________ test_ipv6_zone ________________________________
    def test_ipv6_zone():
>       url = URL("http://[fe80::822a:a8ff:fe49:470c%тест%42]:123")
tests/test_url.py:239: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_url.py:147: in __new__
    val = urlsplit(val)
/usr/lib64/python3.11/urllib/parse.py:500: in urlsplit
    _check_bracketed_host(bracketed_host)
/usr/lib64/python3.11/urllib/parse.py:446: in _check_bracketed_host
    ip = ipaddress.ip_address(hostname) # Throws Value Error if not IPv6 or IPv4
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
address = 'fe80::822a:a8ff:fe49:470c%тест%42'
    def ip_address(address):
        """Take an IP string/int and return an object of the correct type.
    
        Args:
            address: A string or integer, the IP address.  Either IPv4 or
              IPv6 addresses may be supplied; integers less than 2**32 will
              be considered to be IPv4 by default.
    
        Returns:
            An IPv4Address or IPv6Address object.
    
        Raises:
            ValueError: if the *address* passed isn't either a v4 or a v6
              address
    
        """
        try:
            return IPv4Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
        try:
            return IPv6Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
>       raise ValueError(f'{address!r} does not appear to be an IPv4 or IPv6 address')
E       ValueError: 'fe80::822a:a8ff:fe49:470c%тест%42' does not appear to be an IPv4 or IPv6 address
/usr/lib64/python3.11/ipaddress.py:54: ValueError
__________________________ test_human_repr_delimiters __________________________
    def test_human_repr_delimiters():
        url = URL.build(
            scheme="http",
            user=" !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
            password=" !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
            host="хост.домен",
            port=8080,
            path="/ !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
            query={
                " !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~": " !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
            },
            fragment=" !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
        )
        s = url.human_repr()
>       assert URL(s) == url
tests/test_url.py:1515: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_url.py:147: in __new__
    val = urlsplit(val)
/usr/lib64/python3.11/urllib/parse.py:500: in urlsplit
    _check_bracketed_host(bracketed_host)
/usr/lib64/python3.11/urllib/parse.py:446: in _check_bracketed_host
    ip = ipaddress.ip_address(hostname) # Throws Value Error if not IPv6 or IPv4
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
address = '\\'
    def ip_address(address):
        """Take an IP string/int and return an object of the correct type.
    
        Args:
            address: A string or integer, the IP address.  Either IPv4 or
              IPv6 addresses may be supplied; integers less than 2**32 will
              be considered to be IPv4 by default.
    
        Returns:
            An IPv4Address or IPv6Address object.
    
        Raises:
            ValueError: if the *address* passed isn't either a v4 or a v6
              address
    
        """
        try:
            return IPv4Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
        try:
            return IPv6Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
>       raise ValueError(f'{address!r} does not appear to be an IPv4 or IPv6 address')
E       ValueError: '\\' does not appear to be an IPv4 or IPv6 address
/usr/lib64/python3.11/ipaddress.py:54: ValueError
________________________ TestScheme.test_not_a_scheme2 _________________________
self = <test_url_parsing.TestScheme object at 0x7f558ce3ead0>
    def test_not_a_scheme2(self):
        u = URL("37signals:book")
>       assert u.scheme == "37signals"
E       AssertionError: assert '' == '37signals'
E         - 37signals
tests/test_url_parsing.py:77: AssertionError
__________________________ TestHost.test_masked_ipv4 ___________________________
self = <test_url_parsing.TestHost object at 0x7f558ce3e390>
    def test_masked_ipv4(self):
>       u = URL("//[127.0.0.1]/")
tests/test_url_parsing.py:182: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_url.py:147: in __new__
    val = urlsplit(val)
/usr/lib64/python3.11/urllib/parse.py:500: in urlsplit
    _check_bracketed_host(bracketed_host)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
hostname = '127.0.0.1'
    def _check_bracketed_host(hostname):
        if hostname.startswith('v'):
            if not re.match(r"\Av[a-fA-F0-9]+\..+\Z", hostname):
                raise ValueError(f"IPvFuture address is invalid")
        else:
            ip = ipaddress.ip_address(hostname) # Throws Value Error if not IPv6 or IPv4
            if isinstance(ip, ipaddress.IPv4Address):
>               raise ValueError(f"An IPv4 address cannot be in brackets")
E               ValueError: An IPv4 address cannot be in brackets
/usr/lib64/python3.11/urllib/parse.py:448: ValueError
___________________________ TestHost.test_strange_ip ___________________________
self = <test_url_parsing.TestHost object at 0x7f558cc06750>
    def test_strange_ip(self):
>       u = URL("//[-1]/")
tests/test_url_parsing.py:198: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_url.py:147: in __new__
    val = urlsplit(val)
/usr/lib64/python3.11/urllib/parse.py:500: in urlsplit
    _check_bracketed_host(bracketed_host)
/usr/lib64/python3.11/urllib/parse.py:446: in _check_bracketed_host
    ip = ipaddress.ip_address(hostname) # Throws Value Error if not IPv6 or IPv4
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
address = '-1'
    def ip_address(address):
        """Take an IP string/int and return an object of the correct type.
    
        Args:
            address: A string or integer, the IP address.  Either IPv4 or
              IPv6 addresses may be supplied; integers less than 2**32 will
              be considered to be IPv4 by default.
    
        Returns:
            An IPv4Address or IPv6Address object.
    
        Raises:
            ValueError: if the *address* passed isn't either a v4 or a v6
              address
    
        """
        try:
            return IPv4Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
        try:
            return IPv6Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
>       raise ValueError(f'{address!r} does not appear to be an IPv4 or IPv6 address')
E       ValueError: '-1' does not appear to be an IPv4 or IPv6 address
/usr/lib64/python3.11/ipaddress.py:54: ValueError
________________________ TestUserInfo.test_weird_user3 _________________________
self = <test_url_parsing.TestUserInfo object at 0x7f558ce5fdd0>
    def test_weird_user3(self):
>       u = URL("//[some]@host")
tests/test_url_parsing.py:323: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../BUILDROOT/python-yarl-1.8.2-3.ocs23.x86_64/usr/lib64/python3.11/site-packages/yarl/_url.py:147: in __new__
    val = urlsplit(val)
/usr/lib64/python3.11/urllib/parse.py:500: in urlsplit
    _check_bracketed_host(bracketed_host)
/usr/lib64/python3.11/urllib/parse.py:446: in _check_bracketed_host
    ip = ipaddress.ip_address(hostname) # Throws Value Error if not IPv6 or IPv4
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
address = 'some'
    def ip_address(address):
        """Take an IP string/int and return an object of the correct type.
    
        Args:
            address: A string or integer, the IP address.  Either IPv4 or
              IPv6 addresses may be supplied; integers less than 2**32 will
              be considered to be IPv4 by default.
    
        Returns:
            An IPv4Address or IPv6Address object.
    
        Raises:
            ValueError: if the *address* passed isn't either a v4 or a v6
              address
    
        """
        try:
            return IPv4Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
        try:
            return IPv6Address(address)
        except (AddressValueError, NetmaskValueError):
            pass
    
>       raise ValueError(f'{address!r} does not appear to be an IPv4 or IPv6 address')
E       ValueError: 'some' does not appear to be an IPv4 or IPv6 address
/usr/lib64/python3.11/ipaddress.py:54: ValueError
=========================== short test summary info ============================
FAILED tests/test_url.py::test_ipv6_zone - ValueError: 'fe80::822a:a8ff:fe49:...
FAILED tests/test_url.py::test_human_repr_delimiters - ValueError: '\\' does ...
FAILED tests/test_url_parsing.py::TestScheme::test_not_a_scheme2 - AssertionE...
FAILED tests/test_url_parsing.py::TestHost::test_masked_ipv4 - ValueError: An...
FAILED tests/test_url_parsing.py::TestHost::test_strange_ip - ValueError: '-1...
FAILED tests/test_url_parsing.py::TestUserInfo::test_weird_user3 - ValueError...
================== 6 failed, 1039 passed, 2 xfailed in 1.57s ===================
RPM build errors:
error: Bad exit status from /var/tmp/rpm-tmp.0tFJEE (%check)
    Bad exit status from /var/tmp/rpm-tmp.0tFJEE (%check)
Child return code was: 1
EXCEPTION: [Error('Command failed: \n # /usr/bin/systemd-nspawn -q -M 8c9509bf19774dc4880fefba6f21a631 -D /var/lib/mock/dist-ocs23-python311-build-74725-4450/root -a -u mockbuild --capability=cap_ipc_lock --bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf --bind=/dev/btrfs-control --bind=/dev/mapper/control --bind=/dev/loop-control --bind=/dev/loop0 --bind=/dev/loop1 --bind=/dev/loop2 --bind=/dev/loop3 --bind=/dev/loop4 --bind=/dev/loop5 --bind=/dev/loop6 --bind=/dev/loop7 --bind=/dev/loop8 --bind=/dev/loop9 --bind=/dev/loop10 --bind=/dev/loop11 --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\\033]0;<mock-chroot>\\007" --setenv=PS1=<mock-chroot> \\s-\\v\\$  --setenv=LANG=C.UTF-8 --resolv-conf=off bash --login -c /usr/bin/rpmbuild -bb --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-yarl.spec\n', 1)]
Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/mockbuild/trace_decorator.py", line 93, in trace
    result = func(*args, **kw)
  File "/usr/lib/python3.10/site-packages/mockbuild/util.py", line 597, in do_with_status
    raise exception.Error("Command failed: \n # %s\n%s" % (command, output), child.returncode)
mockbuild.exception.Error: Command failed: 
 # /usr/bin/systemd-nspawn -q -M 8c9509bf19774dc4880fefba6f21a631 -D /var/lib/mock/dist-ocs23-python311-build-74725-4450/root -a -u mockbuild --capability=cap_ipc_lock --bind=/tmp/mock-resolv.rvo3wqh3:/etc/resolv.conf --bind=/dev/btrfs-control --bind=/dev/mapper/control --bind=/dev/loop-control --bind=/dev/loop0 --bind=/dev/loop1 --bind=/dev/loop2 --bind=/dev/loop3 --bind=/dev/loop4 --bind=/dev/loop5 --bind=/dev/loop6 --bind=/dev/loop7 --bind=/dev/loop8 --bind=/dev/loop9 --bind=/dev/loop10 --bind=/dev/loop11 --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=PS1=<mock-chroot> \s-\v\$  --setenv=LANG=C.UTF-8 --resolv-conf=off bash --login -c /usr/bin/rpmbuild -bb --noclean --target x86_64 --nodeps /builddir/build/SPECS/python-yarl.spec