starting phase `separate-from-pid1' build process now running as PID 6 phase `separate-from-pid1' succeeded after 0.0 seconds starting phase `set-SOURCE-DATE-EPOCH' phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds starting phase `set-paths' environment variable `PATH' set to `/gnu/store/nd25jh6v0d5n648vwdxnj3apq19sq7dl-python-wrapper-3.10.7/bin:/gnu/store/819lc977gf7gmr13c5vvbks1zbkmdkbc-python-pytest-8.3.3/bin:/gnu/store/qszjpknr7w8iaygw9lyn8f5v6j9krmy4-python-pytest-cov-6.0.0/bin:/gnu/store/gbz6ddh6xwqlib766a86d9vc3zdxymhh-python-wheel-0.40.0/bin:/gnu/store/w0gr37402xbsr7yls6ncgxcq86lay2m6-tar-1.34/bin:/gnu/store/x2klwxz6yp1i677i5x2c7r8arwkv10k6-gzip-1.13/bin:/gnu/store/807hn2rhcjwd3knxy9gn8yvgnxnn467q-bzip2-1.0.8/bin:/gnu/store/p5vcdmrvm8k8m8nbir47a1wi69hiqdrv-file-5.45/bin:/gnu/store/mb6dwfh62i3gvlibaks77a1rjfg08rd1-diffutils-3.10/bin:/gnu/store/icsd5bdv24g9wnxjcblmsbzr8dm0r0xw-patch-2.7.6/bin:/gnu/store/ip3ydyjgqysqnnifjhh13kapb789im7c-findutils-4.9.0/bin:/gnu/store/zdr4l6848p3dankx6gpxrbnlg1f257dq-gawk-5.3.0/bin:/gnu/store/n8hg2s7hb1n8pv9sg9z721md10ji1vxm-zstd-1.5.2/bin:/gnu/store/cl3fz4bxb836kxhl3h0lbdgp87hpbjh1-sed-4.8/bin:/gnu/store/7ybfr33k191wvcm5g9p6anaxjgp4j2vm-grep-3.11/bin:/gnu/store/6h6jiwk6h1qis79s3cvpshrckdcznky0-xz-5.4.5/bin:/gnu/store/vbms947hi3qnz1ik5dzrjhsxhmihldrv-coreutils-9.1/bin:/gnu/store/cnq81b38qrk449prp6gx78hccakrcpa3-make-4.4.1/bin:/gnu/store/g1y7fcf9pq539q9x3wfva5b70c7wf1ix-bash-minimal-5.1.16/bin:/gnu/store/v2dd7rn0cly85hppnd9810qgainh512z-ld-wrapper-0/bin:/gnu/store/67cyda79vpx7f0qnfinl21r85ckpyy53-binutils-2.41/bin:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/bin:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/bin:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/sbin:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/bin:/gnu/store/hg95hdz7vnqdyfd1h95rlmn61j6ydjfj-python-tomli-2.1.0/bin:/gnu/store/sjai2fdsqyf0d4bha18ba2p37qnppz15-python-py-1.11.0/bin:/gnu/store/47lz9wnldan62yricdyfylgpfc0i6n5y-python-packaging-bootstrap-24.2/bin:/gnu/store/rywz9h2bylwj6ybq04y872zmdgk7vsic-python-attrs-bootstrap-24.2.0/bin:/gnu/store/g24yg834l61gh1q0chimfwbdbzq3x2c6-python-coverage-7.6.8/bin' environment variable `GUIX_PYTHONPATH' set to `/gnu/store/819lc977gf7gmr13c5vvbks1zbkmdkbc-python-pytest-8.3.3/lib/python3.10/site-packages:/gnu/store/qszjpknr7w8iaygw9lyn8f5v6j9krmy4-python-pytest-cov-6.0.0/lib/python3.10/site-packages:/gnu/store/7nfpyriqafl798awlrpwy7mx1hpvyhbn-python-setuptools-67.6.1/lib/python3.10/site-packages:/gnu/store/gbz6ddh6xwqlib766a86d9vc3zdxymhh-python-wheel-0.40.0/lib/python3.10/site-packages:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/lib/python3.10/site-packages:/gnu/store/hg95hdz7vnqdyfd1h95rlmn61j6ydjfj-python-tomli-2.1.0/lib/python3.10/site-packages:/gnu/store/sjai2fdsqyf0d4bha18ba2p37qnppz15-python-py-1.11.0/lib/python3.10/site-packages:/gnu/store/m2qi2hswv3550pjpj6hwqbpmzryysrz5-python-pluggy-1.5.0/lib/python3.10/site-packages:/gnu/store/8jaz6jp9w34p30vim95f1wd5zhajk1ff-python-exceptiongroup-1.1.1/lib/python3.10/site-packages:/gnu/store/47lz9wnldan62yricdyfylgpfc0i6n5y-python-packaging-bootstrap-24.2/lib/python3.10/site-packages:/gnu/store/8byyn3xxkahl3arwg6dcrr5rvpc7qdi8-python-iniconfig-1.1.1/lib/python3.10/site-packages:/gnu/store/rywz9h2bylwj6ybq04y872zmdgk7vsic-python-attrs-bootstrap-24.2.0/lib/python3.10/site-packages:/gnu/store/g24yg834l61gh1q0chimfwbdbzq3x2c6-python-coverage-7.6.8/lib/python3.10/site-packages:/gnu/store/z2zb5qi6dqy44l6dybkc1wya8ir1ay6n-python-six-bootstrap-1.16.0/lib/python3.10/site-packages:/gnu/store/sv2i0952g3dnghh2vsfbnmbs1ar2gnyd-python-pyparsing-3.0.6/lib/python3.10/site-packages' environment variable `PYTHONTZPATH' unset environment variable `BASH_LOADABLES_PATH' unset environment variable `C_INCLUDE_PATH' set to `/gnu/store/807hn2rhcjwd3knxy9gn8yvgnxnn467q-bzip2-1.0.8/include:/gnu/store/p5vcdmrvm8k8m8nbir47a1wi69hiqdrv-file-5.45/include:/gnu/store/zdr4l6848p3dankx6gpxrbnlg1f257dq-gawk-5.3.0/include:/gnu/store/6h6jiwk6h1qis79s3cvpshrckdcznky0-xz-5.4.5/include:/gnu/store/cnq81b38qrk449prp6gx78hccakrcpa3-make-4.4.1/include:/gnu/store/67cyda79vpx7f0qnfinl21r85ckpyy53-binutils-2.41/include:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/include:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/include:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/include:/gnu/store/6qbh8pza8jwim8gjwaq1n7736bkmqpwf-linux-libre-headers-5.15.49/include' environment variable `CPLUS_INCLUDE_PATH' set to `/gnu/store/807hn2rhcjwd3knxy9gn8yvgnxnn467q-bzip2-1.0.8/include:/gnu/store/p5vcdmrvm8k8m8nbir47a1wi69hiqdrv-file-5.45/include:/gnu/store/zdr4l6848p3dankx6gpxrbnlg1f257dq-gawk-5.3.0/include:/gnu/store/6h6jiwk6h1qis79s3cvpshrckdcznky0-xz-5.4.5/include:/gnu/store/cnq81b38qrk449prp6gx78hccakrcpa3-make-4.4.1/include:/gnu/store/67cyda79vpx7f0qnfinl21r85ckpyy53-binutils-2.41/include:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/include/c++:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/include:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/include:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/include:/gnu/store/6qbh8pza8jwim8gjwaq1n7736bkmqpwf-linux-libre-headers-5.15.49/include' environment variable `OBJC_INCLUDE_PATH' set to `/gnu/store/807hn2rhcjwd3knxy9gn8yvgnxnn467q-bzip2-1.0.8/include:/gnu/store/p5vcdmrvm8k8m8nbir47a1wi69hiqdrv-file-5.45/include:/gnu/store/zdr4l6848p3dankx6gpxrbnlg1f257dq-gawk-5.3.0/include:/gnu/store/6h6jiwk6h1qis79s3cvpshrckdcznky0-xz-5.4.5/include:/gnu/store/cnq81b38qrk449prp6gx78hccakrcpa3-make-4.4.1/include:/gnu/store/67cyda79vpx7f0qnfinl21r85ckpyy53-binutils-2.41/include:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/include:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/include:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/include:/gnu/store/6qbh8pza8jwim8gjwaq1n7736bkmqpwf-linux-libre-headers-5.15.49/include' environment variable `OBJCPLUS_INCLUDE_PATH' set to `/gnu/store/807hn2rhcjwd3knxy9gn8yvgnxnn467q-bzip2-1.0.8/include:/gnu/store/p5vcdmrvm8k8m8nbir47a1wi69hiqdrv-file-5.45/include:/gnu/store/zdr4l6848p3dankx6gpxrbnlg1f257dq-gawk-5.3.0/include:/gnu/store/6h6jiwk6h1qis79s3cvpshrckdcznky0-xz-5.4.5/include:/gnu/store/cnq81b38qrk449prp6gx78hccakrcpa3-make-4.4.1/include:/gnu/store/67cyda79vpx7f0qnfinl21r85ckpyy53-binutils-2.41/include:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/include/c++:/gnu/store/9kv6szfx7nd4dhs8sbksgd7crz5kpvm4-gcc-11.4.0/include:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/include:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/include:/gnu/store/6qbh8pza8jwim8gjwaq1n7736bkmqpwf-linux-libre-headers-5.15.49/include' environment variable `LIBRARY_PATH' set to `/gnu/store/819lc977gf7gmr13c5vvbks1zbkmdkbc-python-pytest-8.3.3/lib:/gnu/store/qszjpknr7w8iaygw9lyn8f5v6j9krmy4-python-pytest-cov-6.0.0/lib:/gnu/store/7nfpyriqafl798awlrpwy7mx1hpvyhbn-python-setuptools-67.6.1/lib:/gnu/store/gbz6ddh6xwqlib766a86d9vc3zdxymhh-python-wheel-0.40.0/lib:/gnu/store/807hn2rhcjwd3knxy9gn8yvgnxnn467q-bzip2-1.0.8/lib:/gnu/store/p5vcdmrvm8k8m8nbir47a1wi69hiqdrv-file-5.45/lib:/gnu/store/zdr4l6848p3dankx6gpxrbnlg1f257dq-gawk-5.3.0/lib:/gnu/store/6h6jiwk6h1qis79s3cvpshrckdcznky0-xz-5.4.5/lib:/gnu/store/67cyda79vpx7f0qnfinl21r85ckpyy53-binutils-2.41/lib:/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/lib:/gnu/store/n57nfkvlcl0j3k0iazj1q004rzyq2xza-glibc-2.39-static/lib:/gnu/store/y3wkysy20wjys5986pdhj087z119w9hl-python-3.10.7/lib:/gnu/store/hg95hdz7vnqdyfd1h95rlmn61j6ydjfj-python-tomli-2.1.0/lib:/gnu/store/sjai2fdsqyf0d4bha18ba2p37qnppz15-python-py-1.11.0/lib:/gnu/store/m2qi2hswv3550pjpj6hwqbpmzryysrz5-python-pluggy-1.5.0/lib:/gnu/store/8jaz6jp9w34p30vim95f1wd5zhajk1ff-python-exceptiongroup-1.1.1/lib:/gnu/store/47lz9wnldan62yricdyfylgpfc0i6n5y-python-packaging-bootstrap-24.2/lib:/gnu/store/8byyn3xxkahl3arwg6dcrr5rvpc7qdi8-python-iniconfig-1.1.1/lib:/gnu/store/rywz9h2bylwj6ybq04y872zmdgk7vsic-python-attrs-bootstrap-24.2.0/lib:/gnu/store/g24yg834l61gh1q0chimfwbdbzq3x2c6-python-coverage-7.6.8/lib:/gnu/store/z2zb5qi6dqy44l6dybkc1wya8ir1ay6n-python-six-bootstrap-1.16.0/lib:/gnu/store/sv2i0952g3dnghh2vsfbnmbs1ar2gnyd-python-pyparsing-3.0.6/lib' environment variable `GUIX_LOCPATH' set to `/gnu/store/5ii9iz1p7a1lr04r0df1yvm6kisrlpiw-glibc-2.39/lib/locale' environment variable `TZDIR' unset phase `set-paths' succeeded after 0.0 seconds starting phase `install-locale' using 'C.UTF-8' locale for category "LC_ALL" phase `install-locale' succeeded after 0.0 seconds starting phase `unpack' waitress-3.0.0/ waitress-3.0.0/.coveragerc waitress-3.0.0/.flake8 waitress-3.0.0/.github/ waitress-3.0.0/.github/dependabot.yml waitress-3.0.0/.github/workflows/ waitress-3.0.0/.github/workflows/ci-tests.yml waitress-3.0.0/CHANGES.txt waitress-3.0.0/CONTRIBUTORS.txt waitress-3.0.0/COPYRIGHT.txt waitress-3.0.0/HISTORY.txt waitress-3.0.0/LICENSE.txt waitress-3.0.0/MANIFEST.in waitress-3.0.0/PKG-INFO waitress-3.0.0/README.rst waitress-3.0.0/RELEASING.txt waitress-3.0.0/contributing.md waitress-3.0.0/docs/ waitress-3.0.0/docs/Makefile waitress-3.0.0/docs/api.rst waitress-3.0.0/docs/arguments.rst waitress-3.0.0/docs/conf.py waitress-3.0.0/docs/design.rst waitress-3.0.0/docs/differences.rst waitress-3.0.0/docs/filewrapper.rst waitress-3.0.0/docs/glossary.rst waitress-3.0.0/docs/index.rst waitress-3.0.0/docs/logging.rst waitress-3.0.0/docs/rebuild waitress-3.0.0/docs/reverse-proxy.rst waitress-3.0.0/docs/runner.rst waitress-3.0.0/docs/socket-activation.rst waitress-3.0.0/docs/usage.rst waitress-3.0.0/pyproject.toml waitress-3.0.0/rtd.txt waitress-3.0.0/setup.cfg waitress-3.0.0/setup.py waitress-3.0.0/src/ waitress-3.0.0/src/waitress/ waitress-3.0.0/src/waitress/__init__.py waitress-3.0.0/src/waitress/__main__.py waitress-3.0.0/src/waitress/adjustments.py waitress-3.0.0/src/waitress/buffers.py waitress-3.0.0/src/waitress/channel.py waitress-3.0.0/src/waitress/compat.py waitress-3.0.0/src/waitress/parser.py waitress-3.0.0/src/waitress/proxy_headers.py waitress-3.0.0/src/waitress/receiver.py waitress-3.0.0/src/waitress/rfc7230.py waitress-3.0.0/src/waitress/runner.py waitress-3.0.0/src/waitress/server.py waitress-3.0.0/src/waitress/task.py waitress-3.0.0/src/waitress/trigger.py waitress-3.0.0/src/waitress/utilities.py waitress-3.0.0/src/waitress/wasyncore.py waitress-3.0.0/src/waitress.egg-info/ waitress-3.0.0/src/waitress.egg-info/PKG-INFO waitress-3.0.0/src/waitress.egg-info/SOURCES.txt waitress-3.0.0/src/waitress.egg-info/dependency_links.txt waitress-3.0.0/src/waitress.egg-info/entry_points.txt waitress-3.0.0/src/waitress.egg-info/requires.txt waitress-3.0.0/src/waitress.egg-info/top_level.txt waitress-3.0.0/tests/ waitress-3.0.0/tests/__init__.py waitress-3.0.0/tests/fixtureapps/ waitress-3.0.0/tests/fixtureapps/__init__.py waitress-3.0.0/tests/fixtureapps/badcl.py waitress-3.0.0/tests/fixtureapps/echo.py waitress-3.0.0/tests/fixtureapps/error.py waitress-3.0.0/tests/fixtureapps/error_traceback.py waitress-3.0.0/tests/fixtureapps/filewrapper.py waitress-3.0.0/tests/fixtureapps/getline.py waitress-3.0.0/tests/fixtureapps/groundhog1.jpg waitress-3.0.0/tests/fixtureapps/nocl.py waitress-3.0.0/tests/fixtureapps/runner.py waitress-3.0.0/tests/fixtureapps/sleepy.py waitress-3.0.0/tests/fixtureapps/toolarge.py waitress-3.0.0/tests/fixtureapps/writecb.py waitress-3.0.0/tests/test_adjustments.py waitress-3.0.0/tests/test_buffers.py waitress-3.0.0/tests/test_channel.py waitress-3.0.0/tests/test_functional.py waitress-3.0.0/tests/test_init.py waitress-3.0.0/tests/test_parser.py waitress-3.0.0/tests/test_proxy_headers.py waitress-3.0.0/tests/test_receiver.py waitress-3.0.0/tests/test_regression.py waitress-3.0.0/tests/test_runner.py waitress-3.0.0/tests/test_server.py waitress-3.0.0/tests/test_task.py waitress-3.0.0/tests/test_trigger.py waitress-3.0.0/tests/test_utilities.py waitress-3.0.0/tests/test_wasyncore.py waitress-3.0.0/tox.ini phase `unpack' succeeded after 0.1 seconds starting phase `ensure-no-mtimes-pre-1980' phase `ensure-no-mtimes-pre-1980' succeeded after 0.0 seconds starting phase `enable-bytecode-determinism' phase `enable-bytecode-determinism' succeeded after 0.0 seconds starting phase `ensure-no-cythonized-files' phase `ensure-no-cythonized-files' succeeded after 0.0 seconds starting phase `patch-usr-bin-file' phase `patch-usr-bin-file' succeeded after 0.0 seconds starting phase `patch-source-shebangs' phase `patch-source-shebangs' succeeded after 0.1 seconds starting phase `patch-generated-file-shebangs' phase `patch-generated-file-shebangs' succeeded after 0.0 seconds starting phase `build' Using 'setuptools.build_meta' to build wheels, auto-detected 'setuptools.build_meta', override '#f'. Prepending '[]' to sys.path, auto-detected '#f', override '#f'. running bdist_wheel running build running build_py creating build creating build/lib creating build/lib/waitress copying src/waitress/rfc7230.py -> build/lib/waitress copying src/waitress/__init__.py -> build/lib/waitress copying src/waitress/wasyncore.py -> build/lib/waitress copying src/waitress/receiver.py -> build/lib/waitress copying src/waitress/buffers.py -> build/lib/waitress copying src/waitress/proxy_headers.py -> build/lib/waitress copying src/waitress/trigger.py -> build/lib/waitress copying src/waitress/task.py -> build/lib/waitress copying src/waitress/compat.py -> build/lib/waitress copying src/waitress/runner.py -> build/lib/waitress copying src/waitress/channel.py -> build/lib/waitress copying src/waitress/parser.py -> build/lib/waitress copying src/waitress/server.py -> build/lib/waitress copying src/waitress/__main__.py -> build/lib/waitress copying src/waitress/adjustments.py -> build/lib/waitress copying src/waitress/utilities.py -> build/lib/waitress warning: build_py: byte-compiling is disabled, skipping. installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64 creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/rfc7230.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/__init__.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/wasyncore.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/receiver.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/buffers.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/proxy_headers.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/trigger.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/task.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/compat.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/runner.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/channel.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/parser.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/server.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/__main__.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/adjustments.py -> build/bdist.linux-riscv64/wheel/waitress copying build/lib/waitress/utilities.py -> build/bdist.linux-riscv64/wheel/waitress warning: install_lib: byte-compiling is disabled, skipping. running install_egg_info running egg_info writing src/waitress.egg-info/PKG-INFO writing dependency_links to src/waitress.egg-info/dependency_links.txt writing entry points to src/waitress.egg-info/entry_points.txt writing requirements to src/waitress.egg-info/requires.txt writing top-level names to src/waitress.egg-info/top_level.txt reading manifest file 'src/waitress.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no previously-included files found matching 'TODO.txt' no previously-included directories found matching 'docs/_build' warning: no previously-included files matching '__pycache__' found under directory '*' warning: no previously-included files matching '*.py[cod]' found under directory '*' adding license file 'LICENSE.txt' writing manifest file 'src/waitress.egg-info/SOURCES.txt' Copying src/waitress.egg-info to build/bdist.linux-riscv64/wheel/waitress-3.0.0-py3.10.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/waitress-3.0.0.dist-info/WHEEL creating '/tmp/guix-build-python-waitress-3.0.0.drv-0/waitress-3.0.0/dist/.tmp-0ruedrmo/waitress-3.0.0-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'waitress/__init__.py' adding 'waitress/__main__.py' adding 'waitress/adjustments.py' adding 'waitress/buffers.py' adding 'waitress/channel.py' adding 'waitress/compat.py' adding 'waitress/parser.py' adding 'waitress/proxy_headers.py' adding 'waitress/receiver.py' adding 'waitress/rfc7230.py' adding 'waitress/runner.py' adding 'waitress/server.py' adding 'waitress/task.py' adding 'waitress/trigger.py' adding 'waitress/utilities.py' adding 'waitress/wasyncore.py' adding 'waitress-3.0.0.dist-info/LICENSE.txt' adding 'waitress-3.0.0.dist-info/METADATA' adding 'waitress-3.0.0.dist-info/WHEEL' adding 'waitress-3.0.0.dist-info/entry_points.txt' adding 'waitress-3.0.0.dist-info/top_level.txt' adding 'waitress-3.0.0.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel phase `build' succeeded after 1.8 seconds starting phase `install' phase `install' succeeded after 0.3 seconds starting phase `add-install-to-pythonpath' phase `add-install-to-pythonpath' succeeded after 0.0 seconds starting phase `add-install-to-path' phase `add-install-to-path' succeeded after 0.0 seconds starting phase `create-entrypoints' Creating entry point for 'waitress.runner.run' at '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/bin/waitress-serve'. phase `create-entrypoints' succeeded after 0.0 seconds starting phase `wrap' find-files: /gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/sbin: No such file or directory phase `wrap' succeeded after 0.0 seconds starting phase `compile-bytecode' Listing '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages'... Listing '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/__init__.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/__main__.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/adjustments.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/buffers.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/channel.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/compat.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/parser.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/proxy_headers.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/receiver.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/rfc7230.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/runner.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/server.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/task.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/trigger.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/utilities.py'... Compiling '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/wasyncore.py'... Listing '/gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress-3.0.0.dist-info'... phase `compile-bytecode' succeeded after 0.5 seconds starting phase `check' Using pytest ============================= test session starts ============================== platform linux -- Python 3.10.7, pytest-8.3.3, pluggy-1.5.0 -- /gnu/store/nd25jh6v0d5n648vwdxnj3apq19sq7dl-python-wrapper-3.10.7/bin/python cachedir: .pytest_cache hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/tmp/guix-build-python-waitress-3.0.0.drv-0/waitress-3.0.0/.hypothesis/examples') rootdir: /tmp/guix-build-python-waitress-3.0.0.drv-0/waitress-3.0.0 configfile: setup.cfg testpaths: tests plugins: hypothesis-6.54.5, cov-6.0.0 collecting ... collected 807 items / 1 deselected / 806 selected tests/test_adjustments.py::Test_asbool::test_s_is_1 PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_False PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_None PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_True PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_false PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_on PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_true PASSED [ 0%] tests/test_adjustments.py::Test_asbool::test_s_is_yes PASSED [ 0%] tests/test_adjustments.py::Test_as_socket_list::test_not_only_sockets_in_list PASSED [ 1%] tests/test_adjustments.py::Test_as_socket_list::test_only_sockets_in_list PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_bad_port PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_badvar PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_default_listen PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_deprecated_send_bytes PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_forwarded_with_x_forwarded PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_host_port_listen PASSED [ 1%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_host_port PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_listen PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_unix_socket PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_host_port PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_listen PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_dont_use_unsupported_socket_types PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_good_sockets PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_goodvar_listen PASSED [ 2%] tests/test_adjustments.py::TestAdjustments::test_goodvars PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_ipv4_disabled PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_ipv6_disabled PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_ipv6_no_port PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_multiple_listen PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_no_trusted_proxy_headers_trusted_proxy PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_server_header_removable PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_count_no_trusted_proxy PASSED [ 3%] tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_no_trusted_proxy PASSED [ 4%] tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list PASSED [ 4%] tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list_newlines PASSED [ 4%] tests/test_adjustments.py::TestAdjustments::test_unknown_trusted_proxy_header PASSED [ 4%] tests/test_adjustments.py::TestAdjustments::test_wildcard_listen PASSED [ 4%] tests/test_adjustments.py::TestCLI::test_bad_param PASSED [ 4%] tests/test_adjustments.py::TestCLI::test_both PASSED [ 4%] tests/test_adjustments.py::TestCLI::test_call PASSED [ 4%] tests/test_adjustments.py::TestCLI::test_cast_params PASSED [ 5%] tests/test_adjustments.py::TestCLI::test_help PASSED [ 5%] tests/test_adjustments.py::TestCLI::test_listen_params PASSED [ 5%] tests/test_adjustments.py::TestCLI::test_multiple_listen_params PASSED [ 5%] tests/test_adjustments.py::TestCLI::test_negative_boolean PASSED [ 5%] tests/test_adjustments.py::TestCLI::test_noargs PASSED [ 5%] tests/test_adjustments.py::TestCLI::test_positive_boolean PASSED [ 5%] tests/test_adjustments.py::TestUnixSocket::test_dont_mix_internet_and_unix_sockets PASSED [ 5%] tests/test_buffers.py::TestFileBasedBuffer::test___len__ PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test___nonzero__ PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_append PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_close PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer_None PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_bytes_less_than_zero PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_false PASSED [ 6%] tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_true PASSED [ 7%] tests/test_buffers.py::TestFileBasedBuffer::test_newfile PASSED [ 7%] tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_notzero PASSED [ 7%] tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_notzero PASSED [ 7%] tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_zero PASSED [ 7%] tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_gt_bytes PASSED [ 7%] tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_lt_bytes PASSED [ 7%] tests/test_buffers.py::TestTempfileBasedBuffer::test_newfile PASSED [ 7%] tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_None PASSED [ 8%] tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_not_None PASSED [ 8%] tests/test_buffers.py::TestBytesIOBasedBuffer::test_newfile PASSED [ 8%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test___iter__ PASSED [ 8%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_append PASSED [ 8%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain PASSED [ 8%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain_withskip PASSED [ 8%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain PASSED [ 8%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain_withskip PASSED [ 9%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_neg_one PASSED [ 9%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable PASSED [ 9%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable_closeable PASSED [ 9%] tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_seekable_closeable PASSED [ 9%] tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_None PASSED [ 9%] tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_not_None PASSED [ 9%] tests/test_buffers.py::TestOverflowableBuffer::test___nonzero__ PASSED [ 9%] tests/test_buffers.py::TestOverflowableBuffer::test___nonzero___on_int_overflow_buffer PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_large PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_small PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_longer_than_strbuf_limit PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_not_longer_than_srtbuf_limit PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test_append_overflow PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test_append_sz_gt_overflow PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test_append_with_len_more_than_max_int PASSED [ 10%] tests/test_buffers.py::TestOverflowableBuffer::test_close_nobuf PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_close_withbuf PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_False PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_True PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_None PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_not_None PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_prune_buf_None PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf PASSED [ 11%] tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf_overflow PASSED [ 12%] tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buflen_more_than_max_int PASSED [ 12%] tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None PASSED [ 12%] tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None_allow_prune_True PASSED [ 12%] tests/test_channel.py::TestHTTPChannel::test__flush_some_empty_outbuf PASSED [ 12%] tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_nonzero PASSED [ 12%] tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_zero PASSED [ 12%] tests/test_channel.py::TestHTTPChannel::test__flush_some_outbuf_len_gt_sys_maxint PASSED [ 12%] tests/test_channel.py::TestHTTPChannel::test_add_channel PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_cancel_no_requests PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_cancel_with_requests PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_ctor PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_del_channel PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_close_raises PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_first_empty PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_handle_close PASSED [ 13%] tests/test_channel.py::TestHTTPChannel::test_handle_close_outbuf_raises_on_close PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_read_error PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_read_no_error PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_write_close_when_flushed PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_write_no_notify_after_flush PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_write_no_request_with_outbuf PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_no_outbuf_will_close PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED [ 14%] tests/test_channel.py::TestHTTPChannel::test_handle_write_not_connected PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_handle_write_notify_after_flush PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_othererror PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_socketerror PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_handle_write_with_requests PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_not_will_close PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_will_close PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_readable_with_requests PASSED [ 15%] tests/test_channel.py::TestHTTPChannel::test_received PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_false PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true_sent_true PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_no_chunk PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_connection_close PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_empty PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_preq_error PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_received_preq_not_completed PASSED [ 16%] tests/test_channel.py::TestHTTPChannel::test_service_with_multiple_requests PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_one_error_request PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_one_request PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_request_error_raises_disconnect PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises_disconnect PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_already_wrote_header PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header PASSED [ 17%] tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf_will_close PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_writable_something_in_outbuf PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_write_soon_attempts_flush_high_water_and_exception PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected_while_over_watermark PASSED [ 18%] tests/test_channel.py::TestHTTPChannel::test_write_soon_empty_byte PASSED [ 19%] tests/test_channel.py::TestHTTPChannel::test_write_soon_filewrapper PASSED [ 19%] tests/test_channel.py::TestHTTPChannel::test_write_soon_flush_and_exception PASSED [ 19%] tests/test_channel.py::TestHTTPChannel::test_write_soon_nonempty_byte PASSED [ 19%] tests/test_channel.py::TestHTTPChannel::test_write_soon_rotates_outbuf_on_overflow PASSED [ 19%] tests/test_channel.py::TestHTTPChannel::test_write_soon_waits_on_backpressure PASSED [ 19%] tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_empty_outbuf PASSED [ 19%] tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_nonzero PASSED [ 19%] tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_zero PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_outbuf_len_gt_sys_maxint PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_add_channel PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_no_requests PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_with_requests PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect_immediate PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_ctor PASSED [ 20%] tests/test_channel.py::TestHTTPChannelLookahead::test_del_channel PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_close_raises PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_first_empty PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close_outbuf_raises_on_close PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_error PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_no_error PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_close_when_flushed PASSED [ 21%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_notify_after_flush PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_request_with_outbuf PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_no_outbuf_will_close PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_not_connected PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_notify_after_flush PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_othererror PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_socketerror PASSED [ 22%] tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_with_requests PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_lookahead_continue PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_not_will_close PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_will_close PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_readable_with_requests PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_received PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_false PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true PASSED [ 23%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true_sent_true PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_no_chunk PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_connection_close PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_empty PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_error PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_not_completed PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_multiple_requests PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_error_request PASSED [ 24%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_request PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_error_raises_disconnect PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises_disconnect PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_already_wrote_header PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED [ 25%] tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf_will_close PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_writable_something_in_outbuf PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_attempts_flush_high_water_and_exception PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected_while_over_watermark PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_empty_byte PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_filewrapper PASSED [ 26%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_flush_and_exception PASSED [ 27%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_nonempty_byte PASSED [ 27%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_rotates_outbuf_on_overflow PASSED [ 27%] tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_waits_on_backpressure PASSED [ 27%] tests/test_functional.py::SleepyThreadTests::test_it PASSED [ 27%] tests/test_functional.py::TcpEchoTests::test_bad_host_header PASSED [ 27%] tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding PASSED [ 27%] tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_extension PASSED [ 27%] tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_hex PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_chunking_request_with_content PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_chunking_request_without_content PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_date_and_server PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_keepalive_http10_explicit PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_keepalive_http11_connclose PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_keepalive_http11_explicit PASSED [ 28%] tests/test_functional.py::TcpEchoTests::test_keepalive_http_10 PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_keepalive_http_11 PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_large_body PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_many_clients PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_multiple_requests_with_body PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_multiple_requests_without_body PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_proxy_headers PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_send_empty_body PASSED [ 29%] tests/test_functional.py::TcpEchoTests::test_send_with_body PASSED [ 30%] tests/test_functional.py::TcpEchoTests::test_without_crlf PASSED [ 30%] tests/test_functional.py::TcpPipeliningTests::test_pipelining PASSED [ 30%] tests/test_functional.py::TcpExpectContinueTests::test_expect_continue PASSED [ 30%] tests/test_functional.py::TcpBadContentLengthTests::test_long_body PASSED [ 30%] tests/test_functional.py::TcpBadContentLengthTests::test_short_body PASSED [ 30%] tests/test_functional.py::TcpNoContentLengthTests::test_http10_generator PASSED [ 30%] tests/test_functional.py::TcpNoContentLengthTests::test_http10_list PASSED [ 30%] tests/test_functional.py::TcpNoContentLengthTests::test_http10_listlentwo PASSED [ 31%] tests/test_functional.py::TcpNoContentLengthTests::test_http11_generator PASSED [ 31%] tests/test_functional.py::TcpNoContentLengthTests::test_http11_list PASSED [ 31%] tests/test_functional.py::TcpNoContentLengthTests::test_http11_listlentwo PASSED [ 31%] tests/test_functional.py::TcpWriteCallbackTests::test_equal_body PASSED [ 31%] tests/test_functional.py::TcpWriteCallbackTests::test_long_body PASSED [ 31%] tests/test_functional.py::TcpWriteCallbackTests::test_no_content_length PASSED [ 31%] tests/test_functional.py::TcpWriteCallbackTests::test_short_body PASSED [ 31%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_chunked_encoding PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED [ 32%] tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED [ 33%] tests/test_functional.py::TcpTooLargeTests::test_request_headers_too_large_http11 PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http10 PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11 PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11_close PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_after_write_cb PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_10 PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11 PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11_close PASSED [ 33%] tests/test_functional.py::TcpInternalServerErrorTests::test_in_generator PASSED [ 34%] tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED [ 34%] tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED [ 34%] tests/test_functional.py::TcpFileWrapperTests::test_filelike_http10 PASSED [ 34%] tests/test_functional.py::TcpFileWrapperTests::test_filelike_http11 PASSED [ 34%] tests/test_functional.py::TcpFileWrapperTests::test_filelike_longcl_http11 PASSED [ 34%] tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http10 PASSED [ 34%] tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http11 PASSED [ 34%] tests/test_functional.py::TcpFileWrapperTests::test_filelike_shortcl_http11 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http10 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http11 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_iobase_http11 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_longcl_http11 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http10 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http11 PASSED [ 35%] tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_shortcl_http11 PASSED [ 35%] tests/test_functional.py::UnixEchoTests::test_bad_host_header PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_extension PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_hex PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_chunking_request_with_content PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_chunking_request_without_content PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_date_and_server PASSED [ 36%] tests/test_functional.py::UnixEchoTests::test_keepalive_http10_explicit PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_keepalive_http11_connclose PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_keepalive_http11_explicit PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_keepalive_http_10 PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_keepalive_http_11 PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_large_body PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_many_clients PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_multiple_requests_with_body PASSED [ 37%] tests/test_functional.py::UnixEchoTests::test_multiple_requests_without_body PASSED [ 38%] tests/test_functional.py::UnixEchoTests::test_proxy_headers PASSED [ 38%] tests/test_functional.py::UnixEchoTests::test_send_empty_body PASSED [ 38%] tests/test_functional.py::UnixEchoTests::test_send_with_body PASSED [ 38%] tests/test_functional.py::UnixEchoTests::test_without_crlf PASSED [ 38%] tests/test_functional.py::UnixPipeliningTests::test_pipelining PASSED [ 38%] tests/test_functional.py::UnixExpectContinueTests::test_expect_continue PASSED [ 38%] tests/test_functional.py::UnixBadContentLengthTests::test_long_body PASSED [ 38%] tests/test_functional.py::UnixBadContentLengthTests::test_short_body PASSED [ 39%] tests/test_functional.py::UnixNoContentLengthTests::test_http10_generator PASSED [ 39%] tests/test_functional.py::UnixNoContentLengthTests::test_http10_list PASSED [ 39%] tests/test_functional.py::UnixNoContentLengthTests::test_http10_listlentwo PASSED [ 39%] tests/test_functional.py::UnixNoContentLengthTests::test_http11_generator PASSED [ 39%] tests/test_functional.py::UnixNoContentLengthTests::test_http11_list PASSED [ 39%] tests/test_functional.py::UnixNoContentLengthTests::test_http11_listlentwo PASSED [ 39%] tests/test_functional.py::UnixWriteCallbackTests::test_equal_body PASSED [ 39%] tests/test_functional.py::UnixWriteCallbackTests::test_long_body PASSED [ 40%] tests/test_functional.py::UnixWriteCallbackTests::test_no_content_length PASSED [ 40%] tests/test_functional.py::UnixWriteCallbackTests::test_short_body PASSED [ 40%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_chunked_encoding PASSED [ 40%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED [ 40%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED [ 40%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED [ 40%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED [ 40%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED [ 41%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED [ 41%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED [ 41%] tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED [ 41%] tests/test_functional.py::UnixTooLargeTests::test_request_headers_too_large_http11 PASSED [ 41%] tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http10 PASSED [ 41%] tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11 PASSED [ 41%] tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11_close PASSED [ 41%] tests/test_functional.py::UnixInternalServerErrorTests::test_after_write_cb PASSED [ 42%] tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_10 PASSED [ 42%] tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11 PASSED [ 42%] tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11_close PASSED [ 42%] tests/test_functional.py::UnixInternalServerErrorTests::test_in_generator PASSED [ 42%] tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED [ 42%] tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED [ 42%] tests/test_functional.py::UnixFileWrapperTests::test_filelike_http10 PASSED [ 42%] tests/test_functional.py::UnixFileWrapperTests::test_filelike_http11 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_filelike_longcl_http11 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http10 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http11 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_filelike_shortcl_http11 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http10 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http11 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_iobase_http11 PASSED [ 43%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_longcl_http11 PASSED [ 44%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http10 PASSED [ 44%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http11 PASSED [ 44%] tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_shortcl_http11 PASSED [ 44%] tests/test_init.py::Test_serve::test_it PASSED [ 44%] tests/test_init.py::Test_serve_paste::test_it PASSED [ 44%] tests/test_parser.py::TestHTTPRequestParser::test_close_with_body_rcv PASSED [ 44%] tests/test_parser.py::TestHTTPRequestParser::test_close_with_no_body_rcv PASSED [ 44%] tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_None PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_nonNone PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_expect_continue PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_te_chunked PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_minus PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_plus PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_connection_close PASSED [ 45%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_cr_only PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_empty PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_first_line PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_header PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_gardenpath PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_backtrack_bad PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_chars PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_folding_spacing PASSED [ 46%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_no_colon PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace_vtab PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_lf_only PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_content_length PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_extra_space PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded PASSED [ 47%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded_multiple PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_no_cr_in_headerplus PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_short_values PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_multiple PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_unicode PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_whitespace PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_received_already_completed PASSED [ 48%] tests/test_parser.py::TestHTTPRequestParser::test_received_bad_host_header PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_bad_transfer_encoding PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_body_too_large PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_chunked_completed_sets_content_length PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_cl_too_large PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_error_from_parser PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_get_no_headers PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_headers_not_too_large_multiple_chunks PASSED [ 49%] tests/test_parser.py::TestHTTPRequestParser::test_received_headers_too_large PASSED [ 50%] tests/test_parser.py::TestHTTPRequestParser::test_received_no_doublecr PASSED [ 50%] tests/test_parser.py::TestHTTPRequestParser::test_received_nonsense_nothing PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_uri_path PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_uri_path_query PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_uri_path_query_fragment PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_uri_unicode_error_raises_parsing_error PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_needed PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_unneeded PASSED [ 50%] tests/test_parser.py::Test_split_uri::test_split_url_https PASSED [ 51%] tests/test_parser.py::Test_split_uri::test_split_url_with_fragment PASSED [ 51%] tests/test_parser.py::Test_split_uri::test_split_url_with_query PASSED [ 51%] tests/test_parser.py::Test_split_uri::test_split_url_with_query_empty PASSED [ 51%] tests/test_parser.py::Test_get_header_lines::test_get_header_lines PASSED [ 51%] tests/test_parser.py::Test_get_header_lines::test_get_header_lines_folded PASSED [ 51%] tests/test_parser.py::Test_get_header_lines::test_get_header_lines_malformed PASSED [ 51%] tests/test_parser.py::Test_get_header_lines::test_get_header_lines_tabbed PASSED [ 51%] tests/test_parser.py::Test_crack_first_line::test_crack_first_line_bad_method PASSED [ 52%] tests/test_parser.py::Test_crack_first_line::test_crack_first_line_bad_version PASSED [ 52%] tests/test_parser.py::Test_crack_first_line::test_crack_first_line_lowercase_method PASSED [ 52%] tests/test_parser.py::Test_crack_first_line::test_crack_first_line_matchok PASSED [ 52%] tests/test_parser.py::Test_crack_first_line::test_crack_first_line_missing_version PASSED [ 52%] tests/test_parser.py::Test_crack_first_line::test_crack_first_line_nomatch PASSED [ 52%] tests/test_parser.py::TestHTTPRequestParserIntegration::testComplexGET PASSED [ 52%] tests/test_parser.py::TestHTTPRequestParserIntegration::testDuplicateHeaders PASSED [ 52%] tests/test_parser.py::TestHTTPRequestParserIntegration::testProxyGET PASSED [ 53%] tests/test_parser.py::TestHTTPRequestParserIntegration::testSimpleGET PASSED [ 53%] tests/test_parser.py::TestHTTPRequestParserIntegration::testSpoofedHeadersDropped PASSED [ 53%] tests/test_parser.py::Test_unquote_bytes_to_wsgi::test_highorder PASSED [ 53%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_clears_headers_if_untrusted_proxy PASSED [ 53%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_all_headers_including_untrusted PASSED [ 53%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_only_trusted_headers PASSED [ 53%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_bogus_scheme_override PASSED [ 53%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_trusted PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_untrusted PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_warning_other_proxy_headers PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_empty_pair PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_for_bad_quote PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_host_bad_quote PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies PASSED [ 54%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_minimal PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_trust_only_two PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_no_equals PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_token_whitespace PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_value_whitespace PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_443 PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_80 PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_warning_unknown_token PASSED [ 55%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_port PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_proto PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_no_valid_proxy_headers PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for_v6_missing_brackets PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port_limit_one_trusted PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_forwarded_port PASSED [ 56%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_port PASSED [ 57%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_without_port PASSED [ 57%] tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwared_for_multiple PASSED [ 57%] tests/test_receiver.py::TestFixedStreamReceiver::test___len__ PASSED [ 57%] tests/test_receiver.py::TestFixedStreamReceiver::test_getbuf PASSED [ 57%] tests/test_receiver.py::TestFixedStreamReceiver::test_getfile PASSED [ 57%] tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_gt_datalen PASSED [ 57%] tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lt_1 PASSED [ 57%] tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lte_datalen PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test___len__ PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_alreadycompleted PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_getbuf PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_getfile PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_is_properly_terminated PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_not_properly_terminated PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_not_received PASSED [ 58%] tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_received PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_garbage_in_input PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_notfinished PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks_split PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_remain_gt_zero PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_finished PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_not_finished PASSED [ 59%] tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_crlf PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_lf PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\n] PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid=] PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\r] PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid = true] PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[test] PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true] PASSED [ 60%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true;other=true] PASSED [ 61%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[0x04] PASSED [ 61%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+0x04] PASSED [ 61%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[x04] PASSED [ 61%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+04] PASSED [ 61%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 04] PASSED [ 61%] tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 0x04] PASSED [ 61%] tests/test_regression.py::test_suite PASSED [ 61%] tests/test_runner.py::Test_match::test_bad_module PASSED [ 62%] tests/test_runner.py::Test_match::test_empty PASSED [ 62%] tests/test_runner.py::Test_match::test_module_obj PASSED [ 62%] tests/test_runner.py::Test_match::test_module_only PASSED [ 62%] tests/test_runner.py::Test_resolve::test_bad_module PASSED [ 62%] tests/test_runner.py::Test_resolve::test_complex_happy_path PASSED [ 62%] tests/test_runner.py::Test_resolve::test_nonexistent_function PASSED [ 62%] tests/test_runner.py::Test_resolve::test_simple_happy_path PASSED [ 62%] tests/test_runner.py::Test_run::test_bad PASSED [ 63%] tests/test_runner.py::Test_run::test_bad_app_module PASSED [ 63%] tests/test_runner.py::Test_run::test_bad_app_object PASSED [ 63%] tests/test_runner.py::Test_run::test_bad_apps_app PASSED [ 63%] tests/test_runner.py::Test_run::test_cwd_added_to_path PASSED [ 63%] tests/test_runner.py::Test_run::test_help PASSED [ 63%] tests/test_runner.py::Test_run::test_multiple_apps_app PASSED [ 63%] tests/test_runner.py::Test_run::test_no_app PASSED [ 63%] tests/test_runner.py::Test_run::test_returned_app PASSED [ 64%] tests/test_runner.py::Test_run::test_simple_call PASSED [ 64%] tests/test_runner.py::Test_helper::test_exception_logging PASSED [ 64%] tests/test_server.py::TestWSGIServer::test_add_task PASSED [ 64%] tests/test_server.py::TestWSGIServer::test_backward_compatibility PASSED [ 64%] tests/test_server.py::TestWSGIServer::test_create_with_multiple_tcp_sockets PASSED [ 64%] tests/test_server.py::TestWSGIServer::test_create_with_one_socket_handle_accept_noerror PASSED [ 64%] tests/test_server.py::TestWSGIServer::test_create_with_one_socket_should_not_bind_socket PASSED [ 64%] tests/test_server.py::TestWSGIServer::test_create_with_one_tcp_socket PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_ctor_app_is_None PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_ctor_makes_dispatcher PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_ctor_start_false PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_ctor_start_true PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_get_server_multi PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_handle_accept_noerror PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_handle_accept_other_socket_error PASSED [ 65%] tests/test_server.py::TestWSGIServer::test_handle_accept_wouldblock_socket_error PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_handle_connect PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_handle_read PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_maintenance PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_pull_trigger PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_readable_maintenance_false PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_readable_maintenance_true PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_readable_maplen_gt_connection_limit PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_readable_maplen_lt_connection_limit PASSED [ 66%] tests/test_server.py::TestWSGIServer::test_readable_maplen_toggles_connection_overflow PASSED [ 67%] tests/test_server.py::TestWSGIServer::test_readable_not_accepting PASSED [ 67%] tests/test_server.py::TestWSGIServer::test_run PASSED [ 67%] tests/test_server.py::TestWSGIServer::test_run_base_server PASSED [ 67%] tests/test_server.py::TestWSGIServer::test_writable PASSED [ 67%] tests/test_server.py::TestUnixWSGIServer::test_create_with_unix_socket PASSED [ 67%] tests/test_server.py::TestUnixWSGIServer::test_creates_new_sockinfo PASSED [ 67%] tests/test_server.py::TestUnixWSGIServer::test_handle_accept PASSED [ 67%] tests/test_server.py::TestUnixWSGIServer::test_unix PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_all_busy_threads PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_idle_threads PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_handler_thread_task_raises PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_decrease PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase_with_existing PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_same PASSED [ 68%] tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_cancel_pending PASSED [ 69%] tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_threads PASSED [ 69%] tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_one_thread PASSED [ 69%] tests/test_task.py::TestTask::test_build_response_header_bad_http_version PASSED [ 69%] tests/test_task.py::TestTask::test_build_response_header_date_exists PASSED [ 69%] tests/test_task.py::TestTask::test_build_response_header_preexisting_content_length PASSED [ 69%] tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_no_content_length PASSED [ 69%] tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_with_content_length PASSED [ 69%] tests/test_task.py::TestTask::test_build_response_header_v11_1xx_no_content_length_or_transfer_encoding PASSED [ 70%] tests/test_task.py::TestTask::test_build_response_header_v11_200_no_content_length PASSED [ 70%] tests/test_task.py::TestTask::test_build_response_header_v11_204_no_content_length_or_transfer_encoding PASSED [ 70%] tests/test_task.py::TestTask::test_build_response_header_v11_304_no_content_length_or_transfer_encoding PASSED [ 70%] tests/test_task.py::TestTask::test_build_response_header_v11_connection_closed_by_client PASSED [ 70%] tests/test_task.py::TestTask::test_build_response_header_v11_connection_keepalive_by_client PASSED [ 70%] tests/test_task.py::TestTask::test_build_response_header_via_added PASSED [ 70%] tests/test_task.py::TestTask::test_ctor_version_not_in_known PASSED [ 70%] tests/test_task.py::TestTask::test_finish_chunked_response PASSED [ 71%] tests/test_task.py::TestTask::test_finish_didnt_write_header PASSED [ 71%] tests/test_task.py::TestTask::test_finish_wrote_header PASSED [ 71%] tests/test_task.py::TestTask::test_remove_content_length_header PASSED [ 71%] tests/test_task.py::TestTask::test_remove_content_length_header_with_other PASSED [ 71%] tests/test_task.py::TestTask::test_start PASSED [ 71%] tests/test_task.py::TestTask::test_write_chunked_response PASSED [ 71%] tests/test_task.py::TestTask::test_write_header_not_written PASSED [ 71%] tests/test_task.py::TestTask::test_write_preexisting_content_length PASSED [ 72%] tests/test_task.py::TestTask::test_write_start_response_uncalled PASSED [ 72%] tests/test_task.py::TestTask::test_write_wrote_header PASSED [ 72%] tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_twice_wo_exc_info PASSED [ 72%] tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_exc_info_complete PASSED [ 72%] tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_unwritten PASSED [ 72%] tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_written PASSED [ 72%] tests/test_task.py::TestWSGITask::test_execute_app_calls_write PASSED [ 72%] tests/test_task.py::TestWSGITask::test_execute_app_head_with_content_length PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_closeable PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_empty_chunk_as_first PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_badcl PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_nocl PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_len1_chunk_without_cl PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_too_few_bytes PASSED [ 73%] tests/test_task.py::TestWSGITask::test_execute_app_returns_too_many_bytes PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_app_without_body_204_logged PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_app_without_body_304_logged PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_bad_header_key PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_bad_header_name_control_characters PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_bad_header_value PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_bad_header_value_control_characters PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_bad_status_control_characters PASSED [ 74%] tests/test_task.py::TestWSGITask::test_execute_bad_status_value PASSED [ 75%] tests/test_task.py::TestWSGITask::test_execute_hopbyhop_header PASSED [ 75%] tests/test_task.py::TestWSGITask::test_execute_with_content_length_header PASSED [ 75%] tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_empty_path PASSED [ 75%] tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_hit PASSED [ 75%] tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_miss PASSED [ 75%] tests/test_task.py::TestWSGITask::test_get_environment_already_cached PASSED [ 75%] tests/test_task.py::TestWSGITask::test_get_environment_no_query PASSED [ 75%] tests/test_task.py::TestWSGITask::test_get_environment_path_empty PASSED [ 76%] tests/test_task.py::TestWSGITask::test_get_environment_path_startswith_more_than_one_slash PASSED [ 76%] tests/test_task.py::TestWSGITask::test_get_environment_values PASSED [ 76%] tests/test_task.py::TestWSGITask::test_get_environment_with_query PASSED [ 76%] tests/test_task.py::TestWSGITask::test_preserve_header_value_order PASSED [ 76%] tests/test_task.py::TestWSGITask::test_service PASSED [ 76%] tests/test_task.py::TestWSGITask::test_service_server_raises_socket_error PASSED [ 76%] tests/test_task.py::TestErrorTask::test_execute_http_10 PASSED [ 76%] tests/test_task.py::TestErrorTask::test_execute_http_11 PASSED [ 77%] tests/test_task.py::TestErrorTask::test_execute_http_11_close PASSED [ 77%] tests/test_task.py::TestErrorTask::test_execute_http_11_keep_forces_close PASSED [ 77%] tests/test_trigger.py::Test_trigger::test__close PASSED [ 77%] tests/test_trigger.py::Test_trigger::test__physical_pull PASSED [ 77%] tests/test_trigger.py::Test_trigger::test_close PASSED [ 77%] tests/test_trigger.py::Test_trigger::test_handle_close PASSED [ 77%] tests/test_trigger.py::Test_trigger::test_handle_connect PASSED [ 77%] tests/test_trigger.py::Test_trigger::test_handle_read_no_socket_error PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_handle_read_socket_error PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_handle_read_thunk PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_handle_read_thunk_error PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_pull_trigger_nothunk PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_pull_trigger_thunk PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_readable PASSED [ 78%] tests/test_trigger.py::Test_trigger::test_writable PASSED [ 78%] tests/test_utilities.py::Test_parse_http_date::test_neither PASSED [ 79%] tests/test_utilities.py::Test_parse_http_date::test_rfc822 PASSED [ 79%] tests/test_utilities.py::Test_parse_http_date::test_rfc850 PASSED [ 79%] tests/test_utilities.py::Test_build_http_date::test_rountdrip PASSED [ 79%] tests/test_utilities.py::Test_unpack_rfc850::test_it PASSED [ 79%] tests/test_utilities.py::Test_unpack_rfc_822::test_it PASSED [ 79%] tests/test_utilities.py::Test_find_double_newline::test_double_crfl PASSED [ 79%] tests/test_utilities.py::Test_find_double_newline::test_double_linefeed PASSED [ 79%] tests/test_utilities.py::Test_find_double_newline::test_empty PASSED [ 80%] tests/test_utilities.py::Test_find_double_newline::test_mixed PASSED [ 80%] tests/test_utilities.py::Test_find_double_newline::test_one_crlf PASSED [ 80%] tests/test_utilities.py::Test_find_double_newline::test_one_linefeed PASSED [ 80%] tests/test_utilities.py::TestBadRequest::test_it PASSED [ 80%] tests/test_utilities.py::Test_undquote::test_empty PASSED [ 80%] tests/test_utilities.py::Test_undquote::test_invalid_quoting PASSED [ 80%] tests/test_utilities.py::Test_undquote::test_invalid_quoting_single_quote PASSED [ 80%] tests/test_utilities.py::Test_undquote::test_quoted PASSED [ 81%] tests/test_utilities.py::Test_undquote::test_quoted_backslash_htab PASSED [ 81%] tests/test_utilities.py::Test_undquote::test_quoted_backslash_invalid PASSED [ 81%] tests/test_utilities.py::Test_undquote::test_quoted_backslash_quote PASSED [ 81%] tests/test_utilities.py::Test_undquote::test_quoted_htab PASSED [ 81%] tests/test_utilities.py::Test_undquote::test_unquoted PASSED [ 81%] tests/test_wasyncore.py::HelperFunctionTests::test_closeall PASSED [ 81%] tests/test_wasyncore.py::HelperFunctionTests::test_closeall_default PASSED [ 81%] tests/test_wasyncore.py::HelperFunctionTests::test_compact_traceback PASSED [ 82%] tests/test_wasyncore.py::HelperFunctionTests::test_readwrite PASSED [ 82%] tests/test_wasyncore.py::HelperFunctionTests::test_readwriteexc PASSED [ 82%] tests/test_wasyncore.py::DispatcherTests::test_basic PASSED [ 82%] tests/test_wasyncore.py::DispatcherTests::test_log PASSED [ 82%] tests/test_wasyncore.py::DispatcherTests::test_log_info PASSED [ 82%] tests/test_wasyncore.py::DispatcherTests::test_repr PASSED [ 82%] tests/test_wasyncore.py::DispatcherTests::test_strerror PASSED [ 82%] tests/test_wasyncore.py::DispatcherTests::test_unhandled PASSED [ 83%] tests/test_wasyncore.py::DispatcherWithSendTests::test_send FAILED [ 83%] tests/test_wasyncore.py::FileWrapperTest::test_close_twice PASSED [ 83%] tests/test_wasyncore.py::FileWrapperTest::test_dispatcher PASSED [ 83%] tests/test_wasyncore.py::FileWrapperTest::test_recv PASSED [ 83%] tests/test_wasyncore.py::FileWrapperTest::test_resource_warning PASSED [ 83%] tests/test_wasyncore.py::FileWrapperTest::test_send PASSED [ 83%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_bind PASSED [ 83%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_connection_attributes PASSED [ 83%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_create_socket PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accept PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accepted PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close_after_conn_broken PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_connect PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_error PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_expt PASSED [ 84%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_read PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_write PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_quick_connect PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_set_reuse_addr PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_bind PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_connection_attributes PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_create_socket PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accept PASSED [ 85%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accepted PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close_after_conn_broken PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_connect PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_error PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_expt PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_read PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_write PASSED [ 86%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_quick_connect PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_set_reuse_addr PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_bind PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_connection_attributes PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_create_socket PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accept PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accepted PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close PASSED [ 87%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close_after_conn_broken PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_connect PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_error PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_expt PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_read PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_write PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_quick_connect PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_set_reuse_addr PASSED [ 88%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_bind PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_connection_attributes PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_create_socket PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accept PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accepted PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close_after_conn_broken PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_connect PASSED [ 89%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_error PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_expt PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_read PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_write PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_quick_connect PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_set_reuse_addr PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_bind SKIPPED [ 90%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_connection_attributes PASSED [ 90%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_create_socket PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accept PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accepted PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close_after_conn_broken PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_connect PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_error PASSED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_expt SKIPPED [ 91%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_read PASSED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_write PASSED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_quick_connect SKIPPED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_set_reuse_addr SKIPPED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_bind SKIPPED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_connection_attributes PASSED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_create_socket PASSED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accept PASSED [ 92%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accepted PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close_after_conn_broken PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_connect PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_error PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_expt SKIPPED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_read PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_write PASSED [ 93%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_quick_connect SKIPPED [ 94%] tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_set_reuse_addr SKIPPED [ 94%] tests/test_wasyncore.py::Test__strerror::test_gardenpath PASSED [ 94%] tests/test_wasyncore.py::Test__strerror::test_unknown PASSED [ 94%] tests/test_wasyncore.py::Test_read::test_gardenpath PASSED [ 94%] tests/test_wasyncore.py::Test_read::test_non_reraised PASSED [ 94%] tests/test_wasyncore.py::Test_read::test_reraised PASSED [ 94%] tests/test_wasyncore.py::Test_write::test_gardenpath PASSED [ 94%] tests/test_wasyncore.py::Test_write::test_non_reraised PASSED [ 95%] tests/test_wasyncore.py::Test_write::test_reraised PASSED [ 95%] tests/test_wasyncore.py::Test__exception::test_gardenpath PASSED [ 95%] tests/test_wasyncore.py::Test__exception::test_non_reraised PASSED [ 95%] tests/test_wasyncore.py::Test__exception::test_reraised PASSED [ 95%] tests/test_wasyncore.py::Test_readwrite::test_exception_in_reraised PASSED [ 95%] tests/test_wasyncore.py::Test_readwrite::test_exception_not_in_reraised PASSED [ 95%] tests/test_wasyncore.py::Test_readwrite::test_handle_close PASSED [ 95%] tests/test_wasyncore.py::Test_readwrite::test_handle_expt_event PASSED [ 96%] tests/test_wasyncore.py::Test_readwrite::test_handle_read_event PASSED [ 96%] tests/test_wasyncore.py::Test_readwrite::test_handle_write_event PASSED [ 96%] tests/test_wasyncore.py::Test_readwrite::test_socketerror_in_disconnected PASSED [ 96%] tests/test_wasyncore.py::Test_readwrite::test_socketerror_not_in_disconnected PASSED [ 96%] tests/test_wasyncore.py::Test_poll::test_nothing_writable_nothing_readable_but_map_not_empty PASSED [ 96%] tests/test_wasyncore.py::Test_poll::test_select_raises_EINTR PASSED [ 96%] tests/test_wasyncore.py::Test_poll::test_select_raises_non_EINTR PASSED [ 96%] tests/test_wasyncore.py::Test_poll2::test_select_raises_EINTR PASSED [ 97%] tests/test_wasyncore.py::Test_poll2::test_select_raises_non_EINTR PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test___repr__accepting PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test___repr__connected PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_TypeError PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_unexpected_socketerror PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test_close_raises_unknown_socket_error PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test_connect_raise_socket_error PASSED [ 97%] tests/test_wasyncore.py::Test_dispatcher::test_handle_accepted PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_handle_close PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_handle_connect_event_getsockopt_returns_error PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_handle_error_gardenpath PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_handle_expt_event_getsockopt_returns_error PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_handle_read_event_not_accepting_not_connected_connecting PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_handle_write_event_while_accepting PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_recv_raises_disconnect PASSED [ 98%] tests/test_wasyncore.py::Test_dispatcher::test_send_raise_EWOULDBLOCK PASSED [ 99%] tests/test_wasyncore.py::Test_dispatcher::test_send_raise_unexpected_socketerror PASSED [ 99%] tests/test_wasyncore.py::Test_dispatcher::test_set_reuse_addr_with_socketerror PASSED [ 99%] tests/test_wasyncore.py::Test_dispatcher::test_unexpected_getpeername_exc PASSED [ 99%] tests/test_wasyncore.py::Test_dispatcher_with_send::test_writable PASSED [ 99%] tests/test_wasyncore.py::Test_close_all::test_reraised_exc_on_close PASSED [ 99%] tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_ebadf PASSED [ 99%] tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_non_ebadf PASSED [ 99%] tests/test_wasyncore.py::Test_close_all::test_unknown_exc_on_close PASSED [100%] =================================== FAILURES =================================== ______________________ DispatcherWithSendTests.test_send _______________________ self = @reap_threads def test_send(self): evt = threading.Event() sock = socket.socket() sock.settimeout(3) port = bind_port(sock) cap = BytesIO() args = (evt, cap, sock) t = threading.Thread(target=capture_server, args=args) t.start() try: # wait a little longer for the server to initialize (it sometimes # refuses connections on slow machines without this wait) time.sleep(0.2) data = b"Suppose there isn't a 16-ton weight?" d = dispatcherwithsend_noread() d.create_socket() d.connect((HOST, port)) # give time for socket to connect time.sleep(0.1) d.send(data) d.send(data) d.send(b"\n") n = 1000 while d.out_buffer and n > 0: # pragma: no cover asyncore.poll() n -= 1 evt.wait() > self.assertEqual(cap.getvalue(), data * 2) E AssertionError: b'' != b"Suppose there isn't a 16-ton weight?Suppose there isn't a 16-ton weight?" tests/test_wasyncore.py:695: AssertionError =============================== warnings summary =============================== tests/test_adjustments.py::TestAdjustments::test_goodvars /gnu/store/67449mjjcl9y736zivavf983a97axv9b-python-waitress-3.0.0/lib/python3.10/site-packages/waitress/adjustments.py:312: DeprecationWarning: send_bytes will be removed in a future release warnings.warn( tests/test_regression.py::test_suite /gnu/store/819lc977gf7gmr13c5vvbks1zbkmdkbc-python-pytest-8.3.3/lib/python3.10/site-packages/_pytest/python.py:163: PytestReturnNotNoneWarning: Expected None, but tests/test_regression.py::test_suite returned , which will be an error in a future version of pytest. Did you mean to use `assert` instead of `return`? warnings.warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ---------- coverage: platform linux, python 3.10.7-final-0 ----------- Name Stmts Miss Cover Missing --------------------------------------------------------------- src/waitress/__init__.py 11 0 100.00% src/waitress/__main__.py 0 0 100.00% src/waitress/adjustments.py 180 0 100.00% src/waitress/buffers.py 211 0 100.00% src/waitress/channel.py 257 0 100.00% src/waitress/compat.py 10 0 100.00% src/waitress/parser.py 198 0 100.00% src/waitress/proxy_headers.py 162 0 100.00% src/waitress/receiver.py 110 0 100.00% src/waitress/rfc7230.py 26 0 100.00% src/waitress/runner.py 68 0 100.00% src/waitress/server.py 177 0 100.00% src/waitress/task.py 325 0 100.00% src/waitress/trigger.py 56 0 100.00% src/waitress/utilities.py 113 0 100.00% src/waitress/wasyncore.py 378 0 100.00% --------------------------------------------------------------- TOTAL 2282 0 100.00% =========================== short test summary info ============================ FAILED tests/test_wasyncore.py::DispatcherWithSendTests::test_send - AssertionError: b'' != b"Suppose there isn't a 16-ton weight?Suppose there isn't a 16-ton weight?" = 1 failed, 797 passed, 8 skipped, 1 deselected, 2 warnings in 87.24s (0:01:27) = error: in phase 'check': uncaught exception: %exception #<&invoke-error program: "/gnu/store/819lc977gf7gmr13c5vvbks1zbkmdkbc-python-pytest-8.3.3/bin/pytest" arguments: ("-vv" "-k" "not test_service_port") exit-status: 1 term-signal: #f stop-signal: #f> phase `check' failed after 89.9 seconds command "/gnu/store/819lc977gf7gmr13c5vvbks1zbkmdkbc-python-pytest-8.3.3/bin/pytest" "-vv" "-k" "not test_service_port" failed with status 1 build process 6 exited with status 256