0s autopkgtest [01:02:34]: starting date and time: 2024-03-23 01:02:34+0000 0s autopkgtest [01:02:34]: git checkout: 4a1cd702 l/adt_testbed: don't blame the testbed for unsolvable build deps 0s autopkgtest [01:02:34]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.ryc00omw/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --setup-commands /home/ubuntu/autopkgtest/setup-commands/setup-testbed --apt-pocket=proposed=src:sphinx --apt-upgrade waitress --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=sphinx/7.2.6-6 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos02-s390x-16.secgroup --name adt-noble-s390x-waitress-20240323-010234-juju-7f2275-prod-proposed-migration-environment-2 --image adt/ubuntu-noble-s390x-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,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 89s autopkgtest [01:04:03]: testbed dpkg architecture: s390x 89s autopkgtest [01:04:03]: testbed apt version: 2.7.12 89s autopkgtest [01:04:03]: @@@@@@@@@@@@@@@@@@@@ test bed setup 90s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 90s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [498 kB] 90s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [57.7 kB] 90s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 90s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3979 kB] 91s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 91s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 91s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 91s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 91s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [4162 kB] 91s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 91s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [47.5 kB] 91s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 93s Fetched 9545 kB in 3s (3784 kB/s) 93s Reading package lists... 96s Reading package lists... 96s Building dependency tree... 96s Reading state information... 96s Calculating upgrade... 97s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 97s Reading package lists... 97s Building dependency tree... 97s Reading state information... 97s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 97s Unknown architecture, assuming PC-style ttyS0 97s sh: Attempting to set up Debian/Ubuntu apt sources automatically 97s sh: Distribution appears to be Ubuntu 98s Reading package lists... 98s Building dependency tree... 98s Reading state information... 99s eatmydata is already the newest version (131-1). 99s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 99s Reading package lists... 99s Building dependency tree... 99s Reading state information... 99s dbus is already the newest version (1.14.10-4ubuntu1). 99s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 99s Reading package lists... 99s Building dependency tree... 99s Reading state information... 99s rng-tools-debian is already the newest version (2.4). 99s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 100s Reading package lists... 100s Building dependency tree... 100s Reading state information... 100s The following packages will be REMOVED: 100s cloud-init* python3-configobj* python3-debconf* 100s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 100s After this operation, 3256 kB disk space will be freed. 100s (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 ... 52170 files and directories currently installed.) 100s Removing cloud-init (24.1.2-0ubuntu1) ... 101s Removing python3-configobj (5.0.8-3) ... 101s Removing python3-debconf (1.5.86) ... 101s Processing triggers for man-db (2.12.0-3) ... 101s (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 ... 51781 files and directories currently installed.) 101s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 102s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 102s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 102s invoke-rc.d: policy-rc.d denied execution of try-restart. 102s Reading package lists... 102s Building dependency tree... 102s Reading state information... 102s linux-generic is already the newest version (6.8.0-11.11+1). 102s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 103s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 103s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 103s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 105s Reading package lists... 105s Reading package lists... 105s Building dependency tree... 105s Reading state information... 105s Calculating upgrade... 105s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 105s Reading package lists... 105s Building dependency tree... 105s Reading state information... 105s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 106s autopkgtest [01:04:20]: rebooting testbed after setup commands that affected boot 123s autopkgtest [01:04:37]: testbed running kernel: Linux 6.8.0-11-generic #11-Ubuntu SMP Tue Feb 13 23:45:46 UTC 2024 126s autopkgtest [01:04:40]: @@@@@@@@@@@@@@@@@@@@ apt-source waitress 129s Get:1 http://ftpmaster.internal/ubuntu noble/universe waitress 2.1.2-2 (dsc) [2297 B] 129s Get:2 http://ftpmaster.internal/ubuntu noble/universe waitress 2.1.2-2 (tar) [175 kB] 129s Get:3 http://ftpmaster.internal/ubuntu noble/universe waitress 2.1.2-2 (diff) [7772 B] 129s gpgv: Signature made Mon Nov 14 16:21:41 2022 UTC 129s gpgv: using RSA key B70DFC6F134FECFC011E62AA83016014251D1DB0 129s gpgv: issuer "c.schoenert@t-online.de" 129s gpgv: Can't check signature: No public key 129s dpkg-source: warning: cannot verify inline signature for ./waitress_2.1.2-2.dsc: no acceptable signature found 130s autopkgtest [01:04:44]: testing package waitress version 2.1.2-2 130s autopkgtest [01:04:44]: build not needed 130s autopkgtest [01:04:44]: test unittests: preparing testbed 132s Reading package lists... 132s Building dependency tree... 132s Reading state information... 132s Starting pkgProblemResolver with broken count: 0 132s Starting 2 pkgProblemResolver with broken count: 0 132s Done 132s The following additional packages will be installed: 132s libjs-jquery libjs-jquery-hotkeys libjs-jquery-isonscreen 132s libjs-jquery-metadata libjs-jquery-tablesorter 132s libjs-jquery-throttle-debounce libjs-sphinxdoc libjs-underscore 132s python-waitress-doc python3-all python3-coverage python3-iniconfig 132s python3-packaging python3-pluggy python3-pytest python3-pytest-cov 132s python3-waitress 132s Suggested packages: 132s python-coverage-doc 132s Recommended packages: 132s javascript-common 133s The following NEW packages will be installed: 133s autopkgtest-satdep libjs-jquery libjs-jquery-hotkeys libjs-jquery-isonscreen 133s libjs-jquery-metadata libjs-jquery-tablesorter 133s libjs-jquery-throttle-debounce libjs-sphinxdoc libjs-underscore 133s python-waitress-doc python3-all python3-coverage python3-iniconfig 133s python3-packaging python3-pluggy python3-pytest python3-pytest-cov 133s python3-waitress 133s 0 upgraded, 18 newly installed, 0 to remove and 0 not upgraded. 133s Need to get 1477 kB/1478 kB of archives. 133s After this operation, 5741 kB of additional disk space will be used. 133s Get:1 /tmp/autopkgtest.0nboAW/1-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [740 B] 133s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 133s Get:3 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-hotkeys all 0~20130707+git2d51e3a9+dfsg-2ubuntu2 [11.5 kB] 133s Get:4 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-metadata all 12-4 [6582 B] 133s Get:5 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-tablesorter all 1:2.31.3+dfsg1-3 [193 kB] 134s Get:6 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-throttle-debounce all 1.1+dfsg.1-2 [12.5 kB] 134s Get:7 http://ftpmaster.internal/ubuntu noble/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 134s Get:8 http://ftpmaster.internal/ubuntu noble/main s390x libjs-sphinxdoc all 7.2.6-4 [149 kB] 134s Get:9 http://ftpmaster.internal/ubuntu noble/universe s390x python-waitress-doc all 2.1.2-2 [66.2 kB] 134s Get:10 http://ftpmaster.internal/ubuntu noble/main s390x python3-all s390x 3.12.1-0ubuntu2 [908 B] 134s Get:11 http://ftpmaster.internal/ubuntu noble/universe s390x python3-coverage s390x 7.3.2-0ubuntu1 [147 kB] 134s Get:12 http://ftpmaster.internal/ubuntu noble/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 134s Get:13 http://ftpmaster.internal/ubuntu noble/main s390x python3-packaging all 23.2-1 [40.6 kB] 134s Get:14 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pluggy all 1.4.0-1 [20.4 kB] 134s Get:15 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pytest all 7.4.4-1 [305 kB] 134s Get:16 http://ftpmaster.internal/ubuntu noble/universe s390x libjs-jquery-isonscreen all 1.2.0-1.1 [3244 B] 134s Get:17 http://ftpmaster.internal/ubuntu noble/universe s390x python3-pytest-cov all 4.1.0-1 [21.5 kB] 134s Get:18 http://ftpmaster.internal/ubuntu noble/universe s390x python3-waitress all 2.1.2-2 [48.0 kB] 135s Fetched 1477 kB in 2s (750 kB/s) 135s Selecting previously unselected package libjs-jquery. 135s (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 ... 51726 files and directories currently installed.) 135s Preparing to unpack .../00-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 135s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 135s Selecting previously unselected package libjs-jquery-hotkeys. 135s Preparing to unpack .../01-libjs-jquery-hotkeys_0~20130707+git2d51e3a9+dfsg-2ubuntu2_all.deb ... 135s Unpacking libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2ubuntu2) ... 135s Selecting previously unselected package libjs-jquery-metadata. 135s Preparing to unpack .../02-libjs-jquery-metadata_12-4_all.deb ... 135s Unpacking libjs-jquery-metadata (12-4) ... 135s Selecting previously unselected package libjs-jquery-tablesorter. 135s Preparing to unpack .../03-libjs-jquery-tablesorter_1%3a2.31.3+dfsg1-3_all.deb ... 135s Unpacking libjs-jquery-tablesorter (1:2.31.3+dfsg1-3) ... 135s Selecting previously unselected package libjs-jquery-throttle-debounce. 135s Preparing to unpack .../04-libjs-jquery-throttle-debounce_1.1+dfsg.1-2_all.deb ... 135s Unpacking libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 135s Selecting previously unselected package libjs-underscore. 135s Preparing to unpack .../05-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 135s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 135s Selecting previously unselected package libjs-sphinxdoc. 135s Preparing to unpack .../06-libjs-sphinxdoc_7.2.6-4_all.deb ... 135s Unpacking libjs-sphinxdoc (7.2.6-4) ... 135s Selecting previously unselected package python-waitress-doc. 135s Preparing to unpack .../07-python-waitress-doc_2.1.2-2_all.deb ... 135s Unpacking python-waitress-doc (2.1.2-2) ... 135s Selecting previously unselected package python3-all. 135s Preparing to unpack .../08-python3-all_3.12.1-0ubuntu2_s390x.deb ... 135s Unpacking python3-all (3.12.1-0ubuntu2) ... 135s Selecting previously unselected package python3-coverage. 135s Preparing to unpack .../09-python3-coverage_7.3.2-0ubuntu1_s390x.deb ... 135s Unpacking python3-coverage (7.3.2-0ubuntu1) ... 135s Selecting previously unselected package python3-iniconfig. 135s Preparing to unpack .../10-python3-iniconfig_1.1.1-2_all.deb ... 135s Unpacking python3-iniconfig (1.1.1-2) ... 135s Selecting previously unselected package python3-packaging. 135s Preparing to unpack .../11-python3-packaging_23.2-1_all.deb ... 135s Unpacking python3-packaging (23.2-1) ... 135s Selecting previously unselected package python3-pluggy. 135s Preparing to unpack .../12-python3-pluggy_1.4.0-1_all.deb ... 135s Unpacking python3-pluggy (1.4.0-1) ... 135s Selecting previously unselected package python3-pytest. 135s Preparing to unpack .../13-python3-pytest_7.4.4-1_all.deb ... 135s Unpacking python3-pytest (7.4.4-1) ... 135s Selecting previously unselected package libjs-jquery-isonscreen. 135s Preparing to unpack .../14-libjs-jquery-isonscreen_1.2.0-1.1_all.deb ... 135s Unpacking libjs-jquery-isonscreen (1.2.0-1.1) ... 135s Selecting previously unselected package python3-pytest-cov. 135s Preparing to unpack .../15-python3-pytest-cov_4.1.0-1_all.deb ... 135s Unpacking python3-pytest-cov (4.1.0-1) ... 135s Selecting previously unselected package python3-waitress. 135s Preparing to unpack .../16-python3-waitress_2.1.2-2_all.deb ... 135s Unpacking python3-waitress (2.1.2-2) ... 135s Selecting previously unselected package autopkgtest-satdep. 135s Preparing to unpack .../17-1-autopkgtest-satdep.deb ... 135s Unpacking autopkgtest-satdep (0) ... 135s Setting up python3-iniconfig (1.1.1-2) ... 135s Setting up python3-waitress (2.1.2-2) ... 135s Setting up python3-all (3.12.1-0ubuntu2) ... 135s Setting up python3-coverage (7.3.2-0ubuntu1) ... 135s Setting up libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 135s Setting up python3-packaging (23.2-1) ... 136s Setting up python3-pluggy (1.4.0-1) ... 136s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 136s Setting up libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2ubuntu2) ... 136s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 136s Setting up python3-pytest (7.4.4-1) ... 136s Setting up libjs-jquery-metadata (12-4) ... 136s Setting up libjs-jquery-isonscreen (1.2.0-1.1) ... 136s Setting up libjs-sphinxdoc (7.2.6-4) ... 136s Setting up libjs-jquery-tablesorter (1:2.31.3+dfsg1-3) ... 136s Setting up python-waitress-doc (2.1.2-2) ... 136s Setting up python3-pytest-cov (4.1.0-1) ... 136s Setting up autopkgtest-satdep (0) ... 136s Processing triggers for man-db (2.12.0-3) ... 139s (Reading database ... 52286 files and directories currently installed.) 139s Removing autopkgtest-satdep (0) ... 139s autopkgtest [01:04:53]: test unittests: [----------------------- 140s 140s *************************** 140s *** Testing with python3.12 140s *************************** 140s 140s Content of current working folder: 140s 140s total 16 140s drwxr-xr-x 3 ubuntu ubuntu 4096 Mar 23 01:04 . 140s drwxrwxrwt 5 root root 4096 Mar 23 01:04 .. 140s -rw-rw-r-- 1 ubuntu ubuntu 1895 May 30 2022 setup.cfg 140s drwxrwxr-x 3 ubuntu ubuntu 4096 May 30 2022 tests 140s Running tests... 140s 140s ============================= test session starts ============================== 140s platform linux -- Python 3.12.2, pytest-7.4.4, pluggy-1.4.0 -- /usr/bin/python3.12 140s cachedir: .pytest_cache 140s rootdir: /tmp/autopkgtest.0nboAW/autopkgtest_tmp 140s configfile: setup.cfg 140s plugins: cov-4.1.0 140s collecting ... collected 806 items 140s 140s tests/test_adjustments.py::Test_asbool::test_s_is_1 PASSED 140s tests/test_adjustments.py::Test_asbool::test_s_is_False PASSED 140s tests/test_adjustments.py::Test_asbool::test_s_is_None PASSED 140s tests/test_adjustments.py::Test_asbool::test_s_is_True PASSED 141s tests/test_adjustments.py::Test_asbool::test_s_is_false PASSED 141s tests/test_adjustments.py::Test_asbool::test_s_is_on PASSED 141s tests/test_adjustments.py::Test_asbool::test_s_is_true PASSED 141s tests/test_adjustments.py::Test_asbool::test_s_is_yes PASSED 141s tests/test_adjustments.py::Test_as_socket_list::test_not_only_sockets_in_list PASSED 141s tests/test_adjustments.py::Test_as_socket_list::test_only_sockets_in_list PASSED 141s tests/test_adjustments.py::TestAdjustments::test_bad_port PASSED 141s tests/test_adjustments.py::TestAdjustments::test_badvar PASSED 141s tests/test_adjustments.py::TestAdjustments::test_clear_untrusted_proxy_headers PASSED 141s tests/test_adjustments.py::TestAdjustments::test_default_listen PASSED 141s tests/test_adjustments.py::TestAdjustments::test_deprecated_send_bytes PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_forwarded_with_x_forwarded PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_host_port_listen PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_host_port PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_listen PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_sockets_and_unix_socket PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_host_port PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_mix_unix_socket_and_listen PASSED 141s tests/test_adjustments.py::TestAdjustments::test_dont_use_unsupported_socket_types PASSED 141s tests/test_adjustments.py::TestAdjustments::test_good_sockets PASSED 141s tests/test_adjustments.py::TestAdjustments::test_goodvar_listen PASSED 141s tests/test_adjustments.py::TestAdjustments::test_goodvars PASSED 141s tests/test_adjustments.py::TestAdjustments::test_ipv4_disabled PASSED 141s tests/test_adjustments.py::TestAdjustments::test_ipv6_disabled PASSED 141s tests/test_adjustments.py::TestAdjustments::test_ipv6_no_port PASSED 141s tests/test_adjustments.py::TestAdjustments::test_multiple_listen PASSED 141s tests/test_adjustments.py::TestAdjustments::test_no_trusted_proxy_headers_trusted_proxy PASSED 141s tests/test_adjustments.py::TestAdjustments::test_server_header_removable PASSED 141s tests/test_adjustments.py::TestAdjustments::test_service_port PASSED 141s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_count_no_trusted_proxy PASSED 141s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_no_trusted_proxy PASSED 141s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list PASSED 141s tests/test_adjustments.py::TestAdjustments::test_trusted_proxy_headers_string_list_newlines PASSED 141s tests/test_adjustments.py::TestAdjustments::test_unknown_trusted_proxy_header PASSED 141s tests/test_adjustments.py::TestAdjustments::test_wildcard_listen PASSED 141s tests/test_adjustments.py::TestCLI::test_bad_param PASSED 141s tests/test_adjustments.py::TestCLI::test_both PASSED 141s tests/test_adjustments.py::TestCLI::test_call PASSED 141s tests/test_adjustments.py::TestCLI::test_cast_params PASSED 141s tests/test_adjustments.py::TestCLI::test_help PASSED 141s tests/test_adjustments.py::TestCLI::test_listen_params PASSED 141s tests/test_adjustments.py::TestCLI::test_multiple_listen_params PASSED 141s tests/test_adjustments.py::TestCLI::test_negative_boolean PASSED 141s tests/test_adjustments.py::TestCLI::test_noargs PASSED 141s tests/test_adjustments.py::TestCLI::test_positive_boolean PASSED 141s tests/test_adjustments.py::TestUnixSocket::test_dont_mix_internet_and_unix_sockets PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test___len__ PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test___nonzero__ PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_append PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_close PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_ctor_from_buffer_None PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_bytes_less_than_zero PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_false PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_get_skip_true PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_newfile PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_notzero PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_notzero PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_prune_remain_zero_tell_zero PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_gt_bytes PASSED 141s tests/test_buffers.py::TestFileBasedBuffer::test_skip_remain_lt_bytes PASSED 141s tests/test_buffers.py::TestTempfileBasedBuffer::test_newfile PASSED 141s tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_None PASSED 141s tests/test_buffers.py::TestBytesIOBasedBuffer::test_ctor_from_buffer_not_None PASSED 141s tests/test_buffers.py::TestBytesIOBasedBuffer::test_newfile PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test___iter__ PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_append PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_gt_remain_withskip PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_lt_remain_withskip PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_get_numbytes_neg_one PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_not_seekable_closeable PASSED 141s tests/test_buffers.py::TestReadOnlyFileBasedBuffer::test_prepare_seekable_closeable PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_None PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test___len__buf_is_not_None PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test___nonzero__ PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test___nonzero___on_int_overflow_buffer PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_large PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test__create_buffer_small PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_longer_than_strbuf_limit PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_append_buf_None_not_longer_than_srtbuf_limit PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_append_overflow PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_append_sz_gt_overflow PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_append_with_len_more_than_max_int PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_close_nobuf PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_close_withbuf PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_False PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_get_buf_None_skip_True PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_None PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_getfile_buf_not_None PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_prune_buf_None PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buf_overflow PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_prune_with_buflen_more_than_max_int PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None PASSED 141s tests/test_buffers.py::TestOverflowableBuffer::test_skip_buf_None_allow_prune_True PASSED 141s tests/test_channel.py::TestHTTPChannel::test__flush_some_empty_outbuf PASSED 141s tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_nonzero PASSED 141s tests/test_channel.py::TestHTTPChannel::test__flush_some_full_outbuf_socket_returns_zero PASSED 141s tests/test_channel.py::TestHTTPChannel::test__flush_some_outbuf_len_gt_sys_maxint PASSED 141s tests/test_channel.py::TestHTTPChannel::test_add_channel PASSED 141s tests/test_channel.py::TestHTTPChannel::test_cancel_no_requests PASSED 141s tests/test_channel.py::TestHTTPChannel::test_cancel_with_requests PASSED 141s tests/test_channel.py::TestHTTPChannel::test_ctor PASSED 141s tests/test_channel.py::TestHTTPChannel::test_del_channel PASSED 141s tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_close_raises PASSED 141s tests/test_channel.py::TestHTTPChannel::test_flush_some_multiple_buffers_first_empty PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_close_outbuf_raises_on_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_read_error PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_read_no_error PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_close_when_flushed PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_notify_after_flush PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_request_with_outbuf PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_no_outbuf_will_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_not_connected PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_notify_after_flush PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_othererror PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_outbuf_raises_socketerror PASSED 141s tests/test_channel.py::TestHTTPChannel::test_handle_write_with_requests PASSED 141s tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_not_will_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_readable_no_requests_will_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_readable_with_requests PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_false PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_headers_finished_expect_continue_true_sent_true PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_no_chunk PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_connection_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_preq_completed_empty PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_preq_error PASSED 141s tests/test_channel.py::TestHTTPChannel::test_received_preq_not_completed PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_multiple_requests PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_one_error_request PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_one_request PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_request_error_raises_disconnect PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_request_raises_disconnect PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_already_wrote_header PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header PASSED 141s tests/test_channel.py::TestHTTPChannel::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED 141s tests/test_channel.py::TestHTTPChannel::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED 141s tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf PASSED 141s tests/test_channel.py::TestHTTPChannel::test_writable_nothing_in_outbuf_will_close PASSED 141s tests/test_channel.py::TestHTTPChannel::test_writable_something_in_outbuf PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_attempts_flush_high_water_and_exception PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_disconnected_while_over_watermark PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_empty_byte PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_filewrapper PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_flush_and_exception PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_nonempty_byte PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_rotates_outbuf_on_overflow PASSED 141s tests/test_channel.py::TestHTTPChannel::test_write_soon_waits_on_backpressure PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_empty_outbuf PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_nonzero PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_full_outbuf_socket_returns_zero PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test__flush_some_outbuf_len_gt_sys_maxint PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test_add_channel PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_no_requests PASSED 141s tests/test_channel.py::TestHTTPChannelLookahead::test_cancel_with_requests PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_client_disconnect_immediate PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_ctor PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_del_channel PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_close_raises PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_flush_some_multiple_buffers_first_empty PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_close_outbuf_raises_on_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_error PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_read_no_error PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_close_when_flushed PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_notify_after_flush PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_request_with_outbuf PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_no_outbuf_will_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_no_requests_outbuf_gt_send_bytes PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_not_connected PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_notify_after_flush PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_othererror PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_outbuf_raises_socketerror PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_handle_write_with_requests PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_lookahead_continue PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_not_will_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_no_requests_will_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_readable_with_requests PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_false PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_headers_finished_expect_continue_true_sent_true PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_no_chunk PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_connection_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_completed_empty PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_error PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_received_preq_not_completed PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_multiple_requests PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_error_request PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_one_request PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_error_raises_disconnect PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_request_raises_disconnect PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_already_wrote_header PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_service_with_requests_raises_didnt_write_header_expose_tbs PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_total_outbufs_len_an_outbuf_size_gt_sys_maxint PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_nothing_in_outbuf_will_close PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_writable_something_in_outbuf PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_attempts_flush_high_water_and_exception PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_disconnected_while_over_watermark PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_empty_byte PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_filewrapper PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_flush_and_exception PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_nonempty_byte PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_rotates_outbuf_on_overflow PASSED 142s tests/test_channel.py::TestHTTPChannelLookahead::test_write_soon_waits_on_backpressure PASSED 145s tests/test_functional.py::SleepyThreadTests::test_it PASSED 145s tests/test_functional.py::TcpEchoTests::test_bad_host_header PASSED 145s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding PASSED 145s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_extension PASSED 145s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_invalid_hex PASSED 145s tests/test_functional.py::TcpEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED 145s tests/test_functional.py::TcpEchoTests::test_chunking_request_with_content PASSED 145s tests/test_functional.py::TcpEchoTests::test_chunking_request_without_content PASSED 145s tests/test_functional.py::TcpEchoTests::test_date_and_server PASSED 145s tests/test_functional.py::TcpEchoTests::test_keepalive_http10_explicit PASSED 145s tests/test_functional.py::TcpEchoTests::test_keepalive_http11_connclose PASSED 145s tests/test_functional.py::TcpEchoTests::test_keepalive_http11_explicit PASSED 145s tests/test_functional.py::TcpEchoTests::test_keepalive_http_10 PASSED 145s tests/test_functional.py::TcpEchoTests::test_keepalive_http_11 PASSED 145s tests/test_functional.py::TcpEchoTests::test_large_body PASSED 145s tests/test_functional.py::TcpEchoTests::test_many_clients PASSED 145s tests/test_functional.py::TcpEchoTests::test_multiple_requests_with_body PASSED 145s tests/test_functional.py::TcpEchoTests::test_multiple_requests_without_body PASSED 145s tests/test_functional.py::TcpEchoTests::test_proxy_headers PASSED 145s tests/test_functional.py::TcpEchoTests::test_send_empty_body PASSED 145s tests/test_functional.py::TcpEchoTests::test_send_with_body PASSED 145s tests/test_functional.py::TcpEchoTests::test_without_crlf PASSED 145s tests/test_functional.py::TcpPipeliningTests::test_pipelining PASSED 145s tests/test_functional.py::TcpExpectContinueTests::test_expect_continue PASSED 145s tests/test_functional.py::TcpBadContentLengthTests::test_long_body PASSED 145s tests/test_functional.py::TcpBadContentLengthTests::test_short_body PASSED 145s tests/test_functional.py::TcpNoContentLengthTests::test_http10_generator PASSED 145s tests/test_functional.py::TcpNoContentLengthTests::test_http10_list PASSED 145s tests/test_functional.py::TcpNoContentLengthTests::test_http10_listlentwo PASSED 146s tests/test_functional.py::TcpNoContentLengthTests::test_http11_generator PASSED 146s tests/test_functional.py::TcpNoContentLengthTests::test_http11_list PASSED 146s tests/test_functional.py::TcpNoContentLengthTests::test_http11_listlentwo PASSED 146s tests/test_functional.py::TcpWriteCallbackTests::test_equal_body PASSED 146s tests/test_functional.py::TcpWriteCallbackTests::test_long_body PASSED 146s tests/test_functional.py::TcpWriteCallbackTests::test_no_content_length PASSED 146s tests/test_functional.py::TcpWriteCallbackTests::test_short_body PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_chunked_encoding PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED 146s tests/test_functional.py::TcpTooLargeTests::test_request_headers_too_large_http11 PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http10 PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11 PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_after_start_response_http11_close PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_after_write_cb PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_10 PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11 PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_before_start_response_http_11_close PASSED 146s tests/test_functional.py::TcpInternalServerErrorTests::test_in_generator PASSED 146s tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED 146s tests/test_functional.py::TcpInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_filelike_http10 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_filelike_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_filelike_longcl_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http10 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_filelike_nocl_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_filelike_shortcl_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http10 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_iobase_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_longcl_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http10 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_nocl_http11 PASSED 146s tests/test_functional.py::TcpFileWrapperTests::test_notfilelike_shortcl_http11 PASSED 146s tests/test_functional.py::UnixEchoTests::test_bad_host_header PASSED 146s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding PASSED 146s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_extension PASSED 146s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_invalid_hex PASSED 146s tests/test_functional.py::UnixEchoTests::test_broken_chunked_encoding_missing_chunk_end PASSED 147s tests/test_functional.py::UnixEchoTests::test_chunking_request_with_content PASSED 147s tests/test_functional.py::UnixEchoTests::test_chunking_request_without_content PASSED 147s tests/test_functional.py::UnixEchoTests::test_date_and_server PASSED 147s tests/test_functional.py::UnixEchoTests::test_keepalive_http10_explicit PASSED 147s tests/test_functional.py::UnixEchoTests::test_keepalive_http11_connclose PASSED 147s tests/test_functional.py::UnixEchoTests::test_keepalive_http11_explicit PASSED 147s tests/test_functional.py::UnixEchoTests::test_keepalive_http_10 PASSED 147s tests/test_functional.py::UnixEchoTests::test_keepalive_http_11 PASSED 147s tests/test_functional.py::UnixEchoTests::test_large_body PASSED 147s tests/test_functional.py::UnixEchoTests::test_many_clients PASSED 147s tests/test_functional.py::UnixEchoTests::test_multiple_requests_with_body PASSED 147s tests/test_functional.py::UnixEchoTests::test_multiple_requests_without_body PASSED 147s tests/test_functional.py::UnixEchoTests::test_proxy_headers PASSED 147s tests/test_functional.py::UnixEchoTests::test_send_empty_body PASSED 147s tests/test_functional.py::UnixEchoTests::test_send_with_body PASSED 147s tests/test_functional.py::UnixEchoTests::test_without_crlf PASSED 147s tests/test_functional.py::UnixPipeliningTests::test_pipelining PASSED 147s tests/test_functional.py::UnixExpectContinueTests::test_expect_continue PASSED 147s tests/test_functional.py::UnixBadContentLengthTests::test_long_body PASSED 147s tests/test_functional.py::UnixBadContentLengthTests::test_short_body PASSED 147s tests/test_functional.py::UnixNoContentLengthTests::test_http10_generator PASSED 147s tests/test_functional.py::UnixNoContentLengthTests::test_http10_list PASSED 147s tests/test_functional.py::UnixNoContentLengthTests::test_http10_listlentwo PASSED 147s tests/test_functional.py::UnixNoContentLengthTests::test_http11_generator PASSED 147s tests/test_functional.py::UnixNoContentLengthTests::test_http11_list PASSED 147s tests/test_functional.py::UnixNoContentLengthTests::test_http11_listlentwo PASSED 147s tests/test_functional.py::UnixWriteCallbackTests::test_equal_body PASSED 147s tests/test_functional.py::UnixWriteCallbackTests::test_long_body PASSED 147s tests/test_functional.py::UnixWriteCallbackTests::test_no_content_length PASSED 147s tests/test_functional.py::UnixWriteCallbackTests::test_short_body PASSED 147s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_chunked_encoding PASSED 147s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10 PASSED 147s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http10_keepalive PASSED 147s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11 PASSED 147s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_no_cl_http11_connclose PASSED 147s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10 PASSED 148s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http10_keepalive PASSED 148s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11 PASSED 148s tests/test_functional.py::UnixTooLargeTests::test_request_body_too_large_with_wrong_cl_http11_connclose PASSED 148s tests/test_functional.py::UnixTooLargeTests::test_request_headers_too_large_http11 PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http10 PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11 PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_after_start_response_http11_close PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_after_write_cb PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_10 PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11 PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_before_start_response_http_11_close PASSED 148s tests/test_functional.py::UnixInternalServerErrorTests::test_in_generator PASSED 148s tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_10 PASSED 148s tests/test_functional.py::UnixInternalServerErrorTestsWithTraceback::test_expose_tracebacks_http_11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_filelike_http10 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_filelike_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_filelike_longcl_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http10 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_filelike_nocl_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_filelike_shortcl_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http10 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_iobase_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_longcl_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http10 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_nocl_http11 PASSED 148s tests/test_functional.py::UnixFileWrapperTests::test_notfilelike_shortcl_http11 PASSED 148s tests/test_init.py::Test_serve::test_it PASSED 148s tests/test_init.py::Test_serve_paste::test_it PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_close_with_body_rcv PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_close_with_no_body_rcv PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_None PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_get_body_stream_nonNone PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_expect_continue PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_11_te_chunked PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_minus PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_bad_content_length_plus PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_connection_close PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_cr_only PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_empty PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_first_line PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_extra_lf_in_header PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_gardenpath PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_backtrack_bad PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_chars PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_folding_spacing PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_no_colon PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_invalid_whitespace_vtab PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_lf_only PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_content_length PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_extra_space PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_multiple_values_header_folded_multiple PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_no_cr_in_headerplus PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_short_values PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_multiple PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_unicode PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_parse_header_transfer_encoding_invalid_whitespace PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_already_completed PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_bad_host_header PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_bad_transfer_encoding PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_body_too_large PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_chunked_completed_sets_content_length PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_cl_too_large PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_error_from_parser PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_get_no_headers PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_headers_not_too_large_multiple_chunks PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_headers_too_large PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_no_doublecr PASSED 148s tests/test_parser.py::TestHTTPRequestParser::test_received_nonsense_nothing PASSED 148s tests/test_parser.py::Test_split_uri::test_split_uri_path PASSED 148s tests/test_parser.py::Test_split_uri::test_split_uri_path_query PASSED 148s tests/test_parser.py::Test_split_uri::test_split_uri_path_query_fragment PASSED 148s tests/test_parser.py::Test_split_uri::test_split_uri_unicode_error_raises_parsing_error PASSED 148s tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_needed PASSED 148s tests/test_parser.py::Test_split_uri::test_split_uri_unquoting_unneeded PASSED 148s tests/test_parser.py::Test_split_uri::test_split_url_https PASSED 148s tests/test_parser.py::Test_split_uri::test_split_url_with_fragment PASSED 148s tests/test_parser.py::Test_split_uri::test_split_url_with_query PASSED 148s tests/test_parser.py::Test_split_uri::test_split_url_with_query_empty PASSED 148s tests/test_parser.py::Test_get_header_lines::test_get_header_lines PASSED 148s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_folded PASSED 148s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_malformed PASSED 148s tests/test_parser.py::Test_get_header_lines::test_get_header_lines_tabbed PASSED 148s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_lowercase_method PASSED 148s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_matchok PASSED 148s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_missing_version PASSED 148s tests/test_parser.py::Test_crack_first_line::test_crack_first_line_nomatch PASSED 148s tests/test_parser.py::TestHTTPRequestParserIntegration::testComplexGET PASSED 148s tests/test_parser.py::TestHTTPRequestParserIntegration::testDuplicateHeaders PASSED 148s tests/test_parser.py::TestHTTPRequestParserIntegration::testProxyGET PASSED 148s tests/test_parser.py::TestHTTPRequestParserIntegration::testSimpleGET PASSED 148s tests/test_parser.py::TestHTTPRequestParserIntegration::testSpoofedHeadersDropped PASSED 148s tests/test_parser.py::Test_unquote_bytes_to_wsgi::test_highorder PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_clears_headers_if_untrusted_proxy PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_all_headers_including_untrusted PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_contains_only_trusted_headers PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_bogus_scheme_override PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_trusted PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_values_w_scheme_override_untrusted PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_get_environment_warning_other_proxy_headers PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_empty_pair PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_for_bad_quote PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_host_bad_quote PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_minimal PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_multiple_proxies_trust_only_two PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_no_equals PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_token_whitespace PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_pair_value_whitespace PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_443 PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_port_wrong_proto_port_80 PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_forwarded_warning_unknown_token PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_port PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_multiple_x_forwarded_proto PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_no_valid_proxy_headers PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_for_v6_missing_brackets PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_multiple_with_forwarded_port_limit_one_trusted PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_forwarded_port PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_with_port PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwarded_host_without_port PASSED 148s tests/test_proxy_headers.py::TestProxyHeadersMiddleware::test_parse_proxy_headers_forwared_for_multiple PASSED 148s tests/test_receiver.py::TestFixedStreamReceiver::test___len__ PASSED 148s tests/test_receiver.py::TestFixedStreamReceiver::test_getbuf PASSED 148s tests/test_receiver.py::TestFixedStreamReceiver::test_getfile PASSED 148s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_gt_datalen PASSED 148s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lt_1 PASSED 148s tests/test_receiver.py::TestFixedStreamReceiver::test_received_remain_lte_datalen PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test___len__ PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_alreadycompleted PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_getbuf PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_getfile PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_is_properly_terminated PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_chunk_not_properly_terminated PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_not_received PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_all_chunks_received PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_finished_garbage_in_input PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_control_line_notfinished PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_multiple_chunks_split PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_remain_gt_zero PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_finished PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_not_finished PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_crlf PASSED 148s tests/test_receiver.py::TestChunkedReceiver::test_received_trailer_startswith_lf PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\n] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid=] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[\r] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_extensions[invalid = true] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[test] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_valid_extensions[valid=true;other=true] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[0x04] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+0x04] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[x04] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[+04] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 04] PASSED 148s tests/test_receiver.py::TestChunkedReceiverParametrized::test_received_invalid_size[ 0x04] PASSED 148s tests/test_regression.py::test_suite PASSED 148s tests/test_runner.py::Test_match::test_bad_module PASSED 148s tests/test_runner.py::Test_match::test_empty PASSED 148s tests/test_runner.py::Test_match::test_module_obj PASSED 148s tests/test_runner.py::Test_match::test_module_only PASSED 148s tests/test_runner.py::Test_resolve::test_bad_module PASSED 148s tests/test_runner.py::Test_resolve::test_complex_happy_path PASSED 148s tests/test_runner.py::Test_resolve::test_nonexistent_function PASSED 148s tests/test_runner.py::Test_resolve::test_simple_happy_path PASSED 148s tests/test_runner.py::Test_run::test_bad PASSED 148s tests/test_runner.py::Test_run::test_bad_app_module PASSED 148s tests/test_runner.py::Test_run::test_bad_app_object PASSED 148s tests/test_runner.py::Test_run::test_bad_apps_app PASSED 148s tests/test_runner.py::Test_run::test_cwd_added_to_path PASSED 148s tests/test_runner.py::Test_run::test_help PASSED 148s tests/test_runner.py::Test_run::test_multiple_apps_app PASSED 148s tests/test_runner.py::Test_run::test_no_app PASSED 148s tests/test_runner.py::Test_run::test_returned_app PASSED 148s tests/test_runner.py::Test_run::test_simple_call PASSED 148s tests/test_runner.py::Test_helper::test_exception_logging PASSED 148s tests/test_server.py::TestWSGIServer::test_add_task PASSED 148s tests/test_server.py::TestWSGIServer::test_backward_compatibility PASSED 148s tests/test_server.py::TestWSGIServer::test_create_with_multiple_tcp_sockets PASSED 148s tests/test_server.py::TestWSGIServer::test_create_with_one_socket_handle_accept_noerror PASSED 148s tests/test_server.py::TestWSGIServer::test_create_with_one_socket_should_not_bind_socket PASSED 148s tests/test_server.py::TestWSGIServer::test_create_with_one_tcp_socket PASSED 148s tests/test_server.py::TestWSGIServer::test_ctor_app_is_None PASSED 148s tests/test_server.py::TestWSGIServer::test_ctor_makes_dispatcher PASSED 148s tests/test_server.py::TestWSGIServer::test_ctor_start_false PASSED 148s tests/test_server.py::TestWSGIServer::test_ctor_start_true PASSED 148s tests/test_server.py::TestWSGIServer::test_get_server_multi PASSED 148s tests/test_server.py::TestWSGIServer::test_handle_accept_noerror PASSED 148s tests/test_server.py::TestWSGIServer::test_handle_accept_other_socket_error PASSED 148s tests/test_server.py::TestWSGIServer::test_handle_accept_wouldblock_socket_error PASSED 148s tests/test_server.py::TestWSGIServer::test_handle_connect PASSED 148s tests/test_server.py::TestWSGIServer::test_handle_read PASSED 148s tests/test_server.py::TestWSGIServer::test_maintenance PASSED 148s tests/test_server.py::TestWSGIServer::test_pull_trigger PASSED 148s tests/test_server.py::TestWSGIServer::test_readable_maintenance_false PASSED 148s tests/test_server.py::TestWSGIServer::test_readable_maintenance_true PASSED 148s tests/test_server.py::TestWSGIServer::test_readable_maplen_gt_connection_limit PASSED 148s tests/test_server.py::TestWSGIServer::test_readable_maplen_lt_connection_limit PASSED 148s tests/test_server.py::TestWSGIServer::test_readable_maplen_toggles_connection_overflow PASSED 148s tests/test_server.py::TestWSGIServer::test_readable_not_accepting PASSED 148s tests/test_server.py::TestWSGIServer::test_run PASSED 148s tests/test_server.py::TestWSGIServer::test_run_base_server PASSED 148s tests/test_server.py::TestWSGIServer::test_writable PASSED 148s tests/test_server.py::TestUnixWSGIServer::test_create_with_unix_socket PASSED 148s tests/test_server.py::TestUnixWSGIServer::test_creates_new_sockinfo PASSED 148s tests/test_server.py::TestUnixWSGIServer::test_handle_accept PASSED 148s tests/test_server.py::TestUnixWSGIServer::test_unix PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_all_busy_threads PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_add_task_with_idle_threads PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_handler_thread_task_raises PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_decrease PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_increase_with_existing PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_set_thread_count_same PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_cancel_pending PASSED 148s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_no_threads PASSED 149s tests/test_task.py::TestThreadedTaskDispatcher::test_shutdown_one_thread PASSED 149s tests/test_task.py::TestTask::test_build_response_header_bad_http_version PASSED 149s tests/test_task.py::TestTask::test_build_response_header_date_exists PASSED 149s tests/test_task.py::TestTask::test_build_response_header_preexisting_content_length PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_no_content_length PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v10_keepalive_with_content_length PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v11_1xx_no_content_length_or_transfer_encoding PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v11_200_no_content_length PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v11_204_no_content_length_or_transfer_encoding PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v11_304_no_content_length_or_transfer_encoding PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v11_connection_closed_by_client PASSED 149s tests/test_task.py::TestTask::test_build_response_header_v11_connection_keepalive_by_client PASSED 149s tests/test_task.py::TestTask::test_build_response_header_via_added PASSED 149s tests/test_task.py::TestTask::test_ctor_version_not_in_known PASSED 149s tests/test_task.py::TestTask::test_finish_chunked_response PASSED 149s tests/test_task.py::TestTask::test_finish_didnt_write_header PASSED 149s tests/test_task.py::TestTask::test_finish_wrote_header PASSED 149s tests/test_task.py::TestTask::test_remove_content_length_header PASSED 149s tests/test_task.py::TestTask::test_remove_content_length_header_with_other PASSED 149s tests/test_task.py::TestTask::test_start PASSED 149s tests/test_task.py::TestTask::test_write_chunked_response PASSED 149s tests/test_task.py::TestTask::test_write_header_not_written PASSED 149s tests/test_task.py::TestTask::test_write_preexisting_content_length PASSED 149s tests/test_task.py::TestTask::test_write_start_response_uncalled PASSED 149s tests/test_task.py::TestTask::test_write_wrote_header PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_twice_wo_exc_info PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_exc_info_complete PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_unwritten PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_calls_start_response_w_excinf_headers_written PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_calls_write PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_do_not_warn_on_head PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_closeable PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_empty_chunk_as_first PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_badcl PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_filewrapper_prepare_returns_True_nocl PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_len1_chunk_without_cl PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_too_few_bytes PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_returns_too_many_bytes PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_without_body_204_logged PASSED 149s tests/test_task.py::TestWSGITask::test_execute_app_without_body_304_logged PASSED 149s tests/test_task.py::TestWSGITask::test_execute_bad_header_key PASSED 149s tests/test_task.py::TestWSGITask::test_execute_bad_header_name_control_characters PASSED 149s tests/test_task.py::TestWSGITask::test_execute_bad_header_value PASSED 149s tests/test_task.py::TestWSGITask::test_execute_bad_header_value_control_characters PASSED 149s tests/test_task.py::TestWSGITask::test_execute_bad_status_control_characters PASSED 149s tests/test_task.py::TestWSGITask::test_execute_bad_status_value PASSED 149s tests/test_task.py::TestWSGITask::test_execute_hopbyhop_header PASSED 149s tests/test_task.py::TestWSGITask::test_execute_with_content_length_header PASSED 149s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_empty_path PASSED 149s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_hit PASSED 149s tests/test_task.py::TestWSGITask::test_get_environ_with_url_prefix_miss PASSED 149s tests/test_task.py::TestWSGITask::test_get_environment_already_cached PASSED 149s tests/test_task.py::TestWSGITask::test_get_environment_no_query PASSED 149s tests/test_task.py::TestWSGITask::test_get_environment_path_empty PASSED 149s tests/test_task.py::TestWSGITask::test_get_environment_path_startswith_more_than_one_slash PASSED 149s tests/test_task.py::TestWSGITask::test_get_environment_values PASSED 149s tests/test_task.py::TestWSGITask::test_get_environment_with_query PASSED 149s tests/test_task.py::TestWSGITask::test_preserve_header_value_order PASSED 149s tests/test_task.py::TestWSGITask::test_service PASSED 149s tests/test_task.py::TestWSGITask::test_service_server_raises_socket_error PASSED 149s tests/test_task.py::TestErrorTask::test_execute_http_10 PASSED 149s tests/test_task.py::TestErrorTask::test_execute_http_11 PASSED 149s tests/test_task.py::TestErrorTask::test_execute_http_11_close PASSED 149s tests/test_task.py::TestErrorTask::test_execute_http_11_keep_forces_close PASSED 149s tests/test_trigger.py::Test_trigger::test__close PASSED 149s tests/test_trigger.py::Test_trigger::test__physical_pull PASSED 149s tests/test_trigger.py::Test_trigger::test_close PASSED 149s tests/test_trigger.py::Test_trigger::test_handle_close PASSED 149s tests/test_trigger.py::Test_trigger::test_handle_connect PASSED 149s tests/test_trigger.py::Test_trigger::test_handle_read_no_socket_error PASSED 149s tests/test_trigger.py::Test_trigger::test_handle_read_socket_error PASSED 149s tests/test_trigger.py::Test_trigger::test_handle_read_thunk PASSED 149s tests/test_trigger.py::Test_trigger::test_handle_read_thunk_error PASSED 149s tests/test_trigger.py::Test_trigger::test_pull_trigger_nothunk PASSED 149s tests/test_trigger.py::Test_trigger::test_pull_trigger_thunk PASSED 149s tests/test_trigger.py::Test_trigger::test_readable PASSED 149s tests/test_trigger.py::Test_trigger::test_writable PASSED 149s tests/test_utilities.py::Test_parse_http_date::test_neither PASSED 149s tests/test_utilities.py::Test_parse_http_date::test_rfc822 PASSED 149s tests/test_utilities.py::Test_parse_http_date::test_rfc850 PASSED 149s tests/test_utilities.py::Test_build_http_date::test_rountdrip PASSED 149s tests/test_utilities.py::Test_unpack_rfc850::test_it PASSED 149s tests/test_utilities.py::Test_unpack_rfc_822::test_it PASSED 149s tests/test_utilities.py::Test_find_double_newline::test_double_crfl PASSED 149s tests/test_utilities.py::Test_find_double_newline::test_double_linefeed PASSED 149s tests/test_utilities.py::Test_find_double_newline::test_empty PASSED 149s tests/test_utilities.py::Test_find_double_newline::test_mixed PASSED 149s tests/test_utilities.py::Test_find_double_newline::test_one_crlf PASSED 149s tests/test_utilities.py::Test_find_double_newline::test_one_linefeed PASSED 149s tests/test_utilities.py::TestBadRequest::test_it PASSED 149s tests/test_utilities.py::Test_undquote::test_empty PASSED 149s tests/test_utilities.py::Test_undquote::test_invalid_quoting PASSED 149s tests/test_utilities.py::Test_undquote::test_invalid_quoting_single_quote PASSED 149s tests/test_utilities.py::Test_undquote::test_quoted PASSED 149s tests/test_utilities.py::Test_undquote::test_quoted_backslash_htab PASSED 149s tests/test_utilities.py::Test_undquote::test_quoted_backslash_invalid PASSED 149s tests/test_utilities.py::Test_undquote::test_quoted_backslash_quote PASSED 149s tests/test_utilities.py::Test_undquote::test_quoted_htab PASSED 149s tests/test_utilities.py::Test_undquote::test_unquoted PASSED 149s tests/test_wasyncore.py::HelperFunctionTests::test_closeall PASSED 149s tests/test_wasyncore.py::HelperFunctionTests::test_closeall_default PASSED 149s tests/test_wasyncore.py::HelperFunctionTests::test_compact_traceback PASSED 149s tests/test_wasyncore.py::HelperFunctionTests::test_readwrite PASSED 149s tests/test_wasyncore.py::HelperFunctionTests::test_readwriteexc PASSED 149s tests/test_wasyncore.py::DispatcherTests::test_basic PASSED 149s tests/test_wasyncore.py::DispatcherTests::test_log PASSED 149s tests/test_wasyncore.py::DispatcherTests::test_log_info PASSED 149s tests/test_wasyncore.py::DispatcherTests::test_repr PASSED 149s tests/test_wasyncore.py::DispatcherTests::test_strerror PASSED 149s tests/test_wasyncore.py::DispatcherTests::test_unhandled PASSED 149s tests/test_wasyncore.py::DispatcherWithSendTests::test_send PASSED 149s tests/test_wasyncore.py::FileWrapperTest::test_close_twice PASSED 149s tests/test_wasyncore.py::FileWrapperTest::test_dispatcher PASSED 149s tests/test_wasyncore.py::FileWrapperTest::test_recv PASSED 149s tests/test_wasyncore.py::FileWrapperTest::test_resource_warning PASSED 149s tests/test_wasyncore.py::FileWrapperTest::test_send PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_bind PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_connection_attributes PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_create_socket PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accept PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_accepted PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_close_after_conn_broken PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_connect PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_error PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_expt PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_read PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_handle_write PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_quick_connect PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Select::test_set_reuse_addr PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_bind PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_connection_attributes PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_create_socket PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accept PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_accepted PASSED 149s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_close_after_conn_broken PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_error PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_expt PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_read PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_handle_write PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_quick_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv4Poll::test_set_reuse_addr PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_bind PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_connection_attributes PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_create_socket PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accept PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_accepted PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_close_after_conn_broken PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_error PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_expt PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_read PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_handle_write PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_quick_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Select::test_set_reuse_addr PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_bind PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_connection_attributes PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_create_socket PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accept PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_accepted PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_close_after_conn_broken PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_error PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_expt PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_read PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_handle_write PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_quick_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseIPv6Poll::test_set_reuse_addr PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_bind SKIPPED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_connection_attributes PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_create_socket PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accept PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_accepted PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_close_after_conn_broken PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_connect PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_error PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_expt SKIPPED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_read PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_handle_write PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_quick_connect SKIPPED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsSelect::test_set_reuse_addr SKIPPED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_bind SKIPPED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_connection_attributes PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_create_socket PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accept PASSED 150s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_accepted PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_close_after_conn_broken PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_connect PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_error PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_expt SKIPPED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_read PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_handle_write PASSED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_quick_connect SKIPPED 151s tests/test_wasyncore.py::TestAPI_UseUnixSocketsPoll::test_set_reuse_addr SKIPPED 151s tests/test_wasyncore.py::Test__strerror::test_gardenpath PASSED 151s tests/test_wasyncore.py::Test__strerror::test_unknown PASSED 151s tests/test_wasyncore.py::Test_read::test_gardenpath PASSED 151s tests/test_wasyncore.py::Test_read::test_non_reraised PASSED 151s tests/test_wasyncore.py::Test_read::test_reraised PASSED 151s tests/test_wasyncore.py::Test_write::test_gardenpath PASSED 151s tests/test_wasyncore.py::Test_write::test_non_reraised PASSED 151s tests/test_wasyncore.py::Test_write::test_reraised PASSED 151s tests/test_wasyncore.py::Test__exception::test_gardenpath PASSED 151s tests/test_wasyncore.py::Test__exception::test_non_reraised PASSED 151s tests/test_wasyncore.py::Test__exception::test_reraised PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_exception_in_reraised PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_exception_not_in_reraised PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_handle_close PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_handle_expt_event PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_handle_read_event PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_handle_write_event PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_socketerror_in_disconnected PASSED 151s tests/test_wasyncore.py::Test_readwrite::test_socketerror_not_in_disconnected PASSED 151s tests/test_wasyncore.py::Test_poll::test_nothing_writable_nothing_readable_but_map_not_empty PASSED 151s tests/test_wasyncore.py::Test_poll::test_select_raises_EINTR PASSED 151s tests/test_wasyncore.py::Test_poll::test_select_raises_non_EINTR PASSED 151s tests/test_wasyncore.py::Test_poll2::test_select_raises_EINTR PASSED 151s tests/test_wasyncore.py::Test_poll2::test_select_raises_non_EINTR PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test___repr__accepting PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test___repr__connected PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_TypeError PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_accept_raise_unexpected_socketerror PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_close_raises_unknown_socket_error PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_connect_raise_socket_error PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_accepted PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_close PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_connect_event_getsockopt_returns_error PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_error_gardenpath PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_expt_event_getsockopt_returns_error PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_read_event_not_accepting_not_connected_connecting PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_handle_write_event_while_accepting PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_recv_raises_disconnect PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_send_raise_EWOULDBLOCK PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_send_raise_unexpected_socketerror PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_set_reuse_addr_with_socketerror PASSED 151s tests/test_wasyncore.py::Test_dispatcher::test_unexpected_getpeername_exc PASSED 151s tests/test_wasyncore.py::Test_dispatcher_with_send::test_writable PASSED 151s tests/test_wasyncore.py::Test_close_all::test_reraised_exc_on_close PASSED 151s tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_ebadf PASSED 151s tests/test_wasyncore.py::Test_close_all::test_socketerror_on_close_non_ebadf PASSED 152s tests/test_wasyncore.py::Test_close_all::test_unknown_exc_on_close PASSED 152s 152s =============================== warnings summary =============================== 152s tests/test_adjustments.py: 15 warnings 152s tests/test_parser.py: 50 warnings 152s tests/test_server.py: 30 warnings 152s /usr/lib/python3/dist-packages/waitress/adjustments.py:449: DeprecationWarning: In future versions of Waitress clear_untrusted_proxy_headers will be set to True by default. You may opt-out by setting this value to False, or opt-in explicitly by setting this to True. 152s warnings.warn( 152s 152s tests/test_adjustments.py::TestAdjustments::test_goodvars 152s /usr/lib/python3/dist-packages/waitress/adjustments.py:318: DeprecationWarning: send_bytes will be removed in a future release 152s warnings.warn( 152s 152s tests/test_regression.py::test_suite 152s /usr/lib/python3/dist-packages/_pytest/python.py:198: 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`? 152s warnings.warn( 152s 152s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 152s 152s ---------- coverage: platform linux, python 3.12.2-final-0 ----------- 152s Name Stmts Miss Cover 152s ----------------------------------------------------------------------------------- 152s /etc/python3.12/sitecustomize.py 5 2 60% 152s /usr/lib/python3/dist-packages/_distutils_hack/__init__.py 100 95 5% 152s /usr/lib/python3/dist-packages/_pytest/_argcomplete.py 37 36 3% 152s /usr/lib/python3/dist-packages/_pytest/_code/code.py 724 656 9% 152s /usr/lib/python3/dist-packages/_pytest/_code/source.py 145 143 1% 152s /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py 120 74 38% 152s /usr/lib/python3/dist-packages/_pytest/_io/wcwidth.py 25 16 36% 152s /usr/lib/python3/dist-packages/_pytest/_py/path.py 947 942 1% 152s /usr/lib/python3/dist-packages/_pytest/assertion/__init__.py 86 73 15% 152s /usr/lib/python3/dist-packages/_pytest/assertion/rewrite.py 675 399 41% 152s /usr/lib/python3/dist-packages/_pytest/cacheprovider.py 322 269 16% 152s /usr/lib/python3/dist-packages/_pytest/capture.py 603 558 7% 152s /usr/lib/python3/dist-packages/_pytest/compat.py 164 117 29% 152s /usr/lib/python3/dist-packages/_pytest/config/__init__.py 890 749 16% 152s /usr/lib/python3/dist-packages/_pytest/config/argparsing.py 259 214 17% 152s /usr/lib/python3/dist-packages/_pytest/config/compat.py 38 19 50% 152s /usr/lib/python3/dist-packages/_pytest/debugging.py 230 220 4% 152s /usr/lib/python3/dist-packages/_pytest/deprecated.py 24 23 4% 152s /usr/lib/python3/dist-packages/_pytest/doctest.py 361 353 2% 152s /usr/lib/python3/dist-packages/_pytest/faulthandler.py 58 45 22% 152s /usr/lib/python3/dist-packages/_pytest/fixtures.py 826 431 48% 152s /usr/lib/python3/dist-packages/_pytest/helpconfig.py 134 124 7% 152s /usr/lib/python3/dist-packages/_pytest/junitxml.py 367 365 1% 152s /usr/lib/python3/dist-packages/_pytest/legacypath.py 216 188 13% 152s /usr/lib/python3/dist-packages/_pytest/logging.py 440 320 27% 152s /usr/lib/python3/dist-packages/_pytest/main.py 471 295 37% 152s /usr/lib/python3/dist-packages/_pytest/mark/__init__.py 129 114 12% 152s /usr/lib/python3/dist-packages/_pytest/mark/structures.py 272 191 30% 152s /usr/lib/python3/dist-packages/_pytest/monkeypatch.py 168 154 8% 152s /usr/lib/python3/dist-packages/_pytest/nodes.py 333 218 35% 152s /usr/lib/python3/dist-packages/_pytest/nose.py 29 20 31% 152s /usr/lib/python3/dist-packages/_pytest/outcomes.py 110 101 8% 152s /usr/lib/python3/dist-packages/_pytest/pastebin.py 70 69 1% 152s /usr/lib/python3/dist-packages/_pytest/pathlib.py 416 341 18% 152s /usr/lib/python3/dist-packages/_pytest/python.py 896 545 39% 152s /usr/lib/python3/dist-packages/_pytest/python_path.py 16 15 6% 152s /usr/lib/python3/dist-packages/_pytest/reports.py 297 253 15% 152s /usr/lib/python3/dist-packages/_pytest/runner.py 296 168 43% 152s /usr/lib/python3/dist-packages/_pytest/scope.py 39 29 26% 152s /usr/lib/python3/dist-packages/_pytest/setuponly.py 58 51 12% 152s /usr/lib/python3/dist-packages/_pytest/setupplan.py 24 20 17% 152s /usr/lib/python3/dist-packages/_pytest/skipping.py 163 134 18% 152s /usr/lib/python3/dist-packages/_pytest/stash.py 36 25 31% 152s /usr/lib/python3/dist-packages/_pytest/stepwise.py 74 72 3% 152s /usr/lib/python3/dist-packages/_pytest/terminal.py 913 692 24% 152s /usr/lib/python3/dist-packages/_pytest/threadexception.py 42 27 36% 152s /usr/lib/python3/dist-packages/_pytest/tmpdir.py 156 135 13% 152s /usr/lib/python3/dist-packages/_pytest/unittest.py 251 154 39% 152s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py 44 29 34% 152s /usr/lib/python3/dist-packages/_pytest/warnings.py 74 49 34% 152s /usr/lib/python3/dist-packages/apport_python_hook.py 119 109 8% 152s /usr/lib/python3/dist-packages/pluggy/_callers.py 109 69 37% 152s /usr/lib/python3/dist-packages/pluggy/_hooks.py 266 180 32% 152s /usr/lib/python3/dist-packages/pluggy/_manager.py 230 184 20% 152s /usr/lib/python3/dist-packages/pluggy/_result.py 50 41 18% 152s /usr/lib/python3/dist-packages/pluggy/_tracing.py 48 38 21% 152s /usr/lib/python3/dist-packages/pytest/__init__.py 85 83 2% 152s /usr/lib/python3/dist-packages/pytest_cov/compat.py 17 13 24% 152s /usr/lib/python3/dist-packages/pytest_cov/embed.py 69 63 9% 152s /usr/lib/python3/dist-packages/pytest_cov/engine.py 250 229 8% 152s /usr/lib/python3/dist-packages/pytest_cov/plugin.py 224 206 8% 152s /usr/lib/python3/dist-packages/waitress/__init__.py 11 0 100% 152s /usr/lib/python3/dist-packages/waitress/adjustments.py 186 0 100% 152s /usr/lib/python3/dist-packages/waitress/buffers.py 214 0 100% 152s /usr/lib/python3/dist-packages/waitress/channel.py 257 0 100% 152s /usr/lib/python3/dist-packages/waitress/compat.py 10 0 100% 152s /usr/lib/python3/dist-packages/waitress/parser.py 199 0 100% 152s /usr/lib/python3/dist-packages/waitress/proxy_headers.py 162 0 100% 152s /usr/lib/python3/dist-packages/waitress/receiver.py 111 0 100% 152s /usr/lib/python3/dist-packages/waitress/rfc7230.py 26 0 100% 152s /usr/lib/python3/dist-packages/waitress/runner.py 69 0 100% 152s /usr/lib/python3/dist-packages/waitress/server.py 177 1 99% 152s /usr/lib/python3/dist-packages/waitress/task.py 323 1 99% 152s /usr/lib/python3/dist-packages/waitress/trigger.py 56 0 100% 152s /usr/lib/python3/dist-packages/waitress/utilities.py 113 0 100% 152s /usr/lib/python3/dist-packages/waitress/wasyncore.py 379 0 100% 152s tests/__init__.py 0 0 100% 152s tests/fixtureapps/__init__.py 0 0 100% 152s tests/fixtureapps/badcl.py 0 0 100% 152s tests/fixtureapps/echo.py 7 0 100% 152s tests/fixtureapps/error.py 0 0 100% 152s tests/fixtureapps/error_traceback.py 0 0 100% 152s tests/fixtureapps/filewrapper.py 4 0 100% 152s tests/fixtureapps/getline.py 15 4 73% 152s tests/fixtureapps/nocl.py 0 0 100% 152s tests/fixtureapps/runner.py 0 0 100% 152s tests/fixtureapps/sleepy.py 1 0 100% 152s tests/fixtureapps/toolarge.py 0 0 100% 152s tests/fixtureapps/writecb.py 0 0 100% 152s tests/test_adjustments.py 249 0 100% 152s tests/test_buffers.py 421 0 100% 152s tests/test_channel.py 850 2 99% 152s tests/test_functional.py 1145 2 99% 152s tests/test_init.py 36 0 100% 152s tests/test_parser.py 431 0 100% 152s tests/test_proxy_headers.py 311 0 100% 152s tests/test_receiver.py 215 0 100% 152s tests/test_regression.py 5 0 100% 152s tests/test_runner.py 98 0 100% 152s tests/test_server.py 325 0 100% 152s tests/test_task.py 803 1 99% 152s tests/test_trigger.py 92 0 100% 152s tests/test_utilities.py 84 0 100% 152s tests/test_wasyncore.py 920 0 100% 152s ----------------------------------------------------------------------------------- 152s TOTAL 22945 11558 50% 152s 152s ================= 798 passed, 8 skipped, 97 warnings in 13.76s ================= 152s 152s autopkgtest [01:05:06]: test unittests: -----------------------] 153s unittests PASS 153s autopkgtest [01:05:07]: test unittests: - - - - - - - - - - results - - - - - - - - - - 153s autopkgtest [01:05:07]: test autodep8-python3: preparing testbed 247s autopkgtest [01:06:41]: testbed dpkg architecture: s390x 248s autopkgtest [01:06:41]: testbed apt version: 2.7.12 248s autopkgtest [01:06:41]: @@@@@@@@@@@@@@@@@@@@ test bed setup 248s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB] 248s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B] 248s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [57.7 kB] 248s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3979 kB] 249s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [498 kB] 249s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [665 kB] 249s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main s390x c-n-f Metadata [3032 B] 249s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x Packages [1372 B] 249s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted s390x c-n-f Metadata [116 B] 249s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [4162 kB] 249s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x c-n-f Metadata [7292 B] 249s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x Packages [47.5 kB] 249s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse s390x c-n-f Metadata [116 B] 251s Fetched 9545 kB in 3s (3577 kB/s) 252s Reading package lists... 254s Reading package lists... 254s Building dependency tree... 254s Reading state information... 254s 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... 255s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 255s Unknown architecture, assuming PC-style ttyS0 255s sh: Attempting to set up Debian/Ubuntu apt sources automatically 255s sh: Distribution appears to be Ubuntu 256s Reading package lists... 256s Building dependency tree... 256s Reading state information... 256s eatmydata is already the newest version (131-1). 256s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 256s Reading package lists... 256s Building dependency tree... 256s Reading state information... 257s dbus is already the newest version (1.14.10-4ubuntu1). 257s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 257s Reading package lists... 257s Building dependency tree... 257s Reading state information... 257s rng-tools-debian is already the newest version (2.4). 257s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 257s Reading package lists... 257s Building dependency tree... 257s Reading state information... 257s The following packages will be REMOVED: 257s cloud-init* python3-configobj* python3-debconf* 258s 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. 258s After this operation, 3256 kB disk space will be freed. 258s (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 ... 52170 files and directories currently installed.) 258s Removing cloud-init (24.1.2-0ubuntu1) ... 258s Removing python3-configobj (5.0.8-3) ... 258s Removing python3-debconf (1.5.86) ... 258s Processing triggers for man-db (2.12.0-3) ... 259s (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 ... 51781 files and directories currently installed.) 259s Purging configuration files for cloud-init (24.1.2-0ubuntu1) ... 259s dpkg: warning: while removing cloud-init, directory '/etc/cloud/cloud.cfg.d' not empty so not removed 259s Processing triggers for rsyslog (8.2312.0-3ubuntu3) ... 259s invoke-rc.d: policy-rc.d denied execution of try-restart. 259s Reading package lists... 259s Building dependency tree... 259s Reading state information... 260s linux-generic is already the newest version (6.8.0-11.11+1). 260s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 260s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease 260s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease 260s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease 262s Reading package lists... 262s Reading package lists... 262s Building dependency tree... 262s Reading state information... 262s Calculating upgrade... 262s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 262s Reading package lists... 262s Building dependency tree... 262s Reading state information... 263s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 263s autopkgtest [01:06:57]: rebooting testbed after setup commands that affected boot 286s Reading package lists... 286s Building dependency tree... 286s Reading state information... 286s Starting pkgProblemResolver with broken count: 0 286s Starting 2 pkgProblemResolver with broken count: 0 286s Done 286s The following additional packages will be installed: 286s python3-all python3-waitress 286s Suggested packages: 286s python-waitress-doc 286s The following NEW packages will be installed: 286s autopkgtest-satdep python3-all python3-waitress 286s 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. 286s Need to get 48.9 kB/49.7 kB of archives. 286s After this operation, 217 kB of additional disk space will be used. 286s Get:1 /tmp/autopkgtest.0nboAW/2-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [716 B] 287s Get:2 http://ftpmaster.internal/ubuntu noble/main s390x python3-all s390x 3.12.1-0ubuntu2 [908 B] 287s Get:3 http://ftpmaster.internal/ubuntu noble/universe s390x python3-waitress all 2.1.2-2 [48.0 kB] 287s Fetched 48.9 kB in 0s (121 kB/s) 287s Selecting previously unselected package python3-all. 287s (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 ... 51726 files and directories currently installed.) 287s Preparing to unpack .../python3-all_3.12.1-0ubuntu2_s390x.deb ... 287s Unpacking python3-all (3.12.1-0ubuntu2) ... 287s Selecting previously unselected package python3-waitress. 287s Preparing to unpack .../python3-waitress_2.1.2-2_all.deb ... 287s Unpacking python3-waitress (2.1.2-2) ... 287s Selecting previously unselected package autopkgtest-satdep. 287s Preparing to unpack .../2-autopkgtest-satdep.deb ... 287s Unpacking autopkgtest-satdep (0) ... 287s Setting up python3-waitress (2.1.2-2) ... 287s Setting up python3-all (3.12.1-0ubuntu2) ... 287s Setting up autopkgtest-satdep (0) ... 289s (Reading database ... 51754 files and directories currently installed.) 289s Removing autopkgtest-satdep (0) ... 291s autopkgtest [01:07:25]: 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 291s autopkgtest [01:07:25]: test autodep8-python3: [----------------------- 291s Testing with python3.12: 292s 292s autopkgtest [01:07:26]: test autodep8-python3: -----------------------] 292s autopkgtest [01:07:26]: test autodep8-python3: - - - - - - - - - - results - - - - - - - - - - 292s autodep8-python3 PASS (superficial) 293s autopkgtest [01:07:27]: @@@@@@@@@@@@@@@@@@@@ summary 293s unittests PASS 293s autodep8-python3 PASS (superficial) 304s Creating nova instance adt-noble-s390x-waitress-20240323-010234-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240322.img (UUID c8671f9a-0e89-48e3-af4f-3c79b89294e8)... 304s Creating nova instance adt-noble-s390x-waitress-20240323-010234-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-s390x-server-20240322.img (UUID c8671f9a-0e89-48e3-af4f-3c79b89294e8)...