0s autopkgtest [11:29:51]: starting date and time: 2024-11-13 11:29:51+0000 0s autopkgtest [11:29:51]: git checkout: 0acbae0a WIP show VirtSubproc stderr in real-time 0s autopkgtest [11:29:51]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.f1f4g0bx/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults,src:python3-stdlib-extensions --apt-upgrade waitress --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=python3-defaults/3.12.7-1 python3-stdlib-extensions/3.12.7-1' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-arm64-49.secgroup --name adt-plucky-arm64-waitress-20241113-112951-juju-7f2275-prod-proposed-migration-environment-2-b03313ac-6104-43d2-854b-4f68b50ab9f3 --image adt/ubuntu-plucky-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 71s autopkgtest [11:31:02]: testbed dpkg architecture: arm64 71s autopkgtest [11:31:02]: testbed apt version: 2.9.8 71s autopkgtest [11:31:02]: @@@@@@@@@@@@@@@@@@@@ test bed setup 72s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 73s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 73s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [15.3 kB] 73s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [849 kB] 73s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.4 kB] 73s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [104 kB] 73s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 Packages [50.3 kB] 73s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [601 kB] 73s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 Packages [17.1 kB] 73s Fetched 1794 kB in 1s (1969 kB/s) 73s Reading package lists... 76s Reading package lists... 76s Building dependency tree... 76s Reading state information... 77s Calculating upgrade... 78s The following NEW packages will be installed: 78s python3.13-gdbm 78s The following packages will be upgraded: 78s libpython3-stdlib python3 python3-gdbm python3-minimal 78s 4 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 78s Need to get 101 kB of archives. 78s After this operation, 141 kB of additional disk space will be used. 78s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3-minimal arm64 3.12.7-1 [27.4 kB] 78s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3 arm64 3.12.7-1 [24.0 kB] 78s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 libpython3-stdlib arm64 3.12.7-1 [10.0 kB] 78s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13-gdbm arm64 3.13.0-2 [30.7 kB] 78s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3-gdbm arm64 3.12.7-1 [8642 B] 78s Fetched 101 kB in 0s (274 kB/s) 79s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79924 files and directories currently installed.) 79s Preparing to unpack .../python3-minimal_3.12.7-1_arm64.deb ... 79s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ... 79s Setting up python3-minimal (3.12.7-1) ... 79s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79924 files and directories currently installed.) 79s Preparing to unpack .../python3_3.12.7-1_arm64.deb ... 79s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ... 79s Preparing to unpack .../libpython3-stdlib_3.12.7-1_arm64.deb ... 79s Unpacking libpython3-stdlib:arm64 (3.12.7-1) over (3.12.6-0ubuntu1) ... 79s Selecting previously unselected package python3.13-gdbm. 79s Preparing to unpack .../python3.13-gdbm_3.13.0-2_arm64.deb ... 79s Unpacking python3.13-gdbm (3.13.0-2) ... 79s Preparing to unpack .../python3-gdbm_3.12.7-1_arm64.deb ... 79s Unpacking python3-gdbm:arm64 (3.12.7-1) over (3.12.6-1ubuntu1) ... 79s Setting up python3.13-gdbm (3.13.0-2) ... 79s Setting up libpython3-stdlib:arm64 (3.12.7-1) ... 79s Setting up python3 (3.12.7-1) ... 80s Setting up python3-gdbm:arm64 (3.12.7-1) ... 80s Processing triggers for man-db (2.12.1-3) ... 80s Reading package lists... 81s Building dependency tree... 81s Reading state information... 81s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 82s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 82s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 82s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 82s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 83s Reading package lists... 83s Reading package lists... 83s Building dependency tree... 83s Reading state information... 84s Calculating upgrade... 84s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 84s Reading package lists... 85s Building dependency tree... 85s Reading state information... 85s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 88s autopkgtest [11:31:19]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 14:19:41 UTC 2024 89s autopkgtest [11:31:20]: @@@@@@@@@@@@@@@@@@@@ apt-source waitress 91s Get:1 http://ftpmaster.internal/ubuntu plucky/universe waitress 3.0.1-1 (dsc) [2410 B] 91s Get:2 http://ftpmaster.internal/ubuntu plucky/universe waitress 3.0.1-1 (tar) [175 kB] 91s Get:3 http://ftpmaster.internal/ubuntu plucky/universe waitress 3.0.1-1 (diff) [8164 B] 91s gpgv: Signature made Wed Oct 30 23:23:46 2024 UTC 91s gpgv: using RSA key AC0A4FF12611B6FCCF01C111393587D97D86500B 91s gpgv: Can't check signature: No public key 91s dpkg-source: warning: cannot verify inline signature for ./waitress_3.0.1-1.dsc: no acceptable signature found 91s autopkgtest [11:31:22]: testing package waitress version 3.0.1-1 92s autopkgtest [11:31:23]: build not needed 92s autopkgtest [11:31:23]: test unittests: preparing testbed 93s Reading package lists... 94s Building dependency tree... 94s Reading state information... 94s Starting pkgProblemResolver with broken count: 0 94s Starting 2 pkgProblemResolver with broken count: 0 94s Done 95s The following additional packages will be installed: 95s libjs-jquery libjs-jquery-hotkeys libjs-jquery-isonscreen 95s libjs-jquery-metadata libjs-jquery-tablesorter 95s libjs-jquery-throttle-debounce libjs-sphinxdoc libjs-underscore 95s libpython3.13-minimal libpython3.13-stdlib python-waitress-doc python3-all 95s python3-coverage python3-iniconfig python3-packaging python3-pluggy 95s python3-pytest python3-pytest-cov python3-waitress python3.13 95s python3.13-minimal 95s Suggested packages: 95s python-coverage-doc python3.13-venv python3.13-doc binfmt-support 95s Recommended packages: 95s javascript-common 95s The following NEW packages will be installed: 95s autopkgtest-satdep libjs-jquery libjs-jquery-hotkeys libjs-jquery-isonscreen 95s libjs-jquery-metadata libjs-jquery-tablesorter 95s libjs-jquery-throttle-debounce libjs-sphinxdoc libjs-underscore 95s libpython3.13-minimal libpython3.13-stdlib python-waitress-doc python3-all 95s python3-coverage python3-iniconfig python3-packaging python3-pluggy 95s python3-pytest python3-pytest-cov python3-waitress python3.13 95s python3.13-minimal 95s 0 upgraded, 22 newly installed, 0 to remove and 0 not upgraded. 95s Need to get 7202 kB/7203 kB of archives. 95s After this operation, 30.0 MB of additional disk space will be used. 95s Get:1 /tmp/autopkgtest.MznySF/1-autopkgtest-satdep.deb autopkgtest-satdep arm64 0 [740 B] 95s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 libpython3.13-minimal arm64 3.13.0-2 [877 kB] 96s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13-minimal arm64 3.13.0-2 [2100 kB] 96s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 96s Get:5 http://ftpmaster.internal/ubuntu plucky/universe arm64 libjs-jquery-hotkeys all 0~20130707+git2d51e3a9+dfsg-2.1 [11.5 kB] 96s Get:6 http://ftpmaster.internal/ubuntu plucky/universe arm64 libjs-jquery-metadata all 12-4 [6582 B] 96s Get:7 http://ftpmaster.internal/ubuntu plucky/universe arm64 libjs-jquery-tablesorter all 1:2.31.3+dfsg1-4 [192 kB] 96s Get:8 http://ftpmaster.internal/ubuntu plucky/universe arm64 libjs-jquery-throttle-debounce all 1.1+dfsg.1-2 [12.5 kB] 96s Get:9 http://ftpmaster.internal/ubuntu plucky/main arm64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 96s Get:10 http://ftpmaster.internal/ubuntu plucky/main arm64 libjs-sphinxdoc all 7.4.7-4 [158 kB] 96s Get:11 http://ftpmaster.internal/ubuntu plucky/main arm64 libpython3.13-stdlib arm64 3.13.0-2 [2073 kB] 96s Get:12 http://ftpmaster.internal/ubuntu plucky/universe arm64 python-waitress-doc all 3.0.1-1 [67.6 kB] 96s Get:13 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13 arm64 3.13.0-2 [719 kB] 96s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3-all arm64 3.12.7-1 [890 B] 96s Get:15 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-coverage arm64 7.4.4+dfsg1-0ubuntu2 [148 kB] 96s Get:16 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-iniconfig all 1.1.1-2 [6024 B] 96s Get:17 http://ftpmaster.internal/ubuntu plucky/main arm64 python3-packaging all 24.1-1 [41.4 kB] 96s Get:18 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-pluggy all 1.5.0-1 [21.0 kB] 96s Get:19 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-pytest all 8.3.3-1 [251 kB] 96s Get:20 http://ftpmaster.internal/ubuntu plucky/universe arm64 libjs-jquery-isonscreen all 1.2.0-1.1 [3244 B] 96s Get:21 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-pytest-cov all 5.0.0-1 [21.3 kB] 96s Get:22 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-waitress all 3.0.1-1 [46.5 kB] 97s Fetched 7202 kB in 1s (7648 kB/s) 97s Selecting previously unselected package libpython3.13-minimal:arm64. 97s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79931 files and directories currently installed.) 97s Preparing to unpack .../00-libpython3.13-minimal_3.13.0-2_arm64.deb ... 97s Unpacking libpython3.13-minimal:arm64 (3.13.0-2) ... 97s Selecting previously unselected package python3.13-minimal. 97s Preparing to unpack .../01-python3.13-minimal_3.13.0-2_arm64.deb ... 97s Unpacking python3.13-minimal (3.13.0-2) ... 97s Selecting previously unselected package libjs-jquery. 97s Preparing to unpack .../02-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 97s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 97s Selecting previously unselected package libjs-jquery-hotkeys. 97s Preparing to unpack .../03-libjs-jquery-hotkeys_0~20130707+git2d51e3a9+dfsg-2.1_all.deb ... 97s Unpacking libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2.1) ... 97s Selecting previously unselected package libjs-jquery-metadata. 97s Preparing to unpack .../04-libjs-jquery-metadata_12-4_all.deb ... 97s Unpacking libjs-jquery-metadata (12-4) ... 97s Selecting previously unselected package libjs-jquery-tablesorter. 97s Preparing to unpack .../05-libjs-jquery-tablesorter_1%3a2.31.3+dfsg1-4_all.deb ... 97s Unpacking libjs-jquery-tablesorter (1:2.31.3+dfsg1-4) ... 97s Selecting previously unselected package libjs-jquery-throttle-debounce. 97s Preparing to unpack .../06-libjs-jquery-throttle-debounce_1.1+dfsg.1-2_all.deb ... 97s Unpacking libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 97s Selecting previously unselected package libjs-underscore. 97s Preparing to unpack .../07-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 97s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 97s Selecting previously unselected package libjs-sphinxdoc. 97s Preparing to unpack .../08-libjs-sphinxdoc_7.4.7-4_all.deb ... 97s Unpacking libjs-sphinxdoc (7.4.7-4) ... 97s Selecting previously unselected package libpython3.13-stdlib:arm64. 97s Preparing to unpack .../09-libpython3.13-stdlib_3.13.0-2_arm64.deb ... 97s Unpacking libpython3.13-stdlib:arm64 (3.13.0-2) ... 97s Selecting previously unselected package python-waitress-doc. 97s Preparing to unpack .../10-python-waitress-doc_3.0.1-1_all.deb ... 97s Unpacking python-waitress-doc (3.0.1-1) ... 97s Selecting previously unselected package python3.13. 97s Preparing to unpack .../11-python3.13_3.13.0-2_arm64.deb ... 97s Unpacking python3.13 (3.13.0-2) ... 97s Selecting previously unselected package python3-all. 97s Preparing to unpack .../12-python3-all_3.12.7-1_arm64.deb ... 97s Unpacking python3-all (3.12.7-1) ... 97s Selecting previously unselected package python3-coverage. 97s Preparing to unpack .../13-python3-coverage_7.4.4+dfsg1-0ubuntu2_arm64.deb ... 97s Unpacking python3-coverage (7.4.4+dfsg1-0ubuntu2) ... 97s Selecting previously unselected package python3-iniconfig. 97s Preparing to unpack .../14-python3-iniconfig_1.1.1-2_all.deb ... 97s Unpacking python3-iniconfig (1.1.1-2) ... 97s Selecting previously unselected package python3-packaging. 97s Preparing to unpack .../15-python3-packaging_24.1-1_all.deb ... 97s Unpacking python3-packaging (24.1-1) ... 97s Selecting previously unselected package python3-pluggy. 97s Preparing to unpack .../16-python3-pluggy_1.5.0-1_all.deb ... 97s Unpacking python3-pluggy (1.5.0-1) ... 98s Selecting previously unselected package python3-pytest. 98s Preparing to unpack .../17-python3-pytest_8.3.3-1_all.deb ... 98s Unpacking python3-pytest (8.3.3-1) ... 98s Selecting previously unselected package libjs-jquery-isonscreen. 98s Preparing to unpack .../18-libjs-jquery-isonscreen_1.2.0-1.1_all.deb ... 98s Unpacking libjs-jquery-isonscreen (1.2.0-1.1) ... 98s Selecting previously unselected package python3-pytest-cov. 98s Preparing to unpack .../19-python3-pytest-cov_5.0.0-1_all.deb ... 98s Unpacking python3-pytest-cov (5.0.0-1) ... 98s Selecting previously unselected package python3-waitress. 98s Preparing to unpack .../20-python3-waitress_3.0.1-1_all.deb ... 98s Unpacking python3-waitress (3.0.1-1) ... 98s Selecting previously unselected package autopkgtest-satdep. 98s Preparing to unpack .../21-1-autopkgtest-satdep.deb ... 98s Unpacking autopkgtest-satdep (0) ... 98s Setting up python3-iniconfig (1.1.1-2) ... 98s Setting up python3-waitress (3.0.1-1) ... 98s Setting up python3-coverage (7.4.4+dfsg1-0ubuntu2) ... 99s Setting up libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 99s Setting up libpython3.13-minimal:arm64 (3.13.0-2) ... 99s Setting up python3-packaging (24.1-1) ... 99s Setting up python3-pluggy (1.5.0-1) ... 99s Setting up python3.13-minimal (3.13.0-2) ... 100s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 100s Setting up libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2.1) ... 100s Setting up libpython3.13-stdlib:arm64 (3.13.0-2) ... 100s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 100s Setting up python3.13 (3.13.0-2) ... 101s Setting up python3-pytest (8.3.3-1) ... 102s Setting up python3-all (3.12.7-1) ... 102s Setting up libjs-jquery-metadata (12-4) ... 102s Setting up libjs-jquery-isonscreen (1.2.0-1.1) ... 102s Setting up libjs-sphinxdoc (7.4.7-4) ... 102s Setting up libjs-jquery-tablesorter (1:2.31.3+dfsg1-4) ... 102s Setting up python-waitress-doc (3.0.1-1) ... 102s Setting up python3-pytest-cov (5.0.0-1) ... 102s Setting up autopkgtest-satdep (0) ... 102s Processing triggers for man-db (2.12.1-3) ... 103s Processing triggers for systemd (256.5-2ubuntu4) ... 107s (Reading database ... 81220 files and directories currently installed.) 107s Removing autopkgtest-satdep (0) ... 107s autopkgtest [11:31:38]: test unittests: [----------------------- 107s 107s *************************** 107s *** Testing with python3.13 107s *************************** 107s 107s Content of current working folder: 107s 107s total 16 107s drwxr-xr-x 3 ubuntu ubuntu 4096 Nov 13 11:31 . 107s drwxrwxrwt 5 root root 4096 Nov 13 11:31 .. 107s -rw-rw-r-- 1 ubuntu ubuntu 1938 Oct 29 00:10 setup.cfg 107s drwxrwxr-x 3 ubuntu ubuntu 4096 Oct 29 00:10 tests 107s Running tests... 107s 108s ============================= test session starts ============================== 108s platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.13 108s cachedir: .pytest_cache 108s rootdir: /tmp/autopkgtest.MznySF/autopkgtest_tmp 108s configfile: setup.cfg 108s plugins: cov-5.0.0, typeguard-4.4.1 110s collecting ... collected 805 items 110s 110s tests/test_adjustments.py::Test_asbool::test_s_is_1 PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_False PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_None PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_True PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_false PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_on PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_true PASSED 110s tests/test_adjustments.py::Test_asbool::test_s_is_yes PASSED 110s tests/test_adjustments.py::Test_as_socket_list::test_not_only_sockets_in_list PASSED 110s tests/test_adjustments.py::Test_as_socket_list::test_only_sockets_in_list PASSED 110s tests/test_adjustments.py::TestAdjustments::test_bad_port PASSED 110s tests/test_adjustments.py::TestAdjustments::test_badvar PASSED 110s tests/test_adjustments.py::TestAdjustments::test_default_listen PASSED 110s tests/test_adjustments.py::TestAdjustments::test_deprecated_send_bytes PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_forwarded_with_x_forwarded PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_host_port_listen PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_host_port PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_listen PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_unix_socket PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_host_port PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_listen PASSED 110s tests/test_adjustments.py::TestAdjustments::test_dont_use_unsupported_socket_types PASSED 110s tests/test_adjustments.py::TestAdjustments::test_good_sockets PASSED 110s tests/test_adjustments.py::TestAdjustments::test_goodvar_listen PASSED 110s tests/test_adjustments.py::TestAdjustments::test_goodvars PASSED 110s tests/test_adjustments.py::TestAdjustments::test_ipv4_disabled PASSED 110s tests/test_adjustments.py::TestAdjustments::test_ipv6_disabled PASSED 110s tests/test_adjustments.py::TestAdjustments::test_ipv6_no_port PASSED 110s tests/test_adjustments.py::TestAdjustments::test_multiple_listen PASSED 110s tests/test_adjustments.py::TestAdjustments::test_no_trusted_proxy_headers_trusted_proxy PASSED 110s tests/test_adjustments.py::TestAdjustments::test_server_header_removable PASSED 110s tests/test_adjustments.py::TestAdjustments::test_service_port PASSED 110s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_count_no_trusted_proxy PASSED 110s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_no_trusted_proxy PASSED 110s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list PASSED 110s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list_newlines PASSED 110s tests/test_adjustments.py::TestAdjustments::test_unknown_trusted_proxy_header PASSED 110s tests/test_adjustments.py::TestAdjustments::test_wildcard_listen PASSED 110s tests/test_adjustments.py::TestCLI::test_bad_param PASSED 110s tests/test_adjustments.py::TestCLI::test_both PASSED 110s tests/test_adjustments.py::TestCLI::test_call PASSED 110s tests/test_adjustments.py::TestCLI::test_cast_params PASSED 110s tests/test_adjustments.py::TestCLI::test_help PASSED 110s tests/test_adjustments.py::TestCLI::test_listen_params PASSED 110s tests/test_adjustments.py::TestCLI::test_multiple_listen_params PASSED 110s tests/test_adjustments.py::TestCLI::test_negative_boolean PASSED 110s tests/test_adjustments.py::TestCLI::test_noargs PASSED 110s tests/test_adjustments.py::TestCLI::test_positive_boolean PASSED 110s tests/test_adjustments.py::TestUnixSocket::test_dont_mix_internet_and_unix_sockets PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test___len__ PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test___nonzero__ PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_append PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_close PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer_None PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_bytes_less_than_zero PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_false PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_true PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_newfile PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_notzero PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_notzero PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_zero PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_gt_bytes PASSED 110s tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_lt_bytes PASSED 110s tests/test_buffers.py::TestTempfileBasedBuffer::test_newfile PASSED 110s tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_None PASSED 110s tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_not_None PASSED 110s tests/test_buffers.py::TestBytesIOBasedBuffer::test_newfile PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test___iter__ PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_append PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain_withskip PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain_withskip PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_neg_one PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable_closeable PASSED 110s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_seekable_closeable PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_None PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_not_None PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test___nonzero__ PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test___nonzero___on_int_overflow_buffer PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_large PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_small PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_longer_than_strbuf_limit PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_not_longer_than_srtbuf_limit PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_append_overflow PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_append_sz_gt_overflow PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_append_with_len_more_than_max_int PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_close_nobuf PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_close_withbuf PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_False PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_True PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_None PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_not_None PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_prune_buf_None PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf_overflow PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buflen_more_than_max_int PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None PASSED 110s tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None_allow_prune_True PASSED 110s tests/test_channel.py::TestHTTPChannel::test__flush_some_empty_outbuf PASSED 110s tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_nonzero PASSED 110s tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_zero PASSED 110s tests/test_channel.py::TestHTTPChannel::test__flush_some_outbuf_len_gt_sys_maxint PASSED 110s tests/test_channel.py::TestHTTPChannel::test_add_channel PASSED 110s tests/test_channel.py::TestHTTPChannel::test_cancel_no_requests PASSED 110s tests/test_channel.py::TestHTTPChannel::test_cancel_with_requests PASSED 110s tests/test_channel.py::TestHTTPChannel::test_ctor PASSED 110s tests/test_channel.py::TestHTTPChannel::test_del_channel PASSED 110s tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_close_raises PASSED 110s tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_first_empty PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_close_outbuf_raises_on_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_read_error PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_read_no_error PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_close_when_flushed PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_notify_after_flush PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_request_with_outbuf PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_no_outbuf_will_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_not_connected PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_notify_after_flush PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_othererror PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_socketerror PASSED 110s tests/test_channel.py::TestHTTPChannel::test_handle_write_with_requests PASSED 110s tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_not_will_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_will_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_readable_with_requests PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_false PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true_sent_true PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_no_chunk PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_connection_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_empty PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_preq_error PASSED 110s tests/test_channel.py::TestHTTPChannel::test_received_preq_not_completed PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_multiple_requests PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_one_error_request PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_one_request PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_request_error_raises_disconnect PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises_disconnect PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_already_wrote_header PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header PASSED 110s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED 110s tests/test_channel.py::TestHTTPChannel::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED 110s tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf PASSED 110s tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf_will_close PASSED 110s tests/test_channel.py::TestHTTPChannel::test_writable_something_in_outbuf PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_attempts_flush_high_water_and_exception PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected_while_over_watermark PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_empty_byte PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_filewrapper PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_flush_and_exception PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_nonempty_byte PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_rotates_outbuf_on_overflow PASSED 110s tests/test_channel.py::TestHTTPChannel::test_write_soon_waits_on_backpressure PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_empty_outbuf PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_nonzero PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_zero PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_outbuf_len_gt_sys_maxint PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test_add_channel PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_no_requests PASSED 110s tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_with_requests PASSED 111s tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect PASSED 111s tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect_immediate PASSED 111s tests/test_channel.py::TestHTTPChannelLookahead::test_ctor PASSED 111s tests/test_channel.py::TestHTTPChannelLookahead::test_del_channel PASSED 111s tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_close_raises PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_first_empty PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close_outbuf_raises_on_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_error PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_no_error PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_close_when_flushed PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_notify_after_flush PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_request_with_outbuf PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_no_outbuf_will_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_not_connected PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_notify_after_flush PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_othererror PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_socketerror PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_with_requests PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_lookahead_bad_request_drop_extra_data PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_lookahead_continue PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_not_will_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_will_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_with_requests PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_false PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true_sent_true PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_no_chunk PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_connection_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_empty PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_error PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_not_completed PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_multiple_requests PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_error_request PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_request PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_error_raises_disconnect PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises_disconnect PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_already_wrote_header PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf_will_close PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_something_in_outbuf PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_attempts_flush_high_water_and_exception PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected_while_over_watermark PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_empty_byte PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_filewrapper PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_flush_and_exception PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_nonempty_byte PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_rotates_outbuf_on_overflow PASSED 112s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_waits_on_backpressure PASSED 115s tests/test_functional.py::SleepyThreadTests::test_it PASSED 115s tests/test_functional.py::TcpEchoTests::test_bad_host_header PASSED 115s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding PASSED 115s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_extension PASSED 115s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_hex PASSED 115s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED 115s tests/test_functional.py::TcpEchoTests::test_chunking_request_with_content PASSED 115s tests/test_functional.py::TcpEchoTests::test_chunking_request_without_content PASSED 115s tests/test_functional.py::TcpEchoTests::test_date_and_server PASSED 115s tests/test_functional.py::TcpEchoTests::test_keepalive_http10_explicit PASSED 116s tests/test_functional.py::TcpEchoTests::test_keepalive_http11_connclose PASSED 116s tests/test_functional.py::TcpEchoTests::test_keepalive_http11_explicit PASSED 116s tests/test_functional.py::TcpEchoTests::test_keepalive_http_10 PASSED 116s tests/test_functional.py::TcpEchoTests::test_keepalive_http_11 PASSED 116s tests/test_functional.py::TcpEchoTests::test_large_body PASSED 116s tests/test_functional.py::TcpEchoTests::test_many_clients PASSED 116s tests/test_functional.py::TcpEchoTests::test_multiple_requests_with_body PASSED 116s tests/test_functional.py::TcpEchoTests::test_multiple_requests_without_body PASSED 116s tests/test_functional.py::TcpEchoTests::test_proxy_headers PASSED 116s tests/test_functional.py::TcpEchoTests::test_send_empty_body PASSED 116s tests/test_functional.py::TcpEchoTests::test_send_with_body PASSED 117s tests/test_functional.py::TcpEchoTests::test_without_crlf PASSED 117s tests/test_functional.py::TcpPipeliningTests::test_pipelining PASSED 117s tests/test_functional.py::TcpExpectContinueTests::test_expect_continue PASSED 117s tests/test_functional.py::TcpBadContentLengthTests::test_long_body PASSED 117s tests/test_functional.py::TcpBadContentLengthTests::test_short_body PASSED 117s tests/test_functional.py::TcpNoContentLengthTests::test_http10_generator PASSED 117s tests/test_functional.py::TcpNoContentLengthTests::test_http10_list PASSED 117s tests/test_functional.py::TcpNoContentLengthTests::test_http10_listlentwo PASSED 117s tests/test_functional.py::TcpNoContentLengthTests::test_http11_generator PASSED 117s tests/test_functional.py::TcpNoContentLengthTests::test_http11_list PASSED 117s tests/test_functional.py::TcpNoContentLengthTests::test_http11_listlentwo PASSED 118s tests/test_functional.py::TcpWriteCallbackTests::test_equal_body PASSED 118s tests/test_functional.py::TcpWriteCallbackTests::test_long_body PASSED 118s tests/test_functional.py::TcpWriteCallbackTests::test_no_content_length PASSED 118s tests/test_functional.py::TcpWriteCallbackTests::test_short_body PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_chunked_encoding PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED 118s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED 119s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED 119s tests/test_functional.py::TcpTooLargeTests::test_request_headers_too_large_http11 PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http10 PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11 PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11_close PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_after_write_cb PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_10 PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11 PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11_close PASSED 119s tests/test_functional.py::TcpInternalServerErrorTests::test_in_generator PASSED 119s tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED 119s tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED 119s tests/test_functional.py::TcpFileWrapperTests::test_filelike_http10 PASSED 119s tests/test_functional.py::TcpFileWrapperTests::test_filelike_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_filelike_longcl_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http10 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_filelike_shortcl_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http10 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_iobase_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_longcl_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http10 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http11 PASSED 120s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_shortcl_http11 PASSED 120s tests/test_functional.py::UnixEchoTests::test_bad_host_header PASSED 120s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding PASSED 120s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_extension PASSED 121s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_hex PASSED 121s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED 121s tests/test_functional.py::UnixEchoTests::test_chunking_request_with_content PASSED 121s tests/test_functional.py::UnixEchoTests::test_chunking_request_without_content PASSED 121s tests/test_functional.py::UnixEchoTests::test_date_and_server PASSED 121s tests/test_functional.py::UnixEchoTests::test_keepalive_http10_explicit PASSED 121s tests/test_functional.py::UnixEchoTests::test_keepalive_http11_connclose PASSED 121s tests/test_functional.py::UnixEchoTests::test_keepalive_http11_explicit PASSED 121s tests/test_functional.py::UnixEchoTests::test_keepalive_http_10 PASSED 121s tests/test_functional.py::UnixEchoTests::test_keepalive_http_11 PASSED 121s tests/test_functional.py::UnixEchoTests::test_large_body PASSED 121s tests/test_functional.py::UnixEchoTests::test_many_clients PASSED 121s tests/test_functional.py::UnixEchoTests::test_multiple_requests_with_body PASSED 122s tests/test_functional.py::UnixEchoTests::test_multiple_requests_without_body PASSED 122s tests/test_functional.py::UnixEchoTests::test_proxy_headers PASSED 122s tests/test_functional.py::UnixEchoTests::test_send_empty_body PASSED 122s tests/test_functional.py::UnixEchoTests::test_send_with_body PASSED 122s tests/test_functional.py::UnixEchoTests::test_without_crlf PASSED 122s tests/test_functional.py::UnixPipeliningTests::test_pipelining PASSED 122s tests/test_functional.py::UnixExpectContinueTests::test_expect_continue PASSED 122s tests/test_functional.py::UnixBadContentLengthTests::test_long_body PASSED 122s tests/test_functional.py::UnixBadContentLengthTests::test_short_body PASSED 122s tests/test_functional.py::UnixNoContentLengthTests::test_http10_generator PASSED 122s tests/test_functional.py::UnixNoContentLengthTests::test_http10_list PASSED 122s tests/test_functional.py::UnixNoContentLengthTests::test_http10_listlentwo PASSED 122s tests/test_functional.py::UnixNoContentLengthTests::test_http11_generator PASSED 122s tests/test_functional.py::UnixNoContentLengthTests::test_http11_list PASSED 123s tests/test_functional.py::UnixNoContentLengthTests::test_http11_listlentwo PASSED 123s tests/test_functional.py::UnixWriteCallbackTests::test_equal_body PASSED 123s tests/test_functional.py::UnixWriteCallbackTests::test_long_body PASSED 123s tests/test_functional.py::UnixWriteCallbackTests::test_no_content_length PASSED 123s tests/test_functional.py::UnixWriteCallbackTests::test_short_body PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_chunked_encoding PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED 123s tests/test_functional.py::UnixTooLargeTests::test_request_headers_too_large_http11 PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http10 PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11 PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11_close PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_after_write_cb PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_10 PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11 PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11_close PASSED 124s tests/test_functional.py::UnixInternalServerErrorTests::test_in_generator PASSED 124s tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED 124s tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED 124s tests/test_functional.py::UnixFileWrapperTests::test_filelike_http10 PASSED 124s tests/test_functional.py::UnixFileWrapperTests::test_filelike_http11 PASSED 124s tests/test_functional.py::UnixFileWrapperTests::test_filelike_longcl_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http10 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_filelike_shortcl_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http10 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_iobase_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_longcl_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http10 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http11 PASSED 125s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_shortcl_http11 PASSED 125s tests/test_init.py::Test_serve::test_it PASSED 125s tests/test_init.py::Test_serve_paste::test_it PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_close_with_body_rcv PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_close_with_no_body_rcv PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_None PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_nonNone PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_expect_continue PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_te_chunked PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_minus PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_plus PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_connection_close PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_cr_only PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_empty PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_first_line PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_header PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_gardenpath PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_backtrack_bad PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_chars PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_folding_spacing PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_no_colon PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace_vtab PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_lf_only PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_content_length PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_extra_space PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded_multiple PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_no_cr_in_headerplus PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_other_whitespace PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_short_values PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_multiple PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_unicode PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_whitespace PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_already_completed PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_bad_host_header PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_bad_transfer_encoding PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_body_too_large PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_chunked_completed_sets_content_length PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_cl_too_large PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_error_from_parser PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_get_no_headers PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_headers_not_too_large_multiple_chunks PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_headers_too_large PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_no_doublecr PASSED 125s tests/test_parser.py::TestHTTPRequestParser::test_received_nonsense_nothing PASSED 125s tests/test_parser.py::Test_split_uri::test_split_uri_path PASSED 125s tests/test_parser.py::Test_split_uri::test_split_uri_path_query PASSED 125s tests/test_parser.py::Test_split_uri::test_split_uri_path_query_fragment PASSED 125s tests/test_parser.py::Test_split_uri::test_split_uri_unicode_error_raises_parsing_error PASSED 125s tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_needed PASSED 125s tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_unneeded PASSED 125s tests/test_parser.py::Test_split_uri::test_split_url_https PASSED 125s tests/test_parser.py::Test_split_uri::test_split_url_with_fragment PASSED 125s tests/test_parser.py::Test_split_uri::test_split_url_with_query PASSED 125s tests/test_parser.py::Test_split_uri::test_split_url_with_query_empty PASSED 125s tests/test_parser.py::Test_get_header_lines::test_get_header_lines PASSED 125s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_folded PASSED 125s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_malformed PASSED 125s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_tabbed PASSED 125s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_bad_method PASSED 125s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_bad_version PASSED 125s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_lowercase_method PASSED 125s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_matchok PASSED 125s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_missing_version PASSED 126s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_nomatch PASSED 126s tests/test_parser.py::TestHTTPRequestParserIntegration::testComplexGET PASSED 126s tests/test_parser.py::TestHTTPRequestParserIntegration::testDuplicateHeaders PASSED 126s tests/test_parser.py::TestHTTPRequestParserIntegration::testProxyGET PASSED 126s tests/test_parser.py::TestHTTPRequestParserIntegration::testSimpleGET PASSED 126s tests/test_parser.py::TestHTTPRequestParserIntegration::testSpoofedHeadersDropped PASSED 126s tests/test_parser.py::Test_unquote_bytes_to_wsgi::test_highorder PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_clears_headers_if_untrusted_proxy PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_all_headers_including_untrusted PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_only_trusted_headers PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_bogus_scheme_override PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_trusted PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_untrusted PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_warning_other_proxy_headers PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_empty_pair PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_for_bad_quote PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_host_bad_quote PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_minimal PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_trust_only_two PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_no_equals PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_token_whitespace PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_value_whitespace PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_443 PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_80 PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_warning_unknown_token PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_port PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_proto PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_no_valid_proxy_headers PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for_v6_missing_brackets PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port_limit_one_trusted PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_forwarded_port PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_port PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_without_port PASSED 126s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwared_for_multiple PASSED 126s tests/test_receiver.py::TestFixedStreamReceiver::test___len__ PASSED 126s tests/test_receiver.py::TestFixedStreamReceiver::test_getbuf PASSED 126s tests/test_receiver.py::TestFixedStreamReceiver::test_getfile PASSED 126s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_gt_datalen PASSED 126s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lt_1 PASSED 126s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lte_datalen PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test___len__ PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_alreadycompleted PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_getbuf PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_getfile PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_is_properly_terminated PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_not_properly_terminated PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_not_received PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_received PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_garbage_in_input PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_notfinished PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks_split PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_remain_gt_zero PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_finished PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_not_finished PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_crlf PASSED 126s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_lf PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\n] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid=] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\r] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid = true] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[test] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true;other=true] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[0x04] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+0x04] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[x04] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+04] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 04] PASSED 126s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 0x04] PASSED 126s tests/test_regression.py::test_suite PASSED 126s tests/test_runner.py::Test_match::test_bad_module PASSED 126s tests/test_runner.py::Test_match::test_empty PASSED 126s tests/test_runner.py::Test_match::test_module_obj PASSED 126s tests/test_runner.py::Test_match::test_module_only PASSED 126s tests/test_runner.py::Test_resolve::test_bad_module PASSED 126s tests/test_runner.py::Test_resolve::test_complex_happy_path PASSED 126s tests/test_runner.py::Test_resolve::test_nonexistent_function PASSED 126s tests/test_runner.py::Test_resolve::test_simple_happy_path PASSED 126s tests/test_runner.py::Test_run::test_bad PASSED 126s tests/test_runner.py::Test_run::test_bad_app_module PASSED 126s tests/test_runner.py::Test_run::test_bad_app_object PASSED 126s tests/test_runner.py::Test_run::test_bad_apps_app PASSED 126s tests/test_runner.py::Test_run::test_cwd_added_to_path PASSED 126s tests/test_runner.py::Test_run::test_help PASSED 126s tests/test_runner.py::Test_run::test_multiple_apps_app PASSED 126s tests/test_runner.py::Test_run::test_no_app PASSED 126s tests/test_runner.py::Test_run::test_returned_app PASSED 126s tests/test_runner.py::Test_run::test_simple_call PASSED 126s tests/test_runner.py::Test_helper::test_exception_logging PASSED 126s tests/test_server.py::TestWSGIServer::test_add_task PASSED 126s tests/test_server.py::TestWSGIServer::test_backward_compatibility PASSED 126s tests/test_server.py::TestWSGIServer::test_create_with_multiple_tcp_sockets PASSED 126s tests/test_server.py::TestWSGIServer::test_create_with_one_socket_handle_accept_noerror PASSED 126s tests/test_server.py::TestWSGIServer::test_create_with_one_socket_should_not_bind_socket PASSED 126s tests/test_server.py::TestWSGIServer::test_create_with_one_tcp_socket PASSED 126s tests/test_server.py::TestWSGIServer::test_ctor_app_is_None PASSED 126s tests/test_server.py::TestWSGIServer::test_ctor_makes_dispatcher PASSED 126s tests/test_server.py::TestWSGIServer::test_ctor_start_false PASSED 126s tests/test_server.py::TestWSGIServer::test_ctor_start_true PASSED 126s tests/test_server.py::TestWSGIServer::test_get_server_multi PASSED 126s tests/test_server.py::TestWSGIServer::test_handle_accept_noerror PASSED 126s tests/test_server.py::TestWSGIServer::test_handle_accept_other_socket_error PASSED 126s tests/test_server.py::TestWSGIServer::test_handle_accept_wouldblock_socket_error PASSED 126s tests/test_server.py::TestWSGIServer::test_handle_connect PASSED 126s tests/test_server.py::TestWSGIServer::test_handle_read PASSED 126s tests/test_server.py::TestWSGIServer::test_maintenance PASSED 126s tests/test_server.py::TestWSGIServer::test_pull_trigger PASSED 126s tests/test_server.py::TestWSGIServer::test_readable_maintenance_false PASSED 126s tests/test_server.py::TestWSGIServer::test_readable_maintenance_true PASSED 126s tests/test_server.py::TestWSGIServer::test_readable_maplen_gt_connection_limit PASSED 126s tests/test_server.py::TestWSGIServer::test_readable_maplen_lt_connection_limit PASSED 126s tests/test_server.py::TestWSGIServer::test_readable_maplen_toggles_connection_overflow PASSED 126s tests/test_server.py::TestWSGIServer::test_readable_not_accepting PASSED 126s tests/test_server.py::TestWSGIServer::test_run PASSED 126s tests/test_server.py::TestWSGIServer::test_run_base_server PASSED 126s tests/test_server.py::TestWSGIServer::test_writable PASSED 126s tests/test_server.py::TestUnixWSGIServer::test_create_with_unix_socket PASSED 126s tests/test_server.py::TestUnixWSGIServer::test_creates_new_sockinfo PASSED 126s tests/test_server.py::TestUnixWSGIServer::test_handle_accept PASSED 126s tests/test_server.py::TestUnixWSGIServer::test_unix PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_all_busy_threads PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_idle_threads PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_handler_thread_task_raises PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_decrease PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase_with_existing PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_same PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_cancel_pending PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_threads PASSED 126s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_one_thread PASSED 126s tests/test_task.py::TestTask::test_build_response_header_bad_http_version PASSED 126s tests/test_task.py::TestTask::test_build_response_header_date_exists PASSED 126s tests/test_task.py::TestTask::test_build_response_header_preexisting_content_length PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_no_content_length PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_with_content_length PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v11_1xx_no_content_length_or_transfer_encoding PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v11_200_no_content_length PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v11_204_no_content_length_or_transfer_encoding PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v11_304_no_content_length_or_transfer_encoding PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v11_connection_closed_by_client PASSED 126s tests/test_task.py::TestTask::test_build_response_header_v11_connection_keepalive_by_client PASSED 126s tests/test_task.py::TestTask::test_build_response_header_via_added PASSED 126s tests/test_task.py::TestTask::test_ctor_version_not_in_known PASSED 126s tests/test_task.py::TestTask::test_finish_chunked_response PASSED 126s tests/test_task.py::TestTask::test_finish_didnt_write_header PASSED 126s tests/test_task.py::TestTask::test_finish_wrote_header PASSED 126s tests/test_task.py::TestTask::test_remove_content_length_header PASSED 126s tests/test_task.py::TestTask::test_remove_content_length_header_with_other PASSED 126s tests/test_task.py::TestTask::test_start PASSED 126s tests/test_task.py::TestTask::test_write_chunked_response PASSED 126s tests/test_task.py::TestTask::test_write_header_not_written PASSED 126s tests/test_task.py::TestTask::test_write_preexisting_content_length PASSED 127s tests/test_task.py::TestTask::test_write_start_response_uncalled PASSED 127s tests/test_task.py::TestTask::test_write_wrote_header PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_twice_wo_exc_info PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_exc_info_complete PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_unwritten PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_written PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_calls_write PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_head_with_content_length PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_closeable PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_empty_chunk_as_first PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_badcl PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_nocl PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_len1_chunk_without_cl PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_too_few_bytes PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_returns_too_many_bytes PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_without_body_204_logged PASSED 127s tests/test_task.py::TestWSGITask::test_execute_app_without_body_304_logged PASSED 127s tests/test_task.py::TestWSGITask::test_execute_bad_header_key PASSED 127s tests/test_task.py::TestWSGITask::test_execute_bad_header_name_control_characters PASSED 127s tests/test_task.py::TestWSGITask::test_execute_bad_header_value PASSED 127s tests/test_task.py::TestWSGITask::test_execute_bad_header_value_control_characters PASSED 127s tests/test_task.py::TestWSGITask::test_execute_bad_status_control_characters PASSED 127s tests/test_task.py::TestWSGITask::test_execute_bad_status_value PASSED 127s tests/test_task.py::TestWSGITask::test_execute_hopbyhop_header PASSED 127s tests/test_task.py::TestWSGITask::test_execute_with_content_length_header PASSED 127s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_empty_path PASSED 127s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_hit PASSED 127s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_miss PASSED 127s tests/test_task.py::TestWSGITask::test_get_environment_already_cached PASSED 127s tests/test_task.py::TestWSGITask::test_get_environment_no_query PASSED 127s tests/test_task.py::TestWSGITask::test_get_environment_path_empty PASSED 127s tests/test_task.py::TestWSGITask::test_get_environment_path_startswith_more_than_one_slash PASSED 127s tests/test_task.py::TestWSGITask::test_get_environment_values PASSED 127s tests/test_task.py::TestWSGITask::test_get_environment_with_query PASSED 127s tests/test_task.py::TestWSGITask::test_preserve_header_value_order PASSED 127s tests/test_task.py::TestWSGITask::test_service PASSED 127s tests/test_task.py::TestWSGITask::test_service_server_raises_socket_error PASSED 127s tests/test_task.py::TestErrorTask::test_execute_http_10 PASSED 127s tests/test_task.py::TestErrorTask::test_execute_http_11 PASSED 127s tests/test_task.py::TestErrorTask::test_execute_http_11_close PASSED 127s tests/test_task.py::TestErrorTask::test_execute_http_11_keep_forces_close PASSED 127s tests/test_trigger.py::Test_trigger::test__close PASSED 127s tests/test_trigger.py::Test_trigger::test__physical_pull PASSED 127s tests/test_trigger.py::Test_trigger::test_close PASSED 127s tests/test_trigger.py::Test_trigger::test_handle_close PASSED 127s tests/test_trigger.py::Test_trigger::test_handle_connect PASSED 127s tests/test_trigger.py::Test_trigger::test_handle_read_no_socket_error PASSED 127s tests/test_trigger.py::Test_trigger::test_handle_read_socket_error PASSED 127s tests/test_trigger.py::Test_trigger::test_handle_read_thunk PASSED 127s tests/test_trigger.py::Test_trigger::test_handle_read_thunk_error PASSED 127s tests/test_trigger.py::Test_trigger::test_pull_trigger_nothunk PASSED 127s tests/test_trigger.py::Test_trigger::test_pull_trigger_thunk PASSED 127s tests/test_trigger.py::Test_trigger::test_readable PASSED 127s tests/test_trigger.py::Test_trigger::test_writable PASSED 127s tests/test_utilities.py::Test_parse_http_date::test_neither PASSED 127s tests/test_utilities.py::Test_parse_http_date::test_rfc822 PASSED 127s tests/test_utilities.py::Test_parse_http_date::test_rfc850 PASSED 127s tests/test_utilities.py::Test_build_http_date::test_rountdrip PASSED 127s tests/test_utilities.py::Test_unpack_rfc850::test_it PASSED 127s tests/test_utilities.py::Test_unpack_rfc_822::test_it PASSED 127s tests/test_utilities.py::Test_find_double_newline::test_double_crfl PASSED 127s tests/test_utilities.py::Test_find_double_newline::test_double_linefeed PASSED 127s tests/test_utilities.py::Test_find_double_newline::test_empty PASSED 127s tests/test_utilities.py::Test_find_double_newline::test_mixed PASSED 127s tests/test_utilities.py::Test_find_double_newline::test_one_crlf PASSED 127s tests/test_utilities.py::Test_find_double_newline::test_one_linefeed PASSED 127s tests/test_utilities.py::TestBadRequest::test_it PASSED 127s tests/test_utilities.py::Test_undquote::test_empty PASSED 127s tests/test_utilities.py::Test_undquote::test_invalid_quoting PASSED 127s tests/test_utilities.py::Test_undquote::test_invalid_quoting_single_quote PASSED 127s tests/test_utilities.py::Test_undquote::test_quoted PASSED 127s tests/test_utilities.py::Test_undquote::test_quoted_backslash_htab PASSED 127s tests/test_utilities.py::Test_undquote::test_quoted_backslash_invalid PASSED 127s tests/test_utilities.py::Test_undquote::test_quoted_backslash_quote PASSED 127s tests/test_utilities.py::Test_undquote::test_quoted_htab PASSED 127s tests/test_utilities.py::Test_undquote::test_unquoted PASSED 127s tests/test_wasyncore.py::HelperFunctionTests::test_closeall PASSED 127s tests/test_wasyncore.py::HelperFunctionTests::test_closeall_default PASSED 127s tests/test_wasyncore.py::HelperFunctionTests::test_compact_traceback PASSED 127s tests/test_wasyncore.py::HelperFunctionTests::test_readwrite PASSED 127s tests/test_wasyncore.py::HelperFunctionTests::test_readwriteexc PASSED 127s tests/test_wasyncore.py::DispatcherTests::test_basic PASSED 127s tests/test_wasyncore.py::DispatcherTests::test_log PASSED 127s tests/test_wasyncore.py::DispatcherTests::test_log_info PASSED 127s tests/test_wasyncore.py::DispatcherTests::test_repr PASSED 127s tests/test_wasyncore.py::DispatcherTests::test_strerror PASSED 127s tests/test_wasyncore.py::DispatcherTests::test_unhandled PASSED 127s tests/test_wasyncore.py::FileWrapperTest::test_close_twice PASSED 127s tests/test_wasyncore.py::FileWrapperTest::test_dispatcher PASSED 127s tests/test_wasyncore.py::FileWrapperTest::test_recv PASSED 127s tests/test_wasyncore.py::FileWrapperTest::test_resource_warning PASSED 127s tests/test_wasyncore.py::FileWrapperTest::test_send PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_bind PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_connection_attributes PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_create_socket PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accept PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accepted PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close_after_conn_broken PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_connect PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_error PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_expt PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_read PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_write PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_quick_connect PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_set_reuse_addr PASSED 127s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_bind PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_connection_attributes PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_create_socket PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accept PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accepted PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close_after_conn_broken PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_connect PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_error PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_expt PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_read PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_write PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_quick_connect PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_set_reuse_addr PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_bind PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_connection_attributes PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_create_socket PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accept PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accepted PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close_after_conn_broken PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_connect PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_error PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_expt PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_read PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_write PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_quick_connect PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_set_reuse_addr PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_bind PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_connection_attributes PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_create_socket PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accept PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accepted PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close_after_conn_broken PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_connect PASSED 128s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_error PASSED 129s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_expt PASSED 129s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_read PASSED 129s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_write PASSED 129s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_quick_connect PASSED 129s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_set_reuse_addr PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_bind SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_connection_attributes PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_create_socket PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accept PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accepted PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close_after_conn_broken PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_connect PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_error PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_expt SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_read PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_write PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_quick_connect SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_set_reuse_addr SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_bind SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_connection_attributes PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_create_socket PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accept PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accepted PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close_after_conn_broken PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_connect PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_error PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_expt SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_read PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_write PASSED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_quick_connect SKIPPED 129s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_set_reuse_addr SKIPPED 129s tests/test_wasyncore.py::Test__strerror::test_gardenpath PASSED 129s tests/test_wasyncore.py::Test__strerror::test_unknown PASSED 129s tests/test_wasyncore.py::Test_read::test_gardenpath PASSED 129s tests/test_wasyncore.py::Test_read::test_non_reraised PASSED 129s tests/test_wasyncore.py::Test_read::test_reraised PASSED 129s tests/test_wasyncore.py::Test_write::test_gardenpath PASSED 129s tests/test_wasyncore.py::Test_write::test_non_reraised PASSED 129s tests/test_wasyncore.py::Test_write::test_reraised PASSED 129s tests/test_wasyncore.py::Test__exception::test_gardenpath PASSED 129s tests/test_wasyncore.py::Test__exception::test_non_reraised PASSED 129s tests/test_wasyncore.py::Test__exception::test_reraised PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_exception_in_reraised PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_exception_not_in_reraised PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_handle_close PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_handle_expt_event PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_handle_read_event PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_handle_write_event PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_socketerror_in_disconnected PASSED 129s tests/test_wasyncore.py::Test_readwrite::test_socketerror_not_in_disconnected PASSED 129s tests/test_wasyncore.py::Test_poll::test_nothing_writable_nothing_readable_but_map_not_empty PASSED 129s tests/test_wasyncore.py::Test_poll::test_select_raises_EINTR PASSED 129s tests/test_wasyncore.py::Test_poll::test_select_raises_non_EINTR PASSED 129s tests/test_wasyncore.py::Test_poll2::test_select_raises_EINTR PASSED 129s tests/test_wasyncore.py::Test_poll2::test_select_raises_non_EINTR PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test___repr__accepting PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test___repr__connected PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_TypeError PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_unexpected_socketerror PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_close_raises_unknown_socket_error PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_accepted PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_close PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_connect_event_getsockopt_returns_error PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_error_gardenpath PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_expt_event_getsockopt_returns_error PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_read_event_not_accepting_not_connected_connecting PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_handle_write_event_while_accepting PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_recv_raises_disconnect PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_send_raise_EWOULDBLOCK PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_send_raise_unexpected_socketerror PASSED 129s tests/test_wasyncore.py::Test_dispatcher::test_set_reuse_addr_with_socketerror PASSED 129s tests/test_wasyncore.py::Test_close_all::test_reraised_exc_on_close PASSED 129s tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_ebadf PASSED 129s tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_non_ebadf PASSED 131s tests/test_wasyncore.py::Test_close_all::test_unknown_exc_on_close PASSED 131s 131s =============================== warnings summary =============================== 131s tests/test_adjustments.py::TestAdjustments::test_goodvars 131s /usr/lib/python3/dist-packages/waitress/adjustments.py:312: DeprecationWarning: send_bytes will be removed in a future release 131s warnings.warn( 131s 131s tests/test_regression.py::test_suite 131s /usr/lib/python3/dist-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`? 131s warnings.warn( 131s 131s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 131s 131s ---------- coverage: platform linux, python 3.13.0-final-0 ----------- 131s Name Stmts Miss Cover 131s ----------------------------------------------------------------------------------- 131s /etc/python3.13/sitecustomize.py 5 2 60% 131s /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 131s /usr/lib/python3/dist-packages/_pytest/_argcomplete.py 36 35 3% 131s /usr/lib/python3/dist-packages/_pytest/_code/code.py 754 686 9% 131s /usr/lib/python3/dist-packages/_pytest/_code/source.py 140 138 1% 131s /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py 149 103 31% 131s /usr/lib/python3/dist-packages/_pytest/_io/wcwidth.py 26 17 35% 131s /usr/lib/python3/dist-packages/_pytest/_py/path.py 943 938 1% 131s /usr/lib/python3/dist-packages/_pytest/assertion/__init__.py 88 74 16% 131s /usr/lib/python3/dist-packages/_pytest/assertion/rewrite.py 665 391 41% 131s /usr/lib/python3/dist-packages/_pytest/cacheprovider.py 326 272 17% 131s /usr/lib/python3/dist-packages/_pytest/capture.py 606 561 7% 131s /usr/lib/python3/dist-packages/_pytest/compat.py 120 77 36% 131s /usr/lib/python3/dist-packages/_pytest/config/__init__.py 909 763 16% 131s /usr/lib/python3/dist-packages/_pytest/config/argparsing.py 249 208 16% 131s /usr/lib/python3/dist-packages/_pytest/config/compat.py 45 24 47% 131s /usr/lib/python3/dist-packages/_pytest/debugging.py 226 216 4% 131s /usr/lib/python3/dist-packages/_pytest/deprecated.py 15 14 7% 131s /usr/lib/python3/dist-packages/_pytest/doctest.py 351 343 2% 131s /usr/lib/python3/dist-packages/_pytest/faulthandler.py 60 47 22% 131s /usr/lib/python3/dist-packages/_pytest/fixtures.py 898 578 36% 131s /usr/lib/python3/dist-packages/_pytest/helpconfig.py 133 123 8% 131s /usr/lib/python3/dist-packages/_pytest/junitxml.py 365 363 1% 131s /usr/lib/python3/dist-packages/_pytest/legacypath.py 215 192 11% 131s /usr/lib/python3/dist-packages/_pytest/logging.py 450 327 27% 131s /usr/lib/python3/dist-packages/_pytest/main.py 509 294 42% 131s /usr/lib/python3/dist-packages/_pytest/mark/__init__.py 143 128 10% 131s /usr/lib/python3/dist-packages/_pytest/mark/structures.py 266 183 31% 131s /usr/lib/python3/dist-packages/_pytest/monkeypatch.py 164 150 9% 131s /usr/lib/python3/dist-packages/_pytest/nodes.py 309 213 31% 131s /usr/lib/python3/dist-packages/_pytest/outcomes.py 99 90 9% 131s /usr/lib/python3/dist-packages/_pytest/pastebin.py 71 70 1% 131s /usr/lib/python3/dist-packages/_pytest/pathlib.py 459 377 18% 131s /usr/lib/python3/dist-packages/_pytest/python.py 774 448 42% 131s /usr/lib/python3/dist-packages/_pytest/python_path.py 17 16 6% 131s /usr/lib/python3/dist-packages/_pytest/reports.py 298 254 15% 131s /usr/lib/python3/dist-packages/_pytest/runner.py 302 170 44% 131s /usr/lib/python3/dist-packages/_pytest/scope.py 37 27 27% 131s /usr/lib/python3/dist-packages/_pytest/setuponly.py 57 49 14% 131s /usr/lib/python3/dist-packages/_pytest/setupplan.py 23 19 17% 131s /usr/lib/python3/dist-packages/_pytest/skipping.py 165 135 18% 131s /usr/lib/python3/dist-packages/_pytest/stash.py 35 24 31% 131s /usr/lib/python3/dist-packages/_pytest/stepwise.py 69 67 3% 131s /usr/lib/python3/dist-packages/_pytest/terminal.py 954 736 23% 131s /usr/lib/python3/dist-packages/_pytest/threadexception.py 45 29 36% 131s /usr/lib/python3/dist-packages/_pytest/tmpdir.py 156 134 14% 131s /usr/lib/python3/dist-packages/_pytest/unittest.py 263 165 37% 131s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py 47 31 34% 131s /usr/lib/python3/dist-packages/_pytest/warnings.py 73 47 36% 131s /usr/lib/python3/dist-packages/apport_python_hook.py 119 109 8% 131s /usr/lib/python3/dist-packages/pluggy/_callers.py 109 51 53% 131s /usr/lib/python3/dist-packages/pluggy/_hooks.py 263 177 33% 131s /usr/lib/python3/dist-packages/pluggy/_manager.py 235 185 21% 131s /usr/lib/python3/dist-packages/pluggy/_result.py 50 42 16% 131s /usr/lib/python3/dist-packages/pluggy/_tracing.py 48 38 21% 131s /usr/lib/python3/dist-packages/pytest_cov/compat.py 12 8 33% 131s /usr/lib/python3/dist-packages/pytest_cov/embed.py 69 63 9% 131s /usr/lib/python3/dist-packages/pytest_cov/engine.py 247 226 9% 131s /usr/lib/python3/dist-packages/pytest_cov/plugin.py 225 207 8% 131s /usr/lib/python3/dist-packages/typeguard/_pytest_plugin.py 56 42 25% 131s /usr/lib/python3/dist-packages/waitress/__init__.py 11 0 100% 131s /usr/lib/python3/dist-packages/waitress/adjustments.py 181 0 100% 131s /usr/lib/python3/dist-packages/waitress/buffers.py 212 0 100% 131s /usr/lib/python3/dist-packages/waitress/channel.py 258 0 100% 131s /usr/lib/python3/dist-packages/waitress/compat.py 10 0 100% 131s /usr/lib/python3/dist-packages/waitress/parser.py 199 0 100% 131s /usr/lib/python3/dist-packages/waitress/proxy_headers.py 162 0 100% 131s /usr/lib/python3/dist-packages/waitress/receiver.py 111 0 100% 131s /usr/lib/python3/dist-packages/waitress/rfc7230.py 26 0 100% 131s /usr/lib/python3/dist-packages/waitress/runner.py 69 0 100% 131s /usr/lib/python3/dist-packages/waitress/server.py 177 0 100% 131s /usr/lib/python3/dist-packages/waitress/task.py 324 0 100% 131s /usr/lib/python3/dist-packages/waitress/trigger.py 56 0 100% 131s /usr/lib/python3/dist-packages/waitress/utilities.py 114 0 100% 131s /usr/lib/python3/dist-packages/waitress/wasyncore.py 350 0 100% 131s tests/__init__.py 0 0 100% 131s tests/fixtureapps/__init__.py 0 0 100% 131s tests/fixtureapps/badcl.py 0 0 100% 131s tests/fixtureapps/echo.py 7 0 100% 131s tests/fixtureapps/error.py 0 0 100% 131s tests/fixtureapps/error_traceback.py 0 0 100% 131s tests/fixtureapps/filewrapper.py 4 0 100% 131s tests/fixtureapps/getline.py 15 4 73% 131s tests/fixtureapps/nocl.py 0 0 100% 131s tests/fixtureapps/runner.py 0 0 100% 131s tests/fixtureapps/sleepy.py 1 0 100% 131s tests/fixtureapps/toolarge.py 0 0 100% 131s tests/fixtureapps/writecb.py 0 0 100% 131s tests/test_adjustments.py 241 0 100% 131s tests/test_buffers.py 421 0 100% 131s tests/test_channel.py 896 3 99% 131s tests/test_functional.py 1145 2 99% 131s tests/test_init.py 36 0 100% 131s tests/test_parser.py 441 0 100% 131s tests/test_proxy_headers.py 311 0 100% 131s tests/test_receiver.py 215 0 100% 131s tests/test_regression.py 5 0 100% 131s tests/test_runner.py 99 0 100% 131s tests/test_server.py 325 1 99% 131s tests/test_task.py 803 1 99% 131s tests/test_trigger.py 92 0 100% 131s tests/test_utilities.py 84 0 100% 131s tests/test_wasyncore.py 877 1 99% 131s ----------------------------------------------------------------------------------- 131s TOTAL 22921 11604 49% 131s 131s ================= 797 passed, 8 skipped, 2 warnings in 22.61s ================== 131s 131s *************************** 131s *** Testing with python3.12 131s *************************** 131s 131s Content of current working folder: 131s 131s total 92 131s drwxr-xr-x 3 ubuntu ubuntu 4096 Nov 13 11:32 . 131s drwxrwxrwt 5 root root 4096 Nov 13 11:31 .. 131s -rw-r--r-- 1 ubuntu ubuntu 77824 Nov 13 11:32 .coverage 131s -rw-rw-r-- 1 ubuntu ubuntu 1938 Oct 29 00:10 setup.cfg 131s drwxrwxr-x 4 ubuntu ubuntu 4096 Nov 13 11:31 tests 131s Running tests... 131s 131s ============================= test session starts ============================== 131s platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.12 131s cachedir: .pytest_cache 131s rootdir: /tmp/autopkgtest.MznySF/autopkgtest_tmp 131s configfile: setup.cfg 131s plugins: cov-5.0.0, typeguard-4.4.1 132s collecting ... collected 805 items 132s 132s tests/test_adjustments.py::Test_asbool::test_s_is_1 PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_False PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_None PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_True PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_false PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_on PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_true PASSED 132s tests/test_adjustments.py::Test_asbool::test_s_is_yes PASSED 132s tests/test_adjustments.py::Test_as_socket_list::test_not_only_sockets_in_list PASSED 132s tests/test_adjustments.py::Test_as_socket_list::test_only_sockets_in_list PASSED 132s tests/test_adjustments.py::TestAdjustments::test_bad_port PASSED 132s tests/test_adjustments.py::TestAdjustments::test_badvar PASSED 132s tests/test_adjustments.py::TestAdjustments::test_default_listen PASSED 132s tests/test_adjustments.py::TestAdjustments::test_deprecated_send_bytes PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_forwarded_with_x_forwarded PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_host_port_listen PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_host_port PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_listen PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_unix_socket PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_host_port PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_listen PASSED 132s tests/test_adjustments.py::TestAdjustments::test_dont_use_unsupported_socket_types PASSED 132s tests/test_adjustments.py::TestAdjustments::test_good_sockets PASSED 132s tests/test_adjustments.py::TestAdjustments::test_goodvar_listen PASSED 132s tests/test_adjustments.py::TestAdjustments::test_goodvars PASSED 132s tests/test_adjustments.py::TestAdjustments::test_ipv4_disabled PASSED 132s tests/test_adjustments.py::TestAdjustments::test_ipv6_disabled PASSED 132s tests/test_adjustments.py::TestAdjustments::test_ipv6_no_port PASSED 132s tests/test_adjustments.py::TestAdjustments::test_multiple_listen PASSED 132s tests/test_adjustments.py::TestAdjustments::test_no_trusted_proxy_headers_trusted_proxy PASSED 132s tests/test_adjustments.py::TestAdjustments::test_server_header_removable PASSED 132s tests/test_adjustments.py::TestAdjustments::test_service_port PASSED 132s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_count_no_trusted_proxy PASSED 132s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_no_trusted_proxy PASSED 132s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list PASSED 132s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list_newlines PASSED 132s tests/test_adjustments.py::TestAdjustments::test_unknown_trusted_proxy_header PASSED 132s tests/test_adjustments.py::TestAdjustments::test_wildcard_listen PASSED 132s tests/test_adjustments.py::TestCLI::test_bad_param PASSED 132s tests/test_adjustments.py::TestCLI::test_both PASSED 132s tests/test_adjustments.py::TestCLI::test_call PASSED 132s tests/test_adjustments.py::TestCLI::test_cast_params PASSED 132s tests/test_adjustments.py::TestCLI::test_help PASSED 132s tests/test_adjustments.py::TestCLI::test_listen_params PASSED 132s tests/test_adjustments.py::TestCLI::test_multiple_listen_params PASSED 132s tests/test_adjustments.py::TestCLI::test_negative_boolean PASSED 132s tests/test_adjustments.py::TestCLI::test_noargs PASSED 132s tests/test_adjustments.py::TestCLI::test_positive_boolean PASSED 132s tests/test_adjustments.py::TestUnixSocket::test_dont_mix_internet_and_unix_sockets PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test___len__ PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test___nonzero__ PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_append PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_close PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer_None PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_bytes_less_than_zero PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_false PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_true PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_newfile PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_notzero PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_notzero PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_zero PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_gt_bytes PASSED 132s tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_lt_bytes PASSED 132s tests/test_buffers.py::TestTempfileBasedBuffer::test_newfile PASSED 132s tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_None PASSED 132s tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_not_None PASSED 132s tests/test_buffers.py::TestBytesIOBasedBuffer::test_newfile PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test___iter__ PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_append PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain_withskip PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain_withskip PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_neg_one PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable_closeable PASSED 132s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_seekable_closeable PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_None PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_not_None PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test___nonzero__ PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test___nonzero___on_int_overflow_buffer PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_large PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_small PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_longer_than_strbuf_limit PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_not_longer_than_srtbuf_limit PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_append_overflow PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_append_sz_gt_overflow PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_append_with_len_more_than_max_int PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_close_nobuf PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_close_withbuf PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_False PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_True PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_None PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_not_None PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_prune_buf_None PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf_overflow PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buflen_more_than_max_int PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None PASSED 132s tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None_allow_prune_True PASSED 132s tests/test_channel.py::TestHTTPChannel::test__flush_some_empty_outbuf PASSED 132s tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_nonzero PASSED 132s tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_zero PASSED 132s tests/test_channel.py::TestHTTPChannel::test__flush_some_outbuf_len_gt_sys_maxint PASSED 132s tests/test_channel.py::TestHTTPChannel::test_add_channel PASSED 132s tests/test_channel.py::TestHTTPChannel::test_cancel_no_requests PASSED 132s tests/test_channel.py::TestHTTPChannel::test_cancel_with_requests PASSED 132s tests/test_channel.py::TestHTTPChannel::test_ctor PASSED 132s tests/test_channel.py::TestHTTPChannel::test_del_channel PASSED 132s tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_close_raises PASSED 132s tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_first_empty PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_close_outbuf_raises_on_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_read_error PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_read_no_error PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_close_when_flushed PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_notify_after_flush PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_request_with_outbuf PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_no_outbuf_will_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_not_connected PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_notify_after_flush PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_othererror PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_socketerror PASSED 132s tests/test_channel.py::TestHTTPChannel::test_handle_write_with_requests PASSED 132s tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_not_will_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_will_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_readable_with_requests PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_false PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true_sent_true PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_no_chunk PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_connection_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_empty PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_preq_error PASSED 132s tests/test_channel.py::TestHTTPChannel::test_received_preq_not_completed PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_multiple_requests PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_one_error_request PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_one_request PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_request_error_raises_disconnect PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises_disconnect PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_already_wrote_header PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header PASSED 132s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED 132s tests/test_channel.py::TestHTTPChannel::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED 132s tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf PASSED 132s tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf_will_close PASSED 132s tests/test_channel.py::TestHTTPChannel::test_writable_something_in_outbuf PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_attempts_flush_high_water_and_exception PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected_while_over_watermark PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_empty_byte PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_filewrapper PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_flush_and_exception PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_nonempty_byte PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_rotates_outbuf_on_overflow PASSED 132s tests/test_channel.py::TestHTTPChannel::test_write_soon_waits_on_backpressure PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_empty_outbuf PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_nonzero PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_zero PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_outbuf_len_gt_sys_maxint PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test_add_channel PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_no_requests PASSED 132s tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_with_requests PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect_immediate PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_ctor PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_del_channel PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_close_raises PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_first_empty PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close_outbuf_raises_on_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_error PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_no_error PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_close_when_flushed PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_notify_after_flush PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_request_with_outbuf PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_no_outbuf_will_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_not_connected PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_notify_after_flush PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_othererror PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_socketerror PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_with_requests PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_lookahead_bad_request_drop_extra_data PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_lookahead_continue PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_not_will_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_will_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_with_requests PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_false PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true_sent_true PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_no_chunk PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_connection_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_empty PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_error PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_not_completed PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_multiple_requests PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_error_request PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_request PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_error_raises_disconnect PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises_disconnect PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_already_wrote_header PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf_will_close PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_something_in_outbuf PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_attempts_flush_high_water_and_exception PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected_while_over_watermark PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_empty_byte PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_filewrapper PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_flush_and_exception PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_nonempty_byte PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_rotates_outbuf_on_overflow PASSED 133s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_waits_on_backpressure PASSED 136s tests/test_functional.py::SleepyThreadTests::test_it PASSED 136s tests/test_functional.py::TcpEchoTests::test_bad_host_header PASSED 136s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding PASSED 137s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_extension PASSED 137s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_hex PASSED 137s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED 137s tests/test_functional.py::TcpEchoTests::test_chunking_request_with_content PASSED 137s tests/test_functional.py::TcpEchoTests::test_chunking_request_without_content PASSED 137s tests/test_functional.py::TcpEchoTests::test_date_and_server PASSED 137s tests/test_functional.py::TcpEchoTests::test_keepalive_http10_explicit PASSED 137s tests/test_functional.py::TcpEchoTests::test_keepalive_http11_connclose PASSED 137s tests/test_functional.py::TcpEchoTests::test_keepalive_http11_explicit PASSED 137s tests/test_functional.py::TcpEchoTests::test_keepalive_http_10 PASSED 137s tests/test_functional.py::TcpEchoTests::test_keepalive_http_11 PASSED 137s tests/test_functional.py::TcpEchoTests::test_large_body PASSED 137s tests/test_functional.py::TcpEchoTests::test_many_clients PASSED 137s tests/test_functional.py::TcpEchoTests::test_multiple_requests_with_body PASSED 137s tests/test_functional.py::TcpEchoTests::test_multiple_requests_without_body PASSED 138s tests/test_functional.py::TcpEchoTests::test_proxy_headers PASSED 138s tests/test_functional.py::TcpEchoTests::test_send_empty_body PASSED 138s tests/test_functional.py::TcpEchoTests::test_send_with_body PASSED 138s tests/test_functional.py::TcpEchoTests::test_without_crlf PASSED 138s tests/test_functional.py::TcpPipeliningTests::test_pipelining PASSED 138s tests/test_functional.py::TcpExpectContinueTests::test_expect_continue PASSED 138s tests/test_functional.py::TcpBadContentLengthTests::test_long_body PASSED 138s tests/test_functional.py::TcpBadContentLengthTests::test_short_body PASSED 138s tests/test_functional.py::TcpNoContentLengthTests::test_http10_generator PASSED 138s tests/test_functional.py::TcpNoContentLengthTests::test_http10_list PASSED 138s tests/test_functional.py::TcpNoContentLengthTests::test_http10_listlentwo PASSED 138s tests/test_functional.py::TcpNoContentLengthTests::test_http11_generator PASSED 138s tests/test_functional.py::TcpNoContentLengthTests::test_http11_list PASSED 138s tests/test_functional.py::TcpNoContentLengthTests::test_http11_listlentwo PASSED 138s tests/test_functional.py::TcpWriteCallbackTests::test_equal_body PASSED 139s tests/test_functional.py::TcpWriteCallbackTests::test_long_body PASSED 139s tests/test_functional.py::TcpWriteCallbackTests::test_no_content_length PASSED 139s tests/test_functional.py::TcpWriteCallbackTests::test_short_body PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_chunked_encoding PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED 139s tests/test_functional.py::TcpTooLargeTests::test_request_headers_too_large_http11 PASSED 139s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http10 PASSED 139s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11 PASSED 140s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11_close PASSED 140s tests/test_functional.py::TcpInternalServerErrorTests::test_after_write_cb PASSED 140s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_10 PASSED 140s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11 PASSED 140s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11_close PASSED 140s tests/test_functional.py::TcpInternalServerErrorTests::test_in_generator PASSED 140s tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED 140s tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_filelike_http10 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_filelike_http11 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_filelike_longcl_http11 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http10 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http11 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_filelike_shortcl_http11 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http10 PASSED 140s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http11 PASSED 141s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_iobase_http11 PASSED 141s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_longcl_http11 PASSED 141s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http10 PASSED 141s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http11 PASSED 141s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_shortcl_http11 PASSED 141s tests/test_functional.py::UnixEchoTests::test_bad_host_header PASSED 141s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding PASSED 141s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_extension PASSED 141s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_hex PASSED 141s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED 141s tests/test_functional.py::UnixEchoTests::test_chunking_request_with_content PASSED 141s tests/test_functional.py::UnixEchoTests::test_chunking_request_without_content PASSED 141s tests/test_functional.py::UnixEchoTests::test_date_and_server PASSED 141s tests/test_functional.py::UnixEchoTests::test_keepalive_http10_explicit PASSED 141s tests/test_functional.py::UnixEchoTests::test_keepalive_http11_connclose PASSED 141s tests/test_functional.py::UnixEchoTests::test_keepalive_http11_explicit PASSED 142s tests/test_functional.py::UnixEchoTests::test_keepalive_http_10 PASSED 142s tests/test_functional.py::UnixEchoTests::test_keepalive_http_11 PASSED 142s tests/test_functional.py::UnixEchoTests::test_large_body PASSED 142s tests/test_functional.py::UnixEchoTests::test_many_clients PASSED 142s tests/test_functional.py::UnixEchoTests::test_multiple_requests_with_body PASSED 142s tests/test_functional.py::UnixEchoTests::test_multiple_requests_without_body PASSED 142s tests/test_functional.py::UnixEchoTests::test_proxy_headers PASSED 142s tests/test_functional.py::UnixEchoTests::test_send_empty_body PASSED 142s tests/test_functional.py::UnixEchoTests::test_send_with_body PASSED 142s tests/test_functional.py::UnixEchoTests::test_without_crlf PASSED 142s tests/test_functional.py::UnixPipeliningTests::test_pipelining PASSED 142s tests/test_functional.py::UnixExpectContinueTests::test_expect_continue PASSED 142s tests/test_functional.py::UnixBadContentLengthTests::test_long_body PASSED 142s tests/test_functional.py::UnixBadContentLengthTests::test_short_body PASSED 142s tests/test_functional.py::UnixNoContentLengthTests::test_http10_generator PASSED 143s tests/test_functional.py::UnixNoContentLengthTests::test_http10_list PASSED 143s tests/test_functional.py::UnixNoContentLengthTests::test_http10_listlentwo PASSED 143s tests/test_functional.py::UnixNoContentLengthTests::test_http11_generator PASSED 143s tests/test_functional.py::UnixNoContentLengthTests::test_http11_list PASSED 143s tests/test_functional.py::UnixNoContentLengthTests::test_http11_listlentwo PASSED 143s tests/test_functional.py::UnixWriteCallbackTests::test_equal_body PASSED 143s tests/test_functional.py::UnixWriteCallbackTests::test_long_body PASSED 143s tests/test_functional.py::UnixWriteCallbackTests::test_no_content_length PASSED 143s tests/test_functional.py::UnixWriteCallbackTests::test_short_body PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_chunked_encoding PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED 143s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED 144s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED 144s tests/test_functional.py::UnixTooLargeTests::test_request_headers_too_large_http11 PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http10 PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11 PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11_close PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_after_write_cb PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_10 PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11 PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11_close PASSED 144s tests/test_functional.py::UnixInternalServerErrorTests::test_in_generator PASSED 144s tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED 144s tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED 144s tests/test_functional.py::UnixFileWrapperTests::test_filelike_http10 PASSED 144s tests/test_functional.py::UnixFileWrapperTests::test_filelike_http11 PASSED 144s tests/test_functional.py::UnixFileWrapperTests::test_filelike_longcl_http11 PASSED 144s tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http10 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http11 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_filelike_shortcl_http11 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http10 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http11 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_iobase_http11 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_longcl_http11 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http10 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http11 PASSED 145s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_shortcl_http11 PASSED 145s tests/test_init.py::Test_serve::test_it PASSED 145s tests/test_init.py::Test_serve_paste::test_it PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_close_with_body_rcv PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_close_with_no_body_rcv PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_None PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_nonNone PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_expect_continue PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_te_chunked PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_minus PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_plus PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_connection_close PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_cr_only PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_empty PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_first_line PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_header PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_gardenpath PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_backtrack_bad PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_chars PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_folding_spacing PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_no_colon PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace_vtab PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_lf_only PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_content_length PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_extra_space PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded_multiple PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_no_cr_in_headerplus PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_other_whitespace PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_short_values PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_multiple PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_unicode PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_whitespace PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_already_completed PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_bad_host_header PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_bad_transfer_encoding PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_body_too_large PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_chunked_completed_sets_content_length PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_cl_too_large PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_error_from_parser PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_get_no_headers PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_headers_not_too_large_multiple_chunks PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_headers_too_large PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_no_doublecr PASSED 145s tests/test_parser.py::TestHTTPRequestParser::test_received_nonsense_nothing PASSED 145s tests/test_parser.py::Test_split_uri::test_split_uri_path PASSED 145s tests/test_parser.py::Test_split_uri::test_split_uri_path_query PASSED 145s tests/test_parser.py::Test_split_uri::test_split_uri_path_query_fragment PASSED 145s tests/test_parser.py::Test_split_uri::test_split_uri_unicode_error_raises_parsing_error PASSED 145s tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_needed PASSED 145s tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_unneeded PASSED 145s tests/test_parser.py::Test_split_uri::test_split_url_https PASSED 145s tests/test_parser.py::Test_split_uri::test_split_url_with_fragment PASSED 145s tests/test_parser.py::Test_split_uri::test_split_url_with_query PASSED 145s tests/test_parser.py::Test_split_uri::test_split_url_with_query_empty PASSED 145s tests/test_parser.py::Test_get_header_lines::test_get_header_lines PASSED 145s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_folded PASSED 145s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_malformed PASSED 145s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_tabbed PASSED 145s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_bad_method PASSED 145s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_bad_version PASSED 145s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_lowercase_method PASSED 145s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_matchok PASSED 145s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_missing_version PASSED 145s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_nomatch PASSED 145s tests/test_parser.py::TestHTTPRequestParserIntegration::testComplexGET PASSED 145s tests/test_parser.py::TestHTTPRequestParserIntegration::testDuplicateHeaders PASSED 145s tests/test_parser.py::TestHTTPRequestParserIntegration::testProxyGET PASSED 145s tests/test_parser.py::TestHTTPRequestParserIntegration::testSimpleGET PASSED 145s tests/test_parser.py::TestHTTPRequestParserIntegration::testSpoofedHeadersDropped PASSED 145s tests/test_parser.py::Test_unquote_bytes_to_wsgi::test_highorder PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_clears_headers_if_untrusted_proxy PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_all_headers_including_untrusted PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_only_trusted_headers PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_bogus_scheme_override PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_trusted PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_untrusted PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_warning_other_proxy_headers PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_empty_pair PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_for_bad_quote PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_host_bad_quote PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_minimal PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_trust_only_two PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_no_equals PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_token_whitespace PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_value_whitespace PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_443 PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_80 PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_warning_unknown_token PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_port PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_proto PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_no_valid_proxy_headers PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for_v6_missing_brackets PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port_limit_one_trusted PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_forwarded_port PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_port PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_without_port PASSED 145s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwared_for_multiple PASSED 145s tests/test_receiver.py::TestFixedStreamReceiver::test___len__ PASSED 145s tests/test_receiver.py::TestFixedStreamReceiver::test_getbuf PASSED 145s tests/test_receiver.py::TestFixedStreamReceiver::test_getfile PASSED 145s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_gt_datalen PASSED 145s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lt_1 PASSED 145s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lte_datalen PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test___len__ PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_alreadycompleted PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_getbuf PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_getfile PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_is_properly_terminated PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_not_properly_terminated PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_not_received PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_received PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_garbage_in_input PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_notfinished PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks_split PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_remain_gt_zero PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_finished PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_not_finished PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_crlf PASSED 145s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_lf PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\n] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid=] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\r] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid = true] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[test] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true;other=true] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[0x04] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+0x04] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[x04] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+04] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 04] PASSED 145s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 0x04] PASSED 145s tests/test_regression.py::test_suite PASSED 145s tests/test_runner.py::Test_match::test_bad_module PASSED 145s tests/test_runner.py::Test_match::test_empty PASSED 145s tests/test_runner.py::Test_match::test_module_obj PASSED 145s tests/test_runner.py::Test_match::test_module_only PASSED 145s tests/test_runner.py::Test_resolve::test_bad_module PASSED 145s tests/test_runner.py::Test_resolve::test_complex_happy_path PASSED 145s tests/test_runner.py::Test_resolve::test_nonexistent_function PASSED 145s tests/test_runner.py::Test_resolve::test_simple_happy_path PASSED 145s tests/test_runner.py::Test_run::test_bad PASSED 145s tests/test_runner.py::Test_run::test_bad_app_module PASSED 145s tests/test_runner.py::Test_run::test_bad_app_object PASSED 145s tests/test_runner.py::Test_run::test_bad_apps_app PASSED 145s tests/test_runner.py::Test_run::test_cwd_added_to_path PASSED 145s tests/test_runner.py::Test_run::test_help PASSED 145s tests/test_runner.py::Test_run::test_multiple_apps_app PASSED 145s tests/test_runner.py::Test_run::test_no_app PASSED 145s tests/test_runner.py::Test_run::test_returned_app PASSED 145s tests/test_runner.py::Test_run::test_simple_call PASSED 145s tests/test_runner.py::Test_helper::test_exception_logging PASSED 145s tests/test_server.py::TestWSGIServer::test_add_task PASSED 145s tests/test_server.py::TestWSGIServer::test_backward_compatibility PASSED 145s tests/test_server.py::TestWSGIServer::test_create_with_multiple_tcp_sockets PASSED 145s tests/test_server.py::TestWSGIServer::test_create_with_one_socket_handle_accept_noerror PASSED 145s tests/test_server.py::TestWSGIServer::test_create_with_one_socket_should_not_bind_socket PASSED 145s tests/test_server.py::TestWSGIServer::test_create_with_one_tcp_socket PASSED 145s tests/test_server.py::TestWSGIServer::test_ctor_app_is_None PASSED 145s tests/test_server.py::TestWSGIServer::test_ctor_makes_dispatcher PASSED 145s tests/test_server.py::TestWSGIServer::test_ctor_start_false PASSED 145s tests/test_server.py::TestWSGIServer::test_ctor_start_true PASSED 145s tests/test_server.py::TestWSGIServer::test_get_server_multi PASSED 145s tests/test_server.py::TestWSGIServer::test_handle_accept_noerror PASSED 145s tests/test_server.py::TestWSGIServer::test_handle_accept_other_socket_error PASSED 145s tests/test_server.py::TestWSGIServer::test_handle_accept_wouldblock_socket_error PASSED 145s tests/test_server.py::TestWSGIServer::test_handle_connect PASSED 145s tests/test_server.py::TestWSGIServer::test_handle_read PASSED 145s tests/test_server.py::TestWSGIServer::test_maintenance PASSED 145s tests/test_server.py::TestWSGIServer::test_pull_trigger PASSED 145s tests/test_server.py::TestWSGIServer::test_readable_maintenance_false PASSED 145s tests/test_server.py::TestWSGIServer::test_readable_maintenance_true PASSED 145s tests/test_server.py::TestWSGIServer::test_readable_maplen_gt_connection_limit PASSED 145s tests/test_server.py::TestWSGIServer::test_readable_maplen_lt_connection_limit PASSED 145s tests/test_server.py::TestWSGIServer::test_readable_maplen_toggles_connection_overflow PASSED 145s tests/test_server.py::TestWSGIServer::test_readable_not_accepting PASSED 145s tests/test_server.py::TestWSGIServer::test_run PASSED 145s tests/test_server.py::TestWSGIServer::test_run_base_server PASSED 145s tests/test_server.py::TestWSGIServer::test_writable PASSED 145s tests/test_server.py::TestUnixWSGIServer::test_create_with_unix_socket PASSED 145s tests/test_server.py::TestUnixWSGIServer::test_creates_new_sockinfo PASSED 145s tests/test_server.py::TestUnixWSGIServer::test_handle_accept PASSED 145s tests/test_server.py::TestUnixWSGIServer::test_unix PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_all_busy_threads PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_idle_threads PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_handler_thread_task_raises PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_decrease PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase_with_existing PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_same PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_cancel_pending PASSED 145s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_threads PASSED 146s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_one_thread PASSED 146s tests/test_task.py::TestTask::test_build_response_header_bad_http_version PASSED 146s tests/test_task.py::TestTask::test_build_response_header_date_exists PASSED 146s tests/test_task.py::TestTask::test_build_response_header_preexisting_content_length PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_no_content_length PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_with_content_length PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v11_1xx_no_content_length_or_transfer_encoding PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v11_200_no_content_length PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v11_204_no_content_length_or_transfer_encoding PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v11_304_no_content_length_or_transfer_encoding PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v11_connection_closed_by_client PASSED 146s tests/test_task.py::TestTask::test_build_response_header_v11_connection_keepalive_by_client PASSED 146s tests/test_task.py::TestTask::test_build_response_header_via_added PASSED 146s tests/test_task.py::TestTask::test_ctor_version_not_in_known PASSED 146s tests/test_task.py::TestTask::test_finish_chunked_response PASSED 146s tests/test_task.py::TestTask::test_finish_didnt_write_header PASSED 146s tests/test_task.py::TestTask::test_finish_wrote_header PASSED 146s tests/test_task.py::TestTask::test_remove_content_length_header PASSED 146s tests/test_task.py::TestTask::test_remove_content_length_header_with_other PASSED 146s tests/test_task.py::TestTask::test_start PASSED 146s tests/test_task.py::TestTask::test_write_chunked_response PASSED 146s tests/test_task.py::TestTask::test_write_header_not_written PASSED 146s tests/test_task.py::TestTask::test_write_preexisting_content_length PASSED 146s tests/test_task.py::TestTask::test_write_start_response_uncalled PASSED 146s tests/test_task.py::TestTask::test_write_wrote_header PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_twice_wo_exc_info PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_exc_info_complete PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_unwritten PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_written PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_calls_write PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_head_with_content_length PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_closeable PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_empty_chunk_as_first PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_badcl PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_nocl PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_len1_chunk_without_cl PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_too_few_bytes PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_returns_too_many_bytes PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_without_body_204_logged PASSED 146s tests/test_task.py::TestWSGITask::test_execute_app_without_body_304_logged PASSED 146s tests/test_task.py::TestWSGITask::test_execute_bad_header_key PASSED 146s tests/test_task.py::TestWSGITask::test_execute_bad_header_name_control_characters PASSED 146s tests/test_task.py::TestWSGITask::test_execute_bad_header_value PASSED 146s tests/test_task.py::TestWSGITask::test_execute_bad_header_value_control_characters PASSED 146s tests/test_task.py::TestWSGITask::test_execute_bad_status_control_characters PASSED 146s tests/test_task.py::TestWSGITask::test_execute_bad_status_value PASSED 146s tests/test_task.py::TestWSGITask::test_execute_hopbyhop_header PASSED 146s tests/test_task.py::TestWSGITask::test_execute_with_content_length_header PASSED 146s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_empty_path PASSED 146s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_hit PASSED 146s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_miss PASSED 146s tests/test_task.py::TestWSGITask::test_get_environment_already_cached PASSED 146s tests/test_task.py::TestWSGITask::test_get_environment_no_query PASSED 146s tests/test_task.py::TestWSGITask::test_get_environment_path_empty PASSED 146s tests/test_task.py::TestWSGITask::test_get_environment_path_startswith_more_than_one_slash PASSED 146s tests/test_task.py::TestWSGITask::test_get_environment_values PASSED 146s tests/test_task.py::TestWSGITask::test_get_environment_with_query PASSED 146s tests/test_task.py::TestWSGITask::test_preserve_header_value_order PASSED 146s tests/test_task.py::TestWSGITask::test_service PASSED 146s tests/test_task.py::TestWSGITask::test_service_server_raises_socket_error PASSED 146s tests/test_task.py::TestErrorTask::test_execute_http_10 PASSED 146s tests/test_task.py::TestErrorTask::test_execute_http_11 PASSED 146s tests/test_task.py::TestErrorTask::test_execute_http_11_close PASSED 146s tests/test_task.py::TestErrorTask::test_execute_http_11_keep_forces_close PASSED 146s tests/test_trigger.py::Test_trigger::test__close PASSED 146s tests/test_trigger.py::Test_trigger::test__physical_pull PASSED 146s tests/test_trigger.py::Test_trigger::test_close PASSED 146s tests/test_trigger.py::Test_trigger::test_handle_close PASSED 146s tests/test_trigger.py::Test_trigger::test_handle_connect PASSED 146s tests/test_trigger.py::Test_trigger::test_handle_read_no_socket_error PASSED 146s tests/test_trigger.py::Test_trigger::test_handle_read_socket_error PASSED 146s tests/test_trigger.py::Test_trigger::test_handle_read_thunk PASSED 146s tests/test_trigger.py::Test_trigger::test_handle_read_thunk_error PASSED 146s tests/test_trigger.py::Test_trigger::test_pull_trigger_nothunk PASSED 146s tests/test_trigger.py::Test_trigger::test_pull_trigger_thunk PASSED 146s tests/test_trigger.py::Test_trigger::test_readable PASSED 146s tests/test_trigger.py::Test_trigger::test_writable PASSED 146s tests/test_utilities.py::Test_parse_http_date::test_neither PASSED 146s tests/test_utilities.py::Test_parse_http_date::test_rfc822 PASSED 146s tests/test_utilities.py::Test_parse_http_date::test_rfc850 PASSED 146s tests/test_utilities.py::Test_build_http_date::test_rountdrip PASSED 146s tests/test_utilities.py::Test_unpack_rfc850::test_it PASSED 146s tests/test_utilities.py::Test_unpack_rfc_822::test_it PASSED 146s tests/test_utilities.py::Test_find_double_newline::test_double_crfl PASSED 146s tests/test_utilities.py::Test_find_double_newline::test_double_linefeed PASSED 146s tests/test_utilities.py::Test_find_double_newline::test_empty PASSED 146s tests/test_utilities.py::Test_find_double_newline::test_mixed PASSED 146s tests/test_utilities.py::Test_find_double_newline::test_one_crlf PASSED 146s tests/test_utilities.py::Test_find_double_newline::test_one_linefeed PASSED 146s tests/test_utilities.py::TestBadRequest::test_it PASSED 146s tests/test_utilities.py::Test_undquote::test_empty PASSED 146s tests/test_utilities.py::Test_undquote::test_invalid_quoting PASSED 146s tests/test_utilities.py::Test_undquote::test_invalid_quoting_single_quote PASSED 146s tests/test_utilities.py::Test_undquote::test_quoted PASSED 146s tests/test_utilities.py::Test_undquote::test_quoted_backslash_htab PASSED 146s tests/test_utilities.py::Test_undquote::test_quoted_backslash_invalid PASSED 146s tests/test_utilities.py::Test_undquote::test_quoted_backslash_quote PASSED 146s tests/test_utilities.py::Test_undquote::test_quoted_htab PASSED 146s tests/test_utilities.py::Test_undquote::test_unquoted PASSED 146s tests/test_wasyncore.py::HelperFunctionTests::test_closeall PASSED 146s tests/test_wasyncore.py::HelperFunctionTests::test_closeall_default PASSED 146s tests/test_wasyncore.py::HelperFunctionTests::test_compact_traceback PASSED 146s tests/test_wasyncore.py::HelperFunctionTests::test_readwrite PASSED 146s tests/test_wasyncore.py::HelperFunctionTests::test_readwriteexc PASSED 146s tests/test_wasyncore.py::DispatcherTests::test_basic PASSED 146s tests/test_wasyncore.py::DispatcherTests::test_log PASSED 146s tests/test_wasyncore.py::DispatcherTests::test_log_info PASSED 146s tests/test_wasyncore.py::DispatcherTests::test_repr PASSED 146s tests/test_wasyncore.py::DispatcherTests::test_strerror PASSED 146s tests/test_wasyncore.py::DispatcherTests::test_unhandled PASSED 146s tests/test_wasyncore.py::FileWrapperTest::test_close_twice PASSED 146s tests/test_wasyncore.py::FileWrapperTest::test_dispatcher PASSED 146s tests/test_wasyncore.py::FileWrapperTest::test_recv PASSED 146s tests/test_wasyncore.py::FileWrapperTest::test_resource_warning PASSED 146s tests/test_wasyncore.py::FileWrapperTest::test_send PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_bind PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_connection_attributes PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_create_socket PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accept PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accepted PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close_after_conn_broken PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_connect PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_error PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_expt PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_read PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_write PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_quick_connect PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_set_reuse_addr PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_bind PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_connection_attributes PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_create_socket PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accept PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accepted PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close_after_conn_broken PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_connect PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_error PASSED 146s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_expt PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_read PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_write PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_quick_connect PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_set_reuse_addr PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_bind PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_connection_attributes PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_create_socket PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accept PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accepted PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close_after_conn_broken PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_connect PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_error PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_expt PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_read PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_write PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_quick_connect PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_set_reuse_addr PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_bind PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_connection_attributes PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_create_socket PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accept PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accepted PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close_after_conn_broken PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_connect PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_error PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_expt PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_read PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_write PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_quick_connect PASSED 147s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_set_reuse_addr PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_bind SKIPPED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_connection_attributes PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_create_socket PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accept PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accepted PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close_after_conn_broken PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_connect PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_error PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_expt SKIPPED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_read PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_write PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_quick_connect SKIPPED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_set_reuse_addr SKIPPED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_bind SKIPPED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_connection_attributes PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_create_socket PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accept PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accepted PASSED 147s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close PASSED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close_after_conn_broken PASSED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_connect PASSED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_error PASSED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_expt SKIPPED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_read PASSED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_write PASSED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_quick_connect SKIPPED 148s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_set_reuse_addr SKIPPED 148s tests/test_wasyncore.py::Test__strerror::test_gardenpath PASSED 148s tests/test_wasyncore.py::Test__strerror::test_unknown PASSED 148s tests/test_wasyncore.py::Test_read::test_gardenpath PASSED 148s tests/test_wasyncore.py::Test_read::test_non_reraised PASSED 148s tests/test_wasyncore.py::Test_read::test_reraised PASSED 148s tests/test_wasyncore.py::Test_write::test_gardenpath PASSED 148s tests/test_wasyncore.py::Test_write::test_non_reraised PASSED 148s tests/test_wasyncore.py::Test_write::test_reraised PASSED 148s tests/test_wasyncore.py::Test__exception::test_gardenpath PASSED 148s tests/test_wasyncore.py::Test__exception::test_non_reraised PASSED 148s tests/test_wasyncore.py::Test__exception::test_reraised PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_exception_in_reraised PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_exception_not_in_reraised PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_handle_close PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_handle_expt_event PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_handle_read_event PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_handle_write_event PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_socketerror_in_disconnected PASSED 148s tests/test_wasyncore.py::Test_readwrite::test_socketerror_not_in_disconnected PASSED 148s tests/test_wasyncore.py::Test_poll::test_nothing_writable_nothing_readable_but_map_not_empty PASSED 148s tests/test_wasyncore.py::Test_poll::test_select_raises_EINTR PASSED 148s tests/test_wasyncore.py::Test_poll::test_select_raises_non_EINTR PASSED 148s tests/test_wasyncore.py::Test_poll2::test_select_raises_EINTR PASSED 148s tests/test_wasyncore.py::Test_poll2::test_select_raises_non_EINTR PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test___repr__accepting PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test___repr__connected PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_TypeError PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_unexpected_socketerror PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_close_raises_unknown_socket_error PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_accepted PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_close PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_connect_event_getsockopt_returns_error PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_error_gardenpath PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_expt_event_getsockopt_returns_error PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_read_event_not_accepting_not_connected_connecting PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_handle_write_event_while_accepting PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_recv_raises_disconnect PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_send_raise_EWOULDBLOCK PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_send_raise_unexpected_socketerror PASSED 148s tests/test_wasyncore.py::Test_dispatcher::test_set_reuse_addr_with_socketerror PASSED 148s tests/test_wasyncore.py::Test_close_all::test_reraised_exc_on_close PASSED 148s tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_ebadf PASSED 148s tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_non_ebadf PASSED 149s tests/test_wasyncore.py::Test_close_all::test_unknown_exc_on_close PASSED 149s 149s =============================== warnings summary =============================== 149s tests/test_adjustments.py::TestAdjustments::test_goodvars 149s /usr/lib/python3/dist-packages/waitress/adjustments.py:312: DeprecationWarning: send_bytes will be removed in a future release 149s warnings.warn( 149s 149s tests/test_regression.py::test_suite 149s /usr/lib/python3/dist-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`? 149s warnings.warn( 149s 149s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 149s 149s ---------- coverage: platform linux, python 3.12.7-final-0 ----------- 149s Name Stmts Miss Cover 149s ----------------------------------------------------------------------------------- 149s /etc/python3.12/sitecustomize.py 5 2 60% 149s /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 101 96 5% 149s /usr/lib/python3/dist-packages/_pytest/_argcomplete.py 36 35 3% 149s /usr/lib/python3/dist-packages/_pytest/_code/code.py 754 686 9% 149s /usr/lib/python3/dist-packages/_pytest/_code/source.py 140 138 1% 149s /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py 149 103 31% 149s /usr/lib/python3/dist-packages/_pytest/_io/wcwidth.py 26 17 35% 149s /usr/lib/python3/dist-packages/_pytest/_py/path.py 943 938 1% 149s /usr/lib/python3/dist-packages/_pytest/assertion/__init__.py 88 74 16% 149s /usr/lib/python3/dist-packages/_pytest/assertion/rewrite.py 665 391 41% 149s /usr/lib/python3/dist-packages/_pytest/cacheprovider.py 326 272 17% 149s /usr/lib/python3/dist-packages/_pytest/capture.py 606 561 7% 149s /usr/lib/python3/dist-packages/_pytest/compat.py 120 77 36% 149s /usr/lib/python3/dist-packages/_pytest/config/__init__.py 909 763 16% 149s /usr/lib/python3/dist-packages/_pytest/config/argparsing.py 249 208 16% 149s /usr/lib/python3/dist-packages/_pytest/config/compat.py 45 24 47% 149s /usr/lib/python3/dist-packages/_pytest/debugging.py 226 216 4% 149s /usr/lib/python3/dist-packages/_pytest/deprecated.py 15 14 7% 149s /usr/lib/python3/dist-packages/_pytest/doctest.py 351 343 2% 149s /usr/lib/python3/dist-packages/_pytest/faulthandler.py 60 47 22% 149s /usr/lib/python3/dist-packages/_pytest/fixtures.py 898 578 36% 149s /usr/lib/python3/dist-packages/_pytest/helpconfig.py 133 123 8% 149s /usr/lib/python3/dist-packages/_pytest/junitxml.py 365 363 1% 149s /usr/lib/python3/dist-packages/_pytest/legacypath.py 215 192 11% 149s /usr/lib/python3/dist-packages/_pytest/logging.py 450 327 27% 149s /usr/lib/python3/dist-packages/_pytest/main.py 509 293 42% 149s /usr/lib/python3/dist-packages/_pytest/mark/__init__.py 143 128 10% 149s /usr/lib/python3/dist-packages/_pytest/mark/structures.py 266 183 31% 149s /usr/lib/python3/dist-packages/_pytest/monkeypatch.py 164 150 9% 149s /usr/lib/python3/dist-packages/_pytest/nodes.py 309 213 31% 149s /usr/lib/python3/dist-packages/_pytest/outcomes.py 99 90 9% 149s /usr/lib/python3/dist-packages/_pytest/pastebin.py 71 70 1% 149s /usr/lib/python3/dist-packages/_pytest/pathlib.py 459 377 18% 149s /usr/lib/python3/dist-packages/_pytest/python.py 774 447 42% 149s /usr/lib/python3/dist-packages/_pytest/python_path.py 17 16 6% 149s /usr/lib/python3/dist-packages/_pytest/reports.py 298 254 15% 149s /usr/lib/python3/dist-packages/_pytest/runner.py 302 170 44% 149s /usr/lib/python3/dist-packages/_pytest/scope.py 37 27 27% 149s /usr/lib/python3/dist-packages/_pytest/setuponly.py 57 49 14% 149s /usr/lib/python3/dist-packages/_pytest/setupplan.py 23 19 17% 149s /usr/lib/python3/dist-packages/_pytest/skipping.py 165 135 18% 149s /usr/lib/python3/dist-packages/_pytest/stash.py 35 24 31% 149s /usr/lib/python3/dist-packages/_pytest/stepwise.py 69 67 3% 149s /usr/lib/python3/dist-packages/_pytest/terminal.py 954 736 23% 149s /usr/lib/python3/dist-packages/_pytest/threadexception.py 45 29 36% 149s /usr/lib/python3/dist-packages/_pytest/tmpdir.py 156 134 14% 149s /usr/lib/python3/dist-packages/_pytest/unittest.py 263 165 37% 149s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py 47 31 34% 149s /usr/lib/python3/dist-packages/_pytest/warnings.py 73 47 36% 149s /usr/lib/python3/dist-packages/apport_python_hook.py 119 109 8% 149s /usr/lib/python3/dist-packages/pluggy/_callers.py 109 51 53% 149s /usr/lib/python3/dist-packages/pluggy/_hooks.py 263 177 33% 149s /usr/lib/python3/dist-packages/pluggy/_manager.py 235 185 21% 149s /usr/lib/python3/dist-packages/pluggy/_result.py 50 42 16% 149s /usr/lib/python3/dist-packages/pluggy/_tracing.py 48 38 21% 149s /usr/lib/python3/dist-packages/pytest_cov/compat.py 12 8 33% 149s /usr/lib/python3/dist-packages/pytest_cov/embed.py 69 63 9% 149s /usr/lib/python3/dist-packages/pytest_cov/engine.py 247 226 9% 149s /usr/lib/python3/dist-packages/pytest_cov/plugin.py 225 207 8% 149s /usr/lib/python3/dist-packages/typeguard/_pytest_plugin.py 56 42 25% 149s /usr/lib/python3/dist-packages/typing_extensions.py 1459 1443 1% 149s /usr/lib/python3/dist-packages/waitress/__init__.py 11 0 100% 149s /usr/lib/python3/dist-packages/waitress/adjustments.py 181 0 100% 149s /usr/lib/python3/dist-packages/waitress/buffers.py 212 0 100% 149s /usr/lib/python3/dist-packages/waitress/channel.py 258 0 100% 149s /usr/lib/python3/dist-packages/waitress/compat.py 10 0 100% 149s /usr/lib/python3/dist-packages/waitress/parser.py 199 0 100% 149s /usr/lib/python3/dist-packages/waitress/proxy_headers.py 162 0 100% 149s /usr/lib/python3/dist-packages/waitress/receiver.py 111 0 100% 149s /usr/lib/python3/dist-packages/waitress/rfc7230.py 26 0 100% 149s /usr/lib/python3/dist-packages/waitress/runner.py 69 0 100% 149s /usr/lib/python3/dist-packages/waitress/server.py 177 0 100% 149s /usr/lib/python3/dist-packages/waitress/task.py 324 0 100% 149s /usr/lib/python3/dist-packages/waitress/trigger.py 56 0 100% 149s /usr/lib/python3/dist-packages/waitress/utilities.py 114 0 100% 149s /usr/lib/python3/dist-packages/waitress/wasyncore.py 350 0 100% 149s tests/__init__.py 0 0 100% 149s tests/fixtureapps/__init__.py 0 0 100% 149s tests/fixtureapps/badcl.py 0 0 100% 149s tests/fixtureapps/echo.py 7 0 100% 149s tests/fixtureapps/error.py 0 0 100% 149s tests/fixtureapps/error_traceback.py 0 0 100% 149s tests/fixtureapps/filewrapper.py 4 0 100% 149s tests/fixtureapps/getline.py 15 4 73% 149s tests/fixtureapps/nocl.py 0 0 100% 149s tests/fixtureapps/runner.py 0 0 100% 149s tests/fixtureapps/sleepy.py 1 0 100% 149s tests/fixtureapps/toolarge.py 0 0 100% 149s tests/fixtureapps/writecb.py 0 0 100% 149s tests/test_adjustments.py 241 0 100% 149s tests/test_buffers.py 421 0 100% 149s tests/test_channel.py 896 3 99% 149s tests/test_functional.py 1145 2 99% 149s tests/test_init.py 36 0 100% 149s tests/test_parser.py 441 0 100% 149s tests/test_proxy_headers.py 311 0 100% 149s tests/test_receiver.py 215 0 100% 149s tests/test_regression.py 5 0 100% 149s tests/test_runner.py 99 0 100% 149s tests/test_server.py 325 1 99% 149s tests/test_task.py 803 1 99% 149s tests/test_trigger.py 92 0 100% 149s tests/test_utilities.py 84 0 100% 149s tests/test_wasyncore.py 877 1 99% 149s ----------------------------------------------------------------------------------- 149s TOTAL 24380 13045 46% 149s 149s ================= 797 passed, 8 skipped, 2 warnings in 18.33s ================== 150s 150s autopkgtest [11:32:21]: test unittests: -----------------------] 151s autopkgtest [11:32:22]: test unittests: - - - - - - - - - - results - - - - - - - - - - 151s unittests PASS 151s autopkgtest [11:32:22]: test autodep8-python3: preparing testbed 236s autopkgtest [11:33:47]: testbed dpkg architecture: arm64 236s autopkgtest [11:33:47]: testbed apt version: 2.9.8 236s autopkgtest [11:33:47]: @@@@@@@@@@@@@@@@@@@@ test bed setup 237s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 238s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [849 kB] 238s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.4 kB] 238s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [15.3 kB] 238s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 238s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [104 kB] 238s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 Packages [50.3 kB] 238s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [601 kB] 238s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 Packages [17.1 kB] 238s Fetched 1794 kB in 1s (2171 kB/s) 238s Reading package lists... 241s Reading package lists... 241s Building dependency tree... 241s Reading state information... 242s Calculating upgrade... 243s The following NEW packages will be installed: 243s python3.13-gdbm 243s The following packages will be upgraded: 243s libpython3-stdlib python3 python3-gdbm python3-minimal 243s 4 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 243s Need to get 101 kB of archives. 243s After this operation, 141 kB of additional disk space will be used. 243s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3-minimal arm64 3.12.7-1 [27.4 kB] 244s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3 arm64 3.12.7-1 [24.0 kB] 244s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 libpython3-stdlib arm64 3.12.7-1 [10.0 kB] 244s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13-gdbm arm64 3.13.0-2 [30.7 kB] 244s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3-gdbm arm64 3.12.7-1 [8642 B] 244s Fetched 101 kB in 0s (278 kB/s) 245s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79924 files and directories currently installed.) 245s Preparing to unpack .../python3-minimal_3.12.7-1_arm64.deb ... 245s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ... 245s Setting up python3-minimal (3.12.7-1) ... 245s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79924 files and directories currently installed.) 245s Preparing to unpack .../python3_3.12.7-1_arm64.deb ... 245s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ... 245s Preparing to unpack .../libpython3-stdlib_3.12.7-1_arm64.deb ... 245s Unpacking libpython3-stdlib:arm64 (3.12.7-1) over (3.12.6-0ubuntu1) ... 245s Selecting previously unselected package python3.13-gdbm. 245s Preparing to unpack .../python3.13-gdbm_3.13.0-2_arm64.deb ... 245s Unpacking python3.13-gdbm (3.13.0-2) ... 245s Preparing to unpack .../python3-gdbm_3.12.7-1_arm64.deb ... 245s Unpacking python3-gdbm:arm64 (3.12.7-1) over (3.12.6-1ubuntu1) ... 245s Setting up python3.13-gdbm (3.13.0-2) ... 245s Setting up libpython3-stdlib:arm64 (3.12.7-1) ... 245s Setting up python3 (3.12.7-1) ... 246s Setting up python3-gdbm:arm64 (3.12.7-1) ... 246s Processing triggers for man-db (2.12.1-3) ... 247s Reading package lists... 247s Building dependency tree... 247s Reading state information... 249s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 249s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 250s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 250s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 250s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 252s Reading package lists... 252s Reading package lists... 252s Building dependency tree... 252s Reading state information... 253s Calculating upgrade... 254s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 254s Reading package lists... 255s Building dependency tree... 255s Reading state information... 256s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 261s Reading package lists... 262s Building dependency tree... 262s Reading state information... 262s Starting pkgProblemResolver with broken count: 0 263s Starting 2 pkgProblemResolver with broken count: 0 263s Done 264s The following additional packages will be installed: 264s libpython3.13-minimal libpython3.13-stdlib python3-all python3-waitress 264s python3.13 python3.13-minimal 264s Suggested packages: 264s python-waitress-doc python3.13-venv python3.13-doc binfmt-support 264s The following NEW packages will be installed: 264s autopkgtest-satdep libpython3.13-minimal libpython3.13-stdlib python3-all 264s python3-waitress python3.13 python3.13-minimal 264s 0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded. 264s Need to get 5817 kB/5817 kB of archives. 264s After this operation, 24.3 MB of additional disk space will be used. 264s Get:1 /tmp/autopkgtest.MznySF/2-autopkgtest-satdep.deb autopkgtest-satdep arm64 0 [720 B] 264s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 libpython3.13-minimal arm64 3.13.0-2 [877 kB] 265s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13-minimal arm64 3.13.0-2 [2100 kB] 265s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 libpython3.13-stdlib arm64 3.13.0-2 [2073 kB] 265s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13 arm64 3.13.0-2 [719 kB] 265s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 python3-all arm64 3.12.7-1 [890 B] 265s Get:7 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-waitress all 3.0.1-1 [46.5 kB] 265s Fetched 5817 kB in 1s (7021 kB/s) 265s Selecting previously unselected package libpython3.13-minimal:arm64. 265s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79931 files and directories currently installed.) 265s Preparing to unpack .../0-libpython3.13-minimal_3.13.0-2_arm64.deb ... 265s Unpacking libpython3.13-minimal:arm64 (3.13.0-2) ... 265s Selecting previously unselected package python3.13-minimal. 265s Preparing to unpack .../1-python3.13-minimal_3.13.0-2_arm64.deb ... 265s Unpacking python3.13-minimal (3.13.0-2) ... 265s Selecting previously unselected package libpython3.13-stdlib:arm64. 266s Preparing to unpack .../2-libpython3.13-stdlib_3.13.0-2_arm64.deb ... 266s Unpacking libpython3.13-stdlib:arm64 (3.13.0-2) ... 266s Selecting previously unselected package python3.13. 266s Preparing to unpack .../3-python3.13_3.13.0-2_arm64.deb ... 266s Unpacking python3.13 (3.13.0-2) ... 266s Selecting previously unselected package python3-all. 266s Preparing to unpack .../4-python3-all_3.12.7-1_arm64.deb ... 266s Unpacking python3-all (3.12.7-1) ... 266s Selecting previously unselected package python3-waitress. 266s Preparing to unpack .../5-python3-waitress_3.0.1-1_all.deb ... 266s Unpacking python3-waitress (3.0.1-1) ... 266s Selecting previously unselected package autopkgtest-satdep. 266s Preparing to unpack .../6-2-autopkgtest-satdep.deb ... 266s Unpacking autopkgtest-satdep (0) ... 266s Setting up python3-waitress (3.0.1-1) ... 266s Setting up libpython3.13-minimal:arm64 (3.13.0-2) ... 266s Setting up python3.13-minimal (3.13.0-2) ... 267s Setting up libpython3.13-stdlib:arm64 (3.13.0-2) ... 267s Setting up python3.13 (3.13.0-2) ... 269s Setting up python3-all (3.12.7-1) ... 269s Setting up autopkgtest-satdep (0) ... 269s Processing triggers for man-db (2.12.1-3) ... 269s Processing triggers for systemd (256.5-2ubuntu4) ... 274s (Reading database ... 80693 files and directories currently installed.) 274s Removing autopkgtest-satdep (0) ... 276s autopkgtest [11:34:27]: test autodep8-python3: set -e ; for py in $(py3versions -r 2>/dev/null) ; do cd "$AUTOPKGTEST_TMP" ; echo "Testing with $py:" ; $py -c "import waitress; print(waitress)" ; done 276s autopkgtest [11:34:27]: test autodep8-python3: [----------------------- 276s Testing with python3.13: 276s 276s Testing with python3.12: 276s 277s autopkgtest [11:34:28]: test autodep8-python3: -----------------------] 277s autodep8-python3 PASS (superficial) 277s autopkgtest [11:34:28]: test autodep8-python3: - - - - - - - - - - results - - - - - - - - - - 278s autopkgtest [11:34:29]: @@@@@@@@@@@@@@@@@@@@ summary 278s unittests PASS 278s autodep8-python3 PASS (superficial) 291s virt: nova [W] Skipping flock in bos03-arm64 291s virt: Creating nova instance adt-plucky-arm64-waitress-20241113-112951-juju-7f2275-prod-proposed-migration-environment-2-b03313ac-6104-43d2-854b-4f68b50ab9f3 from image adt/ubuntu-plucky-arm64-server-20241113.img (UUID 2d7760e6-2439-4200-89d6-5ed33e5c6330)... 291s virt: nova [W] Skipping flock in bos03-arm64 291s virt: Creating nova instance adt-plucky-arm64-waitress-20241113-112951-juju-7f2275-prod-proposed-migration-environment-2-b03313ac-6104-43d2-854b-4f68b50ab9f3 from image adt/ubuntu-plucky-arm64-server-20241113.img (UUID 2d7760e6-2439-4200-89d6-5ed33e5c6330)...