0s autopkgtest [08:50:03]: starting date and time: 2024-11-13 08:50:03+0000
0s autopkgtest [08:50:03]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky
0s autopkgtest [08:50:03]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.jpxf_noy/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults,src:python3-stdlib-extensions --apt-upgrade loguru --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=python3-defaults/3.12.7-1 python3-stdlib-extensions/3.12.7-1' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@lcy02-11.secgroup --name adt-plucky-amd64-loguru-20241113-085003-juju-7f2275-prod-proposed-migration-environment-20-82ebed5a-db34-44ff-9f0c-e879c8128da8 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/
119s autopkgtest [08:52:01]: testbed dpkg architecture: amd64
119s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB]
119s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [15.3 kB]
119s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [849 kB]
119s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B]
119s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.4 kB]
119s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [111 kB]
119s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [65.2 kB]
119s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB]
119s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [255 kB]
119s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [637 kB]
119s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [13.0 kB]
119s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [37.7 kB]
119s Fetched 2173 kB in 0s (6386 kB/s)
119s Reading package lists...
119s autopkgtest [08:52:01]: testbed apt version: 2.9.8
119s autopkgtest [08:52:01]: @@@@@@@@@@@@@@@@@@@@ test bed setup
120s Reading package lists...
120s Building dependency tree...
120s Reading state information...
121s Calculating upgrade...
121s The following NEW packages will be installed:
121s python3.13-gdbm
121s The following packages will be upgraded:
121s libgpgme11t64 libpython3-stdlib python3 python3-gdbm python3-minimal
126s 5 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
126s Need to get 253 kB of archives.
126s After this operation, 147 kB of additional disk space will be used.
126s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-minimal amd64 3.12.7-1 [27.4 kB]
126s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3 amd64 3.12.7-1 [24.0 kB]
126s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpython3-stdlib amd64 3.12.7-1 [10.0 kB]
126s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-gdbm amd64 3.13.0-2 [31.3 kB]
126s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-gdbm amd64 3.12.7-1 [8642 B]
126s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libgpgme11t64 amd64 1.23.2-5ubuntu4 [152 kB]
126s Fetched 253 kB in 5s (50.4 kB/s)
126s (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 ... 75541 files and directories currently installed.)
126s Preparing to unpack .../python3-minimal_3.12.7-1_amd64.deb ...
126s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ...
126s Setting up python3-minimal (3.12.7-1) ...
126s (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 ... 75541 files and directories currently installed.)
126s Preparing to unpack .../python3_3.12.7-1_amd64.deb ...
127s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ...
127s Preparing to unpack .../libpython3-stdlib_3.12.7-1_amd64.deb ...
127s Unpacking libpython3-stdlib:amd64 (3.12.7-1) over (3.12.6-0ubuntu1) ...
127s Selecting previously unselected package python3.13-gdbm.
127s Preparing to unpack .../python3.13-gdbm_3.13.0-2_amd64.deb ...
127s Unpacking python3.13-gdbm (3.13.0-2) ...
127s Preparing to unpack .../python3-gdbm_3.12.7-1_amd64.deb ...
127s Unpacking python3-gdbm:amd64 (3.12.7-1) over (3.12.6-1ubuntu1) ...
127s Preparing to unpack .../libgpgme11t64_1.23.2-5ubuntu4_amd64.deb ...
127s Unpacking libgpgme11t64:amd64 (1.23.2-5ubuntu4) over (1.18.0-4.1ubuntu4) ...
127s Setting up libgpgme11t64:amd64 (1.23.2-5ubuntu4) ...
127s Setting up python3.13-gdbm (3.13.0-2) ...
127s Setting up libpython3-stdlib:amd64 (3.12.7-1) ...
127s Setting up python3 (3.12.7-1) ...
127s Setting up python3-gdbm:amd64 (3.12.7-1) ...
127s Processing triggers for man-db (2.12.1-3) ...
127s Processing triggers for libc-bin (2.40-1ubuntu3) ...
128s Reading package lists...
128s Building dependency tree...
128s Reading state information...
128s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
128s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease
128s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease
128s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease
128s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease
130s Reading package lists...
130s Reading package lists...
130s Building dependency tree...
130s Reading state information...
130s Calculating upgrade...
130s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
130s Reading package lists...
131s Building dependency tree...
131s Reading state information...
131s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
132s autopkgtest [08:52:15]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024
132s autopkgtest [08:52:15]: @@@@@@@@@@@@@@@@@@@@ apt-source loguru
132s Get:1 http://ftpmaster.internal/ubuntu plucky/universe loguru 0.7.2-3 (dsc) [2372 B]
132s Get:2 http://ftpmaster.internal/ubuntu plucky/universe loguru 0.7.2-3 (tar) [444 kB]
132s Get:3 http://ftpmaster.internal/ubuntu plucky/universe loguru 0.7.2-3 (diff) [4080 B]
132s gpgv: Signature made Fri Jan 5 17:19:54 2024 UTC
132s gpgv: using RSA key F1F007320A035541F0A663CA578A0494D1C646D1
132s gpgv: issuer "tille@debian.org"
132s gpgv: Can't check signature: No public key
132s dpkg-source: warning: cannot verify inline signature for ./loguru_0.7.2-3.dsc: no acceptable signature found
133s autopkgtest [08:52:16]: testing package loguru version 0.7.2-3
133s autopkgtest [08:52:16]: build not needed
133s autopkgtest [08:52:16]: test run-unit-test: preparing testbed
135s Reading package lists...
135s Building dependency tree...
135s Reading state information...
135s Starting pkgProblemResolver with broken count: 0
135s Starting 2 pkgProblemResolver with broken count: 0
135s Done
136s The following additional packages will be installed:
136s libpython3.13-minimal libpython3.13-stdlib python3-all python3-colorama
136s python3-dateutil python3-freezegun python3-iniconfig python3-loguru
136s python3-mypy python3-mypy-extensions python3-packaging python3-pluggy
136s python3-psutil python3-pytest python3-six python3.13 python3.13-minimal
136s Suggested packages:
136s python3.13-venv python3.13-doc binfmt-support
136s Recommended packages:
136s python3-lxml python3-orjson
136s The following NEW packages will be installed:
136s autopkgtest-satdep libpython3.13-minimal libpython3.13-stdlib python3-all
136s python3-colorama python3-dateutil python3-freezegun python3-iniconfig
136s python3-loguru python3-mypy python3-mypy-extensions python3-packaging
136s python3-pluggy python3-psutil python3-pytest python3-six python3.13
136s python3.13-minimal
136s 0 upgraded, 18 newly installed, 0 to remove and 0 not upgraded.
136s Need to get 15.3 MB/15.3 MB of archives.
136s After this operation, 67.0 MB of additional disk space will be used.
136s Get:1 /tmp/autopkgtest.kW32EB/1-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [732 B]
136s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-minimal amd64 3.13.0-2 [879 kB]
136s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-minimal amd64 3.13.0-2 [2188 kB]
136s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-stdlib amd64 3.13.0-2 [2107 kB]
136s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13 amd64 3.13.0-2 [719 kB]
136s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-all amd64 3.12.7-1 [890 B]
136s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-colorama all 0.4.6-4 [32.1 kB]
136s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-six all 1.16.0-7 [13.1 kB]
136s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB]
136s Get:10 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-freezegun all 1.5.1-1.1 [15.9 kB]
136s Get:11 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B]
136s Get:12 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-loguru all 0.7.2-3 [53.2 kB]
136s Get:13 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mypy-extensions all 1.0.0-1 [6148 B]
136s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-psutil amd64 5.9.8-2build2 [195 kB]
136s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mypy amd64 1.13.0-1 [8679 kB]
136s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.1-1 [41.4 kB]
136s Get:17 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB]
136s Get:18 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.3-1 [251 kB]
136s Fetched 15.3 MB in 0s (62.6 MB/s)
136s Selecting previously unselected package libpython3.13-minimal:amd64.
137s (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 ... 75548 files and directories currently installed.)
137s Preparing to unpack .../00-libpython3.13-minimal_3.13.0-2_amd64.deb ...
137s Unpacking libpython3.13-minimal:amd64 (3.13.0-2) ...
137s Selecting previously unselected package python3.13-minimal.
137s Preparing to unpack .../01-python3.13-minimal_3.13.0-2_amd64.deb ...
137s Unpacking python3.13-minimal (3.13.0-2) ...
137s Selecting previously unselected package libpython3.13-stdlib:amd64.
137s Preparing to unpack .../02-libpython3.13-stdlib_3.13.0-2_amd64.deb ...
137s Unpacking libpython3.13-stdlib:amd64 (3.13.0-2) ...
137s Selecting previously unselected package python3.13.
137s Preparing to unpack .../03-python3.13_3.13.0-2_amd64.deb ...
137s Unpacking python3.13 (3.13.0-2) ...
137s Selecting previously unselected package python3-all.
137s Preparing to unpack .../04-python3-all_3.12.7-1_amd64.deb ...
137s Unpacking python3-all (3.12.7-1) ...
137s Selecting previously unselected package python3-colorama.
137s Preparing to unpack .../05-python3-colorama_0.4.6-4_all.deb ...
137s Unpacking python3-colorama (0.4.6-4) ...
137s Selecting previously unselected package python3-six.
137s Preparing to unpack .../06-python3-six_1.16.0-7_all.deb ...
137s Unpacking python3-six (1.16.0-7) ...
137s Selecting previously unselected package python3-dateutil.
137s Preparing to unpack .../07-python3-dateutil_2.9.0-2_all.deb ...
137s Unpacking python3-dateutil (2.9.0-2) ...
137s Selecting previously unselected package python3-freezegun.
137s Preparing to unpack .../08-python3-freezegun_1.5.1-1.1_all.deb ...
137s Unpacking python3-freezegun (1.5.1-1.1) ...
137s Selecting previously unselected package python3-iniconfig.
137s Preparing to unpack .../09-python3-iniconfig_1.1.1-2_all.deb ...
137s Unpacking python3-iniconfig (1.1.1-2) ...
137s Selecting previously unselected package python3-loguru.
137s Preparing to unpack .../10-python3-loguru_0.7.2-3_all.deb ...
137s Unpacking python3-loguru (0.7.2-3) ...
137s Selecting previously unselected package python3-mypy-extensions.
137s Preparing to unpack .../11-python3-mypy-extensions_1.0.0-1_all.deb ...
137s Unpacking python3-mypy-extensions (1.0.0-1) ...
137s Selecting previously unselected package python3-psutil.
137s Preparing to unpack .../12-python3-psutil_5.9.8-2build2_amd64.deb ...
137s Unpacking python3-psutil (5.9.8-2build2) ...
137s Selecting previously unselected package python3-mypy.
137s Preparing to unpack .../13-python3-mypy_1.13.0-1_amd64.deb ...
137s Unpacking python3-mypy (1.13.0-1) ...
137s Selecting previously unselected package python3-packaging.
137s Preparing to unpack .../14-python3-packaging_24.1-1_all.deb ...
137s Unpacking python3-packaging (24.1-1) ...
137s Selecting previously unselected package python3-pluggy.
137s Preparing to unpack .../15-python3-pluggy_1.5.0-1_all.deb ...
137s Unpacking python3-pluggy (1.5.0-1) ...
137s Selecting previously unselected package python3-pytest.
137s Preparing to unpack .../16-python3-pytest_8.3.3-1_all.deb ...
137s Unpacking python3-pytest (8.3.3-1) ...
137s Selecting previously unselected package autopkgtest-satdep.
137s Preparing to unpack .../17-1-autopkgtest-satdep.deb ...
137s Unpacking autopkgtest-satdep (0) ...
138s Setting up python3-iniconfig (1.1.1-2) ...
138s Setting up python3-colorama (0.4.6-4) ...
138s Setting up python3-mypy-extensions (1.0.0-1) ...
138s Setting up python3-loguru (0.7.2-3) ...
138s Setting up python3-psutil (5.9.8-2build2) ...
140s Setting up python3-six (1.16.0-7) ...
140s Setting up libpython3.13-minimal:amd64 (3.13.0-2) ...
140s Setting up python3-packaging (24.1-1) ...
140s Setting up python3-mypy (1.13.0-1) ...
141s Setting up python3-pluggy (1.5.0-1) ...
141s Setting up python3.13-minimal (3.13.0-2) ...
142s Setting up python3-dateutil (2.9.0-2) ...
142s Setting up libpython3.13-stdlib:amd64 (3.13.0-2) ...
142s Setting up python3-freezegun (1.5.1-1.1) ...
143s Setting up python3.13 (3.13.0-2) ...
143s Setting up python3-pytest (8.3.3-1) ...
144s Setting up python3-all (3.12.7-1) ...
144s Setting up autopkgtest-satdep (0) ...
144s Processing triggers for man-db (2.12.1-3) ...
144s Processing triggers for systemd (256.5-2ubuntu4) ...
146s (Reading database ... 77975 files and directories currently installed.)
146s Removing autopkgtest-satdep (0) ...
146s autopkgtest [08:52:29]: test run-unit-test: [-----------------------
146s Testing with python3.13 in /tmp/autopkgtest.kW32EB/autopkgtest_tmp:
147s ============================= test session starts ==============================
147s platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.13
147s cachedir: .pytest_cache
147s rootdir: /tmp/autopkgtest.kW32EB/autopkgtest_tmp
147s plugins: typeguard-4.4.1
148s collecting ... collected 1497 items
148s
148s tests/test_activation.py::test_disable[-False] PASSED [ 0%]
148s tests/test_activation.py::test_disable[tests-False] PASSED [ 0%]
148s tests/test_activation.py::test_disable[test-True] PASSED [ 0%]
148s tests/test_activation.py::test_disable[testss-True] PASSED [ 0%]
148s tests/test_activation.py::test_disable[tests.-True] PASSED [ 0%]
148s tests/test_activation.py::test_disable[tests.test_activation-False] PASSED [ 0%]
148s tests/test_activation.py::test_disable[tests.test_activation.-True] PASSED [ 0%]
148s tests/test_activation.py::test_disable[test_activation-True] PASSED [ 0%]
148s tests/test_activation.py::test_disable[.-True] PASSED [ 0%]
148s tests/test_activation.py::test_enable[-True] PASSED [ 0%]
148s tests/test_activation.py::test_enable[tests-True] PASSED [ 0%]
148s tests/test_activation.py::test_enable[test-False] PASSED [ 0%]
148s tests/test_activation.py::test_enable[testss-False] PASSED [ 0%]
148s tests/test_activation.py::test_enable[tests.-False] PASSED [ 0%]
148s tests/test_activation.py::test_enable[tests.test_activation-True] PASSED [ 1%]
148s tests/test_activation.py::test_enable[tests.test_activation.-False] PASSED [ 1%]
148s tests/test_activation.py::test_enable[test_activation-False] PASSED [ 1%]
148s tests/test_activation.py::test_enable[.-False] PASSED [ 1%]
148s tests/test_activation.py::test_log_before_enable PASSED [ 1%]
148s tests/test_activation.py::test_log_before_disable PASSED [ 1%]
148s tests/test_activation.py::test_multiple_activations PASSED [ 1%]
148s tests/test_activation.py::test_log_before_enable_f_globals_name_absent PASSED [ 1%]
148s tests/test_activation.py::test_log_before_disable_f_globals_name_absent PASSED [ 1%]
148s tests/test_activation.py::test_f_globals_name_absent_with_others PASSED [ 1%]
148s tests/test_activation.py::test_invalid_enable_name[42] PASSED [ 1%]
148s tests/test_activation.py::test_invalid_enable_name[name1] PASSED [ 1%]
148s tests/test_activation.py::test_invalid_enable_name[name2] PASSED [ 1%]
148s tests/test_activation.py::test_invalid_disable_name[42] PASSED [ 1%]
148s tests/test_activation.py::test_invalid_disable_name[name1] PASSED [ 1%]
148s tests/test_activation.py::test_invalid_disable_name[name2] PASSED [ 2%]
148s tests/test_add_option_backtrace.py::test_backtrace PASSED [ 2%]
148s tests/test_add_option_catch.py::test_catch_is_true PASSED [ 2%]
148s tests/test_add_option_catch.py::test_catch_is_false PASSED [ 2%]
148s tests/test_add_option_catch.py::test_no_sys_stderr PASSED [ 2%]
148s tests/test_add_option_catch.py::test_broken_sys_stderr PASSED [ 2%]
148s tests/test_add_option_catch.py::test_encoding_error PASSED [ 2%]
148s tests/test_add_option_catch.py::test_unprintable_record PASSED [ 2%]
148s tests/test_add_option_catch.py::test_broken_sink_message[False] PASSED [ 2%]
148s tests/test_add_option_catch.py::test_broken_sink_message[True] PASSED [ 2%]
148s tests/test_add_option_catch.py::test_broken_sink_caught_keep_working[False] PASSED [ 2%]
148s tests/test_add_option_catch.py::test_broken_sink_caught_keep_working[True] PASSED [ 2%]
148s tests/test_add_option_catch.py::test_broken_sink_not_caught_enqueue PASSED [ 2%]
148s tests/test_add_option_colorize.py::test_colorized_format[{message}-Foo-\x1b[31mFoo\x1b[0m\n] PASSED [ 2%]
148s tests/test_add_option_colorize.py::test_colorized_format[-Bar-\x1b[31mBar\x1b[0m] PASSED [ 2%]
148s tests/test_add_option_colorize.py::test_colorized_format[{message}-Baz-Baz\n] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_colorized_format[{{{message:}}}-A-{\x1b[31mA\x1b[0m}\n] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorized_format[{message}-Foo-Foo\n] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorized_format[-Bar-Bar] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorized_format[{message}-Baz-Baz\n] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorized_format[{{{message:}}}-A-{A}\n] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_colorize_stream[stream0] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_colorize_stream[stream1] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_colorize_stream[stream2] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorize_stream[stream0] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorize_stream[stream1] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_decolorize_stream[stream2] PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_automatic_detection_when_stream_is_a_tty PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_automatic_detection_when_stream_is_not_a_tty PASSED [ 3%]
148s tests/test_add_option_colorize.py::test_automatic_detection_when_stream_has_no_isatty PASSED [ 3%]
148s tests/test_add_option_context.py::test_using_multiprocessing_directly_if_context_is_none PASSED [ 4%]
148s tests/test_add_option_context.py::test_fork_context_as_string[fork] PASSED [ 4%]
149s tests/test_add_option_context.py::test_fork_context_as_string[forkserver] PASSED [ 4%]
149s tests/test_add_option_context.py::test_spawn_context_as_string PASSED [ 4%]
149s tests/test_add_option_context.py::test_fork_context_as_object[fork] PASSED [ 4%]
149s tests/test_add_option_context.py::test_fork_context_as_object[forkserver] PASSED [ 4%]
149s tests/test_add_option_context.py::test_spawn_context_as_object PASSED [ 4%]
149s tests/test_add_option_context.py::test_global_start_method_is_none_if_enqueue_is_false PASSED [ 4%]
149s tests/test_add_option_context.py::test_invalid_context_name PASSED [ 4%]
149s tests/test_add_option_context.py::test_invalid_context_object[42] PASSED [ 4%]
149s tests/test_add_option_context.py::test_invalid_context_object[context1] PASSED [ 4%]
149s tests/test_add_option_diagnose.py::test_diagnose PASSED [ 4%]
149s tests/test_add_option_enqueue.py::test_enqueue PASSED [ 4%]
149s tests/test_add_option_enqueue.py::test_enqueue_with_exception PASSED [ 4%]
149s tests/test_add_option_enqueue.py::test_caught_exception_queue_put PASSED [ 4%]
149s tests/test_add_option_enqueue.py::test_caught_exception_queue_get PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_caught_exception_sink_write PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_not_caught_exception_queue_put PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_not_caught_exception_queue_get PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_not_caught_exception_sink_write PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_not_caught_exception_sink_write_then_complete PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_not_caught_exception_queue_get_then_complete PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_wait_for_all_messages_enqueued PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_logging_not_picklable_exception[exception_value0] PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_logging_not_picklable_exception[exception_value1] PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_logging_not_unpicklable_exception[exception_value0] PASSED [ 5%]
149s tests/test_add_option_enqueue.py::test_logging_not_unpicklable_exception[exception_value1] PASSED [ 5%]
149s tests/test_add_option_filter.py::test_filterd_in[None] PASSED [ 5%]
149s tests/test_add_option_filter.py::test_filterd_in[] PASSED [ 5%]
149s tests/test_add_option_filter.py::test_filterd_in[tests] PASSED [ 5%]
149s tests/test_add_option_filter.py::test_filterd_in[tests.test_add_option_filter] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[0] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[1] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter6] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter7] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter8] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter9] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter10] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter11] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter12] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter13] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filterd_in[filter14] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filtered_out[test] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filtered_out[testss] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filtered_out[tests.] PASSED [ 6%]
149s tests/test_add_option_filter.py::test_filtered_out[tests.test_add_option_filter.] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[.] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[0] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[1] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[filter7] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[filter8] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[filter9] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[filter10] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[filter11] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_out[filter12] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[None] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter2] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter3] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter4] PASSED [ 7%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter5] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter6] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter7] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[tests] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[filter3] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[filter4] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[filter5] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter[-1] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter[3.4] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter[filter2] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter0] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter1] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter2] PASSED [ 8%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter3] PASSED [ 9%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter4] PASSED [ 9%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_values[filter0] PASSED [ 9%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_values[filter1] PASSED [ 9%]
149s tests/test_add_option_filter.py::test_invalid_filter_dict_values[filter2] PASSED [ 9%]
149s tests/test_add_option_filter.py::test_filter_dict_with_custom_level PASSED [ 9%]
149s tests/test_add_option_filter.py::test_invalid_filter_builtin PASSED [ 9%]
149s tests/test_add_option_format.py::test_format[a-Message: {message}-Message: a\n] PASSED [ 9%]
149s tests/test_add_option_format.py::test_format[b-Nope-Nope\n] PASSED [ 9%]
149s tests/test_add_option_format.py::test_format[c-{level} {message} {level}-DEBUG c DEBUG\n] PASSED [ 9%]
149s tests/test_add_option_format.py::test_format[d-{message} {level} {level.no} {level.name}-d DEBUG 10 DEBUG\n] PASSED [ 9%]
149s tests/test_add_option_format.py::test_format[e--e] PASSED [ 9%]
149s tests/test_add_option_format.py::test_format[f--f DEBUG] PASSED [ 9%]
149s tests/test_add_option_format.py::test_progressive_format PASSED [ 9%]
149s tests/test_add_option_format.py::test_function_format_without_exception PASSED [ 9%]
149s tests/test_add_option_format.py::test_function_format_with_exception PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_format[-1] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_format[3.4] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_format[format2] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_markups[>] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
149s tests/test_add_option_format.py::test_markup_in_field[True] PASSED [ 10%]
149s tests/test_add_option_format.py::test_markup_in_field[False] PASSED [ 10%]
149s tests/test_add_option_format.py::test_invalid_format_builtin PASSED [ 10%]
149s tests/test_add_option_kwargs.py::test_file_mode_a PASSED [ 10%]
149s tests/test_add_option_kwargs.py::test_file_mode_w PASSED [ 10%]
149s tests/test_add_option_kwargs.py::test_file_auto_buffering PASSED [ 10%]
149s tests/test_add_option_kwargs.py::test_file_line_buffering PASSED [ 11%]
149s tests/test_add_option_kwargs.py::test_invalid_function_kwargs PASSED [ 11%]
149s tests/test_add_option_kwargs.py::test_invalid_file_object_kwargs PASSED [ 11%]
149s tests/test_add_option_kwargs.py::test_invalid_file_kwargs PASSED [ 11%]
149s tests/test_add_option_kwargs.py::test_invalid_coroutine_kwargs PASSED [ 11%]
149s tests/test_add_option_level.py::test_level_low_enough[0] PASSED [ 11%]
150s tests/test_add_option_level.py::test_level_low_enough[TRACE] PASSED [ 11%]
150s tests/test_add_option_level.py::test_level_low_enough[INFO] PASSED [ 11%]
150s tests/test_add_option_level.py::test_level_low_enough[20] PASSED [ 11%]
150s tests/test_add_option_level.py::test_level_too_high[WARNING] PASSED [ 11%]
150s tests/test_add_option_level.py::test_level_too_high[25] PASSED [ 11%]
150s tests/test_add_option_level.py::test_invalid_level[3.4] PASSED [ 11%]
150s tests/test_add_option_level.py::test_invalid_level[level1] PASSED [ 11%]
150s tests/test_add_option_level.py::test_unknown_level[foo] PASSED [ 11%]
150s tests/test_add_option_level.py::test_unknown_level[-1] PASSED [ 11%]
150s tests/test_add_option_serialize.py::test_serialize PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_non_ascii_characters PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_exception PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_exception_without_context PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_exception_none_tuple PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_exception_instance PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_with_catch_decorator PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_with_record_option PASSED [ 12%]
150s tests/test_add_option_serialize.py::test_serialize_not_serializable PASSED [ 12%]
150s tests/test_add_sinks.py::test_stdout_sink[0] PASSED [ 12%]
150s tests/test_add_sinks.py::test_stdout_sink[1] PASSED [ 12%]
150s tests/test_add_sinks.py::test_stdout_sink[2] PASSED [ 12%]
150s tests/test_add_sinks.py::test_stderr_sink[0] PASSED [ 12%]
150s tests/test_add_sinks.py::test_stderr_sink[1] PASSED [ 12%]
150s tests/test_add_sinks.py::test_stderr_sink[2] PASSED [ 12%]
150s tests/test_add_sinks.py::test_devnull[0] PASSED [ 13%]
150s tests/test_add_sinks.py::test_devnull[1] PASSED [ 13%]
150s tests/test_add_sinks.py::test_devnull[2] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[str-0] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[str-1] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[str-2] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[Path-0] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[Path-1] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[Path-2] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[0-0] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[0-1] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[0-2] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[1-0] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[1-1] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink[1-2] PASSED [ 13%]
150s tests/test_add_sinks.py::test_file_sink_folder_creation[0] PASSED [ 14%]
150s tests/test_add_sinks.py::test_file_sink_folder_creation[1] PASSED [ 14%]
150s tests/test_add_sinks.py::test_file_sink_folder_creation[2] PASSED [ 14%]
150s tests/test_add_sinks.py::test_function_sink[0] PASSED [ 14%]
150s tests/test_add_sinks.py::test_function_sink[1] PASSED [ 14%]
150s tests/test_add_sinks.py::test_function_sink[2] PASSED [ 14%]
150s tests/test_add_sinks.py::test_coroutine_sink[0] PASSED [ 14%]
150s tests/test_add_sinks.py::test_coroutine_sink[1] PASSED [ 14%]
150s tests/test_add_sinks.py::test_coroutine_sink[2] PASSED [ 14%]
150s tests/test_add_sinks.py::test_file_object_sink[0] PASSED [ 14%]
150s tests/test_add_sinks.py::test_file_object_sink[1] PASSED [ 14%]
150s tests/test_add_sinks.py::test_file_object_sink[2] PASSED [ 14%]
150s tests/test_add_sinks.py::test_standard_handler_sink[0] PASSED [ 14%]
150s tests/test_add_sinks.py::test_standard_handler_sink[1] PASSED [ 14%]
150s tests/test_add_sinks.py::test_standard_handler_sink[2] PASSED [ 14%]
150s tests/test_add_sinks.py::test_flush[0] PASSED [ 15%]
150s tests/test_add_sinks.py::test_flush[1] PASSED [ 15%]
150s tests/test_add_sinks.py::test_flush[2] PASSED [ 15%]
150s tests/test_add_sinks.py::test_file_sink_ascii_encoding PASSED [ 15%]
150s tests/test_add_sinks.py::test_file_sink_utf8_encoding PASSED [ 15%]
150s tests/test_add_sinks.py::test_file_sink_default_encoding PASSED [ 15%]
150s tests/test_add_sinks.py::test_disabled_logger_in_sink PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_flush[123] PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_flush[None] PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_stop[123] PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_stop[None] PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_complete[123] PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_complete[None] PASSED [ 15%]
150s tests/test_add_sinks.py::test_custom_sink_invalid_complete[] PASSED [ 15%]
150s tests/test_add_sinks.py::test_invalid_sink[123] PASSED [ 15%]
150s tests/test_add_sinks.py::test_invalid_sink[sys] PASSED [ 16%]
150s tests/test_add_sinks.py::test_invalid_sink[sink2] PASSED [ 16%]
150s tests/test_add_sinks.py::test_invalid_sink[int] PASSED [ 16%]
150s tests/test_add_sinks.py::test_deprecated_start_and_stop PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[1m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[2m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[22m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[1m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[2m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[22m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[41m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[41m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[102m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[102m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[33m1\x1b[0m] PASSED [ 16%]
150s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[33m1\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[97m1\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[97m1\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_nested[12-\x1b[1m1\x1b[0m\x1b[2m2\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_nested[123-\x1b[1m1\x1b[0m2\x1b[2m3\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_nested[01234-0\x1b[1m1\x1b[2m2\x1b[0m\x1b[1m3\x1b[0m4] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_nested[01234-\x1b[2m0\x1b[1m1\x1b[2m2\x1b[0m\x1b[2m\x1b[1m3\x1b[0m\x1b[2m4\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_strict_parsing[] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_strict_parsing[] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_strict_parsing[] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_permissive_parsing[-\x1b[1m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_permissive_parsing[-\x1b[43m\x1b[1m\x1b[0m\x1b[43m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_permissive_parsing[-\x1b[1m\x1b[1m\x1b[0m\x1b[1m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_autoclose[foo>-\x1b[31mfoo\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_autoclose[bar>-\x1b[32m\x1b[1mbar\x1b[0m\x1b[32m\x1b[0m] PASSED [ 17%]
150s tests/test_ansimarkup_basic.py::test_autoclose[abc>d>e-a\x1b[33mb\x1b[1mc\x1b[0m\x1b[33md\x1b[0me] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_escaping[foo\\bar-\x1b[31mfoobar\x1b[0m] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_escaping[foo\\bar-\x1b[31mfoobar\x1b[0m] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_escaping[\\\\-] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_escaping[foo\\>bar\\>baz-foo>bar>baz] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True-] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True->] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[True-X>] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False-] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 18%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False->] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_mismatched_error[False-X>] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unbalanced_error[True-12] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unbalanced_error[True-12] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unbalanced_error[True-] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unbalanced_error[False-12] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unbalanced_error[False-12] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unbalanced_error[False-] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[True-] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[True-] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[True-] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[True-1] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[False-] PASSED [ 19%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[False-] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[False-] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_unclosed_error[False-1] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-bar] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-foobar] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-foo] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-foo] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-12] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-12] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-123] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-123] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-bar] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-foobar] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-foo] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-foo] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-12] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-12] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-123] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-123] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_strip[foo-foo] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_strip[bar-bar] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_strip[baz-baz] PASSED [ 21%]
150s tests/test_ansimarkup_basic.py::test_strip[123-123] PASSED [ 22%]
150s tests/test_ansimarkup_basic.py::test_strip[foo>-foo] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[41m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[40m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[102m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[105m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[33m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[34m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[97m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[96m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_8bit_colors[1-\x1b[38;2;255;0;0m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_8bit_colors[1-\x1b[48;2;0;160;0m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_8bit_colors[1-\x1b[38;2;241;47;18m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[38;2;255;0;0m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[48;2;0;160;0m1\x1b[0m] PASSED [ 22%]
150s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[38;2;241;47;18m1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[48;2;190;235;238m1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_rgb_colors[1-\x1b[38;5;200m1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_rgb_colors[1-\x1b[48;5;49m1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_nested[1-\x1b[31m\x1b[1m\x1b[48;2;0;160;0m1\x1b[0m\x1b[31m\x1b[1m\x1b[0m\x1b[31m\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_nested[1-\x1b[48;5;100m\x1b[38;5;200m1\x1b[0m\x1b[48;5;100m\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_nested[1-\x1b[48;2;0;160;0m\x1b[38;2;255;0;0m1\x1b[0m\x1b[48;2;0;160;0m\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_nested[1-\x1b[48;2;0;160;0m\x1b[38;2;255;0;0m1\x1b[0m\x1b[48;2;0;160;0m\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[2 > 1-\x1b[31m2 > 1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[1 < 2-\x1b[31m1 < 2\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[1 2-\x1b[31m1 2\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[{: <10}1-{: <10}\x1b[31m1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[{: 10}1-{: 10}\x1b[31m1\x1b[0m] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[1{: >10}-\x1b[31m1\x1b[0m{: >10}] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[<123>-<1\x1b[31m2\x1b[0m3>] PASSED [ 23%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[123>-1\x1b[31m2\x1b[0m3>] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[<12 < 34>-<1\x1b[31m2 < 3\x1b[0m4>] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[<12 34>-<1\x1b[31m2 3\x1b[0m4>] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_tricky_parse[<13 > 24>-<1\x1b[31m3 > 2\x1b[0m4>] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-<>1>] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-<,>1,>] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 24%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-<>1>] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-<,>1,>] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[True-fg #F2D1GZ>1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 25%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_hex[False-fg #F2D1GZ>1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_8bit[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_8bit[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_8bit[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_8bit[False-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_8bit[False-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_8bit[False-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_strip[foobar-foobar] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_strip[baz-baz] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_strip[bar-bar] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[2 > 1-2 > 1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[1 < 2-1 < 2] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[1 2-1 2] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[{: <10}1-{: <10}1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[{: 10}1-{: 10}1] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[1{: >10}-1{: >10}] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[<123>-<123>] PASSED [ 27%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[123>-123>] PASSED [ 28%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[<12 < 34>-<12 < 34>] PASSED [ 28%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[<12 34>-<12 34>] PASSED [ 28%]
150s tests/test_ansimarkup_extended.py::test_tricky_strip[<13 > 24>-<13 > 24>] PASSED [ 28%]
150s tests/test_bind.py::test_bind_after_add PASSED [ 28%]
150s tests/test_bind.py::test_bind_before_add PASSED [ 28%]
150s tests/test_bind.py::test_add_using_bound PASSED [ 28%]
150s tests/test_bind.py::test_not_override_parent_logger PASSED [ 28%]
150s tests/test_bind.py::test_override_previous_bound PASSED [ 28%]
150s tests/test_bind.py::test_no_conflict PASSED [ 28%]
150s tests/test_bind.py::test_bind_and_add_level[True] PASSED [ 28%]
150s tests/test_bind.py::test_bind_and_add_level[False] PASSED [ 28%]
150s tests/test_bind.py::test_override_configured PASSED [ 28%]
150s tests/test_colorama.py::test_stream_wrapped_on_windows_if_no_vt_support[__stdout__] SKIPPED [ 28%]
150s tests/test_colorama.py::test_stream_wrapped_on_windows_if_no_vt_support[__stderr__] SKIPPED [ 28%]
150s tests/test_colorama.py::test_stream_not_wrapped_on_windows_if_vt_support[__stdout__] SKIPPED [ 29%]
150s tests/test_colorama.py::test_stream_not_wrapped_on_windows_if_vt_support[__stderr__] SKIPPED [ 29%]
150s tests/test_colorama.py::test_stream_is_none PASSED [ 29%]
150s tests/test_colorama.py::test_is_a_tty PASSED [ 29%]
150s tests/test_colorama.py::test_is_not_a_tty PASSED [ 29%]
150s tests/test_colorama.py::test_is_a_tty_exception PASSED [ 29%]
150s tests/test_colorama.py::test_pycharm_fixed[__stdout__-True] PASSED [ 29%]
150s tests/test_colorama.py::test_pycharm_fixed[__stderr__-True] PASSED [ 29%]
150s tests/test_colorama.py::test_pycharm_fixed[stdout-False] PASSED [ 29%]
150s tests/test_colorama.py::test_pycharm_fixed[stderr-False] PASSED [ 29%]
150s tests/test_colorama.py::test_pycharm_fixed[-False] PASSED [ 29%]
150s tests/test_colorama.py::test_github_actions_fixed[__stdout__-True] PASSED [ 29%]
150s tests/test_colorama.py::test_github_actions_fixed[__stderr__-True] PASSED [ 29%]
150s tests/test_colorama.py::test_github_actions_fixed[stdout-False] PASSED [ 29%]
150s tests/test_colorama.py::test_github_actions_fixed[stderr-False] PASSED [ 29%]
150s tests/test_colorama.py::test_github_actions_fixed[-False] PASSED [ 30%]
150s tests/test_colorama.py::test_mintty_fixed_windows[__stdout__-True] SKIPPED [ 30%]
150s tests/test_colorama.py::test_mintty_fixed_windows[__stderr__-True] SKIPPED [ 30%]
150s tests/test_colorama.py::test_mintty_fixed_windows[stdout-False] SKIPPED [ 30%]
150s tests/test_colorama.py::test_mintty_fixed_windows[stderr-False] SKIPPED [ 30%]
150s tests/test_colorama.py::test_mintty_fixed_windows[-False] SKIPPED (T...) [ 30%]
150s tests/test_colorama.py::test_mintty_not_fixed_linux[__stdout__-False] PASSED [ 30%]
150s tests/test_colorama.py::test_mintty_not_fixed_linux[__stderr__-False] PASSED [ 30%]
150s tests/test_colorama.py::test_mintty_not_fixed_linux[stdout-False] PASSED [ 30%]
150s tests/test_colorama.py::test_mintty_not_fixed_linux[stderr-False] PASSED [ 30%]
150s tests/test_colorama.py::test_mintty_not_fixed_linux[-False] PASSED [ 30%]
150s tests/test_colorama.py::test_jupyter_fixed[stdout-StreamIsattyFalse-True] PASSED [ 30%]
150s tests/test_colorama.py::test_jupyter_fixed[stderr-StreamIsattyFalse-True] PASSED [ 30%]
150s tests/test_colorama.py::test_jupyter_fixed[__stdout__-StreamIsattyFalse-False] PASSED [ 30%]
150s tests/test_colorama.py::test_jupyter_fixed[__stderr__-StreamIsattyFalse-False] PASSED [ 30%]
150s tests/test_colorama.py::test_jupyter_fixed[stdout-StreamIsattyTrue-False] PASSED [ 31%]
150s tests/test_colorama.py::test_jupyter_fixed[stderr-StreamIsattyTrue-False] PASSED [ 31%]
150s tests/test_colorama.py::test_jupyter_fixed[-StreamIsattyFalse-False] PASSED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_on_linux[__stdout__] PASSED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_on_linux[__stderr__] PASSED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_not_original_stdout_or_stderr[stdout] SKIPPED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_not_original_stdout_or_stderr[stderr] SKIPPED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_not_original_stdout_or_stderr[] SKIPPED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_terminal_has_vt_support[__stdout__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_terminal_has_vt_support[__stderr__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_winapi_false[__stdout__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_dont_wrap_if_winapi_false[__stderr__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_no_vt_support[__stdout__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_no_vt_support[__stderr__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_vt_check_fails[__stdout__] SKIPPED [ 31%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_vt_check_fails[__stderr__] SKIPPED [ 32%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_stream_has_no_fileno[__stdout__] SKIPPED [ 32%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_stream_has_no_fileno[__stderr__] SKIPPED [ 32%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_old_colorama_version[__stdout__] SKIPPED [ 32%]
150s tests/test_colorama.py::test_wrap_if_winapi_true_and_old_colorama_version[__stderr__] SKIPPED [ 32%]
150s tests/test_configure.py::test_handlers PASSED [ 32%]
150s tests/test_configure.py::test_levels PASSED [ 32%]
150s tests/test_configure.py::test_extra PASSED [ 32%]
150s tests/test_configure.py::test_patcher PASSED [ 32%]
150s tests/test_configure.py::test_activation PASSED [ 32%]
150s tests/test_configure.py::test_dict_unpacking PASSED [ 32%]
150s tests/test_configure.py::test_returned_ids PASSED [ 32%]
150s tests/test_configure.py::test_dont_reset_by_default PASSED [ 32%]
150s tests/test_configure.py::test_reset_previous_handlers PASSED [ 32%]
150s tests/test_configure.py::test_reset_previous_extra PASSED [ 32%]
150s tests/test_configure.py::test_reset_previous_patcher PASSED [ 33%]
150s tests/test_configure.py::test_dont_reset_previous_levels PASSED [ 33%]
150s tests/test_configure.py::test_configure_handler_using_new_level PASSED [ 33%]
150s tests/test_configure.py::test_configure_filter_using_new_level PASSED [ 33%]
150s tests/test_configure.py::test_configure_before_bind PASSED [ 33%]
150s tests/test_configure.py::test_configure_after_bind PASSED [ 33%]
150s tests/test_contextualize.py::test_contextualize PASSED [ 33%]
150s tests/test_contextualize.py::test_contextualize_as_decorator PASSED [ 33%]
150s tests/test_contextualize.py::test_contextualize_in_function PASSED [ 33%]
150s tests/test_contextualize.py::test_contextualize_reset PASSED [ 33%]
151s tests/test_contextualize.py::test_contextualize_async PASSED [ 33%]
151s tests/test_contextualize.py::test_contextualize_thread PASSED [ 33%]
151s tests/test_contextualize.py::test_contextualize_before_bind PASSED [ 33%]
151s tests/test_contextualize.py::test_contextualize_after_bind PASSED [ 33%]
151s tests/test_contextualize.py::test_contextualize_using_bound PASSED [ 34%]
151s tests/test_contextualize.py::test_contextualize_before_configure PASSED [ 34%]
151s tests/test_contextualize.py::test_contextualize_after_configure PASSED [ 34%]
151s tests/test_contextualize.py::test_nested_contextualize PASSED [ 34%]
151s tests/test_contextualize.py::test_context_reset_despite_error PASSED [ 34%]
151s tests/test_contextualize.py::test_contextvars_fallback_352 PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_coroutine_function PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_async_callable_sink PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_concurrent_execution PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_recursive_coroutine PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_using_another_event_loop PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_run_mutiple_different_loops PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_run_multiple_same_loop PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_using_sink_without_running_loop_not_none PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_using_sink_without_running_loop_none PASSED [ 34%]
151s tests/test_coroutine_sink.py::test_global_loop_not_used PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_complete_in_another_run PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_tasks_cancelled_on_remove PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_remove_without_tasks PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_complete_without_tasks PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_complete_stream_noop PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_complete_file_noop PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_complete_function_noop PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_complete_standard_noop PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_exception_in_coroutine_caught PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_exception_in_coroutine_not_caught PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_exception_in_coroutine_during_complete_caught PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_exception_in_coroutine_during_complete_not_caught PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_enqueue_coroutine_loop PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_enqueue_coroutine_from_inside_coroutine_without_loop PASSED [ 35%]
151s tests/test_coroutine_sink.py::test_custom_complete_function PASSED [ 36%]
151s tests/test_coroutine_sink.py::test_complete_from_another_loop[True] PASSED [ 36%]
151s tests/test_coroutine_sink.py::test_complete_from_another_loop[False] PASSED [ 36%]
151s tests/test_coroutine_sink.py::test_complete_from_multiple_threads_loop_is_none PASSED [ 36%]
152s tests/test_coroutine_sink.py::test_complete_from_multiple_threads_loop_is_not_none PASSED [ 36%]
152s tests/test_coroutine_sink.py::test_complete_and_sink_write_concurrency PASSED [ 36%]
152s tests/test_coroutine_sink.py::test_complete_and_contextualize_concurrency PASSED [ 36%]
152s tests/test_coroutine_sink.py::test_complete_with_sub_processes PASSED [ 36%]
152s tests/test_coroutine_sink.py::test_invalid_coroutine_sink_if_no_loop_with_enqueue PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[%Y-%m-%d %H-%M-%S %f %Z %z-2018-06-09 01:02:03.000045-timezone0-2018-06-09 01-02-03 000045 UTC +0000] PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[YYYY-MM-DD HH-mm-ss SSSSSS zz ZZ-2018-06-09 01:02:03.000045-timezone1-2018-06-09 01-02-03 000045 UTC +0000] PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[%Y-%m-%d %H-%M-%S %f %Z %z-2018-06-09 01:02:03.000045-timezone2-2018-06-09 01-02-03 000045 EST -0500] PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[YYYY-MM-DD HH-mm-ss SSSSSS zz ZZ-2018-06-09 01:02:03.000045-timezone3-2018-06-09 01-02-03 000045 EST -0500] PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[%Y-%m-%d %H-%M-%S %f %Z!UTC-2018-06-09 01:02:03.000045-timezone4-2018-06-09 01-02-03 000045 UTC] PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[YYYY-MM-DD HH-mm-ss SSSSSS zz!UTC-2018-06-09 01:02:03.000045-timezone5-2018-06-09 01-02-03 000045 UTC] PASSED [ 36%]
152s tests/test_datetime.py::test_formatting[%Y-%m-%d %H-%M-%S %f %Z %z!UTC-2018-06-09 01:02:03.000045-timezone6-2018-06-09 06-02-03 000045 UTC +0000] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[YYYY-MM-DD HH-mm-ss SSSSSS zz ZZ!UTC-2018-06-09 01:02:03.000045-timezone7-2018-06-09 06-02-03 000045 UTC +0000] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[YY-M-D H-m-s SSS Z-2005-04-07 09:03:08.002320-timezone8-05-4-7 9-3-8 002 +01:00] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[Q_DDDD_DDD d_E h_hh A SS ZZ-2000-01-01 14:00:00.9-timezone9-1_001_1 5_6 2_02 PM 90 -0030] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[hh A-2018-01-01 00:01:02.000003-timezone10-12 AM] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[hh A-2018-01-01 12:00:00.0-timezone11-12 PM] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[hh A-2018-01-01 23:00:00.0-timezone12-11 PM] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[[YYYY] MM [DD]-2018-02-03 11:09:00.000002-timezone13-YYYY 02 DD] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[[YYYY MM DD]-2018-01-03 11:03:04.000002-timezone14-[2018 01 03]] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[[[YY]]-2018-01-03 11:03:04.000002-timezone15-[YY]] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[[]-2018-01-03 11:03:04.000002-timezone16-] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[[[]]-2018-01-03 11:03:04.000002-timezone17-[]] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[SSSSSS[]SSS[]SSSSSS-2018-01-03 11:03:04.100002-timezone18-100002100100002] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[[HHmmss-2018-01-03 11:03:04.000002-timezone19-[110304] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[HHmmss]-2018-01-03 11:03:04.000002-timezone20-110304]] PASSED [ 37%]
152s tests/test_datetime.py::test_formatting[HH:mm:ss!UTC-2018-01-01 11:30:00.0-timezone21-09:30:00] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[UTC! HH:mm:ss-2018-01-01 11:30:00.0-timezone22-UTC! 11:30:00] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[!UTC HH:mm:ss-2018-01-01 11:30:00.0-timezone23-!UTC 11:30:00] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[hh:mm:ss A - Z ZZ !UTC-2018-01-01 12:30:00.0-timezone24-11:00:00 AM - +00:00 +0000 ] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[YYYY-MM-DD HH:mm:ss[Z]!UTC-2018-01-03 11:03:04.2-timezone25-2018-01-03 13:03:04Z] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[HH:mm:ss[!UTC]-2018-01-01 11:30:00.0-timezone26-11:30:00!UTC] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[-2018-02-03 11:09:00.000002-timezone27-2018-02-03T11:09:00.000002+0030] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting[!UTC-2018-02-03 11:09:00.000002-timezone28-2018-02-03T10:39:00.000002+0000] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting_timezone_offset_down_to_the_second[%Y-%m-%d %H-%M-%S %f %Z %z-7230.099-2018-06-09 01-02-03 000000 ABC +020030.099000] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting_timezone_offset_down_to_the_second[YYYY-MM-DD HH-mm-ss zz Z ZZ-6543-2018-06-09 01-02-03 ABC +01:49:03 +014903] PASSED [ 38%]
152s tests/test_datetime.py::test_formatting_timezone_offset_down_to_the_second[HH-mm-ss zz Z ZZ--12345.06702-01-02-03 ABC -03:26:45.067020 -032645.067020] PASSED [ 38%]
152s tests/test_datetime.py::test_locale_formatting PASSED [ 38%]
152s tests/test_datetime.py::test_stdout_formatting PASSED [ 38%]
152s tests/test_datetime.py::test_file_formatting PASSED [ 38%]
152s tests/test_datetime.py::test_missing_struct_time_fields PASSED [ 38%]
152s tests/test_datetime.py::test_freezegun_mocking PASSED [ 39%]
152s tests/test_datetime.py::test_invalid_time_format[ss.SSSSSSS] PASSED [ 39%]
152s tests/test_datetime.py::test_invalid_time_format[SS.SSSSSSSS.SS] PASSED [ 39%]
152s tests/test_datetime.py::test_invalid_time_format[HH:mm:ss.SSSSSSSSS] PASSED [ 39%]
152s tests/test_datetime.py::test_invalid_time_format[SSSSSSSSSS] PASSED [ 39%]
152s tests/test_deepcopy.py::test_add_sink_after_deepcopy PASSED [ 39%]
152s tests/test_deepcopy.py::test_add_sink_before_deepcopy PASSED [ 39%]
152s tests/test_deepcopy.py::test_remove_from_original PASSED [ 39%]
152s tests/test_deepcopy.py::test_remove_from_copy PASSED [ 39%]
152s tests/test_defaults.py::test_string[test] PASSED [ 39%]
152s tests/test_defaults.py::test_string[] PASSED [ 39%]
152s tests/test_defaults.py::test_bool_positive[y] PASSED [ 39%]
152s tests/test_defaults.py::test_bool_positive[1] PASSED [ 39%]
152s tests/test_defaults.py::test_bool_positive[TRUE] PASSED [ 39%]
152s tests/test_defaults.py::test_bool_negative[NO] PASSED [ 39%]
152s tests/test_defaults.py::test_bool_negative[0] PASSED [ 40%]
152s tests/test_defaults.py::test_bool_negative[false] PASSED [ 40%]
152s tests/test_defaults.py::test_int PASSED [ 40%]
152s tests/test_defaults.py::test_invalid_int[] PASSED [ 40%]
152s tests/test_defaults.py::test_invalid_int[a] PASSED [ 40%]
152s tests/test_defaults.py::test_invalid_bool[] PASSED [ 40%]
152s tests/test_defaults.py::test_invalid_bool[a] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_caret_not_masked[False] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_caret_not_masked[True] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_no_caret_if_no_backtrace[False] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_no_caret_if_no_backtrace[True] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_sink_encoding[ascii] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_sink_encoding[UTF8] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_sink_encoding[None] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_sink_encoding[unknown-encoding] PASSED [ 40%]
152s tests/test_exceptions_catch.py::test_sink_encoding[] PASSED [ 41%]
152s tests/test_exceptions_catch.py::test_sink_encoding[encoding5] PASSED [ 41%]
152s tests/test_exceptions_catch.py::test_file_sink_ascii_encoding FAILED [ 41%]
152s tests/test_exceptions_catch.py::test_file_sink_utf8_encoding FAILED [ 41%]
152s tests/test_exceptions_catch.py::test_has_sys_real_prefix PASSED [ 41%]
152s tests/test_exceptions_catch.py::test_no_sys_real_prefix PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_has_site_getsitepackages PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_no_site_getsitepackages PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_user_site_is_path PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_user_site_is_none PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_sysconfig_get_path_return_path PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_sysconfig_get_path_return_none PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_no_exception PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_exception_is_none PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_exception_is_tuple PASSED [ 41%]
153s tests/test_exceptions_catch.py::test_exception_not_raising[ZeroDivisionError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exception_not_raising[ArithmeticError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exception_not_raising[exception2] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exception_raising[ValueError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exception_raising[exception1] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_raising[BaseException-ZeroDivisionError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_raising[BaseException-ArithmeticError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_raising[BaseException-exclude2] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_raising[ZeroDivisionError-ZeroDivisionError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_raising[ZeroDivisionError-ArithmeticError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_raising[ZeroDivisionError-exclude2] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[BaseException-ValueError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[BaseException-exclude1] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[ZeroDivisionError-ValueError] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[ZeroDivisionError-exclude1] PASSED [ 42%]
153s tests/test_exceptions_catch.py::test_reraise PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_onerror PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_onerror_with_reraise PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_decorate_function PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_decorate_coroutine PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_decorate_generator PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_decorate_generator_with_error PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_default_with_function PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_default_with_generator PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_default_with_coroutine PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_error_when_decorating_class_without_parentheses PASSED [ 43%]
153s tests/test_exceptions_catch.py::test_error_when_decorating_class_with_parentheses PASSED [ 43%]
153s tests/test_exceptions_formatting.py::test_backtrace[chained_expression_direct] PASSED [ 43%]
153s tests/test_exceptions_formatting.py::test_backtrace[chained_expression_indirect] PASSED [ 43%]
153s tests/test_exceptions_formatting.py::test_backtrace[chaining_first] PASSED [ 43%]
153s tests/test_exceptions_formatting.py::test_backtrace[chaining_second] PASSED [ 44%]
153s tests/test_exceptions_formatting.py::test_backtrace[chaining_third] PASSED [ 44%]
153s tests/test_exceptions_formatting.py::test_backtrace[enqueue] PASSED [ 44%]
153s tests/test_exceptions_formatting.py::test_backtrace[enqueue_with_others_handlers] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[frame_values_backward] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[frame_values_forward] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[function] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[head_recursion] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[missing_attributes_traceback_objects] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[nested] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[nested_chained_catch_up] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[nested_decorator_catch_up] PASSED [ 44%]
154s tests/test_exceptions_formatting.py::test_backtrace[nested_explicit_catch_up] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[nested_wrapping] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[no_tb] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[not_enough_arguments] PASSED [ 45%]
155s tests/test_exceptions_formatting.py::test_backtrace[raising_recursion] PASSED [ 45%]
155s tests/test_exceptions_formatting.py::test_backtrace[suppressed_expression_direct] PASSED [ 45%]
155s tests/test_exceptions_formatting.py::test_backtrace[suppressed_expression_indirect] PASSED [ 45%]
155s tests/test_exceptions_formatting.py::test_backtrace[tail_recursion] PASSED [ 45%]
155s tests/test_exceptions_formatting.py::test_backtrace[too_many_arguments] PASSED [ 45%]
155s tests/test_exceptions_formatting.py::test_diagnose[assertion_error] FAILED [ 45%]
155s tests/test_exceptions_formatting.py::test_diagnose[assertion_error_custom] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[assertion_error_in_string] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[attributes] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[chained_both] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[encoding] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[global_variable] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[indentation_error] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[keyword_argument] FAILED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[multilines_repr] FAILED [ 46%]
156s tests/test_exceptions_formatting.py::test_diagnose[no_error_message] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[parenthesis] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[source_multilines] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[source_strings] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[syntax_error] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[syntax_highlighting] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[truncating] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_diagnose[unprintable_object] FAILED [ 46%]
157s tests/test_exceptions_formatting.py::test_exception_ownership[assertion_from_lib] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[assertion_from_local] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[callback] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator_from_lib] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[decorated_callback] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[direct] FAILED [ 47%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[indirect] FAILED [ 47%]
158s tests/test_exceptions_formatting.py::test_exception_ownership[string_lib] FAILED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_ownership[string_source] FAILED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_ownership[syntaxerror] FAILED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[assertionerror_without_traceback] PASSED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[catch_as_context_manager] PASSED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[catch_as_decorator_with_parentheses] PASSED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[catch_as_decorator_without_parentheses] PASSED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[catch_as_function] PASSED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[catch_message] PASSED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_coroutine] FAILED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_function] FAILED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_generator] FAILED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[exception_in_property] FAILED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[handler_formatting_with_context_manager] PASSED [ 48%]
160s tests/test_exceptions_formatting.py::test_exception_others[handler_formatting_with_decorator] PASSED [ 48%]
160s tests/test_exceptions_formatting.py::test_exception_others[level_name] PASSED [ 48%]
160s tests/test_exceptions_formatting.py::test_exception_others[level_number] PASSED [ 48%]
160s tests/test_exceptions_formatting.py::test_exception_others[message_formatting_with_context_manager] PASSED [ 48%]
160s tests/test_exceptions_formatting.py::test_exception_others[message_formatting_with_decorator] PASSED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[nested_with_reraise] FAILED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[syntaxerror_without_traceback] PASSED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit] FAILED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_negative] PASSED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_none] FAILED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_unset] FAILED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[zerodivisionerror_without_traceback] PASSED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_modern[type_hints-minimum_python_version0] FAILED [ 48%]
162s tests/test_exceptions_formatting.py::test_exception_modern[positional_only_argument-minimum_python_version1] FAILED [ 48%]
162s tests/test_exceptions_formatting.py::test_exception_modern[walrus_operator-minimum_python_version2] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[match_statement-minimum_python_version3] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[exception_group_catch-minimum_python_version4] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[notes-minimum_python_version5] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[grouped_simple-minimum_python_version6] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[grouped_nested-minimum_python_version7] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[grouped_with_cause_and_context-minimum_python_version8] FAILED [ 49%]
162s tests/test_exceptions_formatting.py::test_exception_modern[grouped_as_cause_and_context-minimum_python_version9] FAILED [ 49%]
163s tests/test_exceptions_formatting.py::test_exception_modern[grouped_max_length-minimum_python_version10] FAILED [ 49%]
163s tests/test_exceptions_formatting.py::test_exception_modern[grouped_max_depth-minimum_python_version11] FAILED [ 49%]
163s tests/test_exceptions_formatting.py::test_exception_modern[f_string-minimum_python_version12] FAILED [ 49%]
163s tests/test_exceptions_formatting.py::test_group_exception_using_backport SKIPPED [ 49%]
163s tests/test_filesink_compression.py::test_compression_ext[gz] PASSED [ 49%]
163s tests/test_filesink_compression.py::test_compression_ext[bz2] PASSED [ 49%]
163s tests/test_filesink_compression.py::test_compression_ext[zip] PASSED [ 49%]
163s tests/test_filesink_compression.py::test_compression_ext[xz] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_ext[lzma] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_ext[tar] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_ext[tar.gz] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_ext[tar.bz2] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_ext[tar.xz] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_function PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_rotation[a] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_rotation[a+] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_rotation[w] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_rotation[x] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_remove_without_rotation[a] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_remove_without_rotation[a+] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_remove_without_rotation[w] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_compression_at_remove_without_rotation[x] PASSED [ 50%]
163s tests/test_filesink_compression.py::test_no_compression_at_remove_with_rotation[a] PASSED [ 51%]
163s tests/test_filesink_compression.py::test_no_compression_at_remove_with_rotation[a+] PASSED [ 51%]
163s tests/test_filesink_compression.py::test_no_compression_at_remove_with_rotation[w] PASSED [ 51%]
163s tests/test_filesink_compression.py::test_no_compression_at_remove_with_rotation[x] PASSED [ 51%]
163s tests/test_filesink_compression.py::test_rename_existing_with_creation_time PASSED [ 51%]
163s tests/test_filesink_compression.py::test_renaming_compression_dest_exists PASSED [ 51%]
163s tests/test_filesink_compression.py::test_renaming_compression_dest_exists_with_time PASSED [ 51%]
163s tests/test_filesink_compression.py::test_compression_use_renamed_file_after_rotation PASSED [ 51%]
164s tests/test_filesink_compression.py::test_threaded_compression_after_rotation PASSED [ 51%]
164s tests/test_filesink_compression.py::test_exception_during_compression_at_rotation[True] PASSED [ 51%]
164s tests/test_filesink_compression.py::test_exception_during_compression_at_rotation[False] PASSED [ 51%]
164s tests/test_filesink_compression.py::test_exception_during_compression_at_rotation_not_caught[True] PASSED [ 51%]
164s tests/test_filesink_compression.py::test_exception_during_compression_at_rotation_not_caught[False] PASSED [ 51%]
164s tests/test_filesink_compression.py::test_exception_during_compression_at_remove[True] PASSED [ 51%]
164s tests/test_filesink_compression.py::test_exception_during_compression_at_remove[False] PASSED [ 51%]
164s tests/test_filesink_compression.py::test_invalid_compression[0] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_invalid_compression[True] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_invalid_compression[os] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_invalid_compression[compression3] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_invalid_compression[compression4] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_unknown_compression[rar] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_unknown_compression[.7z] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_unknown_compression[tar.zip] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_unknown_compression[__dict__] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_gzip_module_unavailable[gz] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_gzip_module_unavailable[tar.gz] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_bz2_module_unavailable[bz2] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_bz2_module_unavailable[tar.bz2] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_lzma_module_unavailable[xz] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_lzma_module_unavailable[lzma] PASSED [ 52%]
164s tests/test_filesink_compression.py::test_lzma_module_unavailable[tar.xz] PASSED [ 53%]
164s tests/test_filesink_compression.py::test_tarfile_module_unavailable[tar] PASSED [ 53%]
164s tests/test_filesink_compression.py::test_tarfile_module_unavailable[tar.gz] PASSED [ 53%]
164s tests/test_filesink_compression.py::test_tarfile_module_unavailable[tar.bz2] PASSED [ 53%]
164s tests/test_filesink_compression.py::test_tarfile_module_unavailable[tar.xz] PASSED [ 53%]
164s tests/test_filesink_compression.py::test_zipfile_module_unavailable[zip] PASSED [ 53%]
164s tests/test_filesink_delay.py::test_file_not_delayed PASSED [ 53%]
164s tests/test_filesink_delay.py::test_file_delayed PASSED [ 53%]
164s tests/test_filesink_delay.py::test_compression PASSED [ 53%]
164s tests/test_filesink_delay.py::test_compression_early_remove PASSED [ 53%]
164s tests/test_filesink_delay.py::test_retention PASSED [ 53%]
164s tests/test_filesink_delay.py::test_retention_early_remove PASSED [ 53%]
164s tests/test_filesink_delay.py::test_rotation PASSED [ 53%]
164s tests/test_filesink_delay.py::test_rotation_early_remove PASSED [ 53%]
165s tests/test_filesink_delay.py::test_rotation_and_retention PASSED [ 53%]
165s tests/test_filesink_delay.py::test_rotation_and_retention_timed_file PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_log_file_permissions[511] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_log_file_permissions[502] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_log_file_permissions[484] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_log_file_permissions[448] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_log_file_permissions[393] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_rotation_permissions[511] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_rotation_permissions[502] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_rotation_permissions[484] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_rotation_permissions[448] PASSED [ 54%]
165s tests/test_filesink_permissions.py::test_rotation_permissions[393] PASSED [ 54%]
165s tests/test_filesink_retention.py::test_retention_time[1 hour] PASSED [ 54%]
165s tests/test_filesink_retention.py::test_retention_time[1H] PASSED [ 54%]
165s tests/test_filesink_retention.py::test_retention_time[ 1 h ] PASSED [ 54%]
165s tests/test_filesink_retention.py::test_retention_time[retention3] PASSED [ 54%]
165s tests/test_filesink_retention.py::test_retention_count[0] PASSED [ 55%]
165s tests/test_filesink_retention.py::test_retention_count[1] PASSED [ 55%]
165s tests/test_filesink_retention.py::test_retention_count[10] PASSED [ 55%]
165s tests/test_filesink_retention.py::test_retention_function PASSED [ 55%]
165s tests/test_filesink_retention.py::test_managed_files PASSED [ 55%]
165s tests/test_filesink_retention.py::test_not_managed_files PASSED [ 55%]
165s tests/test_filesink_retention.py::test_no_duplicates_in_listed_files[test] PASSED [ 55%]
165s tests/test_filesink_retention.py::test_no_duplicates_in_listed_files[test.log] PASSED [ 55%]
165s tests/test_filesink_retention.py::test_directories_ignored PASSED [ 55%]
165s tests/test_filesink_retention.py::test_manage_formatted_files PASSED [ 55%]
165s tests/test_filesink_retention.py::test_date_with_dot_after_extension PASSED [ 55%]
165s tests/test_filesink_retention.py::test_symbol_in_filename PASSED [ 55%]
165s tests/test_filesink_retention.py::test_manage_file_without_extension PASSED [ 55%]
166s tests/test_filesink_retention.py::test_manage_formatted_files_without_extension PASSED [ 55%]
166s tests/test_filesink_retention.py::test_retention_at_rotation[a] PASSED [ 55%]
166s tests/test_filesink_retention.py::test_retention_at_rotation[a+] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_retention_at_rotation[w] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_retention_at_rotation[x] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[a] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[a+] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[w] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[x] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_no_retention_at_remove_with_rotation[w] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_no_retention_at_remove_with_rotation[x] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_no_retention_at_remove_with_rotation[a] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_no_retention_at_remove_with_rotation[a+] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_no_renaming PASSED [ 56%]
166s tests/test_filesink_retention.py::test_exception_during_retention_at_rotation[True] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_exception_during_retention_at_rotation[False] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_exception_during_retention_at_rotation_not_caught[True] PASSED [ 56%]
166s tests/test_filesink_retention.py::test_exception_during_retention_at_rotation_not_caught[False] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_exception_during_retention_at_remove[True] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_exception_during_retention_at_remove[False] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_invalid_retention[retention0] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_invalid_retention[os] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_invalid_retention[retention2] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[W5] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[monday at 14:00] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[sunday] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[nope] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[5 MB] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[3 hours 2 dayz] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[d] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[H] PASSED [ 57%]
166s tests/test_filesink_retention.py::test_unkown_retention[__dict__] PASSED [ 57%]
166s tests/test_filesink_rotation.py::test_renaming PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_no_renaming PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[8] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[8.0] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[7.99] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[8 B] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[8e-6MB] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[0.008 kiB] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_size_rotation[64b] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[13-hours0] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[13:00-hours1] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[13:00:00-hours2] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[13:00:00.123456-hours3] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[11:00-hours4] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[w0-hours5] PASSED [ 58%]
166s tests/test_filesink_rotation.py::test_time_rotation[W0 at 00:00-hours6] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[W6-hours7] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[saturday-hours8] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[w6 at 00-hours9] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[ W6 at 13 -hours10] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[w2 at 11:00:00 AM-hours11] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[MoNdAy at 11:00:30.123-hours12] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[sunday-hours13] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[SUNDAY at 11:00-hours14] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[sunDAY at 1:0:0.0 pm-hours15] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[when16-hours16] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[when17-hours17] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[2 h-hours18] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[1 hour-hours19] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[7 days-hours20] PASSED [ 59%]
166s tests/test_filesink_rotation.py::test_time_rotation[1h 30 minutes-hours21] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[1 w, 2D-hours22] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[1.5d-hours23] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[1.222 hours, 3.44s-hours24] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[when25-hours25] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[when26-hours26] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[hourly-hours27] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[daily-hours28] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[WEEKLY-hours29] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[mOnthLY-hours30] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[monthly-hours31] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation[Yearly -hours32] PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation_dst PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation_with_tzinfo_diff_bigger PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation_with_tzinfo_diff_lower PASSED [ 60%]
166s tests/test_filesink_rotation.py::test_time_rotation_with_tzinfo_utc PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_multiple_days_at_midnight_utc PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_daily_rotation_with_different_timezone[-3600] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_daily_rotation_with_different_timezone[0] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_daily_rotation_with_different_timezone[3600] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_forward[rotation0] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_forward[rotation1] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_forward[rotation2] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_forward[rotation3] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_forward[03:30:00] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_when_positive_timezone_changes_forward[rotation0] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_when_positive_timezone_changes_forward[02:30:00] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_forward[rotation0] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_forward[rotation1] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_forward[rotation2] PASSED [ 61%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_forward[rotation3] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_forward[03:30:00] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_when_negative_timezone_changes_forward[rotation0] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_when_negative_timezone_changes_forward[02:30:00] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_backward_aware[rotation0] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_backward_aware[rotation1] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_backward_aware[rotation2] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_backward_naive[rotation0] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_backward_naive[02:30:00] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_aware[rotation0] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_aware[rotation1] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_aware[rotation2] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_naive[rotation0] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_naive[02:30:00] PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_time_rotation_when_timezone_changes_backward_rename_file PASSED [ 62%]
167s tests/test_filesink_rotation.py::test_dont_rotate_earlier_when_utc_is_one_day_before[00:15] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_earlier_when_utc_is_one_day_before[rotation1] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_earlier_when_utc_is_one_day_before[rotation2] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_earlier_when_utc_is_one_day_before[rotation3] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_earlier_when_utc_is_one_day_before[rotation4] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_later_when_utc_is_one_day_after[23:45] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_later_when_utc_is_one_day_after[rotation1] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_later_when_utc_is_one_day_after[rotation2] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_later_when_utc_is_one_day_after[rotation3] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_dont_rotate_later_when_utc_is_one_day_after[rotation4] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_rotation_at_midnight_with_date_in_filename[timezone0] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_rotation_at_midnight_with_date_in_filename[timezone1] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_rotation_at_midnight_with_date_in_filename[timezone2] PASSED [ 63%]
167s tests/test_filesink_rotation.py::test_time_rotation_reopening_native[False] SKIPPED [ 63%]
167s tests/test_filesink_rotation.py::test_time_rotation_reopening_native[True] SKIPPED [ 63%]
172s tests/test_filesink_rotation.py::test_time_rotation_reopening_xattr_attributeerror[False] PASSED [ 64%]
177s tests/test_filesink_rotation.py::test_time_rotation_reopening_xattr_attributeerror[True] PASSED [ 64%]
182s tests/test_filesink_rotation.py::test_time_rotation_reopening_xattr_oserror[False] PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_time_rotation_reopening_xattr_oserror[True] PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_time_rotation_windows_no_setctime SKIPPED [ 64%]
187s tests/test_filesink_rotation.py::test_time_rotation_windows_setctime_exception[ValueError] SKIPPED [ 64%]
187s tests/test_filesink_rotation.py::test_time_rotation_windows_setctime_exception[OSError] SKIPPED [ 64%]
187s tests/test_filesink_rotation.py::test_function_rotation PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_rotation_at_remove[w] PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_rotation_at_remove[x] PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_no_rotation_at_remove[a] PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_no_rotation_at_remove[a+] PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_rename_existing_with_creation_time PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_renaming_rotation_dest_exists PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_renaming_rotation_dest_exists_with_time PASSED [ 64%]
187s tests/test_filesink_rotation.py::test_exception_during_rotation PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_exception_during_rotation_not_caught PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_recipe_rotation_both_size_and_time PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_invalid_rotation[rotation0] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_invalid_rotation[os] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_invalid_rotation[rotation2] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_invalid_rotation[rotation3] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_invalid_rotation[1j] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[w7] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[w10] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[w-1] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[h] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[M] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[w1at13] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[www] PASSED [ 65%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[13 at w2] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[w] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[K] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[tufy MB] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[111.111.111 kb] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[3 Ki] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[2017.11.12] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[11:99] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[01:00:00!UTC] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[monday at 2017] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[e days] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[2 days 8 pouooi] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[foobar] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[w5 at [not|a|time]] PASSED [ 66%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[[not|a|day] at 12:00] PASSED [ 67%]
187s tests/test_filesink_rotation.py::test_unknown_rotation[__dict__] PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_deleted_before_write_without_delay PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_deleted_before_write_with_delay PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_path_containing_placeholder PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_reopened_with_arguments PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_manually_changed PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_folder_deleted PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_deleted_before_rotation PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_deleted_before_compression PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_deleted_before_retention PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_correctly_reused_after_rotation PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_closed_without_being_logged[None-True] PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_closed_without_being_logged[None-False] PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_closed_without_being_logged[-True] PASSED [ 67%]
187s tests/test_filesink_watch.py::test_file_closed_without_being_logged[-False] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{name}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{time}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{elapsed}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{elapsed.seconds}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{line}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{level}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{level.name}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{level.no}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{level.icon}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{file}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{file.name}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{file.path}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{function}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{module}-] PASSED [ 68%]
187s tests/test_formatting.py::test_log_formatters[False-{thread}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-{thread.id}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-{thread.name}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-{process}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-{process.id}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-{process.name}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-{message}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[False-%s {{a}} \u5929 {{1}} %d-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{name}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{time}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{elapsed}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{elapsed.seconds}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{line}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{level}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{level.name}-] PASSED [ 69%]
187s tests/test_formatting.py::test_log_formatters[True-{level.no}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{level.icon}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{file}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{file.name}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{file.path}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{function}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{module}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{thread}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{thread.id}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{thread.name}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{process}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{process.id}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{process.name}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-{message}-] PASSED [ 70%]
188s tests/test_formatting.py::test_log_formatters[True-%s {{a}} \u5929 {{1}} %d-] PASSED [ 70%]
188s tests/test_formatting.py::test_file_formatters[file-{time}.log-] PASSED [ 71%]
188s tests/test_formatting.py::test_file_formatters[file-%s_{{a}}_\u5929_{{1}}_%d-] PASSED [ 71%]
188s tests/test_formatting.py::test_file_formatters[dir-{time}.log-] PASSED [ 71%]
188s tests/test_formatting.py::test_file_formatters[dir-%s_{{a}}_\u5929_{{1}}_%d-] PASSED [ 71%]
188s tests/test_formatting.py::test_file_formatters[both-{time}.log-] PASSED [ 71%]
188s tests/test_formatting.py::test_file_formatters[both-%s_{{a}}_\u5929_{{1}}_%d-] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{1, 2, 3} - {0} - {-args0-kwargs0-{1, 2, 3} - {0} - {] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{} + {} = {}-args1-kwargs1-1 + 2 = 3] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{a} + {b} = {c}-args2-kwargs2-1 + 2 = 3] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{0} + {two} = {1}-args3-kwargs3-1 + 2 = 3] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{self} or {message} or {level}-args4-kwargs4-a or b or c] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{:.2f}-args5-kwargs5-1.00] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{0:0{three}d}-args6-kwargs6-005] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[False-{{nope}} {my_dict} {}-args7-kwargs7-{nope} {'a': 1} {{!}}] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[True-{1, 2, 3} - {0} - {-args0-kwargs0-{1, 2, 3} - {0} - {] PASSED [ 71%]
188s tests/test_formatting.py::test_log_formatting[True-{} + {} = {}-args1-kwargs1-1 + 2 = 3] PASSED [ 72%]
188s tests/test_formatting.py::test_log_formatting[True-{a} + {b} = {c}-args2-kwargs2-1 + 2 = 3] PASSED [ 72%]
188s tests/test_formatting.py::test_log_formatting[True-{0} + {two} = {1}-args3-kwargs3-1 + 2 = 3] PASSED [ 72%]
188s tests/test_formatting.py::test_log_formatting[True-{self} or {message} or {level}-args4-kwargs4-a or b or c] PASSED [ 72%]
188s tests/test_formatting.py::test_log_formatting[True-{:.2f}-args5-kwargs5-1.00] PASSED [ 72%]
188s tests/test_formatting.py::test_log_formatting[True-{0:0{three}d}-args6-kwargs6-005] PASSED [ 72%]
188s tests/test_formatting.py::test_log_formatting[True-{{nope}} {my_dict} {}-args7-kwargs7-{nope} {'a': 1} {{!}}] PASSED [ 72%]
188s tests/test_formatting.py::test_f_globals_name_absent PASSED [ 72%]
188s tests/test_formatting.py::test_extra_formatting PASSED [ 72%]
188s tests/test_formatting.py::test_kwargs_in_extra_dict PASSED [ 72%]
188s tests/test_formatting.py::test_non_string_message PASSED [ 72%]
188s tests/test_formatting.py::test_non_string_message_is_str_in_record[True] PASSED [ 72%]
188s tests/test_formatting.py::test_non_string_message_is_str_in_record[False] PASSED [ 72%]
188s tests/test_formatting.py::test_missing_positional_field_during_formatting[True] PASSED [ 72%]
188s tests/test_formatting.py::test_missing_positional_field_during_formatting[False] PASSED [ 72%]
188s tests/test_formatting.py::test_missing_named_field_during_formatting[True] PASSED [ 73%]
188s tests/test_formatting.py::test_missing_named_field_during_formatting[False] PASSED [ 73%]
188s tests/test_formatting.py::test_not_formattable_message PASSED [ 73%]
188s tests/test_formatting.py::test_not_formattable_message_with_colors PASSED [ 73%]
188s tests/test_formatting.py::test_invalid_color_markup PASSED [ 73%]
188s tests/test_get_frame.py::test_with_sys_getframe PASSED [ 73%]
188s tests/test_get_frame.py::test_without_sys_getframe PASSED [ 73%]
188s tests/test_get_frame.py::test_get_frame_fallback PASSED [ 73%]
188s tests/test_interception.py::test_formatting PASSED [ 73%]
188s tests/test_interception.py::test_intercept PASSED [ 73%]
188s tests/test_interception.py::test_add_before_intercept PASSED [ 73%]
188s tests/test_interception.py::test_remove_interception PASSED [ 73%]
188s tests/test_interception.py::test_intercept_too_low PASSED [ 73%]
188s tests/test_interception.py::test_multiple_intercept PASSED [ 73%]
188s tests/test_interception.py::test_exception PASSED [ 73%]
188s tests/test_interception.py::test_level_is_no PASSED [ 74%]
188s tests/test_interception.py::test_level_does_not_exist PASSED [ 74%]
188s tests/test_interception.py::test_level_exist_builtin PASSED [ 74%]
188s tests/test_interception.py::test_level_exists_custom PASSED [ 74%]
188s tests/test_interception.py::test_using_logging_function PASSED [ 74%]
188s tests/test_levels.py::test_log_int_level PASSED [ 74%]
188s tests/test_levels.py::test_log_str_level PASSED [ 74%]
188s tests/test_levels.py::test_add_level PASSED [ 74%]
188s tests/test_levels.py::test_add_level_after_add[False-foo | 10 | a] PASSED [ 74%]
188s tests/test_levels.py::test_add_level_after_add[True-\x1b[31mfoo | 10 | a\x1b[0m] PASSED [ 74%]
188s tests/test_levels.py::test_add_level_then_log_with_int_value PASSED [ 74%]
188s tests/test_levels.py::test_add_malicious_level PASSED [ 74%]
188s tests/test_levels.py::test_add_existing_level PASSED [ 74%]
188s tests/test_levels.py::test_blank_color PASSED [ 74%]
188s tests/test_levels.py::test_edit_level PASSED [ 74%]
188s tests/test_levels.py::test_edit_existing_level PASSED [ 75%]
188s tests/test_levels.py::test_get_level PASSED [ 75%]
188s tests/test_levels.py::test_get_existing_level PASSED [ 75%]
188s tests/test_levels.py::test_add_custom_level PASSED [ 75%]
188s tests/test_levels.py::test_updating_min_level PASSED [ 75%]
188s tests/test_levels.py::test_assign_custom_level_method PASSED [ 75%]
188s tests/test_levels.py::test_updating_level_no_not_allowed_default PASSED [ 75%]
188s tests/test_levels.py::test_updating_level_no_not_allowed_custom PASSED [ 75%]
188s tests/test_levels.py::test_log_invalid_level_type[3.4] PASSED [ 75%]
188s tests/test_levels.py::test_log_invalid_level_type[level1] PASSED [ 75%]
188s tests/test_levels.py::test_log_invalid_level_type[level2] PASSED [ 75%]
188s tests/test_levels.py::test_log_invalid_level_value[-1] PASSED [ 75%]
188s tests/test_levels.py::test_log_invalid_level_value[-999] PASSED [ 75%]
188s tests/test_levels.py::test_log_unknown_level[foo] PASSED [ 75%]
188s tests/test_levels.py::test_log_unknown_level[debug] PASSED [ 75%]
188s tests/test_levels.py::test_add_invalid_level_name[10] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_name[level_name1] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_name[level_name2] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_type[1] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_type[level_value1] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_type[3.4] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_type[level_value3] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_value[-1] PASSED [ 76%]
188s tests/test_levels.py::test_add_invalid_level_value[-999] PASSED [ 76%]
188s tests/test_levels.py::test_get_invalid_level[10] PASSED [ 76%]
188s tests/test_levels.py::test_get_invalid_level[level1] PASSED [ 76%]
188s tests/test_levels.py::test_get_invalid_level[level2] PASSED [ 76%]
188s tests/test_levels.py::test_get_unknown_level PASSED [ 76%]
188s tests/test_levels.py::test_edit_invalid_level[10] PASSED [ 76%]
188s tests/test_levels.py::test_edit_invalid_level[level1] PASSED [ 76%]
188s tests/test_levels.py::test_edit_invalid_level[level2] PASSED [ 77%]
188s tests/test_levels.py::test_edit_unknown_level[foo] PASSED [ 77%]
188s tests/test_levels.py::test_edit_unknown_level[debug] PASSED [ 77%]
188s tests/test_levels.py::test_add_invalid_level_color[>] PASSED [ 77%]
188s tests/test_levels.py::test_add_invalid_level_color[] PASSED [ 77%]
188s tests/test_levels.py::test_add_invalid_level_color[] PASSED [ 77%]
188s tests/test_levels.py::test_add_invalid_level_color[] PASSED [ 77%]
188s tests/test_levels.py::test_add_invalid_level_color[ ] PASSED [ 77%]
188s tests/test_locks.py::test_no_deadlock_on_generational_garbage_collection PASSED [ 77%]
188s tests/test_locks.py::test_no_deadlock_if_logger_used_inside_sink_with_catch PASSED [ 77%]
188s tests/test_locks.py::test_no_deadlock_if_logger_used_inside_sink_without_catch PASSED [ 77%]
189s tests/test_locks.py::test_no_error_if_multithreading PASSED [ 77%]
189s tests/test_locks.py::test_pickled_logger_does_not_inherit_acquired_local PASSED [ 77%]
190s tests/test_multiprocessing.py::test_apply_spawn PASSED [ 77%]
190s tests/test_multiprocessing.py::test_apply_fork PASSED [ 77%]
190s tests/test_multiprocessing.py::test_apply_inheritance PASSED [ 78%]
190s tests/test_multiprocessing.py::test_apply_async_spawn PASSED [ 78%]
190s tests/test_multiprocessing.py::test_apply_async_fork PASSED [ 78%]
190s tests/test_multiprocessing.py::test_apply_async_inheritance PASSED [ 78%]
190s tests/test_multiprocessing.py::test_process_spawn PASSED [ 78%]
190s tests/test_multiprocessing.py::test_process_fork PASSED [ 78%]
190s tests/test_multiprocessing.py::test_process_inheritance PASSED [ 78%]
190s tests/test_multiprocessing.py::test_remove_in_child_process_spawn PASSED [ 78%]
190s tests/test_multiprocessing.py::test_remove_in_child_process_fork PASSED [ 78%]
190s tests/test_multiprocessing.py::test_remove_in_child_process_inheritance PASSED [ 78%]
191s tests/test_multiprocessing.py::test_remove_in_main_process_spawn PASSED [ 78%]
192s tests/test_multiprocessing.py::test_remove_in_main_process_fork PASSED [ 78%]
192s tests/test_multiprocessing.py::test_remove_in_main_process_inheritance PASSED [ 78%]
192s tests/test_multiprocessing.py::test_await_complete_spawn PASSED [ 78%]
192s tests/test_multiprocessing.py::test_await_complete_fork PASSED [ 78%]
192s tests/test_multiprocessing.py::test_await_complete_inheritance PASSED [ 79%]
193s tests/test_multiprocessing.py::test_not_picklable_sinks_spawn PASSED [ 79%]
193s tests/test_multiprocessing.py::test_not_picklable_sinks_fork PASSED [ 79%]
193s tests/test_multiprocessing.py::test_not_picklable_sinks_inheritance PASSED [ 79%]
194s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[True-True] PASSED [ 79%]
195s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[True-False] PASSED [ 79%]
196s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[False-True] PASSED [ 79%]
197s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[False-False] PASSED [ 79%]
198s tests/test_multiprocessing.py::test_no_deadlock_if_external_lock_in_use[True] PASSED [ 79%]
199s tests/test_multiprocessing.py::test_no_deadlock_if_external_lock_in_use[False] PASSED [ 79%]
199s tests/test_multiprocessing.py::test_complete_from_multiple_child_processes PASSED [ 79%]
199s tests/test_opt.py::test_record PASSED [ 79%]
199s tests/test_opt.py::test_record_in_kwargs_too PASSED [ 79%]
200s tests/test_opt.py::test_record_not_in_extra PASSED [ 79%]
200s tests/test_opt.py::test_kwargs_in_extra_of_record PASSED [ 79%]
200s tests/test_opt.py::test_exception_boolean PASSED [ 80%]
200s tests/test_opt.py::test_exception_exc_info PASSED [ 80%]
200s tests/test_opt.py::test_exception_class PASSED [ 80%]
200s tests/test_opt.py::test_exception_log_funcion PASSED [ 80%]
200s tests/test_opt.py::test_lazy PASSED [ 80%]
200s tests/test_opt.py::test_logging_within_lazy_function PASSED [ 80%]
200s tests/test_opt.py::test_depth PASSED [ 80%]
200s tests/test_opt.py::test_capture PASSED [ 80%]
200s tests/test_opt.py::test_colors PASSED [ 80%]
200s tests/test_opt.py::test_colors_not_colorize PASSED [ 80%]
200s tests/test_opt.py::test_colors_doesnt_color_unrelated PASSED [ 80%]
200s tests/test_opt.py::test_colors_doesnt_strip_unrelated PASSED [ 80%]
200s tests/test_opt.py::test_colors_doesnt_raise_unrelated_colorize PASSED [ 80%]
200s tests/test_opt.py::test_colors_doesnt_raise_unrelated_not_colorize PASSED [ 80%]
200s tests/test_opt.py::test_colors_doesnt_raise_unrelated_colorize_dynamic PASSED [ 80%]
200s tests/test_opt.py::test_colors_doesnt_raise_unrelated_not_colorize_dynamic PASSED [ 81%]
200s tests/test_opt.py::test_colors_within_record[True] PASSED [ 81%]
200s tests/test_opt.py::test_colors_within_record[False] PASSED [ 81%]
200s tests/test_opt.py::test_colors_nested[True] PASSED [ 81%]
200s tests/test_opt.py::test_colors_nested[False] PASSED [ 81%]
200s tests/test_opt.py::test_colors_stripped_in_message_record[True] PASSED [ 81%]
200s tests/test_opt.py::test_colors_stripped_in_message_record[False] PASSED [ 81%]
200s tests/test_opt.py::test_invalid_markup_in_message[True-] PASSED [ 81%]
200s tests/test_opt.py::test_invalid_markup_in_message[True-] PASSED [ 81%]
200s tests/test_opt.py::test_invalid_markup_in_message[True-X Y] PASSED [ 81%]
200s tests/test_opt.py::test_invalid_markup_in_message[False-] PASSED [ 81%]
200s tests/test_opt.py::test_invalid_markup_in_message[False-] PASSED [ 81%]
200s tests/test_opt.py::test_invalid_markup_in_message[False-X Y] PASSED [ 81%]
200s tests/test_opt.py::test_colors_with_args[True] PASSED [ 81%]
200s tests/test_opt.py::test_colors_with_args[False] PASSED [ 81%]
200s tests/test_opt.py::test_colors_with_level[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_level[False] PASSED [ 82%]
200s tests/test_opt.py::test_colors_double_message[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_double_message[False] PASSED [ 82%]
200s tests/test_opt.py::test_colors_multiple_calls[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_multiple_calls[False] PASSED [ 82%]
200s tests/test_opt.py::test_colors_multiple_calls_level_color_changed[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_multiple_calls_level_color_changed[False] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_dynamic_formatter[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_dynamic_formatter[False] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_format_specs[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_format_specs[False] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_message_specs[True] PASSED [ 82%]
200s tests/test_opt.py::test_colors_with_message_specs[False] PASSED [ 82%]
200s tests/test_opt.py::test_colored_string_used_as_spec[True] PASSED [ 82%]
200s tests/test_opt.py::test_colored_string_used_as_spec[False] PASSED [ 83%]
200s tests/test_opt.py::test_colored_string_getitem[True] PASSED [ 83%]
200s tests/test_opt.py::test_colored_string_getitem[False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_without_formatting_args[True] PASSED [ 83%]
200s tests/test_opt.py::test_colors_without_formatting_args[False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_format[True] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_format[False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_message[True] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_message[False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_auto_indexing[True] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_auto_indexing[False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_manual_indexing[True] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_manual_indexing[False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_invalid_indexing[{} {0}-True] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_invalid_indexing[{} {0}-False] PASSED [ 83%]
200s tests/test_opt.py::test_colors_with_invalid_indexing[{1} {}-True] PASSED [ 84%]
200s tests/test_opt.py::test_colors_with_invalid_indexing[{1} {}-False] PASSED [ 84%]
200s tests/test_opt.py::test_raw PASSED [ 84%]
200s tests/test_opt.py::test_raw_with_format_function PASSED [ 84%]
200s tests/test_opt.py::test_raw_with_colors[True] PASSED [ 84%]
200s tests/test_opt.py::test_raw_with_colors[False] PASSED [ 84%]
200s tests/test_opt.py::test_args_with_colors_not_formatted_twice PASSED [ 84%]
200s tests/test_opt.py::test_level_tag_wrapping_with_colors[True] PASSED [ 84%]
200s tests/test_opt.py::test_level_tag_wrapping_with_colors[False] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-True-True] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-True-False] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-False-True] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-False-False] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-True-True] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-True-False] PASSED [ 84%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-False-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-False-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-True-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-True-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-False-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-False-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-True-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-True-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-False-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-False-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-True-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-True-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-False-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-False-False] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-True-True] PASSED [ 85%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-True-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-False-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-False-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-True-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-True-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-False-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-False-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-True-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-True-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-False-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-False-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-True-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-True-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-False-True] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-False-False] PASSED [ 86%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-True-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-True-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-False-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-False-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-True-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-True-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-False-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-False-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-True-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-True-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-False-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-False-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-True-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-True-False] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-False-True] PASSED [ 87%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-False-False] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-True-True] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-True-False] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-False-True] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-False-False] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-True-True] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-True-False] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-False-True] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-False-False] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-True-True] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-True-False] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-False-True] PASSED [ 88%]
200s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-False-False] PASSED [ 88%]
201s tests/test_opt.py::test_raw_with_record PASSED [ 88%]
201s tests/test_opt.py::test_keep_extra PASSED [ 88%]
201s tests/test_opt.py::test_before_bind PASSED [ 89%]
201s tests/test_opt.py::test_deprecated_ansi_argument PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_patch[True] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_patch[False] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_format[True] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_format[False] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_filter[True] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_filter[False] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_raw[True] PASSED [ 89%]
201s tests/test_opt.py::test_message_update_not_overridden_by_raw[False] PASSED [ 89%]
201s tests/test_opt.py::test_overridden_message_ignore_colors PASSED [ 89%]
201s tests/test_parse.py::test_parse_file PASSED [ 89%]
201s tests/test_parse.py::test_parse_fileobj PASSED [ 89%]
201s tests/test_parse.py::test_parse_pathlib PASSED [ 89%]
201s tests/test_parse.py::test_parse_string_pattern PASSED [ 89%]
201s tests/test_parse.py::test_parse_regex_pattern PASSED [ 90%]
201s tests/test_parse.py::test_parse_multiline_pattern PASSED [ 90%]
201s tests/test_parse.py::test_parse_without_group PASSED [ 90%]
201s tests/test_parse.py::test_parse_bytes PASSED [ 90%]
201s tests/test_parse.py::test_chunk[-1] PASSED [ 90%]
201s tests/test_parse.py::test_chunk[1] PASSED [ 90%]
201s tests/test_parse.py::test_chunk[65536] PASSED [ 90%]
201s tests/test_parse.py::test_positive_lookbehind_pattern PASSED [ 90%]
201s tests/test_parse.py::test_greedy_pattern PASSED [ 90%]
201s tests/test_parse.py::test_cast_dict PASSED [ 90%]
201s tests/test_parse.py::test_cast_function PASSED [ 90%]
201s tests/test_parse.py::test_cast_with_irrelevant_arg PASSED [ 90%]
201s tests/test_parse.py::test_cast_with_irrelevant_value PASSED [ 90%]
201s tests/test_parse.py::test_invalid_file[file0] PASSED [ 90%]
201s tests/test_parse.py::test_invalid_file[123] PASSED [ 90%]
201s tests/test_parse.py::test_invalid_file[dict] PASSED [ 91%]
201s tests/test_parse.py::test_invalid_pattern[pattern0] PASSED [ 91%]
201s tests/test_parse.py::test_invalid_pattern[123] PASSED [ 91%]
201s tests/test_parse.py::test_invalid_pattern[dict] PASSED [ 91%]
201s tests/test_parse.py::test_invalid_cast[cast0] PASSED [ 91%]
201s tests/test_parse.py::test_invalid_cast[123] PASSED [ 91%]
201s tests/test_patch.py::test_patch_after_add PASSED [ 91%]
201s tests/test_patch.py::test_patch_before_add PASSED [ 91%]
201s tests/test_patch.py::test_add_using_patched PASSED [ 91%]
201s tests/test_patch.py::test_not_override_parent_logger PASSED [ 91%]
201s tests/test_patch.py::test_override_previous_patched PASSED [ 91%]
201s tests/test_patch.py::test_no_conflict PASSED [ 91%]
201s tests/test_patch.py::test_override_configured PASSED [ 91%]
201s tests/test_patch.py::test_multiple_patches PASSED [ 91%]
201s tests/test_pickling.py::test_pickling_function_handler PASSED [ 91%]
201s tests/test_pickling.py::test_pickling_coroutine_function_handler PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_stream_handler[True-True] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_stream_handler[True-False] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_stream_handler[False-True] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_stream_handler[False-False] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_standard_handler FAILED [ 92%]
201s tests/test_pickling.py::test_pickling_standard_handler_root_logger_not_picklable FAILED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[1000] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[daily] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[rotation2] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[rotation3] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[200 MB] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[10:00] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[5 hours] PASSED [ 92%]
201s tests/test_pickling.py::test_pickling_file_handler_rotation[rotation_function] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_retention[1000] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_retention[retention1] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_retention[10 days] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_retention[retention_function] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_compression[zip] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_compression[gz] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_compression[tar] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_file_handler_compression[compression_function] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_no_handler PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_handler_not_serializable PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_filter_function PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_filter_name[] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_filter_name[tests] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_format_string[True] PASSED [ 93%]
201s tests/test_pickling.py::test_pickling_format_string[False] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_format_function[True] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_format_function[False] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_filter_function_not_serializable PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_format_function_not_serializable PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_bound_logger PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_patched_logger PASSED [ 94%]
201s tests/test_pickling.py::test_remove_after_pickling PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_logging_method PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_log_method PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_no_error[add] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_no_error[remove] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_no_error[catch] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_no_error[opt] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_no_error[bind] PASSED [ 94%]
201s tests/test_pickling.py::test_pickling_no_error[patch] PASSED [ 95%]
201s tests/test_pickling.py::test_pickling_no_error[level] PASSED [ 95%]
201s tests/test_pickling.py::test_pickling_no_error[disable] PASSED [ 95%]
201s tests/test_pickling.py::test_pickling_no_error[enable] PASSED [ 95%]
201s tests/test_pickling.py::test_pickling_no_error[configure] PASSED [ 95%]
201s tests/test_pickling.py::test_pickling_no_error[parse] PASSED [ 95%]
201s tests/test_pickling.py::test_pickling_no_error[exception] PASSED [ 95%]
201s tests/test_propagation.py::test_formatting PASSED [ 95%]
201s tests/test_propagation.py::test_propagate PASSED [ 95%]
201s tests/test_propagation.py::test_remove_propagation PASSED [ 95%]
201s tests/test_propagation.py::test_propagate_too_high PASSED [ 95%]
201s tests/test_propagation.py::test_exception[False] PASSED [ 95%]
201s tests/test_propagation.py::test_exception[True] PASSED [ 95%]
201s tests/test_recattr.py::test_patch_record_file PASSED [ 95%]
201s tests/test_recattr.py::test_patch_record_thread PASSED [ 95%]
201s tests/test_recattr.py::test_patch_record_process PASSED [ 96%]
201s tests/test_recattr.py::test_patch_record_exception PASSED [ 96%]
201s tests/test_recattr.py::test_level_repr PASSED [ 96%]
201s tests/test_recattr.py::test_file_repr PASSED [ 96%]
201s tests/test_recattr.py::test_thread_repr PASSED [ 96%]
201s tests/test_recattr.py::test_process_repr PASSED [ 96%]
201s tests/test_recattr.py::test_exception_repr PASSED [ 96%]
201s tests/test_remove.py::test_remove_all PASSED [ 96%]
201s tests/test_remove.py::test_remove_simple PASSED [ 96%]
201s tests/test_remove.py::test_remove_enqueue PASSED [ 96%]
201s tests/test_remove.py::test_remove_enqueue_filesink PASSED [ 96%]
201s tests/test_remove.py::test_exception_in_stop_during_remove_one PASSED [ 96%]
201s tests/test_remove.py::test_exception_in_stop_not_caught_during_remove_all PASSED [ 96%]
201s tests/test_remove.py::test_invalid_handler_id_value PASSED [ 96%]
201s tests/test_remove.py::test_invalid_handler_id_type[handler_id0] PASSED [ 96%]
201s tests/test_remove.py::test_invalid_handler_id_type[sys] PASSED [ 97%]
201s tests/test_remove.py::test_invalid_handler_id_type[handler_id2] PASSED [ 97%]
201s tests/test_remove.py::test_invalid_handler_id_type[int] PASSED [ 97%]
201s tests/test_repr.py::test_no_handler PASSED [ 97%]
201s tests/test_repr.py::test_stderr PASSED [ 97%]
201s tests/test_repr.py::test_stdout PASSED [ 97%]
201s tests/test_repr.py::test_file_object PASSED [ 97%]
201s tests/test_repr.py::test_file_str PASSED [ 97%]
201s tests/test_repr.py::test_file_pathlib PASSED [ 97%]
201s tests/test_repr.py::test_stream_object PASSED [ 97%]
201s tests/test_repr.py::test_stream_object_without_name_attr PASSED [ 97%]
201s tests/test_repr.py::test_stream_object_with_empty_name PASSED [ 97%]
201s tests/test_repr.py::test_function PASSED [ 97%]
201s tests/test_repr.py::test_callable_without_name PASSED [ 97%]
201s tests/test_repr.py::test_callable_with_empty_name PASSED [ 97%]
201s tests/test_repr.py::test_coroutine_function PASSED [ 98%]
201s tests/test_repr.py::test_coroutine_callable_without_name PASSED [ 98%]
201s tests/test_repr.py::test_coroutine_function_with_empty_name PASSED [ 98%]
201s tests/test_repr.py::test_standard_handler PASSED [ 98%]
201s tests/test_repr.py::test_multiple_handlers PASSED [ 98%]
201s tests/test_repr.py::test_handler_removed PASSED [ 98%]
201s tests/test_repr.py::test_handler_level_name PASSED [ 98%]
201s tests/test_repr.py::test_handler_level_num PASSED [ 98%]
201s tests/test_standard_handler.py::test_stream_handler PASSED [ 98%]
201s tests/test_standard_handler.py::test_file_handler PASSED [ 98%]
201s tests/test_standard_handler.py::test_null_handler PASSED [ 98%]
201s tests/test_standard_handler.py::test_extra_dict PASSED [ 98%]
201s tests/test_standard_handler.py::test_no_conflict_with_extra_dict PASSED [ 98%]
201s tests/test_standard_handler.py::test_no_exception PASSED [ 98%]
202s tests/test_standard_handler.py::test_exception PASSED [ 98%]
202s tests/test_standard_handler.py::test_exception_formatting PASSED [ 99%]
202s tests/test_standard_handler.py::test_standard_formatter[False] PASSED [ 99%]
202s tests/test_standard_handler.py::test_standard_formatter[True] PASSED [ 99%]
202s tests/test_standard_handler.py::test_standard_formatter_with_new_line[False] PASSED [ 99%]
202s tests/test_standard_handler.py::test_standard_formatter_with_new_line[True] PASSED [ 99%]
202s tests/test_standard_handler.py::test_raw_standard_formatter[False] PASSED [ 99%]
202s tests/test_standard_handler.py::test_raw_standard_formatter[True] PASSED [ 99%]
202s tests/test_standard_handler.py::test_raw_standard_formatter_with_new_line[False] PASSED [ 99%]
202s tests/test_standard_handler.py::test_raw_standard_formatter_with_new_line[True] PASSED [ 99%]
204s tests/test_threading.py::test_safe_logging PASSED [ 99%]
207s tests/test_threading.py::test_safe_adding_while_logging PASSED [ 99%]
208s tests/test_threading.py::test_safe_removing_while_logging PASSED [ 99%]
209s tests/test_threading.py::test_safe_writing_after_removing PASSED [ 99%]
213s tests/test_threading.py::test_heavily_threaded_logging PASSED [ 99%]
219s tests/test_type_hinting.py::test_mypy_import PASSED [100%]
219s
219s =================================== FAILURES ===================================
219s ________________________ test_file_sink_ascii_encoding _________________________
219s
219s tmp_path = PosixPath('/tmp/pytest-of-ubuntu/pytest-0/test_file_sink_ascii_encoding1')
219s
219s > ???
219s E assert 0 == 1
219s E + where 0 = ("-> '\\u5929'")
219s E + where = '\nTraceback (most recent call last):\n\n File "", line 198, in _run_module_as_main\n File "", line 88, in _run_code\n File "/usr/lib/python3/dist-packages/pytest/__main__.py", line 9, in \n raise SystemExit(pytest.console_main())\n File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 201, in console_main\n code = main()\n File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 175, in main\n ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config)\n File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 513, in __call__\n return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120, in _hookexec\n return self._inner_hookexec(hook_name, methods, kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 103, in _multicall\n res = hook_impl.function(*args)\n File "/usr/lib/python3/dist-packages/_pytest/main.py", line 330, in pytest_cmdline_main\n return wrap_session(config, _main)\n File "/usr/lib/python3/dist-packages/_pytest/main.py", line 283, in wrap...(hook_name, methods, kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 103, in _multicall\n res = hook_impl.function(*args)\n File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 174, in pytest_runtest_call\n item.runtest()\n File "/usr/lib/python3/dist-packages/_pytest/python.py", line 1627, in runtest\n self.ihook.pytest_pyfunc_call(pyfuncitem=self)\n File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 513, in __call__\n return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120, in _hookexec\n return self._inner_hookexec(hook_name, methods, kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 103, in _multicall\n res = hook_impl.function(*args)\n File "/usr/lib/python3/dist-packages/_pytest/python.py", line 159, in pytest_pyfunc_call\n result = testfunction(**testargs)\n\n> File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/test_exceptions_catch.py", line 73, in test_file_sink_ascii_encoding\n "\\u5929" * a\n\nTypeError: can\'t multiply sequence by non-int of type \'str\'\n'.count
219s
219s tests/test_exceptions_catch.py:80: AssertionError
219s _________________________ test_file_sink_utf8_encoding _________________________
219s
219s tmp_path = PosixPath('/tmp/pytest-of-ubuntu/pytest-0/test_file_sink_utf8_encoding1')
219s
219s def test_file_sink_utf8_encoding(tmp_path):
219s file = tmp_path / "test.log"
219s logger.add(file, format="", encoding="utf8", errors="strict", catch=False)
219s a = "天"
219s
219s try:
219s "天" * a
219s except Exception:
219s logger.exception("")
219s
219s logger.remove()
219s result = file.read_text("utf8")
219s assert result.count('"天" * a') == 1
219s > assert result.count("└ '天'") == 1
219s E assert 0 == 1
219s E + where 0 = ("└ '天'")
219s E + where = '\nTraceback (most recent call last):\n\n File "", line 198, in _run_module_as_main\n File "", line 88, in _run_code\n File "/usr/lib/python3/dist-packages/pytest/__main__.py", line 9, in \n raise SystemExit(pytest.console_main())\n File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 201, in console_main\n code = main()\n File "/usr/lib/python3/dist-packages/_pytest/config/__init__.py", line 175, in main\n ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config)\n File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 513, in __call__\n return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120, in _hookexec\n return self._inner_hookexec(hook_name, methods, kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 103, in _multicall\n res = hook_impl.function(*args)\n File "/usr/lib/python3/dist-packages/_pytest/main.py", line 330, in pytest_cmdline_main\n return wrap_session(config, _main)\n File "/usr/lib/python3/dist-packages/_pytest/main.py", line 283, in wrap...ookexec(hook_name, methods, kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 103, in _multicall\n res = hook_impl.function(*args)\n File "/usr/lib/python3/dist-packages/_pytest/runner.py", line 174, in pytest_runtest_call\n item.runtest()\n File "/usr/lib/python3/dist-packages/_pytest/python.py", line 1627, in runtest\n self.ihook.pytest_pyfunc_call(pyfuncitem=self)\n File "/usr/lib/python3/dist-packages/pluggy/_hooks.py", line 513, in __call__\n return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_manager.py", line 120, in _hookexec\n return self._inner_hookexec(hook_name, methods, kwargs, firstresult)\n File "/usr/lib/python3/dist-packages/pluggy/_callers.py", line 103, in _multicall\n res = hook_impl.function(*args)\n File "/usr/lib/python3/dist-packages/_pytest/python.py", line 159, in pytest_pyfunc_call\n result = testfunction(**testargs)\n\n> File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/test_exceptions_catch.py", line 89, in test_file_sink_utf8_encoding\n "天" * a\n\nTypeError: can\'t multiply sequence by non-int of type \'str\'\n'.count
219s
219s tests/test_exceptions_catch.py:96: AssertionError
219s ________________________ test_diagnose[assertion_error] ________________________
219s
219s filename = 'assertion_error'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'assertion_error'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...1m60\x1b[0m\n' == '\n\x1b[33m\x...1m60\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1massertion_error.py[0m", line [33m14[0m, in [35m[0m
219s E [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (7 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error.py[0m", line [33m14[0m, in [35m[0m
219s [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error.py[0m", line [33m10[0m, in [35mfoo[0m
219s [35m[1massert[0m [1mabc[0m [35m[1m>[0m [34m[1m10[0m [35m[1mand[0m [1mxyz[0m [35m[1m==[0m [34m[1m60[0m
219s
219s [31m[1mAssertionError[0m: [35m[1massert[0m [1mabc[0m [35m[1m>[0m [34m[1m10[0m [35m[1mand[0m [1mxyz[0m [35m[1m==[0m [34m[1m60[0m
219s
219s ____________________ test_diagnose[assertion_error_custom] _____________________
219s
219s filename = 'assertion_error_custom'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'assertion_error_custom'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...iled\x1b[0m\n' == '\n\x1b[33m\x...iled\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1massertion_error_custom.py[0m", line [33m14[0m, in [35m[0m
219s E [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (7 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_custom.py[0m", line [33m14[0m, in [35m[0m
219s [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_custom.py[0m", line [33m10[0m, in [35mfoo[0m
219s [35m[1massert[0m [1mabc[0m [35m[1m>[0m [34m[1m10[0m [35m[1mand[0m [1mxyz[0m [35m[1m==[0m [34m[1m60[0m[1m,[0m [36m"Foo assertion failed"[0m
219s
219s [31m[1mAssertionError[0m:[1m Foo assertion failed[0m
219s
219s ___________________ test_diagnose[assertion_error_in_string] ___________________
219s
219s filename = 'assertion_error_in_string'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'assertion_error_in_string'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...rror\x1b[0m\n' == '\n\x1b[33m\x...rror\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1massertion_error_in_string.py[0m", line [33m14[0m, in [35m[0m
219s E [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (7 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_in_string.py[0m", line [33m14[0m, in [35m[0m
219s [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_in_string.py[0m", line [33m10[0m, in [35mfoo[0m
219s [1mexec[0m[1m([0m[36m"assert abc > 10 and xyz == 60"[0m[1m)[0m
219s
219s File "", line 1, in
219s
219s [31m[1mAssertionError[0m
219s
219s __________________________ test_diagnose[attributes] ___________________________
219s
219s filename = 'attributes'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'attributes'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert "\n\x1b[33m\x...int'\x1b[0m\n" == "\n\x1b[33m\x...int'\x1b[0m\n"
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mattributes.py[0m", line [33m26[0m, in [35m[0m
219s E [1mfoo[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (14 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mattributes.py[0m", line [33m26[0m, in [35m[0m
219s [1mfoo[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mattributes.py[0m", line [33m22[0m, in [35mfoo[0m
219s [35m[1m...[0m [35m[1m+[0m [34m[1m1[0m [35m[1m+[0m [1mbar[0m[1m([0m[1ma[0m[1m)[0m[35m[1m.[0m[1mb[0m [35m[1m+[0m [1ma[0m[35m[1m.[0m[1mforbidden[0m [35m[1m+[0m [1ma[0m[35m[1m.[0m[1mnope[0m[35m[1m.[0m[1ma[0m [35m[1m+[0m [1mx[0m[35m[1m.[0m[1m__bool__[0m [35m[1mor[0m [1ma[0m[35m[1m.[0m [1mb[0m [35m[1m.[0m [1misdigit[0m[1m([0m[1m)[0m [35m[1mand[0m [34m[1m.3[0m [35m[1m+[0m [35m[1m...[0m
219s
219s [31m[1mTypeError[0m:[1m unsupported operand type(s) for +: 'ellipsis' and 'int'[0m
219s
219s _________________________ test_diagnose[chained_both] __________________________
219s
219s filename = 'chained_both'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'chained_both'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...rror\x1b[0m\n' == '\n\x1b[33m\x...rror\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m15[0m, in [35mcause[0m
219s E [1mdiv[0m[1m([0m[1mx[0m[1m,[0m [1my[0m[1m)[0m
219s E - [36m│ │ └ [0m[36m[1m0[0m...
219s E
219s E ...Full output truncated (41 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m15[0m, in [35mcause[0m
219s [1mdiv[0m[1m([0m[1mx[0m[1m,[0m [1my[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m10[0m, in [35mdiv[0m
219s [1mx[0m [35m[1m/[0m [1my[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s
219s [1mDuring handling of the above exception, another exception occurred:[0m
219s
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m22[0m, in [35mcontext[0m
219s [1mcause[0m[1m([0m[1mx[0m[1m,[0m [1my[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m17[0m, in [35mcause[0m
219s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Division error"[0m[1m)[0m
219s
219s [31m[1mValueError[0m:[1m Division error[0m
219s
219s
219s [1mThe above exception was the direct cause of the following exception:[0m
219s
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m28[0m, in [35m[0m
219s [1mcontext[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m24[0m, in [35mcontext[0m
219s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Cause error"[0m[1m)[0m [35m[1mfrom[0m [1me[0m
219s
219s [31m[1mValueError[0m:[1m Cause error[0m
219s
219s ___________________________ test_diagnose[encoding] ____________________________
219s
219s filename = 'encoding'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'encoding'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert "\n\x1b[33m\x...str'\x1b[0m\n" == "\n\x1b[33m\x...str'\x1b[0m\n"
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m18[0m, in [35m[0m
219s E [1mdiv[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (10 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m18[0m, in [35m[0m
219s [1mdiv[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m14[0m, in [35mdiv[0m
219s [35m[1mreturn[0m [1m_deep[0m[1m([0m[36m"天"[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m10[0m, in [35m_deep[0m
219s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mval[0m
219s
219s [31m[1mTypeError[0m:[1m unsupported operand type(s) for /: 'int' and 'str'[0m
219s
219s ________________________ test_diagnose[global_variable] ________________________
219s
219s filename = 'global_variable'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'global_variable'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mglobal_variable.py[0m", line [33m19[0m, in [35m[0m
219s E [1mfunc[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (7 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mglobal_variable.py[0m", line [33m19[0m, in [35m[0m
219s [1mfunc[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mglobal_variable.py[0m", line [33m15[0m, in [35mfunc[0m
219s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m [35m[1m+[0m [1mfoo[0m [35m[1m+[0m [1mbar[0m [35m[1m+[0m [36m[1mFalse[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s _______________________ test_diagnose[indentation_error] _______________________
219s
219s filename = 'indentation_error'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'indentation_error'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...dent\x1b[0m\n' == '\n\x1b[33m\x...dent\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mindentation_error.py[0m", line [33m17[0m, in [35m[0m
219s E [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
219s E - [36m └ [0m[36m[1m'\nif True:\n a = 5\n print("foobar") #intentional faulty indentation here.\n b = 7\n'[0m...
219s E
219s E ...Full output truncated (5 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mindentation_error.py[0m", line [33m17[0m, in [35m[0m
219s [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
219s
219s File "", line 4
219s print("foobar") #intentional faulty indentation here.
219s
219s [31m[1mIndentationError[0m:[1m unexpected indent[0m
219s
219s _______________________ test_diagnose[keyword_argument] ________________________
219s
219s filename = 'keyword_argument'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'keyword_argument'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m16[0m, in [35m[0m
219s E [1mf[0m[1m([0m[1mx[0m[35m[1m=[0m[1my[0m[1m)[0m
219s E - [36m│ └ [0m[36m[1m0[0m...
219s E
219s E ...Full output truncated (20 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m16[0m, in [35m[0m
219s [1mf[0m[1m([0m[1mx[0m[35m[1m=[0m[1my[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m10[0m, in [35mf[0m
219s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mx[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m21[0m, in [35m[0m
219s [1mf[0m[1m([0m[1mx[0m[35m[1m=[0m[1mx[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m10[0m, in [35mf[0m
219s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mx[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s ________________________ test_diagnose[multilines_repr] ________________________
219s
219s filename = 'multilines_repr'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'multilines_repr'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert "\n\x1b[33m\x... 'A'\x1b[0m\n" == "\n\x1b[33m\x... 'A'\x1b[0m\n"
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mmultilines_repr.py[0m", line [33m20[0m, in [35m[0m
219s E [1mmultiline[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (11 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mmultilines_repr.py[0m", line [33m20[0m, in [35m[0m
219s [1mmultiline[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mmultilines_repr.py[0m", line [33m16[0m, in [35mmultiline[0m
219s [1ma[0m [35m[1m+[0m [1mb[0m
219s
219s [31m[1mTypeError[0m:[1m unsupported operand type(s) for +: 'A' and 'A'[0m
219s
219s _______________________ test_diagnose[no_error_message] ________________________
219s
219s filename = 'no_error_message'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'no_error_message'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...rror\x1b[0m\n' == '\n\x1b[33m\x...rror\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m18[0m, in [35m[0m
219s E [1mbar[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (9 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m18[0m, in [35m[0m
219s [1mbar[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m14[0m, in [35mbar[0m
219s [1mfoo[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m10[0m, in [35mfoo[0m
219s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m""[0m[1m)[0m
219s
219s [31m[1mValueError[0m
219s
219s __________________________ test_diagnose[parenthesis] __________________________
219s
219s filename = 'parenthesis'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'parenthesis'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m47[0m, in [35m[0m
219s E [1me[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (39 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m47[0m, in [35m[0m
219s [1me[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m43[0m, in [35me[0m
219s [1m)[0m [35m[1m+[0m [1md[0m[1m([0m[1m([0m[1m)[0m[1m)[0m [35m[1m+[0m [1ma[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m36[0m, in [35md[0m
219s [1m;[0m [1mz[0m [35m[1m=[0m [1m([0m[1mx[0m [35m[1m*[0m [1my[0m[1m)[0m[1m;[0m [1my[0m [35m[1m=[0m [1m([0m[1mj[0m [35m[1mor[0m [1mxyz[0m[35m[1m.[0m[1mval[0m [35m[1m*[0m [1mc[0m[1m([0m[1m)[0m \
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m28[0m, in [35mc[0m
219s [1mx[0m[35m[1m.[0m[1mval[0m [35m[1m+=[0m [34m[1m456[0m [35m[1mand[0m [1mb[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m22[0m, in [35mb[0m
219s [1mfoo[0m[1m[[0m[1m([0m[36m"baz"[0m[1m)[0m[1m][0m [35m[1m=[0m [1mbar[0m[1m([0m[1m)[0m [35m[1m+[0m [1m([0m[1ma[0m[1m([0m[34m[1m5[0m[1m,[0m [1mbaz[0m[1m)[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m17[0m, in [35ma[0m
219s [1m([0m[1ma[0m[1m,[0m [1mb[0m[1m,[0m [1mx[0m[35m[1m.[0m[1mval[0m[1m,[0m [1m)[0m [35m[1m=[0m [34m[1m12[0m[1m,[0m [34m[1m15[0m [35m[1m/[0m [1mc[0m[1m,[0m [34m[1m17[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s _______________________ test_diagnose[source_multilines] _______________________
219s
219s filename = 'source_multilines'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'source_multilines'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m39[0m, in [35m[0m
219s E [1mbug_1[0m[1m([0m[34m[1m10[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (45 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m39[0m, in [35m[0m
219s [1mbug_1[0m[1m([0m[34m[1m10[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m12[0m, in [35mbug_1[0m
219s """ + n / 0)
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m45[0m, in [35m[0m
219s [1mbug_2[0m[1m([0m[34m[1m1[0m[1m,[0m [1mstring[0m[1m,[0m [34m[1m3[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m16[0m, in [35mbug_2[0m
219s [35m[1mreturn[0m [1m([0m[34m[1m1[0m [35m[1m/[0m [34m[1m0[0m [35m[1m+[0m [1ma[0m [35m[1m+[0m [1mb[0m [35m[1m+[0m \
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m51[0m, in [35m[0m
219s [1mbug_3[0m[1m([0m[1mstring[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m22[0m, in [35mbug_3[0m
219s [1m,[0m [1mstring[0m[1m,[0m [34m[1m20[0m [35m[1m/[0m [34m[1m0[0m[1m)[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m57[0m, in [35m[0m
219s [1mbug_4[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m29[0m, in [35mbug_4[0m
219s [36m"bar"[0m[1m:[0m [1ma[0m [35m[1m/[0m [1mb[0m[1m,[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s ________________________ test_diagnose[source_strings] _________________________
219s
219s filename = 'source_strings'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'source_strings'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert "\n\x1b[33m\x...tes'\x1b[0m\n" == "\n\x1b[33m\x...tes'\x1b[0m\n"
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msource_strings.py[0m", line [33m13[0m, in [35m[0m
219s E [1ma[0m [35m[1m+[0m [36mb"prefix"[0m [35m[1m+[0m [36m'single'[0m [35m[1m+[0m [36m"""triple"""[0m [35m[1m+[0m [34m[1m1[0m [35m[1m+[0m [1mb[0m
219s E - [36m│ └ [0m[36m[1m0[0m...
219s E
219s E ...Full output truncated (3 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_strings.py[0m", line [33m13[0m, in [35m[0m
219s [1ma[0m [35m[1m+[0m [36mb"prefix"[0m [35m[1m+[0m [36m'single'[0m [35m[1m+[0m [36m"""triple"""[0m [35m[1m+[0m [34m[1m1[0m [35m[1m+[0m [1mb[0m
219s
219s [31m[1mTypeError[0m:[1m unsupported operand type(s) for +: 'int' and 'bytes'[0m
219s
219s _________________________ test_diagnose[syntax_error] __________________________
219s
219s filename = 'syntax_error'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'syntax_error'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ntax\x1b[0m\n' == '\n\x1b[33m\x...ntax\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msyntax_error.py[0m", line [33m17[0m, in [35m[0m
219s E [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
219s E - [36m └ [0m[36m[1m'\nif True:\n a = 5\n b = 7 *\n'[0m...
219s E
219s E ...Full output truncated (6 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_error.py[0m", line [33m17[0m, in [35m[0m
219s [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
219s
219s File "", line 4
219s b = 7 *
219s ^
219s
219s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
219s
219s ______________________ test_diagnose[syntax_highlighting] ______________________
219s
219s filename = 'syntax_highlighting'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'syntax_highlighting'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m31[0m, in [35m[0m
219s E [1me[0m[1m([0m[34m[1m0[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (25 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m31[0m, in [35m[0m
219s [1me[0m[1m([0m[34m[1m0[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m27[0m, in [35me[0m
219s [1mx[0m [35m[1min[0m [1m[[0m[34m[1m1[0m[1m][0m[1m,[0m [1mx[0m [35m[1min[0m [1m([0m[34m[1m1[0m[1m,[0m[1m)[0m[1m,[0m [1mx[0m [35m[1min[0m [1m{[0m[34m[1m1[0m[1m}[0m[1m,[0m [1mx[0m [35m[1min[0m [1m{[0m[34m[1m1[0m[1m:[0m [34m[1m1[0m[1m}[0m[1m,[0m [1md[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m23[0m, in [35md[0m
219s [1mmin[0m[1m([0m[1mrange[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m10[0m[1m)[0m[1m)[0m[1m,[0m [1mlist[0m[1m([0m[1m)[0m[1m,[0m [1mdict[0m[1m([0m[1m)[0m[1m,[0m [1mc[0m[1m([0m[1m)[0m[1m,[0m [35m[1m...[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m19[0m, in [35mc[0m
219s [34m[1m1[0m[1m,[0m [34m[1m2.5[0m[1m,[0m [34m[1m3.0[0m[1m,[0m [34m[1m0.4[0m[1m,[0m [36m"str"[0m[1m,[0m [36mr"rrr"[0m[1m,[0m [36mrb"binary"[0m[1m,[0m [1mb[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m15[0m, in [35mb[0m
219s [1ma[0m[1m([0m[1m)[0m [35m[1mor[0m [36m[1mFalse[0m [35m[1m==[0m [36m[1mNone[0m [35m[1m!=[0m [36m[1mTrue[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m11[0m, in [35ma[0m
219s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m [35m[1m+[0m [34m[1m1[0m [35m[1m*[0m [34m[1m0[0m [35m[1m-[0m [34m[1m1[0m [35m[1m%[0m [34m[1m0[0m [35m[1m//[0m [34m[1m1[0m[35m[1m**[0m[34m[1m0[0m [35m[1m@[0m [34m[1m1[0m [30m[1m# Error[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s __________________________ test_diagnose[truncating] ___________________________
219s
219s filename = 'truncating'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'truncating'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert "\n\x1b[33m\x...str'\x1b[0m\n" == "\n\x1b[33m\x...str'\x1b[0m\n"
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mtruncating.py[0m", line [33m15[0m, in [35m[0m
219s E [1mdiv[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (6 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mtruncating.py[0m", line [33m15[0m, in [35m[0m
219s [1mdiv[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mtruncating.py[0m", line [33m11[0m, in [35mdiv[0m
219s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mvar[0m
219s
219s [31m[1mTypeError[0m:[1m unsupported operand type(s) for /: 'int' and 'str'[0m
219s
219s ______________________ test_diagnose[unprintable_object] _______________________
219s
219s filename = 'unprintable_object'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_error",
219s "assertion_error_custom",
219s "assertion_error_in_string",
219s "attributes",
219s "chained_both",
219s "encoding",
219s "global_variable",
219s "indentation_error",
219s "keyword_argument",
219s "multilines_repr",
219s "no_error_message",
219s "parenthesis",
219s "source_multilines",
219s "source_strings",
219s "syntax_error",
219s "syntax_highlighting",
219s "truncating",
219s "unprintable_object",
219s ],
219s )
219s def test_diagnose(filename):
219s > compare_exception("diagnose", filename)
219s
219s tests/test_exceptions_formatting.py:174:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'diagnose', filename = 'unprintable_object'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1munprintable_object.py[0m", line [33m16[0m, in [35m[0m
219s E [1mobj[0m [35m[1m+[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s E - [36m└ [0m[36m[1m[0m
219s E
219s E [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1munprintable_object.py[0m", line [33m16[0m, in [35m[0m
219s [1mobj[0m [35m[1m+[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s _________________ test_exception_ownership[assertion_from_lib] _________________
219s
219s filename = 'assertion_from_lib'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'assertion_from_lib'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ertionError\n' == '\n\x1b[33m\x...ertionError\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m20[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (51 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m20[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
219s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
219s assert x == y
219s
219s [31m[1mAssertionError[0m: [35m[1massert[0m [1mx[0m [35m[1m==[0m [1my[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
219s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
219s assert x == y
219s
219s [31m[1mAssertionError[0m: [35m[1massert[0m [1mx[0m [35m[1m==[0m [1my[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m22[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
219s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
219s assert x == y
219s [31m[1mAssertionError[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
219s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
219s assert x == y
219s [31m[1mAssertionError[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/assertion_from_lib.py", line 15, in test
219s assertionerror(a, b)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
219s assert x == y
219s AssertionError
219s
219s ________________ test_exception_ownership[assertion_from_local] ________________
219s
219s filename = 'assertion_from_local'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'assertion_from_local'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ertionError\n' == '\n\x1b[33m\x...ertionError\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m20[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (33 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m20[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
219s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
219s
219s [31m[1mAssertionError[0m: [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
219s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
219s
219s [31m[1mAssertionError[0m: [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m22[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
219s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
219s [31m[1mAssertionError[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
219s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
219s [31m[1mAssertionError[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/assertion_from_local.py", line 15, in test
219s assert a == b
219s AssertionError
219s
219s ______________________ test_exception_ownership[callback] ______________________
219s
219s filename = 'callback'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'callback'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m22[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (77 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m22[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m24[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/callback.py", line 17, in test
219s callme(callback)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/callback.py", line 14, in callback
219s divide(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s ZeroDivisionError: division by zero
219s
219s __________________ test_exception_ownership[catch_decorator] ___________________
219s
219s filename = 'catch_decorator'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'catch_decorator'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m20[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (61 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m20[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mfoo[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mfoo[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m22[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mfoo[0m[1m([0m[1m)[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mfoo[0m[1m([0m[1m)[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/catch_decorator.py", line 17, in test
219s foo()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/catch_decorator.py", line 15, in foo
219s divide(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s ZeroDivisionError: division by zero
219s
219s ______________ test_exception_ownership[catch_decorator_from_lib] ______________
219s
219s filename = 'catch_decorator_from_lib'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'catch_decorator_from_lib'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m20[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (68 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m20[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m22[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m17[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
219s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/catch_decorator_from_lib.py", line 15, in callback
219s divide(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s ZeroDivisionError: division by zero
219s
219s _________________ test_exception_ownership[decorated_callback] _________________
219s
219s filename = 'decorated_callback'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'decorated_callback'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m21[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (54 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m21[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m18[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
219s [1ma[0m [35m[1m/[0m [1mb[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
219s [1ma[0m [35m[1m/[0m [1mb[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m23[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m18[0m, in [35mtest[0m
219s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
219s [1ma[0m [35m[1m/[0m [1mb[0m
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
219s [1ma[0m [35m[1m/[0m [1mb[0m
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
219s callback()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/decorated_callback.py", line 16, in callback
219s a / b
219s ZeroDivisionError: division by zero
219s
219s _______________________ test_exception_ownership[direct] _______________________
219s
219s filename = 'direct'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'direct'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m19[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (47 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m19[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m21[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/direct.py", line 14, in test
219s divide(10, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s ZeroDivisionError: division by zero
219s
219s ______________________ test_exception_ownership[indirect] ______________________
219s
219s filename = 'indirect'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'indirect'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m19[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (63 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m19[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
219s divide(a, b)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
219s divide(a, b)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m21[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
219s divide(a, b)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
219s divide(a, b)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/indirect.py", line 14, in test
219s divide_indirect(10, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
219s divide(a, b)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s ZeroDivisionError: division by zero
219s
219s _____________________ test_exception_ownership[string_lib] _____________________
219s
219s filename = 'string_lib'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'string_lib'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m19[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (62 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m19[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexecute[0m[1m([0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
219s exec("divide(1, 0)")
219s File "", line 1, in
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexecute[0m[1m([0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
219s exec("divide(1, 0)")
219s File "", line 1, in
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m21[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexecute[0m[1m([0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
219s exec("divide(1, 0)")
219s File "", line 1, in
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexecute[0m[1m([0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
219s exec("divide(1, 0)")
219s File "", line 1, in
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/string_lib.py", line 14, in test
219s execute()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
219s exec("divide(1, 0)")
219s File "", line 1, in
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
219s x / y
219s ZeroDivisionError: division by zero
219s
219s ___________________ test_exception_ownership[string_source] ____________________
219s
219s filename = 'string_source'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'string_source'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m19[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (48 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m19[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
219s
219s File "", line 1, in
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
219s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
219s
219s File "", line 1, in
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
219s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m21[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
219s File "", line 1, in
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
219s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
219s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
219s File "", line 1, in
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
219s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/string_source.py", line 14, in test
219s exec("foo()")
219s File "", line 1, in
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/string_source.py", line 11, in foo
219s 1 / 0
219s ZeroDivisionError: division by zero
219s
219s ____________________ test_exception_ownership[syntaxerror] _____________________
219s
219s filename = 'syntaxerror'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertion_from_lib",
219s "assertion_from_local",
219s "callback",
219s "catch_decorator",
219s "catch_decorator_from_lib",
219s "decorated_callback",
219s "direct",
219s "indirect",
219s "string_lib",
219s "string_source",
219s "syntaxerror",
219s ],
219s )
219s def test_exception_ownership(filename):
219s > compare_exception("ownership", filename)
219s
219s tests/test_exceptions_formatting.py:194:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'ownership', filename = 'syntaxerror'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...alid syntax\n' == '\n\x1b[33m\x...alid syntax\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m19[0m, in [35m[0m
219s E [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (58 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m19[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mTrue[0m[1m)[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
219s [1msyntaxerror[0m[1m([0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
219s exec("foo =")
219s File "", line 1
219s foo =
219s ^
219s
219s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
219s [1msyntaxerror[0m[1m([0m[1m)[0m
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
219s exec("foo =")
219s File "", line 1
219s foo =
219s ^
219s
219s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m21[0m, in [35m[0m
219s [1mtest[0m[1m([0m[1mbacktrace[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mcolorize[0m[35m[1m=[0m[36m[1mTrue[0m[1m,[0m [1mdiagnose[0m[35m[1m=[0m[36m[1mFalse[0m[1m)[0m
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
219s [1msyntaxerror[0m[1m([0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
219s exec("foo =")
219s File "", line 1
219s foo =
219s ^
219s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
219s
219s [33m[1mTraceback (most recent call last):[0m
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
219s [1msyntaxerror[0m[1m([0m[1m)[0m
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
219s exec("foo =")
219s File "", line 1
219s foo =
219s ^
219s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/syntaxerror.py", line 14, in test
219s syntaxerror()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
219s exec("foo =")
219s File "", line 1
219s foo =
219s ^
219s SyntaxError: invalid syntax
219s
219s ____________ test_exception_others[exception_formatting_coroutine] _____________
219s
219s filename = 'exception_formatting_coroutine'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'exception_formatting_coroutine'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
219s E f.send(None)
219s E File "tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
219s E a / b...
219s E
219s E ...Full output truncated (36 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
219s f.send(None)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
219s f.send(None)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
219s f.send(None)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
219s f.send(None)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s _____________ test_exception_others[exception_formatting_function] _____________
219s
219s filename = 'exception_formatting_function'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'exception_formatting_function'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/exception_formatting_function.py", line 17, in
219s E a(1, 0)
219s E File "tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
219s E a / b...
219s E
219s E ...Full output truncated (34 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
219s a(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
219s a(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
219s a(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
219s a(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s ____________ test_exception_others[exception_formatting_generator] _____________
219s
219s filename = 'exception_formatting_generator'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'exception_formatting_generator'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
219s E next(f)
219s E File "tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
219s E yield a / b...
219s E
219s E ...Full output truncated (34 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
219s next(f)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
219s yield a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
219s next(f)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
219s yield a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
219s next(f)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
219s yield a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
219s next(f)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
219s yield a / b
219s
219s ZeroDivisionError: division by zero
219s
219s _________________ test_exception_others[exception_in_property] _________________
219s
219s filename = 'exception_in_property'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'exception_in_property'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E
219s E File "tests/exceptions/source/others/exception_in_property.py", line 22, in
219s E value = a.value
219s E - │ └ ...
219s E
219s E ...Full output truncated (6 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_in_property.py", line 22, in
219s value = a.value
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/exception_in_property.py", line 13, in value
219s 1 / 0
219s
219s ZeroDivisionError: division by zero
219s
219s __________________ test_exception_others[nested_with_reraise] __________________
219s
219s filename = 'nested_with_reraise'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'nested_with_reraise'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...nValueError\n' == '\nTraceback ...nValueError\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s E f = foo(x, y)
219s E File "tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s E a / b...
219s E
219s E ...Full output truncated (148 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
219s baz()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
219s bar(1, 0)
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
219s baz()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
219s bar(1, 0)
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s ZeroDivisionError: division by zero
219s
219s The above exception was the direct cause of the following exception:
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
219s bar(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
219s raise ValueError from e
219s ValueError
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s
219s The above exception was the direct cause of the following exception:
219s
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
219s bar(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
219s raise ValueError from e
219s
219s ValueError
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s ZeroDivisionError: division by zero
219s
219s The above exception was the direct cause of the following exception:
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
219s baz()
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
219s bar(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
219s raise ValueError from e
219s ValueError
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
219s f = foo(x, y)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s
219s The above exception was the direct cause of the following exception:
219s
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
219s baz()
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
219s bar(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
219s raise ValueError from e
219s
219s ValueError
219s
219s __________________ test_exception_others[sys_tracebacklimit] ___________________
219s
219s filename = 'sys_tracebacklimit'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'sys_tracebacklimit'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
219s E g()
219s E File "tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
219s E h()...
219s E
219s E ...Full output truncated (70 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
219s g()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
219s h()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
219s i()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
219s j(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
219s g()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
219s h()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
219s i()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
219s j(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
219s g()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
219s h()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
219s i()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
219s j(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
219s g()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
219s h()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
219s i()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
219s j(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s ________________ test_exception_others[sys_tracebacklimit_none] ________________
219s
219s filename = 'sys_tracebacklimit_none'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'sys_tracebacklimit_none'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
219s E a()
219s E File "tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
219s E b()...
219s E
219s E ...Full output truncated (142 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
219s a()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
219s b()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
219s c()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
219s d()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
219s e()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
219s f()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
219s g()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
219s h()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
219s i()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
219s j(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
219s a()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
219s b()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
219s c()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
219s d()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
219s e()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
219s f()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
219s g()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
219s h()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
219s i()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
219s j(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
219s a()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
219s b()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
219s c()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
219s d()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
219s e()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
219s f()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
219s g()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
219s h()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
219s i()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
219s j(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
219s a()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
219s b()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
219s c()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
219s d()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
219s e()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
219s f()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
219s g()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
219s h()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
219s i()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
219s j(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s _______________ test_exception_others[sys_tracebacklimit_unset] ________________
219s
219s filename = 'sys_tracebacklimit_unset'
219s
219s @pytest.mark.parametrize(
219s "filename",
219s [
219s "assertionerror_without_traceback",
219s "catch_as_context_manager",
219s "catch_as_decorator_with_parentheses",
219s "catch_as_decorator_without_parentheses",
219s "catch_as_function",
219s "catch_message",
219s "exception_formatting_coroutine",
219s "exception_formatting_function",
219s "exception_formatting_generator",
219s "exception_in_property",
219s "handler_formatting_with_context_manager",
219s "handler_formatting_with_decorator",
219s "level_name",
219s "level_number",
219s "message_formatting_with_context_manager",
219s "message_formatting_with_decorator",
219s "nested_with_reraise",
219s "syntaxerror_without_traceback",
219s "sys_tracebacklimit",
219s "sys_tracebacklimit_negative",
219s "sys_tracebacklimit_none",
219s "sys_tracebacklimit_unset",
219s "zerodivisionerror_without_traceback",
219s ],
219s )
219s def test_exception_others(filename):
219s > compare_exception("others", filename)
219s
219s tests/test_exceptions_formatting.py:226:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'others', filename = 'sys_tracebacklimit_unset'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
219s E a()
219s E File "tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
219s E b()...
219s E
219s E ...Full output truncated (142 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
219s a()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
219s b()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
219s c()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
219s d()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
219s e()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
219s f()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
219s g()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
219s h()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
219s i()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
219s j(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
219s a()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
219s b()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
219s c()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
219s d()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
219s e()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
219s f()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
219s g()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
219s h()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
219s i()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
219s j(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
219s a()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
219s b()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
219s c()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
219s d()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
219s e()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
219s f()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
219s g()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
219s h()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
219s i()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
219s j(1, 0)
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
219s a / b
219s ZeroDivisionError: division by zero
219s
219s Traceback (most recent call last):
219s
219s > File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
219s a()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
219s b()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
219s c()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
219s d()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
219s e()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
219s f()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
219s g()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
219s h()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
219s i()
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
219s j(1, 0)
219s
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
219s a / b
219s
219s ZeroDivisionError: division by zero
219s
219s __________ test_exception_modern[type_hints-minimum_python_version0] ___________
219s
219s filename = 'type_hints', minimum_python_version = (3, 6)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'type_hints'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m23[0m, in [35m[0m
219s E [1mmain[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (16 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m23[0m, in [35m[0m
219s [1mmain[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m19[0m, in [35mmain[0m
219s [1mbar[0m[1m:[0m [1mName[0m [35m[1m=[0m [1mfoo[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m2[0m[1m,[0m [34m[1m3[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m15[0m, in [35mfoo[0m
219s [35m[1mdef[0m [1mfoo[0m[1m([0m[1ma[0m[1m:[0m [1mint[0m[1m,[0m [1mb[0m[1m:[0m [1mUnion[0m[1m[[0m[1mName[0m[1m,[0m [1mfloat[0m[1m][0m[1m,[0m [1mc[0m[1m:[0m [36m"Name"[0m[1m)[0m [35m[1m->[0m [1mT[0m[1m:[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s ___ test_exception_modern[positional_only_argument-minimum_python_version1] ____
219s
219s filename = 'positional_only_argument', minimum_python_version = (3, 8)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'positional_only_argument'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m23[0m, in [35m[0m
219s E [1mmain[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (14 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m23[0m, in [35m[0m
219s [1mmain[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m19[0m, in [35mmain[0m
219s [1mfoo[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m2[0m[1m,[0m [1mc[0m[35m[1m=[0m[34m[1m3[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m15[0m, in [35mfoo[0m
219s [35m[1mdef[0m [1mfoo[0m[1m([0m[1ma[0m[1m,[0m [35m[1m/[0m[1m,[0m [1mb[0m[1m,[0m [35m[1m*[0m[1m,[0m [1mc[0m[1m,[0m [35m[1m**[0m[1md[0m[1m)[0m[1m:[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s ________ test_exception_modern[walrus_operator-minimum_python_version2] ________
219s
219s filename = 'walrus_operator', minimum_python_version = (3, 8)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'walrus_operator'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E > File "[32mtests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m25[0m, in [35m[0m
219s E [1mmain[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (10 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m25[0m, in [35m[0m
219s [1mmain[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m19[0m, in [35mmain[0m
219s [1m([0m[1mwalrus[0m [35m[1m:=[0m [1mfoo[0m[1m([0m[1m)[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m8[0m, in [35mfoo[0m
219s [35m[1mif[0m [1ma[0m [35m[1m:=[0m [36m"a"[0m [35m[1m+[0m [1m([0m[1mx[0m[35m[1m:=[0m[34m[1m1[0m[35m[1m/[0m[34m[1m0[0m[1m)[0m[1m:[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s ________ test_exception_modern[match_statement-minimum_python_version3] ________
219s
219s filename = 'match_statement', minimum_python_version = (3, 10)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'match_statement'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m21[0m, in [35m[0m
219s E [1mmatch[0m[1m([0m[34m[1m1[0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (14 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m21[0m, in [35m[0m
219s [1mmatch[0m[1m([0m[34m[1m1[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m18[0m, in [35mmatch[0m
219s [1mcase[0m [1my[0m[1m:[0m [1mcase[0m[1m([0m[1mx[0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m11[0m, in [35mcase[0m
219s [1mmatch[0m [1my[0m [35m[1m/[0m [34m[1m0[0m[1m:[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s _____ test_exception_modern[exception_group_catch-minimum_python_version4] _____
219s
219s filename = 'exception_group_catch', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'exception_group_catch'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n + \x1b[3...1m 2\x1b[0m\n' == '\n + \x1b[3...1m 2\x1b[0m\n'
219s E
219s E
219s E + [33m[1mException Group Traceback (most recent call last):[0m
219s E |
219s E | File "[32mtests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m14[0m, in [35ma[0m
219s E | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group"[0m[1m,[0m [1m[[0m[1mValueError[0m[1m([0m[34m[1m1[0m[1m)[0m[1m][0m[1m)[0m
219s E |...
219s E
219s E ...Full output truncated (24 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m14[0m, in [35ma[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group"[0m[1m,[0m [1m[[0m[1mValueError[0m[1m([0m[34m[1m1[0m[1m)[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group (1 sub-exception)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m 1[0m
219s +------------------------------------
219s
219s
219s [1mDuring handling of the above exception, another exception occurred:[0m
219s
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m25[0m, in [35m[0m
219s [1mb[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m21[0m, in [35mb[0m
219s [35m[1mexcept[0m[35m[1m*[0m [1mTypeError[0m[1m:[0m [1ma[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m15[0m, in [35ma[0m
219s [35m[1mexcept[0m[35m[1m*[0m [1mx[0m [35m[1mas[0m [1me[0m[1m:[0m [35m[1mraise[0m [1mValueError[0m[1m([0m[34m[1m2[0m[1m)[0m
219s
219s [31m[1mValueError[0m:[1m 2[0m
219s
219s _____________ test_exception_modern[notes-minimum_python_version5] _____________
219s
219s filename = 'notes', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'notes'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...rror\x1b[0m\n' == '\nTraceback ...rror\x1b[0m\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/modern/notes.py", line 13, in
219s E raise e
219s E ValueError: invalid value
219s E Note...
219s E
219s E ...Full output truncated (111 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 13, in
219s raise e
219s ValueError: invalid value
219s Note
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m13[0m, in [35m[0m
219s [35m[1mraise[0m [1me[0m
219s
219s [31m[1mValueError[0m:[1m invalid value[0m
219s Note
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 20, in
219s raise e
219s ValueError: invalid value
219s Note1
219s Note2
219s Note3
219s
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m20[0m, in [35m[0m
219s [35m[1mraise[0m [1me[0m
219s
219s [31m[1mValueError[0m:[1m invalid value[0m
219s Note1
219s Note2
219s Note3
219s
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 27, in
219s | raise e
219s | ExceptionGroup: Grouped (2 sub-exceptions)
219s | Note 1
219s | Note 2
219s | Note 3
219s +-+---------------- 1 ----------------
219s | ValueError: 1
219s +---------------- 2 ----------------
219s | ValueError: 2
219s +------------------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m27[0m, in [35m[0m
219s | [35m[1mraise[0m [1me[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m Grouped (2 sub-exceptions)[0m
219s | Note 1
219s | Note 2
219s | Note 3
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m 1[0m
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 2[0m
219s +------------------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 32, in
219s raise e
219s TabError: tab error
219s Note
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m32[0m, in [35m[0m
219s [35m[1mraise[0m [1me[0m
219s
219s [31m[1mTabError[0m:[1m tab error[0m
219s Note
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 38, in
219s raise e
219s File "", line 1
219s a = 7 *
219s ^
219s SyntaxError: syntax error
219s Note 1
219s Note 2
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m38[0m, in [35m[0m
219s [35m[1mraise[0m [1me[0m
219s
219s File "", line 1
219s a = 7 *
219s ^
219s
219s [31m[1mSyntaxError[0m:[1m syntax error[0m
219s Note 1
219s Note 2
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 43, in
219s raise e
219s TypeError: type error
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m43[0m, in [35m[0m
219s [35m[1mraise[0m [1me[0m
219s
219s [31m[1mTypeError[0m:[1m type error[0m
219s
219s ________ test_exception_modern[grouped_simple-minimum_python_version6] _________
219s
219s filename = 'grouped_simple', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'grouped_simple'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
219s E
219s E
219s E + Exception Group Traceback (most recent call last):
219s E | File "tests/exceptions/source/modern/grouped_simple.py", line 41, in
219s E | main()
219s E | File "tests/exceptions/source/modern/grouped_simple.py", line 34, in main
219s E | raise ExceptionGroup("group", [error_1, error_2, error_3]) from None...
219s E
219s E ...Full output truncated (94 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 41, in
219s | main()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 34, in main
219s | raise ExceptionGroup("group", [error_1, error_2, error_3]) from None
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 26, in main
219s | c(b)
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 20, in c
219s | f()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 16, in b
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 12, in a
219s | x / y
219s | ZeroDivisionError: division by zero
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 29, in main
219s | c(a)
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 20, in c
219s | f()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 12, in a
219s | x / y
219s | ZeroDivisionError: division by zero
219s +---------------- 3 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 32, in main
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 12, in a
219s | x / y
219s | ZeroDivisionError: division by zero
219s +------------------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m41[0m, in [35m[0m
219s | [1mmain[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m34[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group"[0m[1m,[0m [1m[[0m[1merror_1[0m[1m,[0m [1merror_2[0m[1m,[0m [1merror_3[0m[1m][0m[1m)[0m [35m[1mfrom[0m [36m[1mNone[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m26[0m, in [35mmain[0m
219s | [1mc[0m[1m([0m[1mb[0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m20[0m, in [35mc[0m
219s | [1mf[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m16[0m, in [35mb[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m12[0m, in [35ma[0m
219s | [1mx[0m [35m[1m/[0m [1my[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m29[0m, in [35mmain[0m
219s | [1mc[0m[1m([0m[1ma[0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m20[0m, in [35mc[0m
219s | [1mf[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m12[0m, in [35ma[0m
219s | [1mx[0m [35m[1m/[0m [1my[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +---------------- 3 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m32[0m, in [35mmain[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m12[0m, in [35ma[0m
219s | [1mx[0m [35m[1m/[0m [1my[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +------------------------------------
219s
219s ________ test_exception_modern[grouped_nested-minimum_python_version7] _________
219s
219s filename = 'grouped_nested', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'grouped_nested'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
219s E
219s E
219s E + Exception Group Traceback (most recent call last):
219s E | File "tests/exceptions/source/modern/grouped_nested.py", line 40, in
219s E | main()
219s E | File "tests/exceptions/source/modern/grouped_nested.py", line 33, in main
219s E | raise ExceptionGroup("group_2", [error_4, error_3]) from None...
219s E
219s E ...Full output truncated (144 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 40, in
219s | main()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 33, in main
219s | raise ExceptionGroup("group_2", [error_4, error_3]) from None
219s | ExceptionGroup: group_2 (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 26, in main
219s | raise ExceptionGroup("group_1", [error_1, error_2])
219s | ExceptionGroup: group_1 (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 17, in main
219s | divide_by_zero()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 6, in divide_by_zero
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 22, in main
219s | raise_value_error(100)
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 10, in raise_value_error
219s | raise ValueError(value)
219s | ValueError: 100
219s +------------------------------------
219s |
219s | During handling of the above exception, another exception occurred:
219s |
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 29, in main
219s | raise_value_error(-100)
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 10, in raise_value_error
219s | raise ValueError(value)
219s | ValueError: -100
219s +---------------- 2 ----------------
219s | Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 26, in main
219s | raise ExceptionGroup("group_1", [error_1, error_2])
219s | ExceptionGroup: group_1 (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 17, in main
219s | divide_by_zero()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 6, in divide_by_zero
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 22, in main
219s | raise_value_error(100)
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 10, in raise_value_error
219s | raise ValueError(value)
219s | ValueError: 100
219s +------------------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m40[0m, in [35m[0m
219s | [1mmain[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m33[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_2"[0m[1m,[0m [1m[[0m[1merror_4[0m[1m,[0m [1merror_3[0m[1m][0m[1m)[0m [35m[1mfrom[0m [36m[1mNone[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_2 (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m26[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_1"[0m[1m,[0m [1m[[0m[1merror_1[0m[1m,[0m [1merror_2[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_1 (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m17[0m, in [35mmain[0m
219s | [1mdivide_by_zero[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m6[0m, in [35mdivide_by_zero[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m22[0m, in [35mmain[0m
219s | [1mraise_value_error[0m[1m([0m[34m[1m100[0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m10[0m, in [35mraise_value_error[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[1mvalue[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m 100[0m
219s +------------------------------------
219s |
219s |
219s | [1mDuring handling of the above exception, another exception occurred:[0m
219s |
219s |
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m29[0m, in [35mmain[0m
219s | [1mraise_value_error[0m[1m([0m[35m[1m-[0m[34m[1m100[0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m10[0m, in [35mraise_value_error[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[1mvalue[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m -100[0m
219s +---------------- 2 ----------------
219s | [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m26[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_1"[0m[1m,[0m [1m[[0m[1merror_1[0m[1m,[0m [1merror_2[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_1 (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m17[0m, in [35mmain[0m
219s | [1mdivide_by_zero[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m6[0m, in [35mdivide_by_zero[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m22[0m, in [35mmain[0m
219s | [1mraise_value_error[0m[1m([0m[34m[1m100[0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m10[0m, in [35mraise_value_error[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[1mvalue[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m 100[0m
219s +------------------------------------
219s
219s _ test_exception_modern[grouped_with_cause_and_context-minimum_python_version8] _
219s
219s filename = 'grouped_with_cause_and_context', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'grouped_with_cause_and_context'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\nTraceback ...-----------\n' == '\nTraceback ...-----------\n'
219s E
219s E
219s E Traceback (most recent call last):
219s E File "tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 31, in main
219s E a()
219s E File "tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
219s E 1 / 0...
219s E
219s E ...Full output truncated (130 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 31, in main
219s a()
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
219s 1 / 0
219s ZeroDivisionError: division by zero
219s
219s The above exception was the direct cause of the following exception:
219s
219s Traceback (most recent call last):
219s File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 34, in main
219s raise ValueError("Error") from err
219s ValueError: Error
219s
219s During handling of the above exception, another exception occurred:
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 43, in
219s | main()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 36, in main
219s | raise ExceptionGroup("from_context", [from_context, from_cause])
219s | ExceptionGroup: from_context (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 17, in main
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s |
219s | The above exception was the direct cause of the following exception:
219s |
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 19, in main
219s | raise ValueError("ContextError") from err
219s | ValueError: ContextError
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 24, in main
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s |
219s | During handling of the above exception, another exception occurred:
219s |
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 26, in main
219s | raise ValueError("CauseError")
219s | ValueError: CauseError
219s +------------------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m31[0m, in [35mmain[0m
219s [1ma[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
219s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s
219s [1mThe above exception was the direct cause of the following exception:[0m
219s
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m34[0m, in [35mmain[0m
219s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m [35m[1mfrom[0m [1merr[0m
219s
219s [31m[1mValueError[0m:[1m Error[0m
219s
219s
219s [1mDuring handling of the above exception, another exception occurred:[0m
219s
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m43[0m, in [35m[0m
219s | [1mmain[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m36[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"from_context"[0m[1m,[0m [1m[[0m[1mfrom_context[0m[1m,[0m [1mfrom_cause[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m from_context (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m17[0m, in [35mmain[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s |
219s |
219s | [1mThe above exception was the direct cause of the following exception:[0m
219s |
219s |
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m19[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"ContextError"[0m[1m)[0m [35m[1mfrom[0m [1merr[0m
219s |
219s | [31m[1mValueError[0m:[1m ContextError[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m24[0m, in [35mmain[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s |
219s |
219s | [1mDuring handling of the above exception, another exception occurred:[0m
219s |
219s |
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m26[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"CauseError"[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m CauseError[0m
219s +------------------------------------
219s
219s _ test_exception_modern[grouped_as_cause_and_context-minimum_python_version9] __
219s
219s filename = 'grouped_as_cause_and_context', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'grouped_as_cause_and_context'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
219s E
219s E
219s E + Exception Group Traceback (most recent call last):
219s E | File "tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 31, in main
219s E | raise ExceptionGroup("group_1", [error_1, error_2])
219s E | ExceptionGroup: group_1 (2 sub-exceptions)
219s E +-+---------------- 1 ----------------...
219s E
219s E ...Full output truncated (180 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 31, in main
219s | raise ExceptionGroup("group_1", [error_1, error_2])
219s | ExceptionGroup: group_1 (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 20, in main
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 10, in a
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 25, in main
219s | b()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 14, in b
219s | raise ValueError("Error")
219s | ValueError: Error
219s +------------------------------------
219s
219s The above exception was the direct cause of the following exception:
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 33, in main
219s | raise ExceptionGroup("group_2", [error_2, error_1]) from err
219s | ExceptionGroup: group_2 (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 25, in main
219s | b()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 14, in b
219s | raise ValueError("Error")
219s | ValueError: Error
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 20, in main
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 10, in a
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s +------------------------------------
219s
219s During handling of the above exception, another exception occurred:
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 42, in
219s | main()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 35, in main
219s | raise ExceptionGroup("group_3", [err])
219s | ExceptionGroup: group_3 (1 sub-exception)
219s +-+---------------- 1 ----------------
219s | Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 33, in main
219s | raise ExceptionGroup("group_2", [error_2, error_1]) from err
219s | ExceptionGroup: group_2 (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 25, in main
219s | b()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 14, in b
219s | raise ValueError("Error")
219s | ValueError: Error
219s +---------------- 2 ----------------
219s | Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 20, in main
219s | a()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 10, in a
219s | 1 / 0
219s | ZeroDivisionError: division by zero
219s +------------------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m31[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_1"[0m[1m,[0m [1m[[0m[1merror_1[0m[1m,[0m [1merror_2[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_1 (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m20[0m, in [35mmain[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m25[0m, in [35mmain[0m
219s | [1mb[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m14[0m, in [35mb[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m Error[0m
219s +------------------------------------
219s
219s
219s [1mThe above exception was the direct cause of the following exception:[0m
219s
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m33[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_2"[0m[1m,[0m [1m[[0m[1merror_2[0m[1m,[0m [1merror_1[0m[1m][0m[1m)[0m [35m[1mfrom[0m [1merr[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_2 (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m25[0m, in [35mmain[0m
219s | [1mb[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m14[0m, in [35mb[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m Error[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m20[0m, in [35mmain[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +------------------------------------
219s
219s
219s [1mDuring handling of the above exception, another exception occurred:[0m
219s
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m42[0m, in [35m[0m
219s | [1mmain[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m35[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_3"[0m[1m,[0m [1m[[0m[1merr[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_3 (1 sub-exception)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m33[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_2"[0m[1m,[0m [1m[[0m[1merror_2[0m[1m,[0m [1merror_1[0m[1m][0m[1m)[0m [35m[1mfrom[0m [1merr[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group_2 (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m25[0m, in [35mmain[0m
219s | [1mb[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m14[0m, in [35mb[0m
219s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m
219s |
219s | [31m[1mValueError[0m:[1m Error[0m
219s +---------------- 2 ----------------
219s | [33m[1mTraceback (most recent call last):[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m20[0m, in [35mmain[0m
219s | [1ma[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
219s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
219s |
219s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s +------------------------------------
219s
219s ______ test_exception_modern[grouped_max_length-minimum_python_version10] ______
219s
219s filename = 'grouped_max_length', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'grouped_max_length'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
219s E
219s E
219s E + Exception Group Traceback (most recent call last):
219s E | File "tests/exceptions/source/modern/grouped_max_length.py", line 15, in
219s E | main()
219s E | File "tests/exceptions/source/modern/grouped_max_length.py", line 8, in main
219s E | raise ExceptionGroup("group", errors)...
219s E
219s E ...Full output truncated (79 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_length.py", line 15, in
219s | main()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_length.py", line 8, in main
219s | raise ExceptionGroup("group", errors)
219s | ExceptionGroup: group (100 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: 0
219s +---------------- 2 ----------------
219s | ValueError: 1
219s +---------------- 3 ----------------
219s | ValueError: 2
219s +---------------- 4 ----------------
219s | ValueError: 3
219s +---------------- 5 ----------------
219s | ValueError: 4
219s +---------------- 6 ----------------
219s | ValueError: 5
219s +---------------- 7 ----------------
219s | ValueError: 6
219s +---------------- 8 ----------------
219s | ValueError: 7
219s +---------------- 9 ----------------
219s | ValueError: 8
219s +---------------- 10 ---------------
219s | ValueError: 9
219s +---------------- 11 ---------------
219s | ValueError: 10
219s +---------------- 12 ---------------
219s | ValueError: 11
219s +---------------- 13 ---------------
219s | ValueError: 12
219s +---------------- 14 ---------------
219s | ValueError: 13
219s +---------------- 15 ---------------
219s | ValueError: 14
219s +--------------- ... ---------------
219s | and 85 more exceptions
219s +------------------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_length.py[0m", line [33m15[0m, in [35m[0m
219s | [1mmain[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_length.py[0m", line [33m8[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group"[0m[1m,[0m [1merrors[0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group (100 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m 0[0m
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 1[0m
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 2[0m
219s +---------------- 4 ----------------
219s | [31m[1mValueError[0m:[1m 3[0m
219s +---------------- 5 ----------------
219s | [31m[1mValueError[0m:[1m 4[0m
219s +---------------- 6 ----------------
219s | [31m[1mValueError[0m:[1m 5[0m
219s +---------------- 7 ----------------
219s | [31m[1mValueError[0m:[1m 6[0m
219s +---------------- 8 ----------------
219s | [31m[1mValueError[0m:[1m 7[0m
219s +---------------- 9 ----------------
219s | [31m[1mValueError[0m:[1m 8[0m
219s +---------------- 10 ---------------
219s | [31m[1mValueError[0m:[1m 9[0m
219s +---------------- 11 ---------------
219s | [31m[1mValueError[0m:[1m 10[0m
219s +---------------- 12 ---------------
219s | [31m[1mValueError[0m:[1m 11[0m
219s +---------------- 13 ---------------
219s | [31m[1mValueError[0m:[1m 12[0m
219s +---------------- 14 ---------------
219s | [31m[1mValueError[0m:[1m 13[0m
219s +---------------- 15 ---------------
219s | [31m[1mValueError[0m:[1m 14[0m
219s +--------------- ... ---------------
219s | and 85 more exceptions
219s +------------------------------------
219s
219s ______ test_exception_modern[grouped_max_depth-minimum_python_version11] _______
219s
219s filename = 'grouped_max_depth', minimum_python_version = (3, 11)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'grouped_max_depth'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
219s E
219s E
219s E + Exception Group Traceback (most recent call last):
219s E | File "tests/exceptions/source/modern/grouped_max_depth.py", line 26, in
219s E | main()
219s E | File "tests/exceptions/source/modern/grouped_max_depth.py", line 19, in main
219s E | raise ExceptionGroup("group", [nesting_left, nesting_right, nesting_both])...
219s E
219s E ...Full output truncated (317 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s + Exception Group Traceback (most recent call last):
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_depth.py", line 26, in
219s | main()
219s | File "/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_depth.py", line 19, in main
219s | raise ExceptionGroup("group", [nesting_left, nesting_right, nesting_both])
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -99
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -98
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -97
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -96
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -95
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -94
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -93
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -92
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -91
219s +---------------- 2 ----------------
219s | ... (max_group_depth is 10)
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ExceptionGroup: group (2 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ... (max_group_depth is 10)
219s +---------------- 2 ----------------
219s | ValueError: 91
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 92
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 93
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 94
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 95
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 96
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 97
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 98
219s +------------------------------------
219s +---------------- 2 ----------------
219s | ValueError: 99
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -99
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -98
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -97
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -96
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -95
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -94
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -93
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -92
219s +---------------- 2 ----------------
219s | ExceptionGroup: group (3 sub-exceptions)
219s +-+---------------- 1 ----------------
219s | ValueError: -91
219s +---------------- 2 ----------------
219s | ... (max_group_depth is 10)
219s +---------------- 3 ----------------
219s | ValueError: 91
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 92
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 93
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 94
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 95
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 96
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 97
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 98
219s +------------------------------------
219s +---------------- 3 ----------------
219s | ValueError: 99
219s +------------------------------------
219s
219s + [33m[1mException Group Traceback (most recent call last):[0m
219s |
219s | > File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_depth.py[0m", line [33m26[0m, in [35m[0m
219s | [1mmain[0m[1m([0m[1m)[0m
219s |
219s | File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_depth.py[0m", line [33m19[0m, in [35mmain[0m
219s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group"[0m[1m,[0m [1m[[0m[1mnesting_left[0m[1m,[0m [1mnesting_right[0m[1m,[0m [1mnesting_both[0m[1m][0m[1m)[0m
219s |
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -99[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -98[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -97[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -96[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -95[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -94[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -93[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -92[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -91[0m
219s +---------------- 2 ----------------
219s | ... (max_group_depth is 10)
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | ... (max_group_depth is 10)
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 91[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 92[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 93[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 94[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 95[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 96[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 97[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 98[0m
219s +------------------------------------
219s +---------------- 2 ----------------
219s | [31m[1mValueError[0m:[1m 99[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -99[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -98[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -97[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -96[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -95[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -94[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -93[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -92[0m
219s +---------------- 2 ----------------
219s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
219s +-+---------------- 1 ----------------
219s | [31m[1mValueError[0m:[1m -91[0m
219s +---------------- 2 ----------------
219s | ... (max_group_depth is 10)
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 91[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 92[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 93[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 94[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 95[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 96[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 97[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 98[0m
219s +------------------------------------
219s +---------------- 3 ----------------
219s | [31m[1mValueError[0m:[1m 99[0m
219s +------------------------------------
219s
219s ___________ test_exception_modern[f_string-minimum_python_version12] ___________
219s
219s filename = 'f_string', minimum_python_version = (3, 12)
219s
219s @pytest.mark.parametrize(
219s "filename, minimum_python_version",
219s [
219s ("type_hints", (3, 6)),
219s ("positional_only_argument", (3, 8)),
219s ("walrus_operator", (3, 8)),
219s ("match_statement", (3, 10)),
219s ("exception_group_catch", (3, 11)),
219s ("notes", (3, 11)),
219s ("grouped_simple", (3, 11)),
219s ("grouped_nested", (3, 11)),
219s ("grouped_with_cause_and_context", (3, 11)),
219s ("grouped_as_cause_and_context", (3, 11)),
219s ("grouped_max_length", (3, 11)),
219s ("grouped_max_depth", (3, 11)),
219s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
219s ],
219s )
219s def test_exception_modern(filename, minimum_python_version):
219s if sys.version_info < minimum_python_version:
219s pytest.skip("Feature not supported in this Python version")
219s
219s > compare_exception("modern", filename)
219s
219s tests/test_exceptions_formatting.py:251:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s dirname = 'modern', filename = 'f_string'
219s
219s def compare_exception(dirname, filename):
219s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
219s python = sys.executable or "python"
219s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
219s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
219s
219s with subprocess.Popen(
219s [python, filepath],
219s shell=False,
219s cwd=cwd,
219s stdout=subprocess.PIPE,
219s stderr=subprocess.PIPE,
219s universal_newlines=True,
219s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
219s ) as proc:
219s stdout, stderr = proc.communicate()
219s print(stderr, file=sys.stderr)
219s assert proc.returncode == 0
219s assert stdout == ""
219s assert stderr != ""
219s
219s stderr = normalize(stderr)
219s
219s # generate(stderr, outpath)
219s
219s with open(outpath, "r") as file:
219s > assert stderr == file.read()
219s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
219s E
219s E
219s E [33m[1mTraceback (most recent call last):[0m
219s E
219s E File "[32mtests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m21[0m, in [35m[0m
219s E [1mhello[0m[1m([0m[1m)[0m
219s E - [36m└ [0m[36m[1m[0m...
219s E
219s E ...Full output truncated (12 lines hidden), use '-vv' to show
219s
219s tests/test_exceptions_formatting.py:114: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s
219s [33m[1mTraceback (most recent call last):[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m21[0m, in [35m[0m
219s [1mhello[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m11[0m, in [35mhello[0m
219s [1moutput[0m [35m[1m=[0m [36mf"[0m[36mHello[0m[36m"[0m [35m[1m+[0m [36mf'[0m[36m [0m[36m'[0m [35m[1m+[0m [36mf"""[0m[36mWorld[0m[36m"""[0m [35m[1mand[0m [1mworld[0m[1m([0m[1m)[0m
219s
219s File "[32m/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m17[0m, in [35mworld[0m
219s [36mf"[0m[1m{[0m[1mname[0m[1m}[0m[36m -> [0m[1m{[0m [1mf[0m [1m}[0m[36m"[0m [35m[1mand[0m [1m{[0m[1m}[0m [35m[1mor[0m [36mf'[0m[36m{{[0m[36m [0m[1m{[0m[1mf[0m [35m[1m/[0m [34m[1m0[0m[1m}[0m[36m }}[0m[36m'[0m
219s
219s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
219s
219s ________________________ test_pickling_standard_handler ________________________
219s
219s def test_pickling_standard_handler():
219s handler = StandardHandler(logging.NOTSET)
219s logger.add(handler, format="{level} - {function} - {message}")
219s pickled = pickle.dumps(logger)
219s unpickled = pickle.loads(pickled)
219s unpickled.debug("A message")
219s handler = next(iter(unpickled._core.handlers.values()))._sink._handler
219s > assert handler.written == "DEBUG - test_pickling_standard_handler - A message"
219s E AssertionError: assert '' == 'DEBUG - test...r - A message'
219s E
219s E - DEBUG - test_pickling_standard_handler - A message
219s
219s tests/test_pickling.py:130: AssertionError
219s ----------------------------- Captured stderr call -----------------------------
219s --- Logging error in Loguru Handler #0 ---
219s Record was: {'elapsed': datetime.timedelta(seconds=53, microseconds=935832), 'exception': None, 'extra': {}, 'file': (name='test_pickling.py', path='/tmp/autopkgtest.kW32EB/autopkgtest_tmp/tests/test_pickling.py'), 'function': 'test_pickling_standard_handler', 'level': (name='DEBUG', no=10, icon='🐞'), 'line': 128, 'message': 'A message', 'module': 'test_pickling', 'name': 'tests.test_pickling', 'process': (id=2454, name='MainProcess'), 'thread': (id=129487735705728, name='MainThread'), 'time': datetime(2024, 11, 13, 8, 53, 24, 222751, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}
219s Traceback (most recent call last):
219s File "/usr/lib/python3/dist-packages/loguru/_handler.py", line 206, in emit
219s self._sink.write(str_record)
219s ~~~~~~~~~~~~~~~~^^^^^^^^^^^^
219s File "/usr/lib/python3/dist-packages/loguru/_simple_sinks.py", line 51, in write
219s self._handler.handle(record)
219s ~~~~~~~~~~~~~~~~~~~~^^^^^^^^
219s File "/usr/lib/python3.13/logging/__init__.py", line 1025, in handle
219s with self.lock:
219s ^^^^^^^^^
219s TypeError: 'NoneType' object does not support the context manager protocol
219s --- End of logging error ---
219s ___________ test_pickling_standard_handler_root_logger_not_picklable ___________
219s
219s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x75c4b3c0d160>
219s capsys = <_pytest.capture.CaptureFixture object at 0x75c4b3c0cde0>
219s
219s def test_pickling_standard_handler_root_logger_not_picklable(monkeypatch, capsys):
219s def reduce_protocol():
219s raise TypeError("Not picklable")
219s
219s monkeypatch.setattr(logging.getLogger(), "__reduce__", reduce_protocol, raising=False)
219s
219s handler = StandardHandler(logging.NOTSET)
219s logger.add(handler, format="=> {message}", catch=False)
219s
219s pickled = pickle.dumps(logger)
219s pickle.loads(pickled)
219s
219s > logger.info("Ok")
219s
219s tests/test_pickling.py:145:
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s /usr/lib/python3/dist-packages/loguru/_logger.py:2044: in info
219s __self._log("INFO", False, __self._options, __message, args, kwargs)
219s /usr/lib/python3/dist-packages/loguru/_logger.py:2032: in _log
219s handler.emit(log_record, level_id, from_decorator, raw, colored_message)
219s /usr/lib/python3/dist-packages/loguru/_handler.py:206: in emit
219s self._sink.write(str_record)
219s /usr/lib/python3/dist-packages/loguru/_simple_sinks.py:51: in write
219s self._handler.handle(record)
219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
219s
219s self =
219s record = Ok">
219s
219s def handle(self, record):
219s """
219s Conditionally emit the specified logging record.
219s
219s Emission depends on filters which may have been added to the handler.
219s Wrap the actual emission of the record with acquisition/release of
219s the I/O thread lock.
219s
219s Returns an instance of the log record that was emitted
219s if it passed all filters, otherwise a false value is returned.
219s """
219s rv = self.filter(record)
219s if isinstance(rv, LogRecord):
219s record = rv
219s if rv:
219s > with self.lock:
219s E TypeError: 'NoneType' object does not support the context manager protocol
219s
219s /usr/lib/python3.13/logging/__init__.py:1025: TypeError
219s =============================== warnings summary ===============================
219s tests/test_multiprocessing.py: 216 warnings
219s /usr/lib/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: This process (pid=2454) is multi-threaded, use of fork() may lead to deadlocks in the child.
219s self.pid = os.fork()
219s
219s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
219s =========================== short test summary info ============================
219s FAILED tests/test_exceptions_catch.py::test_file_sink_ascii_encoding - assert...
219s FAILED tests/test_exceptions_catch.py::test_file_sink_utf8_encoding - assert ...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[assertion_error] - ...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[assertion_error_custom]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[assertion_error_in_string]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[attributes] - asser...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[chained_both] - ass...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[encoding] - assert ...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[global_variable] - ...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[indentation_error]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[keyword_argument]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[multilines_repr] - ...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[no_error_message]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[parenthesis] - asse...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[source_multilines]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[source_strings] - a...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[syntax_error] - ass...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[syntax_highlighting]
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[truncating] - asser...
219s FAILED tests/test_exceptions_formatting.py::test_diagnose[unprintable_object]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[assertion_from_lib]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[assertion_from_local]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[callback]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator_from_lib]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[decorated_callback]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[direct]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[indirect]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[string_lib]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[string_source]
219s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[syntaxerror]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_coroutine]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_function]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_generator]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_in_property]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[nested_with_reraise]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_none]
219s FAILED tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_unset]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[type_hints-minimum_python_version0]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[positional_only_argument-minimum_python_version1]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[walrus_operator-minimum_python_version2]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[match_statement-minimum_python_version3]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[exception_group_catch-minimum_python_version4]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[notes-minimum_python_version5]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_simple-minimum_python_version6]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_nested-minimum_python_version7]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_with_cause_and_context-minimum_python_version8]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_as_cause_and_context-minimum_python_version9]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_max_length-minimum_python_version10]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_max_depth-minimum_python_version11]
219s FAILED tests/test_exceptions_formatting.py::test_exception_modern[f_string-minimum_python_version12]
219s FAILED tests/test_pickling.py::test_pickling_standard_handler - AssertionErro...
219s FAILED tests/test_pickling.py::test_pickling_standard_handler_root_logger_not_picklable
219s ===== 54 failed, 1413 passed, 30 skipped, 216 warnings in 72.07s (0:01:12) =====
220s autopkgtest [08:53:43]: test run-unit-test: -----------------------]
221s autopkgtest [08:53:44]: test run-unit-test: - - - - - - - - - - results - - - - - - - - - -
221s run-unit-test FAIL non-zero exit status 1
221s autopkgtest [08:53:44]: test autodep8-python3: preparing testbed
281s autopkgtest [08:54:44]: testbed dpkg architecture: amd64
282s autopkgtest [08:54:45]: testbed apt version: 2.9.8
282s autopkgtest [08:54:45]: @@@@@@@@@@@@@@@@@@@@ test bed setup
282s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB]
282s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.4 kB]
282s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [15.3 kB]
282s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B]
282s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [849 kB]
282s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [111 kB]
282s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [65.2 kB]
282s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB]
282s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [255 kB]
282s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [637 kB]
282s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [37.7 kB]
282s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [13.0 kB]
282s Fetched 2173 kB in 0s (6591 kB/s)
282s Reading package lists...
283s Reading package lists...
284s Building dependency tree...
284s Reading state information...
284s Calculating upgrade...
284s The following NEW packages will be installed:
284s python3.13-gdbm
284s The following packages will be upgraded:
284s libgpgme11t64 libpython3-stdlib python3 python3-gdbm python3-minimal
284s 5 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
284s Need to get 253 kB of archives.
284s After this operation, 147 kB of additional disk space will be used.
284s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-minimal amd64 3.12.7-1 [27.4 kB]
284s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3 amd64 3.12.7-1 [24.0 kB]
284s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpython3-stdlib amd64 3.12.7-1 [10.0 kB]
284s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-gdbm amd64 3.13.0-2 [31.3 kB]
284s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-gdbm amd64 3.12.7-1 [8642 B]
284s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libgpgme11t64 amd64 1.23.2-5ubuntu4 [152 kB]
284s Fetched 253 kB in 0s (8309 kB/s)
285s (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 ... 75541 files and directories currently installed.)
285s Preparing to unpack .../python3-minimal_3.12.7-1_amd64.deb ...
285s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ...
285s Setting up python3-minimal (3.12.7-1) ...
285s (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 ... 75541 files and directories currently installed.)
285s Preparing to unpack .../python3_3.12.7-1_amd64.deb ...
285s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ...
285s Preparing to unpack .../libpython3-stdlib_3.12.7-1_amd64.deb ...
285s Unpacking libpython3-stdlib:amd64 (3.12.7-1) over (3.12.6-0ubuntu1) ...
285s Selecting previously unselected package python3.13-gdbm.
285s Preparing to unpack .../python3.13-gdbm_3.13.0-2_amd64.deb ...
285s Unpacking python3.13-gdbm (3.13.0-2) ...
285s Preparing to unpack .../python3-gdbm_3.12.7-1_amd64.deb ...
285s Unpacking python3-gdbm:amd64 (3.12.7-1) over (3.12.6-1ubuntu1) ...
285s Preparing to unpack .../libgpgme11t64_1.23.2-5ubuntu4_amd64.deb ...
285s Unpacking libgpgme11t64:amd64 (1.23.2-5ubuntu4) over (1.18.0-4.1ubuntu4) ...
285s Setting up libgpgme11t64:amd64 (1.23.2-5ubuntu4) ...
285s Setting up python3.13-gdbm (3.13.0-2) ...
285s Setting up libpython3-stdlib:amd64 (3.12.7-1) ...
285s Setting up python3 (3.12.7-1) ...
285s Setting up python3-gdbm:amd64 (3.12.7-1) ...
285s Processing triggers for man-db (2.12.1-3) ...
286s Processing triggers for libc-bin (2.40-1ubuntu3) ...
286s Reading package lists...
286s Building dependency tree...
286s Reading state information...
287s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
287s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease
287s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease
287s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease
287s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease
288s Reading package lists...
288s Reading package lists...
288s Building dependency tree...
288s Reading state information...
289s Calculating upgrade...
289s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
289s Reading package lists...
289s Building dependency tree...
289s Reading state information...
289s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
291s Reading package lists...
291s Building dependency tree...
291s Reading state information...
291s Starting pkgProblemResolver with broken count: 0
291s Starting 2 pkgProblemResolver with broken count: 0
291s Done
292s The following additional packages will be installed:
292s libpython3.13-minimal libpython3.13-stdlib python3-all python3-colorama
292s python3-loguru python3.13 python3.13-minimal
292s Suggested packages:
292s python3.13-venv python3.13-doc binfmt-support
292s The following NEW packages will be installed:
292s autopkgtest-satdep libpython3.13-minimal libpython3.13-stdlib python3-all
292s python3-colorama python3-loguru python3.13 python3.13-minimal
292s 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded.
292s Need to get 5979 kB/5980 kB of archives.
292s After this operation, 22.8 MB of additional disk space will be used.
292s Get:1 /tmp/autopkgtest.kW32EB/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [712 B]
297s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-minimal amd64 3.13.0-2 [879 kB]
297s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-minimal amd64 3.13.0-2 [2188 kB]
297s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-stdlib amd64 3.13.0-2 [2107 kB]
297s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13 amd64 3.13.0-2 [719 kB]
297s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-all amd64 3.12.7-1 [890 B]
297s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-colorama all 0.4.6-4 [32.1 kB]
297s Get:8 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-loguru all 0.7.2-3 [53.2 kB]
297s Fetched 5979 kB in 5s (1144 kB/s)
297s Selecting previously unselected package libpython3.13-minimal:amd64.
297s (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 ... 75548 files and directories currently installed.)
297s Preparing to unpack .../0-libpython3.13-minimal_3.13.0-2_amd64.deb ...
297s Unpacking libpython3.13-minimal:amd64 (3.13.0-2) ...
297s Selecting previously unselected package python3.13-minimal.
297s Preparing to unpack .../1-python3.13-minimal_3.13.0-2_amd64.deb ...
297s Unpacking python3.13-minimal (3.13.0-2) ...
297s Selecting previously unselected package libpython3.13-stdlib:amd64.
297s Preparing to unpack .../2-libpython3.13-stdlib_3.13.0-2_amd64.deb ...
297s Unpacking libpython3.13-stdlib:amd64 (3.13.0-2) ...
297s Selecting previously unselected package python3.13.
297s Preparing to unpack .../3-python3.13_3.13.0-2_amd64.deb ...
297s Unpacking python3.13 (3.13.0-2) ...
297s Selecting previously unselected package python3-all.
297s Preparing to unpack .../4-python3-all_3.12.7-1_amd64.deb ...
297s Unpacking python3-all (3.12.7-1) ...
297s Selecting previously unselected package python3-colorama.
297s Preparing to unpack .../5-python3-colorama_0.4.6-4_all.deb ...
297s Unpacking python3-colorama (0.4.6-4) ...
297s Selecting previously unselected package python3-loguru.
297s Preparing to unpack .../6-python3-loguru_0.7.2-3_all.deb ...
297s Unpacking python3-loguru (0.7.2-3) ...
298s Selecting previously unselected package autopkgtest-satdep.
298s Preparing to unpack .../7-2-autopkgtest-satdep.deb ...
298s Unpacking autopkgtest-satdep (0) ...
298s Setting up python3-colorama (0.4.6-4) ...
298s Setting up python3-loguru (0.7.2-3) ...
298s Setting up libpython3.13-minimal:amd64 (3.13.0-2) ...
298s Setting up python3.13-minimal (3.13.0-2) ...
299s Setting up libpython3.13-stdlib:amd64 (3.13.0-2) ...
299s Setting up python3.13 (3.13.0-2) ...
300s Setting up python3-all (3.12.7-1) ...
300s Setting up autopkgtest-satdep (0) ...
300s Processing triggers for man-db (2.12.1-3) ...
300s Processing triggers for systemd (256.5-2ubuntu4) ...
302s (Reading database ... 76350 files and directories currently installed.)
302s Removing autopkgtest-satdep (0) ...
304s autopkgtest [08:55:07]: test autodep8-python3: set -e ; for py in $(py3versions -r 2>/dev/null) ; do cd "$AUTOPKGTEST_TMP" ; echo "Testing with $py:" ; $py -c "import loguru; print(loguru)" ; done
304s autopkgtest [08:55:07]: test autodep8-python3: [-----------------------
304s Testing with python3.13:
305s
305s Testing with python3.12:
305s
305s autopkgtest [08:55:08]: test autodep8-python3: -----------------------]
305s autopkgtest [08:55:08]: test autodep8-python3: - - - - - - - - - - results - - - - - - - - - -
305s autodep8-python3 PASS (superficial)
305s autopkgtest [08:55:08]: @@@@@@@@@@@@@@@@@@@@ summary
305s run-unit-test FAIL non-zero exit status 1
305s autodep8-python3 PASS (superficial)
332s nova [W] Skipping flock for amd64
332s Creating nova instance adt-plucky-amd64-loguru-20241113-085003-juju-7f2275-prod-proposed-migration-environment-20-82ebed5a-db34-44ff-9f0c-e879c8128da8 from image adt/ubuntu-plucky-amd64-server-20241113.img (UUID 76b850f9-98f4-4b79-af06-fa11000b95b2)...
332s nova [W] Skipping flock for amd64
332s Creating nova instance adt-plucky-amd64-loguru-20241113-085003-juju-7f2275-prod-proposed-migration-environment-20-82ebed5a-db34-44ff-9f0c-e879c8128da8 from image adt/ubuntu-plucky-amd64-server-20241113.img (UUID 76b850f9-98f4-4b79-af06-fa11000b95b2)...