0s autopkgtest [17:48:04]: starting date and time: 2024-11-23 17:48:04+0000
0s autopkgtest [17:48:04]: git checkout: 0acbae0a WIP show VirtSubproc stderr in real-time
0s autopkgtest [17:48:04]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.blu4hied/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:mypy,src:python3-defaults --apt-upgrade loguru --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=mypy/1.13.0-2 python3-defaults/3.12.7-1' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-s390x --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-s390x-8.secgroup --name adt-plucky-s390x-loguru-20241123-174803-juju-7f2275-prod-proposed-migration-environment-2-ec6725b6-4235-4774-bf07-f73d22657dfb --image adt/ubuntu-plucky-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration-s390x -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/
94s autopkgtest [17:49:38]: testbed dpkg architecture: s390x
94s autopkgtest [17:49:38]: testbed apt version: 2.9.8
94s autopkgtest [17:49:38]: @@@@@@@@@@@@@@@@@@@@ test bed setup
95s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB]
96s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [56.7 kB]
96s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [912 kB]
96s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9704 B]
96s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.6 kB]
96s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x Packages [72.3 kB]
96s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/restricted s390x Packages [756 B]
96s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x Packages [754 kB]
96s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse s390x Packages [6452 B]
96s Fetched 1899 kB in 1s (2259 kB/s)
96s Reading package lists...
98s Reading package lists...
98s Building dependency tree...
98s Reading state information...
98s Calculating upgrade...
98s The following package was automatically installed and is no longer required:
98s libsgutils2-1.46-2
98s Use 'sudo apt autoremove' to remove it.
98s The following NEW packages will be installed:
98s libsgutils2-1.48
98s The following packages will be upgraded:
98s bpftrace curl debconf debconf-i18n distro-info gir1.2-girepository-2.0
98s gir1.2-glib-2.0 hostname libaudit-common libaudit1 libcurl3t64-gnutls
98s libcurl4t64 libgirepository-1.0-1 libglib2.0-0t64 libglib2.0-data
98s libpam-modules libpam-modules-bin libpam-runtime libpam0g libplymouth5
98s libpython3-stdlib libselinux1 libsemanage-common libsemanage2 linux-base
98s lxd-installer openssh-client openssh-server openssh-sftp-server plymouth
98s plymouth-theme-ubuntu-text python3 python3-blinker python3-debconf
98s python3-jsonschema-specifications python3-minimal python3-rpds-py
98s python3-yaml sg3-utils sg3-utils-udev vim-common vim-tiny xxd
99s 43 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
99s Need to get 10.5 MB of archives.
99s After this operation, 2418 kB of additional disk space will be used.
99s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x hostname s390x 3.25 [11.2 kB]
99s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x libaudit-common all 1:4.0.2-2ubuntu1 [6578 B]
99s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libaudit1 s390x 1:4.0.2-2ubuntu1 [52.5 kB]
99s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x debconf-i18n all 1.5.87ubuntu1 [204 kB]
99s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3-minimal s390x 3.12.7-1 [27.4 kB]
99s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3 s390x 3.12.7-1 [24.0 kB]
99s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x libpython3-stdlib s390x 3.12.7-1 [10.0 kB]
99s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x python3-debconf all 1.5.87ubuntu1 [4156 B]
99s Get:9 http://ftpmaster.internal/ubuntu plucky/main s390x debconf all 1.5.87ubuntu1 [124 kB]
99s Get:10 http://ftpmaster.internal/ubuntu plucky/main s390x libpam0g s390x 1.5.3-7ubuntu4 [70.0 kB]
99s Get:11 http://ftpmaster.internal/ubuntu plucky/main s390x libselinux1 s390x 3.7-3ubuntu1 [85.2 kB]
99s Get:12 http://ftpmaster.internal/ubuntu plucky/main s390x libpam-modules-bin s390x 1.5.3-7ubuntu4 [56.2 kB]
99s Get:13 http://ftpmaster.internal/ubuntu plucky/main s390x libpam-modules s390x 1.5.3-7ubuntu4 [294 kB]
99s Get:14 http://ftpmaster.internal/ubuntu plucky/main s390x openssh-sftp-server s390x 1:9.9p1-3ubuntu2 [38.2 kB]
99s Get:15 http://ftpmaster.internal/ubuntu plucky/main s390x openssh-server s390x 1:9.9p1-3ubuntu2 [552 kB]
99s Get:16 http://ftpmaster.internal/ubuntu plucky/main s390x openssh-client s390x 1:9.9p1-3ubuntu2 [955 kB]
99s Get:17 http://ftpmaster.internal/ubuntu plucky/main s390x libpam-runtime all 1.5.3-7ubuntu4 [40.8 kB]
99s Get:18 http://ftpmaster.internal/ubuntu plucky/main s390x libsemanage-common all 3.7-2build1 [7186 B]
99s Get:19 http://ftpmaster.internal/ubuntu plucky/main s390x libsemanage2 s390x 3.7-2build1 [97.1 kB]
99s Get:20 http://ftpmaster.internal/ubuntu plucky/main s390x distro-info s390x 1.12 [20.0 kB]
99s Get:21 http://ftpmaster.internal/ubuntu plucky/main s390x gir1.2-girepository-2.0 s390x 1.82.0-2 [25.0 kB]
99s Get:22 http://ftpmaster.internal/ubuntu plucky/main s390x gir1.2-glib-2.0 s390x 2.82.2-3 [180 kB]
99s Get:23 http://ftpmaster.internal/ubuntu plucky/main s390x libglib2.0-0t64 s390x 2.82.2-3 [1575 kB]
99s Get:24 http://ftpmaster.internal/ubuntu plucky/main s390x libgirepository-1.0-1 s390x 1.82.0-2 [84.9 kB]
99s Get:25 http://ftpmaster.internal/ubuntu plucky/main s390x libglib2.0-data all 2.82.2-3 [51.7 kB]
99s Get:26 http://ftpmaster.internal/ubuntu plucky/main s390x python3-yaml s390x 6.0.2-1build1 [188 kB]
99s Get:27 http://ftpmaster.internal/ubuntu plucky/main s390x vim-tiny s390x 2:9.1.0861-1ubuntu1 [664 kB]
99s Get:28 http://ftpmaster.internal/ubuntu plucky/main s390x vim-common all 2:9.1.0861-1ubuntu1 [395 kB]
99s Get:29 http://ftpmaster.internal/ubuntu plucky/main s390x xxd s390x 2:9.1.0861-1ubuntu1 [66.6 kB]
99s Get:30 http://ftpmaster.internal/ubuntu plucky/main s390x libplymouth5 s390x 24.004.60-2ubuntu3 [150 kB]
99s Get:31 http://ftpmaster.internal/ubuntu plucky/main s390x plymouth-theme-ubuntu-text s390x 24.004.60-2ubuntu3 [10.1 kB]
99s Get:32 http://ftpmaster.internal/ubuntu plucky/main s390x plymouth s390x 24.004.60-2ubuntu3 [144 kB]
99s Get:33 http://ftpmaster.internal/ubuntu plucky/main s390x bpftrace s390x 0.21.2-2ubuntu3 [1718 kB]
99s Get:34 http://ftpmaster.internal/ubuntu plucky/main s390x curl s390x 8.9.1-2ubuntu3 [241 kB]
99s Get:35 http://ftpmaster.internal/ubuntu plucky/main s390x libcurl4t64 s390x 8.9.1-2ubuntu3 [386 kB]
99s Get:36 http://ftpmaster.internal/ubuntu plucky/main s390x libcurl3t64-gnutls s390x 8.9.1-2ubuntu3 [379 kB]
99s Get:37 http://ftpmaster.internal/ubuntu plucky/main s390x libsgutils2-1.48 s390x 1.48-0ubuntu1 [120 kB]
99s Get:38 http://ftpmaster.internal/ubuntu plucky/main s390x linux-base all 4.10.1ubuntu1 [34.8 kB]
99s Get:39 http://ftpmaster.internal/ubuntu plucky/main s390x lxd-installer all 10 [5264 B]
99s Get:40 http://ftpmaster.internal/ubuntu plucky/main s390x python3-blinker all 1.9.0-1 [10.7 kB]
99s Get:41 http://ftpmaster.internal/ubuntu plucky/main s390x python3-rpds-py s390x 0.21.0-2ubuntu1 [368 kB]
99s Get:42 http://ftpmaster.internal/ubuntu plucky/main s390x python3-jsonschema-specifications all 2023.12.1-2 [9116 B]
99s Get:43 http://ftpmaster.internal/ubuntu plucky/main s390x sg3-utils s390x 1.48-0ubuntu1 [1027 kB]
99s Get:44 http://ftpmaster.internal/ubuntu plucky/main s390x sg3-utils-udev all 1.48-0ubuntu1 [6608 B]
100s Preconfiguring packages ...
100s Fetched 10.5 MB in 1s (11.3 MB/s)
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../hostname_3.25_s390x.deb ...
100s Unpacking hostname (3.25) over (3.23+nmu2ubuntu2) ...
100s Setting up hostname (3.25) ...
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../libaudit-common_1%3a4.0.2-2ubuntu1_all.deb ...
100s Unpacking libaudit-common (1:4.0.2-2ubuntu1) over (1:4.0.1-1ubuntu2) ...
100s Setting up libaudit-common (1:4.0.2-2ubuntu1) ...
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../libaudit1_1%3a4.0.2-2ubuntu1_s390x.deb ...
100s Unpacking libaudit1:s390x (1:4.0.2-2ubuntu1) over (1:4.0.1-1ubuntu2) ...
100s Setting up libaudit1:s390x (1:4.0.2-2ubuntu1) ...
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../debconf-i18n_1.5.87ubuntu1_all.deb ...
100s Unpacking debconf-i18n (1.5.87ubuntu1) over (1.5.86ubuntu1) ...
100s Preparing to unpack .../python3-minimal_3.12.7-1_s390x.deb ...
100s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ...
100s Setting up python3-minimal (3.12.7-1) ...
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../python3_3.12.7-1_s390x.deb ...
100s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ...
100s Preparing to unpack .../libpython3-stdlib_3.12.7-1_s390x.deb ...
100s Unpacking libpython3-stdlib:s390x (3.12.7-1) over (3.12.6-0ubuntu1) ...
100s Preparing to unpack .../python3-debconf_1.5.87ubuntu1_all.deb ...
100s Unpacking python3-debconf (1.5.87ubuntu1) over (1.5.86ubuntu1) ...
100s Preparing to unpack .../debconf_1.5.87ubuntu1_all.deb ...
100s Unpacking debconf (1.5.87ubuntu1) over (1.5.86ubuntu1) ...
100s Setting up debconf (1.5.87ubuntu1) ...
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../libpam0g_1.5.3-7ubuntu4_s390x.deb ...
100s Unpacking libpam0g:s390x (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
100s Setting up libpam0g:s390x (1.5.3-7ubuntu4) ...
100s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
100s Preparing to unpack .../libselinux1_3.7-3ubuntu1_s390x.deb ...
100s Unpacking libselinux1:s390x (3.7-3ubuntu1) over (3.5-2ubuntu5) ...
101s Setting up libselinux1:s390x (3.7-3ubuntu1) ...
101s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
101s Preparing to unpack .../libpam-modules-bin_1.5.3-7ubuntu4_s390x.deb ...
101s Unpacking libpam-modules-bin (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
101s Setting up libpam-modules-bin (1.5.3-7ubuntu4) ...
101s pam_namespace.service is a disabled or a static unit not running, not starting it.
101s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
101s Preparing to unpack .../libpam-modules_1.5.3-7ubuntu4_s390x.deb ...
101s Unpacking libpam-modules:s390x (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
101s Setting up libpam-modules:s390x (1.5.3-7ubuntu4) ...
101s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55541 files and directories currently installed.)
101s Preparing to unpack .../openssh-sftp-server_1%3a9.9p1-3ubuntu2_s390x.deb ...
101s Unpacking openssh-sftp-server (1:9.9p1-3ubuntu2) over (1:9.7p1-7ubuntu5) ...
101s Preparing to unpack .../openssh-server_1%3a9.9p1-3ubuntu2_s390x.deb ...
101s Unpacking openssh-server (1:9.9p1-3ubuntu2) over (1:9.7p1-7ubuntu5) ...
101s Preparing to unpack .../openssh-client_1%3a9.9p1-3ubuntu2_s390x.deb ...
101s Unpacking openssh-client (1:9.9p1-3ubuntu2) over (1:9.7p1-7ubuntu5) ...
101s Preparing to unpack .../libpam-runtime_1.5.3-7ubuntu4_all.deb ...
101s Unpacking libpam-runtime (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
101s Setting up libpam-runtime (1.5.3-7ubuntu4) ...
101s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55543 files and directories currently installed.)
101s Preparing to unpack .../libsemanage-common_3.7-2build1_all.deb ...
101s Unpacking libsemanage-common (3.7-2build1) over (3.5-1build6) ...
101s Setting up libsemanage-common (3.7-2build1) ...
101s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55542 files and directories currently installed.)
101s Preparing to unpack .../libsemanage2_3.7-2build1_s390x.deb ...
101s Unpacking libsemanage2:s390x (3.7-2build1) over (3.5-1build6) ...
101s Setting up libsemanage2:s390x (3.7-2build1) ...
101s (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 55542 files and directories currently installed.)
101s Preparing to unpack .../00-distro-info_1.12_s390x.deb ...
101s Unpacking distro-info (1.12) over (1.9) ...
101s Preparing to unpack .../01-gir1.2-girepository-2.0_1.82.0-2_s390x.deb ...
101s Unpacking gir1.2-girepository-2.0:s390x (1.82.0-2) over (1.80.1-4) ...
101s Preparing to unpack .../02-gir1.2-glib-2.0_2.82.2-3_s390x.deb ...
101s Unpacking gir1.2-glib-2.0:s390x (2.82.2-3) over (2.82.1-0ubuntu1) ...
101s Preparing to unpack .../03-libglib2.0-0t64_2.82.2-3_s390x.deb ...
101s Unpacking libglib2.0-0t64:s390x (2.82.2-3) over (2.82.1-0ubuntu1) ...
101s Preparing to unpack .../04-libgirepository-1.0-1_1.82.0-2_s390x.deb ...
101s Unpacking libgirepository-1.0-1:s390x (1.82.0-2) over (1.80.1-4) ...
101s Preparing to unpack .../05-libglib2.0-data_2.82.2-3_all.deb ...
101s Unpacking libglib2.0-data (2.82.2-3) over (2.82.1-0ubuntu1) ...
101s Preparing to unpack .../06-python3-yaml_6.0.2-1build1_s390x.deb ...
101s Unpacking python3-yaml (6.0.2-1build1) over (6.0.2-1) ...
101s Preparing to unpack .../07-vim-tiny_2%3a9.1.0861-1ubuntu1_s390x.deb ...
101s Unpacking vim-tiny (2:9.1.0861-1ubuntu1) over (2:9.1.0777-1ubuntu1) ...
101s Preparing to unpack .../08-vim-common_2%3a9.1.0861-1ubuntu1_all.deb ...
101s Unpacking vim-common (2:9.1.0861-1ubuntu1) over (2:9.1.0777-1ubuntu1) ...
101s Preparing to unpack .../09-xxd_2%3a9.1.0861-1ubuntu1_s390x.deb ...
101s Unpacking xxd (2:9.1.0861-1ubuntu1) over (2:9.1.0777-1ubuntu1) ...
102s Preparing to unpack .../10-libplymouth5_24.004.60-2ubuntu3_s390x.deb ...
102s Unpacking libplymouth5:s390x (24.004.60-2ubuntu3) over (24.004.60-1ubuntu11) ...
102s Preparing to unpack .../11-plymouth-theme-ubuntu-text_24.004.60-2ubuntu3_s390x.deb ...
102s Unpacking plymouth-theme-ubuntu-text (24.004.60-2ubuntu3) over (24.004.60-1ubuntu11) ...
102s Preparing to unpack .../12-plymouth_24.004.60-2ubuntu3_s390x.deb ...
102s Unpacking plymouth (24.004.60-2ubuntu3) over (24.004.60-1ubuntu11) ...
102s Preparing to unpack .../13-bpftrace_0.21.2-2ubuntu3_s390x.deb ...
102s Unpacking bpftrace (0.21.2-2ubuntu3) over (0.21.2-2ubuntu2) ...
102s Preparing to unpack .../14-curl_8.9.1-2ubuntu3_s390x.deb ...
102s Unpacking curl (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ...
102s Preparing to unpack .../15-libcurl4t64_8.9.1-2ubuntu3_s390x.deb ...
102s Unpacking libcurl4t64:s390x (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ...
102s Preparing to unpack .../16-libcurl3t64-gnutls_8.9.1-2ubuntu3_s390x.deb ...
102s Unpacking libcurl3t64-gnutls:s390x (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ...
102s Selecting previously unselected package libsgutils2-1.48:s390x.
102s Preparing to unpack .../17-libsgutils2-1.48_1.48-0ubuntu1_s390x.deb ...
102s Unpacking libsgutils2-1.48:s390x (1.48-0ubuntu1) ...
102s Preparing to unpack .../18-linux-base_4.10.1ubuntu1_all.deb ...
102s Unpacking linux-base (4.10.1ubuntu1) over (4.5ubuntu9) ...
102s Preparing to unpack .../19-lxd-installer_10_all.deb ...
102s Unpacking lxd-installer (10) over (9) ...
102s Preparing to unpack .../20-python3-blinker_1.9.0-1_all.deb ...
102s Unpacking python3-blinker (1.9.0-1) over (1.8.2-1) ...
102s Preparing to unpack .../21-python3-rpds-py_0.21.0-2ubuntu1_s390x.deb ...
102s Unpacking python3-rpds-py (0.21.0-2ubuntu1) over (0.20.0-0ubuntu3) ...
102s Preparing to unpack .../22-python3-jsonschema-specifications_2023.12.1-2_all.deb ...
102s Unpacking python3-jsonschema-specifications (2023.12.1-2) over (2023.12.1-1ubuntu1) ...
102s Preparing to unpack .../23-sg3-utils_1.48-0ubuntu1_s390x.deb ...
102s Unpacking sg3-utils (1.48-0ubuntu1) over (1.46-3ubuntu5) ...
102s Preparing to unpack .../24-sg3-utils-udev_1.48-0ubuntu1_all.deb ...
102s Unpacking sg3-utils-udev (1.48-0ubuntu1) over (1.46-3ubuntu5) ...
102s Setting up distro-info (1.12) ...
102s Setting up linux-base (4.10.1ubuntu1) ...
102s Setting up libcurl4t64:s390x (8.9.1-2ubuntu3) ...
102s Setting up bpftrace (0.21.2-2ubuntu3) ...
102s Setting up openssh-client (1:9.9p1-3ubuntu2) ...
102s Setting up libcurl3t64-gnutls:s390x (8.9.1-2ubuntu3) ...
102s Setting up libsgutils2-1.48:s390x (1.48-0ubuntu1) ...
102s Setting up debconf-i18n (1.5.87ubuntu1) ...
102s Setting up xxd (2:9.1.0861-1ubuntu1) ...
102s Setting up libglib2.0-0t64:s390x (2.82.2-3) ...
102s No schema files found: doing nothing.
102s Setting up libglib2.0-data (2.82.2-3) ...
102s Setting up vim-common (2:9.1.0861-1ubuntu1) ...
102s Setting up gir1.2-glib-2.0:s390x (2.82.2-3) ...
102s Setting up lxd-installer (10) ...
102s Setting up libplymouth5:s390x (24.004.60-2ubuntu3) ...
102s Setting up libgirepository-1.0-1:s390x (1.82.0-2) ...
102s Setting up curl (8.9.1-2ubuntu3) ...
102s Setting up libpython3-stdlib:s390x (3.12.7-1) ...
102s Setting up sg3-utils (1.48-0ubuntu1) ...
102s Setting up openssh-sftp-server (1:9.9p1-3ubuntu2) ...
102s Setting up openssh-server (1:9.9p1-3ubuntu2) ...
102s Installing new version of config file /etc/ssh/moduli ...
102s Replacing config file /etc/ssh/sshd_config with new version
103s Setting up plymouth (24.004.60-2ubuntu3) ...
103s update-initramfs: Generating /boot/initrd.img-6.11.0-8-generic
103s W: No lz4 in /usr/bin:/sbin:/bin, using gzip
105s Using config file '/etc/zipl.conf'
105s Building bootmap in '/boot'
105s Adding IPL section 'ubuntu' (default)
105s Preparing boot device for LD-IPL: vda (0000).
105s Done.
105s update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
105s update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
106s Setting up python3 (3.12.7-1) ...
106s Setting up vim-tiny (2:9.1.0861-1ubuntu1) ...
106s Setting up sg3-utils-udev (1.48-0ubuntu1) ...
106s update-initramfs: deferring update (trigger activated)
106s Setting up plymouth-theme-ubuntu-text (24.004.60-2ubuntu3) ...
106s update-initramfs: deferring update (trigger activated)
106s Setting up gir1.2-girepository-2.0:s390x (1.82.0-2) ...
106s Setting up python3-rpds-py (0.21.0-2ubuntu1) ...
106s Setting up python3-jsonschema-specifications (2023.12.1-2) ...
106s Setting up python3-blinker (1.9.0-1) ...
106s Setting up python3-debconf (1.5.87ubuntu1) ...
106s Setting up python3-yaml (6.0.2-1build1) ...
106s Processing triggers for man-db (2.13.0-1) ...
107s Processing triggers for initramfs-tools (0.142ubuntu35) ...
107s update-initramfs: Generating /boot/initrd.img-6.11.0-8-generic
107s W: No lz4 in /usr/bin:/sbin:/bin, using gzip
109s Using config file '/etc/zipl.conf'
109s Building bootmap in '/boot'
109s Adding IPL section 'ubuntu' (default)
109s Preparing boot device for LD-IPL: vda (0000).
109s Done.
109s Processing triggers for libc-bin (2.40-1ubuntu3) ...
109s Processing triggers for ufw (0.36.2-8) ...
109s Reading package lists...
109s Building dependency tree...
109s Reading state information...
110s The following packages will be REMOVED:
110s libsgutils2-1.46-2*
110s 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
110s After this operation, 294 kB disk space will be freed.
110s (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 ... 55573 files and directories currently installed.)
110s Removing libsgutils2-1.46-2:s390x (1.46-3ubuntu5) ...
110s Processing triggers for libc-bin (2.40-1ubuntu3) ...
110s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease
110s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease
110s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease
110s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease
111s Reading package lists...
111s Reading package lists...
111s Building dependency tree...
111s Reading state information...
111s Calculating upgrade...
112s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
112s Reading package lists...
112s Building dependency tree...
112s Reading state information...
112s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
112s autopkgtest [17:49:56]: rebooting testbed after setup commands that affected boot
116s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds...
130s autopkgtest [17:50:14]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP Mon Sep 16 12:49:35 UTC 2024
133s autopkgtest [17:50:17]: @@@@@@@@@@@@@@@@@@@@ apt-source loguru
134s Get:1 http://ftpmaster.internal/ubuntu plucky/universe loguru 0.7.2-3 (dsc) [2372 B]
134s Get:2 http://ftpmaster.internal/ubuntu plucky/universe loguru 0.7.2-3 (tar) [444 kB]
134s Get:3 http://ftpmaster.internal/ubuntu plucky/universe loguru 0.7.2-3 (diff) [4080 B]
134s gpgv: Signature made Fri Jan 5 17:19:54 2024 UTC
134s gpgv: using RSA key F1F007320A035541F0A663CA578A0494D1C646D1
134s gpgv: issuer "tille@debian.org"
134s gpgv: Can't check signature: No public key
134s dpkg-source: warning: cannot verify inline signature for ./loguru_0.7.2-3.dsc: no acceptable signature found
135s autopkgtest [17:50:19]: testing package loguru version 0.7.2-3
135s autopkgtest [17:50:19]: build not needed
135s autopkgtest [17:50:19]: test run-unit-test: preparing testbed
136s Reading package lists...
137s Building dependency tree...
137s Reading state information...
137s Starting pkgProblemResolver with broken count: 0
137s Starting 2 pkgProblemResolver with broken count: 0
137s Done
137s The following additional packages will be installed:
137s libpython3.13-minimal libpython3.13-stdlib python3-all python3-colorama
137s python3-dateutil python3-freezegun python3-iniconfig python3-loguru
137s python3-mypy python3-mypy-extensions python3-packaging python3-pluggy
137s python3-psutil python3-pytest python3.13 python3.13-minimal
137s Suggested packages:
137s python3.13-venv python3.13-doc binfmt-support
137s Recommended packages:
137s python3-lxml python3-orjson
137s The following NEW packages will be installed:
137s autopkgtest-satdep libpython3.13-minimal libpython3.13-stdlib python3-all
137s python3-colorama python3-dateutil python3-freezegun python3-iniconfig
137s python3-loguru python3-mypy python3-mypy-extensions python3-packaging
137s python3-pluggy python3-psutil python3-pytest python3.13 python3.13-minimal
137s 0 upgraded, 17 newly installed, 0 to remove and 0 not upgraded.
137s Need to get 22.5 MB/22.5 MB of archives.
137s After this operation, 96.1 MB of additional disk space will be used.
137s Get:1 /tmp/autopkgtest.UqIti3/1-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [740 B]
137s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.13-minimal s390x 3.13.0-2 [877 kB]
138s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x python3.13-minimal s390x 3.13.0-2 [2172 kB]
138s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.13-stdlib s390x 3.13.0-2 [2086 kB]
138s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x python3.13 s390x 3.13.0-2 [719 kB]
138s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3-all s390x 3.12.7-1 [890 B]
138s Get:7 http://ftpmaster.internal/ubuntu plucky/main s390x python3-colorama all 0.4.6-4 [32.1 kB]
138s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x python3-dateutil all 2.9.0-3 [80.2 kB]
138s Get:9 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-freezegun all 1.5.1-1.1 [15.9 kB]
138s Get:10 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniconfig all 1.1.1-2 [6024 B]
138s Get:11 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-loguru all 0.7.2-3 [53.2 kB]
138s Get:12 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-mypy-extensions all 1.0.0-1 [6148 B]
138s Get:13 http://ftpmaster.internal/ubuntu plucky/main s390x python3-psutil s390x 5.9.8-2build3 [195 kB]
138s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x python3-mypy s390x 1.13.0-2 [15.9 MB]
138s Get:15 http://ftpmaster.internal/ubuntu plucky/main s390x python3-packaging all 24.2-1 [51.5 kB]
138s Get:16 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pluggy all 1.5.0-1 [21.0 kB]
138s Get:17 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pytest all 8.3.3-1 [251 kB]
138s Fetched 22.5 MB in 1s (18.8 MB/s)
138s Selecting previously unselected package libpython3.13-minimal:s390x.
138s (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 ... 55568 files and directories currently installed.)
138s Preparing to unpack .../00-libpython3.13-minimal_3.13.0-2_s390x.deb ...
138s Unpacking libpython3.13-minimal:s390x (3.13.0-2) ...
139s Selecting previously unselected package python3.13-minimal.
139s Preparing to unpack .../01-python3.13-minimal_3.13.0-2_s390x.deb ...
139s Unpacking python3.13-minimal (3.13.0-2) ...
139s Selecting previously unselected package libpython3.13-stdlib:s390x.
139s Preparing to unpack .../02-libpython3.13-stdlib_3.13.0-2_s390x.deb ...
139s Unpacking libpython3.13-stdlib:s390x (3.13.0-2) ...
139s Selecting previously unselected package python3.13.
139s Preparing to unpack .../03-python3.13_3.13.0-2_s390x.deb ...
139s Unpacking python3.13 (3.13.0-2) ...
139s Selecting previously unselected package python3-all.
139s Preparing to unpack .../04-python3-all_3.12.7-1_s390x.deb ...
139s Unpacking python3-all (3.12.7-1) ...
139s Selecting previously unselected package python3-colorama.
139s Preparing to unpack .../05-python3-colorama_0.4.6-4_all.deb ...
139s Unpacking python3-colorama (0.4.6-4) ...
139s Selecting previously unselected package python3-dateutil.
139s Preparing to unpack .../06-python3-dateutil_2.9.0-3_all.deb ...
139s Unpacking python3-dateutil (2.9.0-3) ...
139s Selecting previously unselected package python3-freezegun.
139s Preparing to unpack .../07-python3-freezegun_1.5.1-1.1_all.deb ...
139s Unpacking python3-freezegun (1.5.1-1.1) ...
139s Selecting previously unselected package python3-iniconfig.
139s Preparing to unpack .../08-python3-iniconfig_1.1.1-2_all.deb ...
139s Unpacking python3-iniconfig (1.1.1-2) ...
139s Selecting previously unselected package python3-loguru.
139s Preparing to unpack .../09-python3-loguru_0.7.2-3_all.deb ...
139s Unpacking python3-loguru (0.7.2-3) ...
139s Selecting previously unselected package python3-mypy-extensions.
139s Preparing to unpack .../10-python3-mypy-extensions_1.0.0-1_all.deb ...
139s Unpacking python3-mypy-extensions (1.0.0-1) ...
139s Selecting previously unselected package python3-psutil.
139s Preparing to unpack .../11-python3-psutil_5.9.8-2build3_s390x.deb ...
139s Unpacking python3-psutil (5.9.8-2build3) ...
139s Selecting previously unselected package python3-mypy.
139s Preparing to unpack .../12-python3-mypy_1.13.0-2_s390x.deb ...
139s Unpacking python3-mypy (1.13.0-2) ...
139s Selecting previously unselected package python3-packaging.
139s Preparing to unpack .../13-python3-packaging_24.2-1_all.deb ...
139s Unpacking python3-packaging (24.2-1) ...
139s Selecting previously unselected package python3-pluggy.
139s Preparing to unpack .../14-python3-pluggy_1.5.0-1_all.deb ...
139s Unpacking python3-pluggy (1.5.0-1) ...
139s Selecting previously unselected package python3-pytest.
139s Preparing to unpack .../15-python3-pytest_8.3.3-1_all.deb ...
139s Unpacking python3-pytest (8.3.3-1) ...
139s Selecting previously unselected package autopkgtest-satdep.
139s Preparing to unpack .../16-1-autopkgtest-satdep.deb ...
139s Unpacking autopkgtest-satdep (0) ...
139s Setting up python3-iniconfig (1.1.1-2) ...
139s Setting up python3-colorama (0.4.6-4) ...
139s Setting up python3-mypy-extensions (1.0.0-1) ...
140s Setting up python3-loguru (0.7.2-3) ...
140s Setting up python3-psutil (5.9.8-2build3) ...
140s Setting up libpython3.13-minimal:s390x (3.13.0-2) ...
140s Setting up python3-packaging (24.2-1) ...
140s Setting up python3-mypy (1.13.0-2) ...
143s Setting up python3-pluggy (1.5.0-1) ...
143s Setting up python3.13-minimal (3.13.0-2) ...
144s Setting up python3-dateutil (2.9.0-3) ...
144s Setting up libpython3.13-stdlib:s390x (3.13.0-2) ...
144s Setting up python3-freezegun (1.5.1-1.1) ...
144s Setting up python3.13 (3.13.0-2) ...
145s Setting up python3-pytest (8.3.3-1) ...
145s Setting up python3-all (3.12.7-1) ...
145s Setting up autopkgtest-satdep (0) ...
145s Processing triggers for man-db (2.13.0-1) ...
146s Processing triggers for systemd (256.5-2ubuntu4) ...
148s (Reading database ... 58196 files and directories currently installed.)
148s Removing autopkgtest-satdep (0) ...
148s autopkgtest [17:50:32]: test run-unit-test: [-----------------------
148s Testing with python3.13 in /tmp/autopkgtest.UqIti3/autopkgtest_tmp:
149s ============================= test session starts ==============================
149s platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.13
149s cachedir: .pytest_cache
149s rootdir: /tmp/autopkgtest.UqIti3/autopkgtest_tmp
149s plugins: typeguard-4.4.1
149s collecting ... collected 1497 items
149s
149s tests/test_activation.py::test_disable[-False] PASSED [ 0%]
149s tests/test_activation.py::test_disable[tests-False] PASSED [ 0%]
149s tests/test_activation.py::test_disable[test-True] PASSED [ 0%]
149s tests/test_activation.py::test_disable[testss-True] PASSED [ 0%]
149s tests/test_activation.py::test_disable[tests.-True] PASSED [ 0%]
149s tests/test_activation.py::test_disable[tests.test_activation-False] PASSED [ 0%]
149s tests/test_activation.py::test_disable[tests.test_activation.-True] PASSED [ 0%]
149s tests/test_activation.py::test_disable[test_activation-True] PASSED [ 0%]
149s tests/test_activation.py::test_disable[.-True] PASSED [ 0%]
149s tests/test_activation.py::test_enable[-True] PASSED [ 0%]
149s tests/test_activation.py::test_enable[tests-True] PASSED [ 0%]
149s tests/test_activation.py::test_enable[test-False] PASSED [ 0%]
149s tests/test_activation.py::test_enable[testss-False] PASSED [ 0%]
149s tests/test_activation.py::test_enable[tests.-False] PASSED [ 0%]
149s tests/test_activation.py::test_enable[tests.test_activation-True] PASSED [ 1%]
149s tests/test_activation.py::test_enable[tests.test_activation.-False] PASSED [ 1%]
149s tests/test_activation.py::test_enable[test_activation-False] PASSED [ 1%]
149s tests/test_activation.py::test_enable[.-False] PASSED [ 1%]
149s tests/test_activation.py::test_log_before_enable PASSED [ 1%]
149s tests/test_activation.py::test_log_before_disable PASSED [ 1%]
149s tests/test_activation.py::test_multiple_activations PASSED [ 1%]
149s tests/test_activation.py::test_log_before_enable_f_globals_name_absent PASSED [ 1%]
149s tests/test_activation.py::test_log_before_disable_f_globals_name_absent PASSED [ 1%]
149s tests/test_activation.py::test_f_globals_name_absent_with_others PASSED [ 1%]
149s tests/test_activation.py::test_invalid_enable_name[42] PASSED [ 1%]
149s tests/test_activation.py::test_invalid_enable_name[name1] PASSED [ 1%]
149s tests/test_activation.py::test_invalid_enable_name[name2] PASSED [ 1%]
149s tests/test_activation.py::test_invalid_disable_name[42] PASSED [ 1%]
149s tests/test_activation.py::test_invalid_disable_name[name1] PASSED [ 1%]
149s tests/test_activation.py::test_invalid_disable_name[name2] PASSED [ 2%]
149s tests/test_add_option_backtrace.py::test_backtrace PASSED [ 2%]
149s tests/test_add_option_catch.py::test_catch_is_true PASSED [ 2%]
149s tests/test_add_option_catch.py::test_catch_is_false PASSED [ 2%]
150s tests/test_add_option_catch.py::test_no_sys_stderr PASSED [ 2%]
150s tests/test_add_option_catch.py::test_broken_sys_stderr PASSED [ 2%]
150s tests/test_add_option_catch.py::test_encoding_error PASSED [ 2%]
150s tests/test_add_option_catch.py::test_unprintable_record PASSED [ 2%]
150s tests/test_add_option_catch.py::test_broken_sink_message[False] PASSED [ 2%]
150s tests/test_add_option_catch.py::test_broken_sink_message[True] PASSED [ 2%]
150s tests/test_add_option_catch.py::test_broken_sink_caught_keep_working[False] PASSED [ 2%]
150s tests/test_add_option_catch.py::test_broken_sink_caught_keep_working[True] PASSED [ 2%]
150s tests/test_add_option_catch.py::test_broken_sink_not_caught_enqueue PASSED [ 2%]
150s tests/test_add_option_colorize.py::test_colorized_format[{message}-Foo-\x1b[31mFoo\x1b[0m\n] PASSED [ 2%]
150s tests/test_add_option_colorize.py::test_colorized_format[-Bar-\x1b[31mBar\x1b[0m] PASSED [ 2%]
150s tests/test_add_option_colorize.py::test_colorized_format[{message}-Baz-Baz\n] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_colorized_format[{{{message:}}}-A-{\x1b[31mA\x1b[0m}\n] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorized_format[{message}-Foo-Foo\n] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorized_format[-Bar-Bar] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorized_format[{message}-Baz-Baz\n] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorized_format[{{{message:}}}-A-{A}\n] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_colorize_stream[stream0] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_colorize_stream[stream1] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_colorize_stream[stream2] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorize_stream[stream0] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorize_stream[stream1] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_decolorize_stream[stream2] PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_automatic_detection_when_stream_is_a_tty PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_automatic_detection_when_stream_is_not_a_tty PASSED [ 3%]
150s tests/test_add_option_colorize.py::test_automatic_detection_when_stream_has_no_isatty PASSED [ 3%]
150s tests/test_add_option_context.py::test_using_multiprocessing_directly_if_context_is_none PASSED [ 4%]
150s tests/test_add_option_context.py::test_fork_context_as_string[fork] PASSED [ 4%]
150s tests/test_add_option_context.py::test_fork_context_as_string[forkserver] PASSED [ 4%]
150s tests/test_add_option_context.py::test_spawn_context_as_string PASSED [ 4%]
150s tests/test_add_option_context.py::test_fork_context_as_object[fork] PASSED [ 4%]
150s tests/test_add_option_context.py::test_fork_context_as_object[forkserver] PASSED [ 4%]
150s tests/test_add_option_context.py::test_spawn_context_as_object PASSED [ 4%]
150s tests/test_add_option_context.py::test_global_start_method_is_none_if_enqueue_is_false PASSED [ 4%]
150s tests/test_add_option_context.py::test_invalid_context_name PASSED [ 4%]
150s tests/test_add_option_context.py::test_invalid_context_object[42] PASSED [ 4%]
150s tests/test_add_option_context.py::test_invalid_context_object[context1] PASSED [ 4%]
150s tests/test_add_option_diagnose.py::test_diagnose PASSED [ 4%]
150s tests/test_add_option_enqueue.py::test_enqueue PASSED [ 4%]
151s tests/test_add_option_enqueue.py::test_enqueue_with_exception PASSED [ 4%]
151s tests/test_add_option_enqueue.py::test_caught_exception_queue_put PASSED [ 4%]
151s tests/test_add_option_enqueue.py::test_caught_exception_queue_get PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_caught_exception_sink_write PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_not_caught_exception_queue_put PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_not_caught_exception_queue_get PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_not_caught_exception_sink_write PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_not_caught_exception_sink_write_then_complete PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_not_caught_exception_queue_get_then_complete PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_wait_for_all_messages_enqueued PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_logging_not_picklable_exception[exception_value0] PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_logging_not_picklable_exception[exception_value1] PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_logging_not_unpicklable_exception[exception_value0] PASSED [ 5%]
151s tests/test_add_option_enqueue.py::test_logging_not_unpicklable_exception[exception_value1] PASSED [ 5%]
151s tests/test_add_option_filter.py::test_filterd_in[None] PASSED [ 5%]
151s tests/test_add_option_filter.py::test_filterd_in[] PASSED [ 5%]
151s tests/test_add_option_filter.py::test_filterd_in[tests] PASSED [ 5%]
151s tests/test_add_option_filter.py::test_filterd_in[tests.test_add_option_filter] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[0] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[1] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter6] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter7] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter8] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter9] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter10] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter11] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter12] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter13] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filterd_in[filter14] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filtered_out[test] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filtered_out[testss] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filtered_out[tests.] PASSED [ 6%]
151s tests/test_add_option_filter.py::test_filtered_out[tests.test_add_option_filter.] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[.] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[0] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[1] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[filter7] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[filter8] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[filter9] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[filter10] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[filter11] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_out[filter12] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[None] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter2] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter3] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter4] PASSED [ 7%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter5] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter6] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_in_f_globals_name_absent[filter7] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[tests] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[filter3] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[filter4] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_filtered_out_f_globals_name_absent[filter5] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter[-1] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter[3.4] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter[filter2] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter0] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter1] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter2] PASSED [ 8%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter3] PASSED [ 9%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_types[filter4] PASSED [ 9%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_values[filter0] PASSED [ 9%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_values[filter1] PASSED [ 9%]
151s tests/test_add_option_filter.py::test_invalid_filter_dict_values[filter2] PASSED [ 9%]
151s tests/test_add_option_filter.py::test_filter_dict_with_custom_level PASSED [ 9%]
151s tests/test_add_option_filter.py::test_invalid_filter_builtin PASSED [ 9%]
151s tests/test_add_option_format.py::test_format[a-Message: {message}-Message: a\n] PASSED [ 9%]
151s tests/test_add_option_format.py::test_format[b-Nope-Nope\n] PASSED [ 9%]
151s tests/test_add_option_format.py::test_format[c-{level} {message} {level}-DEBUG c DEBUG\n] PASSED [ 9%]
151s tests/test_add_option_format.py::test_format[d-{message} {level} {level.no} {level.name}-d DEBUG 10 DEBUG\n] PASSED [ 9%]
151s tests/test_add_option_format.py::test_format[e--e] PASSED [ 9%]
151s tests/test_add_option_format.py::test_format[f--f DEBUG] PASSED [ 9%]
151s tests/test_add_option_format.py::test_progressive_format PASSED [ 9%]
151s tests/test_add_option_format.py::test_function_format_without_exception PASSED [ 9%]
151s tests/test_add_option_format.py::test_function_format_with_exception PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_format[-1] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_format[3.4] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_format[format2] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_markups[>] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_markups[] PASSED [ 10%]
151s tests/test_add_option_format.py::test_markup_in_field[True] PASSED [ 10%]
151s tests/test_add_option_format.py::test_markup_in_field[False] PASSED [ 10%]
151s tests/test_add_option_format.py::test_invalid_format_builtin PASSED [ 10%]
151s tests/test_add_option_kwargs.py::test_file_mode_a PASSED [ 10%]
151s tests/test_add_option_kwargs.py::test_file_mode_w PASSED [ 10%]
151s tests/test_add_option_kwargs.py::test_file_auto_buffering PASSED [ 10%]
151s tests/test_add_option_kwargs.py::test_file_line_buffering PASSED [ 11%]
151s tests/test_add_option_kwargs.py::test_invalid_function_kwargs PASSED [ 11%]
151s tests/test_add_option_kwargs.py::test_invalid_file_object_kwargs PASSED [ 11%]
151s tests/test_add_option_kwargs.py::test_invalid_file_kwargs PASSED [ 11%]
151s tests/test_add_option_kwargs.py::test_invalid_coroutine_kwargs PASSED [ 11%]
151s tests/test_add_option_level.py::test_level_low_enough[0] PASSED [ 11%]
151s tests/test_add_option_level.py::test_level_low_enough[TRACE] PASSED [ 11%]
151s tests/test_add_option_level.py::test_level_low_enough[INFO] PASSED [ 11%]
151s tests/test_add_option_level.py::test_level_low_enough[20] PASSED [ 11%]
151s tests/test_add_option_level.py::test_level_too_high[WARNING] PASSED [ 11%]
151s tests/test_add_option_level.py::test_level_too_high[25] PASSED [ 11%]
151s tests/test_add_option_level.py::test_invalid_level[3.4] PASSED [ 11%]
151s tests/test_add_option_level.py::test_invalid_level[level1] PASSED [ 11%]
151s tests/test_add_option_level.py::test_unknown_level[foo] PASSED [ 11%]
151s tests/test_add_option_level.py::test_unknown_level[-1] PASSED [ 11%]
151s tests/test_add_option_serialize.py::test_serialize PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_non_ascii_characters PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_exception PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_exception_without_context PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_exception_none_tuple PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_exception_instance PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_with_catch_decorator PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_with_record_option PASSED [ 12%]
151s tests/test_add_option_serialize.py::test_serialize_not_serializable PASSED [ 12%]
151s tests/test_add_sinks.py::test_stdout_sink[0] PASSED [ 12%]
151s tests/test_add_sinks.py::test_stdout_sink[1] PASSED [ 12%]
151s tests/test_add_sinks.py::test_stdout_sink[2] PASSED [ 12%]
151s tests/test_add_sinks.py::test_stderr_sink[0] PASSED [ 12%]
151s tests/test_add_sinks.py::test_stderr_sink[1] PASSED [ 12%]
151s tests/test_add_sinks.py::test_stderr_sink[2] PASSED [ 12%]
151s tests/test_add_sinks.py::test_devnull[0] PASSED [ 13%]
151s tests/test_add_sinks.py::test_devnull[1] PASSED [ 13%]
151s tests/test_add_sinks.py::test_devnull[2] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[str-0] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[str-1] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[str-2] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[Path-0] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[Path-1] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[Path-2] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[0-0] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[0-1] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[0-2] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[1-0] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[1-1] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink[1-2] PASSED [ 13%]
151s tests/test_add_sinks.py::test_file_sink_folder_creation[0] PASSED [ 14%]
152s tests/test_add_sinks.py::test_file_sink_folder_creation[1] PASSED [ 14%]
152s tests/test_add_sinks.py::test_file_sink_folder_creation[2] PASSED [ 14%]
152s tests/test_add_sinks.py::test_function_sink[0] PASSED [ 14%]
152s tests/test_add_sinks.py::test_function_sink[1] PASSED [ 14%]
152s tests/test_add_sinks.py::test_function_sink[2] PASSED [ 14%]
152s tests/test_add_sinks.py::test_coroutine_sink[0] PASSED [ 14%]
152s tests/test_add_sinks.py::test_coroutine_sink[1] PASSED [ 14%]
152s tests/test_add_sinks.py::test_coroutine_sink[2] PASSED [ 14%]
152s tests/test_add_sinks.py::test_file_object_sink[0] PASSED [ 14%]
152s tests/test_add_sinks.py::test_file_object_sink[1] PASSED [ 14%]
152s tests/test_add_sinks.py::test_file_object_sink[2] PASSED [ 14%]
152s tests/test_add_sinks.py::test_standard_handler_sink[0] PASSED [ 14%]
152s tests/test_add_sinks.py::test_standard_handler_sink[1] PASSED [ 14%]
152s tests/test_add_sinks.py::test_standard_handler_sink[2] PASSED [ 14%]
152s tests/test_add_sinks.py::test_flush[0] PASSED [ 15%]
152s tests/test_add_sinks.py::test_flush[1] PASSED [ 15%]
152s tests/test_add_sinks.py::test_flush[2] PASSED [ 15%]
152s tests/test_add_sinks.py::test_file_sink_ascii_encoding PASSED [ 15%]
152s tests/test_add_sinks.py::test_file_sink_utf8_encoding PASSED [ 15%]
152s tests/test_add_sinks.py::test_file_sink_default_encoding PASSED [ 15%]
152s tests/test_add_sinks.py::test_disabled_logger_in_sink PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_flush[123] PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_flush[None] PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_stop[123] PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_stop[None] PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_complete[123] PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_complete[None] PASSED [ 15%]
152s tests/test_add_sinks.py::test_custom_sink_invalid_complete[] PASSED [ 15%]
152s tests/test_add_sinks.py::test_invalid_sink[123] PASSED [ 15%]
152s tests/test_add_sinks.py::test_invalid_sink[sys] PASSED [ 16%]
152s tests/test_add_sinks.py::test_invalid_sink[sink2] PASSED [ 16%]
152s tests/test_add_sinks.py::test_invalid_sink[int] PASSED [ 16%]
152s tests/test_add_sinks.py::test_deprecated_start_and_stop PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[1m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[2m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[22m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[1m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[2m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_styles[1-\x1b[22m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[41m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[41m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[102m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_background_colors[1-\x1b[102m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[33m1\x1b[0m] PASSED [ 16%]
152s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[33m1\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[97m1\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_foreground_colors[1-\x1b[97m1\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_nested[12-\x1b[1m1\x1b[0m\x1b[2m2\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_nested[123-\x1b[1m1\x1b[0m2\x1b[2m3\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_nested[01234-0\x1b[1m1\x1b[2m2\x1b[0m\x1b[1m3\x1b[0m4] PASSED [ 17%]
152s 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%]
152s tests/test_ansimarkup_basic.py::test_strict_parsing[] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_strict_parsing[] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_strict_parsing[] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_permissive_parsing[-\x1b[1m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_permissive_parsing[-\x1b[43m\x1b[1m\x1b[0m\x1b[43m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_permissive_parsing[-\x1b[1m\x1b[1m\x1b[0m\x1b[1m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_autoclose[foo>-\x1b[31mfoo\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_autoclose[bar>-\x1b[32m\x1b[1mbar\x1b[0m\x1b[32m\x1b[0m] PASSED [ 17%]
152s tests/test_ansimarkup_basic.py::test_autoclose[abc>d>e-a\x1b[33mb\x1b[1mc\x1b[0m\x1b[33md\x1b[0me] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_escaping[foo\\bar-\x1b[31mfoobar\x1b[0m] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_escaping[foo\\bar-\x1b[31mfoobar\x1b[0m] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_escaping[\\\\-] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_escaping[foo\\>bar\\>baz-foo>bar>baz] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True-] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True-1] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True->] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[True-X>] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False-] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 18%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False-1] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False->] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_mismatched_error[False-X>] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unbalanced_error[True-12] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unbalanced_error[True-12] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unbalanced_error[True-] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unbalanced_error[False-12] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unbalanced_error[False-12] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unbalanced_error[False-] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[True-] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[True-] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[True-] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[True-1] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[False-] PASSED [ 19%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[False-] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[False-] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_unclosed_error[False-1] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-bar] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-foobar] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-foo] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-foo] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-12] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-12] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-123] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-123] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[True-1] PASSED [ 20%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-bar] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-foobar] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-foo] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-foo] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-12] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-12] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-123] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-123] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_invalid_color[False-1] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_strip[foo-foo] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_strip[bar-bar] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_strip[baz-baz] PASSED [ 21%]
152s tests/test_ansimarkup_basic.py::test_strip[123-123] PASSED [ 22%]
152s tests/test_ansimarkup_basic.py::test_strip[foo>-foo] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[41m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[40m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[102m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_background_colors[1-\x1b[105m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[33m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[34m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[97m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_foreground_colors[1-\x1b[96m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_8bit_colors[1-\x1b[38;2;255;0;0m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_8bit_colors[1-\x1b[48;2;0;160;0m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_8bit_colors[1-\x1b[38;2;241;47;18m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[38;2;255;0;0m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[48;2;0;160;0m1\x1b[0m] PASSED [ 22%]
152s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[38;2;241;47;18m1\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_hex_colors[1-\x1b[48;2;190;235;238m1\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_rgb_colors[1-\x1b[38;5;200m1\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_rgb_colors[1-\x1b[48;5;49m1\x1b[0m] PASSED [ 23%]
152s 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%]
152s 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%]
152s 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%]
152s 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%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[2 > 1-\x1b[31m2 > 1\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[1 < 2-\x1b[31m1 < 2\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[1 2-\x1b[31m1 2\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[{: <10}1-{: <10}\x1b[31m1\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[{: 10}1-{: 10}\x1b[31m1\x1b[0m] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[1{: >10}-\x1b[31m1\x1b[0m{: >10}] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[<123>-<1\x1b[31m2\x1b[0m3>] PASSED [ 23%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[123>-1\x1b[31m2\x1b[0m3>] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[<12 < 34>-<1\x1b[31m2 < 3\x1b[0m4>] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[<12 34>-<1\x1b[31m2 3\x1b[0m4>] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_tricky_parse[<13 > 24>-<1\x1b[31m3 > 2\x1b[0m4>] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-<>1>] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-<,>1,>] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[True-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 24%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-<>1>] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-<,>1,>] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_color[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[True-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[True-fg #F2D1GZ>1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 25%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[False-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_hex[False-fg #F2D1GZ>1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_8bit[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_8bit[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_8bit[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_8bit[False-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_8bit[False-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_8bit[False-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[True-1] PASSED [ 26%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_invalid_rgb[False-1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_strip[foobar-foobar] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_strip[baz-baz] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_strip[bar-bar] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[2 > 1-2 > 1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[1 < 2-1 < 2] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[1 2-1 2] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[{: <10}1-{: <10}1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[{: 10}1-{: 10}1] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[1{: >10}-1{: >10}] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[<123>-<123>] PASSED [ 27%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[123>-123>] PASSED [ 28%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[<12 < 34>-<12 < 34>] PASSED [ 28%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[<12 34>-<12 34>] PASSED [ 28%]
152s tests/test_ansimarkup_extended.py::test_tricky_strip[<13 > 24>-<13 > 24>] PASSED [ 28%]
152s tests/test_bind.py::test_bind_after_add PASSED [ 28%]
152s tests/test_bind.py::test_bind_before_add PASSED [ 28%]
152s tests/test_bind.py::test_add_using_bound PASSED [ 28%]
152s tests/test_bind.py::test_not_override_parent_logger PASSED [ 28%]
152s tests/test_bind.py::test_override_previous_bound PASSED [ 28%]
152s tests/test_bind.py::test_no_conflict PASSED [ 28%]
152s tests/test_bind.py::test_bind_and_add_level[True] PASSED [ 28%]
152s tests/test_bind.py::test_bind_and_add_level[False] PASSED [ 28%]
152s tests/test_bind.py::test_override_configured PASSED [ 28%]
152s tests/test_colorama.py::test_stream_wrapped_on_windows_if_no_vt_support[__stdout__] SKIPPED [ 28%]
152s tests/test_colorama.py::test_stream_wrapped_on_windows_if_no_vt_support[__stderr__] SKIPPED [ 28%]
152s tests/test_colorama.py::test_stream_not_wrapped_on_windows_if_vt_support[__stdout__] SKIPPED [ 29%]
152s tests/test_colorama.py::test_stream_not_wrapped_on_windows_if_vt_support[__stderr__] SKIPPED [ 29%]
152s tests/test_colorama.py::test_stream_is_none PASSED [ 29%]
152s tests/test_colorama.py::test_is_a_tty PASSED [ 29%]
152s tests/test_colorama.py::test_is_not_a_tty PASSED [ 29%]
152s tests/test_colorama.py::test_is_a_tty_exception PASSED [ 29%]
152s tests/test_colorama.py::test_pycharm_fixed[__stdout__-True] PASSED [ 29%]
152s tests/test_colorama.py::test_pycharm_fixed[__stderr__-True] PASSED [ 29%]
152s tests/test_colorama.py::test_pycharm_fixed[stdout-False] PASSED [ 29%]
152s tests/test_colorama.py::test_pycharm_fixed[stderr-False] PASSED [ 29%]
152s tests/test_colorama.py::test_pycharm_fixed[-False] PASSED [ 29%]
152s tests/test_colorama.py::test_github_actions_fixed[__stdout__-True] PASSED [ 29%]
152s tests/test_colorama.py::test_github_actions_fixed[__stderr__-True] PASSED [ 29%]
152s tests/test_colorama.py::test_github_actions_fixed[stdout-False] PASSED [ 29%]
152s tests/test_colorama.py::test_github_actions_fixed[stderr-False] PASSED [ 29%]
152s tests/test_colorama.py::test_github_actions_fixed[-False] PASSED [ 30%]
152s tests/test_colorama.py::test_mintty_fixed_windows[__stdout__-True] SKIPPED [ 30%]
152s tests/test_colorama.py::test_mintty_fixed_windows[__stderr__-True] SKIPPED [ 30%]
152s tests/test_colorama.py::test_mintty_fixed_windows[stdout-False] SKIPPED [ 30%]
152s tests/test_colorama.py::test_mintty_fixed_windows[stderr-False] SKIPPED [ 30%]
152s tests/test_colorama.py::test_mintty_fixed_windows[-False] SKIPPED (T...) [ 30%]
152s tests/test_colorama.py::test_mintty_not_fixed_linux[__stdout__-False] PASSED [ 30%]
152s tests/test_colorama.py::test_mintty_not_fixed_linux[__stderr__-False] PASSED [ 30%]
152s tests/test_colorama.py::test_mintty_not_fixed_linux[stdout-False] PASSED [ 30%]
152s tests/test_colorama.py::test_mintty_not_fixed_linux[stderr-False] PASSED [ 30%]
152s tests/test_colorama.py::test_mintty_not_fixed_linux[-False] PASSED [ 30%]
152s tests/test_colorama.py::test_jupyter_fixed[stdout-StreamIsattyFalse-True] PASSED [ 30%]
152s tests/test_colorama.py::test_jupyter_fixed[stderr-StreamIsattyFalse-True] PASSED [ 30%]
152s tests/test_colorama.py::test_jupyter_fixed[__stdout__-StreamIsattyFalse-False] PASSED [ 30%]
152s tests/test_colorama.py::test_jupyter_fixed[__stderr__-StreamIsattyFalse-False] PASSED [ 30%]
152s tests/test_colorama.py::test_jupyter_fixed[stdout-StreamIsattyTrue-False] PASSED [ 31%]
152s tests/test_colorama.py::test_jupyter_fixed[stderr-StreamIsattyTrue-False] PASSED [ 31%]
152s tests/test_colorama.py::test_jupyter_fixed[-StreamIsattyFalse-False] PASSED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_on_linux[__stdout__] PASSED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_on_linux[__stderr__] PASSED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_not_original_stdout_or_stderr[stdout] SKIPPED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_not_original_stdout_or_stderr[stderr] SKIPPED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_not_original_stdout_or_stderr[] SKIPPED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_terminal_has_vt_support[__stdout__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_terminal_has_vt_support[__stderr__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_winapi_false[__stdout__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_dont_wrap_if_winapi_false[__stderr__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_no_vt_support[__stdout__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_no_vt_support[__stderr__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_vt_check_fails[__stdout__] SKIPPED [ 31%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_vt_check_fails[__stderr__] SKIPPED [ 32%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_stream_has_no_fileno[__stdout__] SKIPPED [ 32%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_stream_has_no_fileno[__stderr__] SKIPPED [ 32%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_old_colorama_version[__stdout__] SKIPPED [ 32%]
152s tests/test_colorama.py::test_wrap_if_winapi_true_and_old_colorama_version[__stderr__] SKIPPED [ 32%]
152s tests/test_configure.py::test_handlers PASSED [ 32%]
152s tests/test_configure.py::test_levels PASSED [ 32%]
152s tests/test_configure.py::test_extra PASSED [ 32%]
152s tests/test_configure.py::test_patcher PASSED [ 32%]
152s tests/test_configure.py::test_activation PASSED [ 32%]
152s tests/test_configure.py::test_dict_unpacking PASSED [ 32%]
152s tests/test_configure.py::test_returned_ids PASSED [ 32%]
152s tests/test_configure.py::test_dont_reset_by_default PASSED [ 32%]
152s tests/test_configure.py::test_reset_previous_handlers PASSED [ 32%]
152s tests/test_configure.py::test_reset_previous_extra PASSED [ 32%]
152s tests/test_configure.py::test_reset_previous_patcher PASSED [ 33%]
152s tests/test_configure.py::test_dont_reset_previous_levels PASSED [ 33%]
152s tests/test_configure.py::test_configure_handler_using_new_level PASSED [ 33%]
152s tests/test_configure.py::test_configure_filter_using_new_level PASSED [ 33%]
152s tests/test_configure.py::test_configure_before_bind PASSED [ 33%]
152s tests/test_configure.py::test_configure_after_bind PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_as_decorator PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_in_function PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_reset PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_async PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_thread PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_before_bind PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_after_bind PASSED [ 33%]
152s tests/test_contextualize.py::test_contextualize_using_bound PASSED [ 34%]
152s tests/test_contextualize.py::test_contextualize_before_configure PASSED [ 34%]
152s tests/test_contextualize.py::test_contextualize_after_configure PASSED [ 34%]
152s tests/test_contextualize.py::test_nested_contextualize PASSED [ 34%]
152s tests/test_contextualize.py::test_context_reset_despite_error PASSED [ 34%]
152s tests/test_contextualize.py::test_contextvars_fallback_352 PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_coroutine_function PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_async_callable_sink PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_concurrent_execution PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_recursive_coroutine PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_using_another_event_loop PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_run_mutiple_different_loops PASSED [ 34%]
152s tests/test_coroutine_sink.py::test_run_multiple_same_loop PASSED [ 34%]
153s tests/test_coroutine_sink.py::test_using_sink_without_running_loop_not_none PASSED [ 34%]
153s tests/test_coroutine_sink.py::test_using_sink_without_running_loop_none PASSED [ 34%]
153s tests/test_coroutine_sink.py::test_global_loop_not_used PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_complete_in_another_run PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_tasks_cancelled_on_remove PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_remove_without_tasks PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_complete_without_tasks PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_complete_stream_noop PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_complete_file_noop PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_complete_function_noop PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_complete_standard_noop PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_exception_in_coroutine_caught PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_exception_in_coroutine_not_caught PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_exception_in_coroutine_during_complete_caught PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_exception_in_coroutine_during_complete_not_caught PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_enqueue_coroutine_loop PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_enqueue_coroutine_from_inside_coroutine_without_loop PASSED [ 35%]
153s tests/test_coroutine_sink.py::test_custom_complete_function PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_from_another_loop[True] PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_from_another_loop[False] PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_from_multiple_threads_loop_is_none PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_from_multiple_threads_loop_is_not_none PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_and_sink_write_concurrency PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_and_contextualize_concurrency PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_complete_with_sub_processes PASSED [ 36%]
153s tests/test_coroutine_sink.py::test_invalid_coroutine_sink_if_no_loop_with_enqueue PASSED [ 36%]
153s 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%]
153s 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%]
154s 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%]
154s 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%]
154s 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%]
154s 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%]
154s 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%]
154s 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%]
154s 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%]
154s 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%]
154s tests/test_datetime.py::test_formatting[hh A-2018-01-01 00:01:02.000003-timezone10-12 AM] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[hh A-2018-01-01 12:00:00.0-timezone11-12 PM] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[hh A-2018-01-01 23:00:00.0-timezone12-11 PM] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[[YYYY] MM [DD]-2018-02-03 11:09:00.000002-timezone13-YYYY 02 DD] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[[YYYY MM DD]-2018-01-03 11:03:04.000002-timezone14-[2018 01 03]] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[[[YY]]-2018-01-03 11:03:04.000002-timezone15-[YY]] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[[]-2018-01-03 11:03:04.000002-timezone16-] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[[[]]-2018-01-03 11:03:04.000002-timezone17-[]] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[SSSSSS[]SSS[]SSSSSS-2018-01-03 11:03:04.100002-timezone18-100002100100002] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[[HHmmss-2018-01-03 11:03:04.000002-timezone19-[110304] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[HHmmss]-2018-01-03 11:03:04.000002-timezone20-110304]] PASSED [ 37%]
154s tests/test_datetime.py::test_formatting[HH:mm:ss!UTC-2018-01-01 11:30:00.0-timezone21-09:30:00] PASSED [ 38%]
154s tests/test_datetime.py::test_formatting[UTC! HH:mm:ss-2018-01-01 11:30:00.0-timezone22-UTC! 11:30:00] PASSED [ 38%]
154s tests/test_datetime.py::test_formatting[!UTC HH:mm:ss-2018-01-01 11:30:00.0-timezone23-!UTC 11:30:00] PASSED [ 38%]
154s 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%]
154s 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%]
154s tests/test_datetime.py::test_formatting[HH:mm:ss[!UTC]-2018-01-01 11:30:00.0-timezone26-11:30:00!UTC] PASSED [ 38%]
154s tests/test_datetime.py::test_formatting[-2018-02-03 11:09:00.000002-timezone27-2018-02-03T11:09:00.000002+0030] PASSED [ 38%]
154s tests/test_datetime.py::test_formatting[!UTC-2018-02-03 11:09:00.000002-timezone28-2018-02-03T10:39:00.000002+0000] PASSED [ 38%]
154s 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%]
154s 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%]
154s 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%]
154s tests/test_datetime.py::test_locale_formatting PASSED [ 38%]
154s tests/test_datetime.py::test_stdout_formatting PASSED [ 38%]
154s tests/test_datetime.py::test_file_formatting PASSED [ 38%]
154s tests/test_datetime.py::test_missing_struct_time_fields PASSED [ 38%]
154s tests/test_datetime.py::test_freezegun_mocking PASSED [ 39%]
154s tests/test_datetime.py::test_invalid_time_format[ss.SSSSSSS] PASSED [ 39%]
154s tests/test_datetime.py::test_invalid_time_format[SS.SSSSSSSS.SS] PASSED [ 39%]
154s tests/test_datetime.py::test_invalid_time_format[HH:mm:ss.SSSSSSSSS] PASSED [ 39%]
154s tests/test_datetime.py::test_invalid_time_format[SSSSSSSSSS] PASSED [ 39%]
154s tests/test_deepcopy.py::test_add_sink_after_deepcopy PASSED [ 39%]
154s tests/test_deepcopy.py::test_add_sink_before_deepcopy PASSED [ 39%]
154s tests/test_deepcopy.py::test_remove_from_original PASSED [ 39%]
154s tests/test_deepcopy.py::test_remove_from_copy PASSED [ 39%]
154s tests/test_defaults.py::test_string[test] PASSED [ 39%]
154s tests/test_defaults.py::test_string[] PASSED [ 39%]
154s tests/test_defaults.py::test_bool_positive[y] PASSED [ 39%]
154s tests/test_defaults.py::test_bool_positive[1] PASSED [ 39%]
154s tests/test_defaults.py::test_bool_positive[TRUE] PASSED [ 39%]
154s tests/test_defaults.py::test_bool_negative[NO] PASSED [ 39%]
154s tests/test_defaults.py::test_bool_negative[0] PASSED [ 40%]
154s tests/test_defaults.py::test_bool_negative[false] PASSED [ 40%]
154s tests/test_defaults.py::test_int PASSED [ 40%]
154s tests/test_defaults.py::test_invalid_int[] PASSED [ 40%]
154s tests/test_defaults.py::test_invalid_int[a] PASSED [ 40%]
154s tests/test_defaults.py::test_invalid_bool[] PASSED [ 40%]
154s tests/test_defaults.py::test_invalid_bool[a] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_caret_not_masked[False] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_caret_not_masked[True] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_no_caret_if_no_backtrace[False] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_no_caret_if_no_backtrace[True] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_sink_encoding[ascii] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_sink_encoding[UTF8] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_sink_encoding[None] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_sink_encoding[unknown-encoding] PASSED [ 40%]
154s tests/test_exceptions_catch.py::test_sink_encoding[] PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_sink_encoding[encoding5] PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_file_sink_ascii_encoding FAILED [ 41%]
154s tests/test_exceptions_catch.py::test_file_sink_utf8_encoding FAILED [ 41%]
154s tests/test_exceptions_catch.py::test_has_sys_real_prefix PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_no_sys_real_prefix PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_has_site_getsitepackages PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_no_site_getsitepackages PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_user_site_is_path PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_user_site_is_none PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_sysconfig_get_path_return_path PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_sysconfig_get_path_return_none PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_no_exception PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_exception_is_none PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_exception_is_tuple PASSED [ 41%]
154s tests/test_exceptions_catch.py::test_exception_not_raising[ZeroDivisionError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exception_not_raising[ArithmeticError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exception_not_raising[exception2] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exception_raising[ValueError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exception_raising[exception1] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_raising[BaseException-ZeroDivisionError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_raising[BaseException-ArithmeticError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_raising[BaseException-exclude2] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_raising[ZeroDivisionError-ZeroDivisionError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_raising[ZeroDivisionError-ArithmeticError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_raising[ZeroDivisionError-exclude2] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[BaseException-ValueError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[BaseException-exclude1] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[ZeroDivisionError-ValueError] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_exclude_exception_not_raising[ZeroDivisionError-exclude1] PASSED [ 42%]
154s tests/test_exceptions_catch.py::test_reraise PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_onerror PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_onerror_with_reraise PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_decorate_function PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_decorate_coroutine PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_decorate_generator PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_decorate_generator_with_error PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_default_with_function PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_default_with_generator PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_default_with_coroutine PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_error_when_decorating_class_without_parentheses PASSED [ 43%]
154s tests/test_exceptions_catch.py::test_error_when_decorating_class_with_parentheses PASSED [ 43%]
154s tests/test_exceptions_formatting.py::test_backtrace[chained_expression_direct] PASSED [ 43%]
154s tests/test_exceptions_formatting.py::test_backtrace[chained_expression_indirect] PASSED [ 43%]
155s tests/test_exceptions_formatting.py::test_backtrace[chaining_first] PASSED [ 43%]
155s tests/test_exceptions_formatting.py::test_backtrace[chaining_second] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[chaining_third] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[enqueue] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[enqueue_with_others_handlers] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[frame_values_backward] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[frame_values_forward] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[function] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[head_recursion] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[missing_attributes_traceback_objects] PASSED [ 44%]
155s tests/test_exceptions_formatting.py::test_backtrace[nested] PASSED [ 44%]
156s tests/test_exceptions_formatting.py::test_backtrace[nested_chained_catch_up] PASSED [ 44%]
156s tests/test_exceptions_formatting.py::test_backtrace[nested_decorator_catch_up] PASSED [ 44%]
156s tests/test_exceptions_formatting.py::test_backtrace[nested_explicit_catch_up] PASSED [ 44%]
156s tests/test_exceptions_formatting.py::test_backtrace[nested_wrapping] PASSED [ 44%]
156s tests/test_exceptions_formatting.py::test_backtrace[no_tb] PASSED [ 44%]
156s tests/test_exceptions_formatting.py::test_backtrace[not_enough_arguments] PASSED [ 45%]
156s tests/test_exceptions_formatting.py::test_backtrace[raising_recursion] PASSED [ 45%]
156s tests/test_exceptions_formatting.py::test_backtrace[suppressed_expression_direct] PASSED [ 45%]
156s tests/test_exceptions_formatting.py::test_backtrace[suppressed_expression_indirect] PASSED [ 45%]
156s tests/test_exceptions_formatting.py::test_backtrace[tail_recursion] PASSED [ 45%]
156s tests/test_exceptions_formatting.py::test_backtrace[too_many_arguments] PASSED [ 45%]
156s tests/test_exceptions_formatting.py::test_diagnose[assertion_error] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[assertion_error_custom] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[assertion_error_in_string] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[attributes] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[chained_both] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[encoding] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[global_variable] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[indentation_error] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[keyword_argument] FAILED [ 45%]
157s tests/test_exceptions_formatting.py::test_diagnose[multilines_repr] FAILED [ 46%]
157s 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%]
158s tests/test_exceptions_formatting.py::test_diagnose[source_strings] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_diagnose[syntax_error] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_diagnose[syntax_highlighting] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_diagnose[truncating] FAILED [ 46%]
158s tests/test_exceptions_formatting.py::test_diagnose[unprintable_object] FAILED [ 46%]
158s 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%]
159s tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator_from_lib] FAILED [ 46%]
159s tests/test_exceptions_formatting.py::test_exception_ownership[decorated_callback] FAILED [ 46%]
159s tests/test_exceptions_formatting.py::test_exception_ownership[direct] FAILED [ 47%]
159s tests/test_exceptions_formatting.py::test_exception_ownership[indirect] FAILED [ 47%]
159s 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%]
160s tests/test_exceptions_formatting.py::test_exception_others[catch_as_decorator_with_parentheses] PASSED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[catch_as_decorator_without_parentheses] PASSED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[catch_as_function] PASSED [ 47%]
160s tests/test_exceptions_formatting.py::test_exception_others[catch_message] PASSED [ 47%]
160s 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%]
161s tests/test_exceptions_formatting.py::test_exception_others[level_number] PASSED [ 48%]
161s tests/test_exceptions_formatting.py::test_exception_others[message_formatting_with_context_manager] PASSED [ 48%]
161s 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%]
162s tests/test_exceptions_formatting.py::test_exception_others[zerodivisionerror_without_traceback] PASSED [ 48%]
162s 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%]
165s tests/test_filesink_retention.py::test_manage_formatted_files_without_extension PASSED [ 55%]
165s tests/test_filesink_retention.py::test_retention_at_rotation[a] PASSED [ 55%]
165s tests/test_filesink_retention.py::test_retention_at_rotation[a+] PASSED [ 56%]
165s tests/test_filesink_retention.py::test_retention_at_rotation[w] PASSED [ 56%]
165s tests/test_filesink_retention.py::test_retention_at_rotation[x] PASSED [ 56%]
165s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[a] PASSED [ 56%]
165s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[a+] PASSED [ 56%]
165s tests/test_filesink_retention.py::test_retention_at_remove_without_rotation[w] PASSED [ 56%]
165s 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%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_positive_timezone_changes_backward_naive[02:30:00] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_aware[rotation0] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_aware[rotation1] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_aware[rotation2] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_naive[rotation0] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_after_negative_timezone_changes_backward_naive[02:30:00] PASSED [ 62%]
166s tests/test_filesink_rotation.py::test_time_rotation_when_timezone_changes_backward_rename_file PASSED [ 62%]
166s 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}-] FAILED [ 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}-] FAILED [ 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%]
187s tests/test_formatting.py::test_log_formatters[True-{level.icon}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{file}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{file.name}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{file.path}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{function}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{module}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{thread}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{thread.id}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{thread.name}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{process}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{process.id}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{process.name}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-{message}-] PASSED [ 70%]
187s tests/test_formatting.py::test_log_formatters[True-%s {{a}} \u5929 {{1}} %d-] PASSED [ 70%]
187s tests/test_formatting.py::test_file_formatters[file-{time}.log-] PASSED [ 71%]
187s 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%]
189s tests/test_multiprocessing.py::test_apply_spawn PASSED [ 77%]
189s tests/test_multiprocessing.py::test_apply_fork PASSED [ 77%]
189s 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%]
191s 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%]
192s tests/test_multiprocessing.py::test_not_picklable_sinks_spawn PASSED [ 79%]
192s tests/test_multiprocessing.py::test_not_picklable_sinks_fork PASSED [ 79%]
192s tests/test_multiprocessing.py::test_not_picklable_sinks_inheritance PASSED [ 79%]
193s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[True-True] PASSED [ 79%]
194s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[True-False] PASSED [ 79%]
195s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[False-True] PASSED [ 79%]
196s tests/test_multiprocessing.py::test_no_deadlock_if_internal_lock_in_use[False-False] PASSED [ 79%]
196s tests/test_multiprocessing.py::test_no_deadlock_if_external_lock_in_use[True] PASSED [ 79%]
197s tests/test_multiprocessing.py::test_no_deadlock_if_external_lock_in_use[False] PASSED [ 79%]
197s tests/test_multiprocessing.py::test_complete_from_multiple_child_processes PASSED [ 79%]
197s tests/test_opt.py::test_record PASSED [ 79%]
197s tests/test_opt.py::test_record_in_kwargs_too PASSED [ 79%]
197s tests/test_opt.py::test_record_not_in_extra PASSED [ 79%]
197s tests/test_opt.py::test_kwargs_in_extra_of_record PASSED [ 79%]
197s tests/test_opt.py::test_exception_boolean PASSED [ 80%]
197s tests/test_opt.py::test_exception_exc_info PASSED [ 80%]
197s tests/test_opt.py::test_exception_class PASSED [ 80%]
197s tests/test_opt.py::test_exception_log_funcion PASSED [ 80%]
197s tests/test_opt.py::test_lazy PASSED [ 80%]
197s tests/test_opt.py::test_logging_within_lazy_function PASSED [ 80%]
197s tests/test_opt.py::test_depth PASSED [ 80%]
197s tests/test_opt.py::test_capture PASSED [ 80%]
197s tests/test_opt.py::test_colors PASSED [ 80%]
197s tests/test_opt.py::test_colors_not_colorize PASSED [ 80%]
197s tests/test_opt.py::test_colors_doesnt_color_unrelated PASSED [ 80%]
197s tests/test_opt.py::test_colors_doesnt_strip_unrelated PASSED [ 80%]
197s tests/test_opt.py::test_colors_doesnt_raise_unrelated_colorize PASSED [ 80%]
197s tests/test_opt.py::test_colors_doesnt_raise_unrelated_not_colorize PASSED [ 80%]
197s tests/test_opt.py::test_colors_doesnt_raise_unrelated_colorize_dynamic PASSED [ 80%]
197s tests/test_opt.py::test_colors_doesnt_raise_unrelated_not_colorize_dynamic PASSED [ 81%]
197s tests/test_opt.py::test_colors_within_record[True] PASSED [ 81%]
197s tests/test_opt.py::test_colors_within_record[False] PASSED [ 81%]
197s tests/test_opt.py::test_colors_nested[True] PASSED [ 81%]
197s tests/test_opt.py::test_colors_nested[False] PASSED [ 81%]
197s tests/test_opt.py::test_colors_stripped_in_message_record[True] PASSED [ 81%]
197s tests/test_opt.py::test_colors_stripped_in_message_record[False] PASSED [ 81%]
197s tests/test_opt.py::test_invalid_markup_in_message[True-] PASSED [ 81%]
197s tests/test_opt.py::test_invalid_markup_in_message[True-] PASSED [ 81%]
197s tests/test_opt.py::test_invalid_markup_in_message[True-X Y] PASSED [ 81%]
197s tests/test_opt.py::test_invalid_markup_in_message[False-] PASSED [ 81%]
197s tests/test_opt.py::test_invalid_markup_in_message[False-] PASSED [ 81%]
197s tests/test_opt.py::test_invalid_markup_in_message[False-X Y] PASSED [ 81%]
197s tests/test_opt.py::test_colors_with_args[True] PASSED [ 81%]
197s tests/test_opt.py::test_colors_with_args[False] PASSED [ 81%]
197s tests/test_opt.py::test_colors_with_level[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_level[False] PASSED [ 82%]
197s tests/test_opt.py::test_colors_double_message[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_double_message[False] PASSED [ 82%]
197s tests/test_opt.py::test_colors_multiple_calls[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_multiple_calls[False] PASSED [ 82%]
197s tests/test_opt.py::test_colors_multiple_calls_level_color_changed[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_multiple_calls_level_color_changed[False] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_dynamic_formatter[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_dynamic_formatter[False] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_format_specs[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_format_specs[False] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_message_specs[True] PASSED [ 82%]
197s tests/test_opt.py::test_colors_with_message_specs[False] PASSED [ 82%]
197s tests/test_opt.py::test_colored_string_used_as_spec[True] PASSED [ 82%]
197s tests/test_opt.py::test_colored_string_used_as_spec[False] PASSED [ 83%]
197s tests/test_opt.py::test_colored_string_getitem[True] PASSED [ 83%]
197s tests/test_opt.py::test_colored_string_getitem[False] PASSED [ 83%]
197s tests/test_opt.py::test_colors_without_formatting_args[True] PASSED [ 83%]
197s tests/test_opt.py::test_colors_without_formatting_args[False] PASSED [ 83%]
197s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_format[True] PASSED [ 83%]
197s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_format[False] PASSED [ 83%]
197s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_message[True] PASSED [ 83%]
197s tests/test_opt.py::test_colors_with_recursion_depth_exceeded_in_message[False] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_auto_indexing[True] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_auto_indexing[False] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_manual_indexing[True] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_manual_indexing[False] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_invalid_indexing[{} {0}-True] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_invalid_indexing[{} {0}-False] PASSED [ 83%]
198s tests/test_opt.py::test_colors_with_invalid_indexing[{1} {}-True] PASSED [ 84%]
198s tests/test_opt.py::test_colors_with_invalid_indexing[{1} {}-False] PASSED [ 84%]
198s tests/test_opt.py::test_raw PASSED [ 84%]
198s tests/test_opt.py::test_raw_with_format_function PASSED [ 84%]
198s tests/test_opt.py::test_raw_with_colors[True] PASSED [ 84%]
198s tests/test_opt.py::test_raw_with_colors[False] PASSED [ 84%]
198s tests/test_opt.py::test_args_with_colors_not_formatted_twice PASSED [ 84%]
198s tests/test_opt.py::test_level_tag_wrapping_with_colors[True] PASSED [ 84%]
198s tests/test_opt.py::test_level_tag_wrapping_with_colors[False] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-True-True] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-True-False] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-False-True] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-True-False-False] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-True-True] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-True-False] PASSED [ 84%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-False-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-True-False-False-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-True-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-True-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-False-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-True-False-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-True-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-True-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-False-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-True-False-False-False-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-True-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-True-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-False-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-True-False-False] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-True-True] PASSED [ 85%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-True-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-False-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-True-False-False-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-True-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-True-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-False-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-True-False-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-True-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-True-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-False-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[True-False-False-False-False-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-True-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-True-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-False-True] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-True-False-False] PASSED [ 86%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-True-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-True-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-False-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-True-False-False-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-True-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-True-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-False-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-True-False-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-True-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-True-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-False-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-True-False-False-False-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-True-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-True-False] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-False-True] PASSED [ 87%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-True-False-False] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-True-True] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-True-False] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-False-True] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-True-False-False-False] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-True-True] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-True-False] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-False-True] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-True-False-False] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-True-True] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-True-False] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-False-True] PASSED [ 88%]
198s tests/test_opt.py::test_all_colors_combinations[False-False-False-False-False-False] PASSED [ 88%]
198s tests/test_opt.py::test_raw_with_record PASSED [ 88%]
198s tests/test_opt.py::test_keep_extra PASSED [ 88%]
198s tests/test_opt.py::test_before_bind PASSED [ 89%]
198s tests/test_opt.py::test_deprecated_ansi_argument PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_patch[True] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_patch[False] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_format[True] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_format[False] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_filter[True] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_filter[False] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_raw[True] PASSED [ 89%]
198s tests/test_opt.py::test_message_update_not_overridden_by_raw[False] PASSED [ 89%]
198s tests/test_opt.py::test_overridden_message_ignore_colors PASSED [ 89%]
198s tests/test_parse.py::test_parse_file PASSED [ 89%]
198s tests/test_parse.py::test_parse_fileobj PASSED [ 89%]
198s tests/test_parse.py::test_parse_pathlib PASSED [ 89%]
198s tests/test_parse.py::test_parse_string_pattern PASSED [ 89%]
198s tests/test_parse.py::test_parse_regex_pattern PASSED [ 90%]
198s tests/test_parse.py::test_parse_multiline_pattern PASSED [ 90%]
198s tests/test_parse.py::test_parse_without_group PASSED [ 90%]
198s tests/test_parse.py::test_parse_bytes PASSED [ 90%]
198s tests/test_parse.py::test_chunk[-1] PASSED [ 90%]
198s tests/test_parse.py::test_chunk[1] PASSED [ 90%]
198s tests/test_parse.py::test_chunk[65536] PASSED [ 90%]
198s tests/test_parse.py::test_positive_lookbehind_pattern PASSED [ 90%]
198s tests/test_parse.py::test_greedy_pattern PASSED [ 90%]
198s tests/test_parse.py::test_cast_dict PASSED [ 90%]
198s tests/test_parse.py::test_cast_function PASSED [ 90%]
198s tests/test_parse.py::test_cast_with_irrelevant_arg PASSED [ 90%]
198s tests/test_parse.py::test_cast_with_irrelevant_value PASSED [ 90%]
198s tests/test_parse.py::test_invalid_file[file0] PASSED [ 90%]
198s tests/test_parse.py::test_invalid_file[123] PASSED [ 90%]
198s tests/test_parse.py::test_invalid_file[dict] PASSED [ 91%]
198s tests/test_parse.py::test_invalid_pattern[pattern0] PASSED [ 91%]
198s tests/test_parse.py::test_invalid_pattern[123] PASSED [ 91%]
198s tests/test_parse.py::test_invalid_pattern[dict] PASSED [ 91%]
198s tests/test_parse.py::test_invalid_cast[cast0] PASSED [ 91%]
198s tests/test_parse.py::test_invalid_cast[123] PASSED [ 91%]
198s tests/test_patch.py::test_patch_after_add PASSED [ 91%]
198s tests/test_patch.py::test_patch_before_add PASSED [ 91%]
198s tests/test_patch.py::test_add_using_patched PASSED [ 91%]
198s tests/test_patch.py::test_not_override_parent_logger PASSED [ 91%]
198s tests/test_patch.py::test_override_previous_patched PASSED [ 91%]
198s tests/test_patch.py::test_no_conflict PASSED [ 91%]
198s tests/test_patch.py::test_override_configured PASSED [ 91%]
198s tests/test_patch.py::test_multiple_patches PASSED [ 91%]
198s tests/test_pickling.py::test_pickling_function_handler PASSED [ 91%]
198s tests/test_pickling.py::test_pickling_coroutine_function_handler PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_stream_handler[True-True] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_stream_handler[True-False] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_stream_handler[False-True] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_stream_handler[False-False] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_standard_handler FAILED [ 92%]
198s tests/test_pickling.py::test_pickling_standard_handler_root_logger_not_picklable FAILED [ 92%]
198s tests/test_pickling.py::test_pickling_file_handler PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_file_handler_rotation[1000] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_file_handler_rotation[daily] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_file_handler_rotation[rotation2] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_file_handler_rotation[rotation3] PASSED [ 92%]
198s tests/test_pickling.py::test_pickling_file_handler_rotation[200 MB] PASSED [ 92%]
199s tests/test_pickling.py::test_pickling_file_handler_rotation[10:00] PASSED [ 92%]
199s tests/test_pickling.py::test_pickling_file_handler_rotation[5 hours] PASSED [ 92%]
199s tests/test_pickling.py::test_pickling_file_handler_rotation[rotation_function] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_retention[1000] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_retention[retention1] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_retention[10 days] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_retention[retention_function] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_compression[zip] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_compression[gz] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_compression[tar] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_file_handler_compression[compression_function] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_no_handler PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_handler_not_serializable PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_filter_function PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_filter_name[] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_filter_name[tests] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_format_string[True] PASSED [ 93%]
199s tests/test_pickling.py::test_pickling_format_string[False] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_format_function[True] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_format_function[False] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_filter_function_not_serializable PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_format_function_not_serializable PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_bound_logger PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_patched_logger PASSED [ 94%]
199s tests/test_pickling.py::test_remove_after_pickling PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_logging_method PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_log_method PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_no_error[add] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_no_error[remove] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_no_error[catch] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_no_error[opt] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_no_error[bind] PASSED [ 94%]
199s tests/test_pickling.py::test_pickling_no_error[patch] PASSED [ 95%]
199s tests/test_pickling.py::test_pickling_no_error[level] PASSED [ 95%]
199s tests/test_pickling.py::test_pickling_no_error[disable] PASSED [ 95%]
199s tests/test_pickling.py::test_pickling_no_error[enable] PASSED [ 95%]
199s tests/test_pickling.py::test_pickling_no_error[configure] PASSED [ 95%]
199s tests/test_pickling.py::test_pickling_no_error[parse] PASSED [ 95%]
199s tests/test_pickling.py::test_pickling_no_error[exception] PASSED [ 95%]
199s tests/test_propagation.py::test_formatting PASSED [ 95%]
199s tests/test_propagation.py::test_propagate PASSED [ 95%]
199s tests/test_propagation.py::test_remove_propagation PASSED [ 95%]
199s tests/test_propagation.py::test_propagate_too_high PASSED [ 95%]
199s tests/test_propagation.py::test_exception[False] PASSED [ 95%]
199s tests/test_propagation.py::test_exception[True] PASSED [ 95%]
199s tests/test_recattr.py::test_patch_record_file PASSED [ 95%]
199s tests/test_recattr.py::test_patch_record_thread PASSED [ 95%]
199s tests/test_recattr.py::test_patch_record_process PASSED [ 96%]
199s tests/test_recattr.py::test_patch_record_exception PASSED [ 96%]
199s tests/test_recattr.py::test_level_repr PASSED [ 96%]
199s tests/test_recattr.py::test_file_repr PASSED [ 96%]
199s tests/test_recattr.py::test_thread_repr PASSED [ 96%]
199s tests/test_recattr.py::test_process_repr PASSED [ 96%]
199s tests/test_recattr.py::test_exception_repr PASSED [ 96%]
199s tests/test_remove.py::test_remove_all PASSED [ 96%]
199s tests/test_remove.py::test_remove_simple PASSED [ 96%]
199s tests/test_remove.py::test_remove_enqueue PASSED [ 96%]
199s tests/test_remove.py::test_remove_enqueue_filesink PASSED [ 96%]
199s tests/test_remove.py::test_exception_in_stop_during_remove_one PASSED [ 96%]
199s tests/test_remove.py::test_exception_in_stop_not_caught_during_remove_all PASSED [ 96%]
199s tests/test_remove.py::test_invalid_handler_id_value PASSED [ 96%]
199s tests/test_remove.py::test_invalid_handler_id_type[handler_id0] PASSED [ 96%]
199s tests/test_remove.py::test_invalid_handler_id_type[sys] PASSED [ 97%]
199s tests/test_remove.py::test_invalid_handler_id_type[handler_id2] PASSED [ 97%]
199s tests/test_remove.py::test_invalid_handler_id_type[int] PASSED [ 97%]
199s tests/test_repr.py::test_no_handler PASSED [ 97%]
199s tests/test_repr.py::test_stderr PASSED [ 97%]
199s tests/test_repr.py::test_stdout PASSED [ 97%]
199s tests/test_repr.py::test_file_object PASSED [ 97%]
199s tests/test_repr.py::test_file_str PASSED [ 97%]
199s tests/test_repr.py::test_file_pathlib PASSED [ 97%]
199s tests/test_repr.py::test_stream_object PASSED [ 97%]
199s tests/test_repr.py::test_stream_object_without_name_attr PASSED [ 97%]
199s tests/test_repr.py::test_stream_object_with_empty_name PASSED [ 97%]
199s tests/test_repr.py::test_function PASSED [ 97%]
199s tests/test_repr.py::test_callable_without_name PASSED [ 97%]
199s tests/test_repr.py::test_callable_with_empty_name PASSED [ 97%]
199s tests/test_repr.py::test_coroutine_function PASSED [ 98%]
199s tests/test_repr.py::test_coroutine_callable_without_name PASSED [ 98%]
199s tests/test_repr.py::test_coroutine_function_with_empty_name PASSED [ 98%]
199s tests/test_repr.py::test_standard_handler PASSED [ 98%]
199s tests/test_repr.py::test_multiple_handlers PASSED [ 98%]
199s tests/test_repr.py::test_handler_removed PASSED [ 98%]
199s tests/test_repr.py::test_handler_level_name PASSED [ 98%]
199s tests/test_repr.py::test_handler_level_num PASSED [ 98%]
199s tests/test_standard_handler.py::test_stream_handler PASSED [ 98%]
199s tests/test_standard_handler.py::test_file_handler PASSED [ 98%]
199s tests/test_standard_handler.py::test_null_handler PASSED [ 98%]
199s tests/test_standard_handler.py::test_extra_dict PASSED [ 98%]
199s tests/test_standard_handler.py::test_no_conflict_with_extra_dict PASSED [ 98%]
199s tests/test_standard_handler.py::test_no_exception PASSED [ 98%]
199s tests/test_standard_handler.py::test_exception PASSED [ 98%]
199s tests/test_standard_handler.py::test_exception_formatting PASSED [ 99%]
199s tests/test_standard_handler.py::test_standard_formatter[False] PASSED [ 99%]
199s tests/test_standard_handler.py::test_standard_formatter[True] PASSED [ 99%]
199s tests/test_standard_handler.py::test_standard_formatter_with_new_line[False] PASSED [ 99%]
199s tests/test_standard_handler.py::test_standard_formatter_with_new_line[True] PASSED [ 99%]
199s tests/test_standard_handler.py::test_raw_standard_formatter[False] PASSED [ 99%]
199s tests/test_standard_handler.py::test_raw_standard_formatter[True] PASSED [ 99%]
199s tests/test_standard_handler.py::test_raw_standard_formatter_with_new_line[False] PASSED [ 99%]
199s tests/test_standard_handler.py::test_raw_standard_formatter_with_new_line[True] PASSED [ 99%]
201s tests/test_threading.py::test_safe_logging PASSED [ 99%]
204s tests/test_threading.py::test_safe_adding_while_logging PASSED [ 99%]
205s tests/test_threading.py::test_safe_removing_while_logging PASSED [ 99%]
206s tests/test_threading.py::test_safe_writing_after_removing PASSED [ 99%]
210s tests/test_threading.py::test_heavily_threaded_logging PASSED [ 99%]
212s tests/test_type_hinting.py::test_mypy_import PASSED [100%]
212s
212s =================================== FAILURES ===================================
212s ________________________ test_file_sink_ascii_encoding _________________________
212s
212s tmp_path = PosixPath('/tmp/pytest-of-ubuntu/pytest-0/test_file_sink_ascii_encoding1')
212s
212s > ???
212s E assert 0 == 1
212s E + where 0 = ("-> '\\u5929'")
212s 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.UqIti3/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
212s
212s tests/test_exceptions_catch.py:80: AssertionError
212s _________________________ test_file_sink_utf8_encoding _________________________
212s
212s tmp_path = PosixPath('/tmp/pytest-of-ubuntu/pytest-0/test_file_sink_utf8_encoding1')
212s
212s def test_file_sink_utf8_encoding(tmp_path):
212s file = tmp_path / "test.log"
212s logger.add(file, format="", encoding="utf8", errors="strict", catch=False)
212s a = "天"
212s
212s try:
212s "天" * a
212s except Exception:
212s logger.exception("")
212s
212s logger.remove()
212s result = file.read_text("utf8")
212s assert result.count('"天" * a') == 1
212s > assert result.count("└ '天'") == 1
212s E assert 0 == 1
212s E + where 0 = ("└ '天'")
212s 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.UqIti3/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
212s
212s tests/test_exceptions_catch.py:96: AssertionError
212s ________________________ test_diagnose[assertion_error] ________________________
212s
212s filename = 'assertion_error'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'assertion_error'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...1m60\x1b[0m\n' == '\n\x1b[33m\x...1m60\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1massertion_error.py[0m", line [33m14[0m, in [35m[0m
212s E [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (7 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error.py[0m", line [33m14[0m, in [35m[0m
212s [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error.py[0m", line [33m10[0m, in [35mfoo[0m
212s [35m[1massert[0m [1mabc[0m [35m[1m>[0m [34m[1m10[0m [35m[1mand[0m [1mxyz[0m [35m[1m==[0m [34m[1m60[0m
212s
212s [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
212s
212s ____________________ test_diagnose[assertion_error_custom] _____________________
212s
212s filename = 'assertion_error_custom'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'assertion_error_custom'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...iled\x1b[0m\n' == '\n\x1b[33m\x...iled\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1massertion_error_custom.py[0m", line [33m14[0m, in [35m[0m
212s E [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (7 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_custom.py[0m", line [33m14[0m, in [35m[0m
212s [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_custom.py[0m", line [33m10[0m, in [35mfoo[0m
212s [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
212s
212s [31m[1mAssertionError[0m:[1m Foo assertion failed[0m
212s
212s ___________________ test_diagnose[assertion_error_in_string] ___________________
212s
212s filename = 'assertion_error_in_string'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'assertion_error_in_string'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...rror\x1b[0m\n' == '\n\x1b[33m\x...rror\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1massertion_error_in_string.py[0m", line [33m14[0m, in [35m[0m
212s E [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (7 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_in_string.py[0m", line [33m14[0m, in [35m[0m
212s [1mfoo[0m[1m([0m[34m[1m9[0m[1m,[0m [34m[1m55[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1massertion_error_in_string.py[0m", line [33m10[0m, in [35mfoo[0m
212s [1mexec[0m[1m([0m[36m"assert abc > 10 and xyz == 60"[0m[1m)[0m
212s
212s File "", line 1, in
212s
212s [31m[1mAssertionError[0m
212s
212s __________________________ test_diagnose[attributes] ___________________________
212s
212s filename = 'attributes'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'attributes'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert "\n\x1b[33m\x...int'\x1b[0m\n" == "\n\x1b[33m\x...int'\x1b[0m\n"
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mattributes.py[0m", line [33m26[0m, in [35m[0m
212s E [1mfoo[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (14 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mattributes.py[0m", line [33m26[0m, in [35m[0m
212s [1mfoo[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mattributes.py[0m", line [33m22[0m, in [35mfoo[0m
212s [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
212s
212s [31m[1mTypeError[0m:[1m unsupported operand type(s) for +: 'ellipsis' and 'int'[0m
212s
212s _________________________ test_diagnose[chained_both] __________________________
212s
212s filename = 'chained_both'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'chained_both'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...rror\x1b[0m\n' == '\n\x1b[33m\x...rror\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m15[0m, in [35mcause[0m
212s E [1mdiv[0m[1m([0m[1mx[0m[1m,[0m [1my[0m[1m)[0m
212s E - [36m│ │ └ [0m[36m[1m0[0m...
212s E
212s E ...Full output truncated (41 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m15[0m, in [35mcause[0m
212s [1mdiv[0m[1m([0m[1mx[0m[1m,[0m [1my[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m10[0m, in [35mdiv[0m
212s [1mx[0m [35m[1m/[0m [1my[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s
212s [1mDuring handling of the above exception, another exception occurred:[0m
212s
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m22[0m, in [35mcontext[0m
212s [1mcause[0m[1m([0m[1mx[0m[1m,[0m [1my[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m17[0m, in [35mcause[0m
212s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Division error"[0m[1m)[0m
212s
212s [31m[1mValueError[0m:[1m Division error[0m
212s
212s
212s [1mThe above exception was the direct cause of the following exception:[0m
212s
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m28[0m, in [35m[0m
212s [1mcontext[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mchained_both.py[0m", line [33m24[0m, in [35mcontext[0m
212s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Cause error"[0m[1m)[0m [35m[1mfrom[0m [1me[0m
212s
212s [31m[1mValueError[0m:[1m Cause error[0m
212s
212s ___________________________ test_diagnose[encoding] ____________________________
212s
212s filename = 'encoding'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'encoding'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert "\n\x1b[33m\x...str'\x1b[0m\n" == "\n\x1b[33m\x...str'\x1b[0m\n"
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m18[0m, in [35m[0m
212s E [1mdiv[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (10 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m18[0m, in [35m[0m
212s [1mdiv[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m14[0m, in [35mdiv[0m
212s [35m[1mreturn[0m [1m_deep[0m[1m([0m[36m"天"[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mencoding.py[0m", line [33m10[0m, in [35m_deep[0m
212s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mval[0m
212s
212s [31m[1mTypeError[0m:[1m unsupported operand type(s) for /: 'int' and 'str'[0m
212s
212s ________________________ test_diagnose[global_variable] ________________________
212s
212s filename = 'global_variable'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'global_variable'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mglobal_variable.py[0m", line [33m19[0m, in [35m[0m
212s E [1mfunc[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (7 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mglobal_variable.py[0m", line [33m19[0m, in [35m[0m
212s [1mfunc[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mglobal_variable.py[0m", line [33m15[0m, in [35mfunc[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s _______________________ test_diagnose[indentation_error] _______________________
212s
212s filename = 'indentation_error'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'indentation_error'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...dent\x1b[0m\n' == '\n\x1b[33m\x...dent\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mindentation_error.py[0m", line [33m17[0m, in [35m[0m
212s E [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
212s E - [36m └ [0m[36m[1m'\nif True:\n a = 5\n print("foobar") #intentional faulty indentation here.\n b = 7\n'[0m...
212s E
212s E ...Full output truncated (5 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mindentation_error.py[0m", line [33m17[0m, in [35m[0m
212s [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
212s
212s File "", line 4
212s print("foobar") #intentional faulty indentation here.
212s
212s [31m[1mIndentationError[0m:[1m unexpected indent[0m
212s
212s _______________________ test_diagnose[keyword_argument] ________________________
212s
212s filename = 'keyword_argument'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'keyword_argument'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m16[0m, in [35m[0m
212s E [1mf[0m[1m([0m[1mx[0m[35m[1m=[0m[1my[0m[1m)[0m
212s E - [36m│ └ [0m[36m[1m0[0m...
212s E
212s E ...Full output truncated (20 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m16[0m, in [35m[0m
212s [1mf[0m[1m([0m[1mx[0m[35m[1m=[0m[1my[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m10[0m, in [35mf[0m
212s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mx[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m21[0m, in [35m[0m
212s [1mf[0m[1m([0m[1mx[0m[35m[1m=[0m[1mx[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mkeyword_argument.py[0m", line [33m10[0m, in [35mf[0m
212s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mx[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s ________________________ test_diagnose[multilines_repr] ________________________
212s
212s filename = 'multilines_repr'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'multilines_repr'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert "\n\x1b[33m\x... 'A'\x1b[0m\n" == "\n\x1b[33m\x... 'A'\x1b[0m\n"
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mmultilines_repr.py[0m", line [33m20[0m, in [35m[0m
212s E [1mmultiline[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (11 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mmultilines_repr.py[0m", line [33m20[0m, in [35m[0m
212s [1mmultiline[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mmultilines_repr.py[0m", line [33m16[0m, in [35mmultiline[0m
212s [1ma[0m [35m[1m+[0m [1mb[0m
212s
212s [31m[1mTypeError[0m:[1m unsupported operand type(s) for +: 'A' and 'A'[0m
212s
212s _______________________ test_diagnose[no_error_message] ________________________
212s
212s filename = 'no_error_message'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'no_error_message'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...rror\x1b[0m\n' == '\n\x1b[33m\x...rror\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m18[0m, in [35m[0m
212s E [1mbar[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (9 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m18[0m, in [35m[0m
212s [1mbar[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m14[0m, in [35mbar[0m
212s [1mfoo[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mno_error_message.py[0m", line [33m10[0m, in [35mfoo[0m
212s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m""[0m[1m)[0m
212s
212s [31m[1mValueError[0m
212s
212s __________________________ test_diagnose[parenthesis] __________________________
212s
212s filename = 'parenthesis'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'parenthesis'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m47[0m, in [35m[0m
212s E [1me[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (39 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m47[0m, in [35m[0m
212s [1me[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m43[0m, in [35me[0m
212s [1m)[0m [35m[1m+[0m [1md[0m[1m([0m[1m([0m[1m)[0m[1m)[0m [35m[1m+[0m [1ma[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m36[0m, in [35md[0m
212s [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 \
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m28[0m, in [35mc[0m
212s [1mx[0m[35m[1m.[0m[1mval[0m [35m[1m+=[0m [34m[1m456[0m [35m[1mand[0m [1mb[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m22[0m, in [35mb[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mparenthesis.py[0m", line [33m17[0m, in [35ma[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s _______________________ test_diagnose[source_multilines] _______________________
212s
212s filename = 'source_multilines'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'source_multilines'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m39[0m, in [35m[0m
212s E [1mbug_1[0m[1m([0m[34m[1m10[0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (45 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m39[0m, in [35m[0m
212s [1mbug_1[0m[1m([0m[34m[1m10[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m12[0m, in [35mbug_1[0m
212s """ + n / 0)
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m45[0m, in [35m[0m
212s [1mbug_2[0m[1m([0m[34m[1m1[0m[1m,[0m [1mstring[0m[1m,[0m [34m[1m3[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m16[0m, in [35mbug_2[0m
212s [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 \
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m51[0m, in [35m[0m
212s [1mbug_3[0m[1m([0m[1mstring[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m22[0m, in [35mbug_3[0m
212s [1m,[0m [1mstring[0m[1m,[0m [34m[1m20[0m [35m[1m/[0m [34m[1m0[0m[1m)[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m57[0m, in [35m[0m
212s [1mbug_4[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_multilines.py[0m", line [33m29[0m, in [35mbug_4[0m
212s [36m"bar"[0m[1m:[0m [1ma[0m [35m[1m/[0m [1mb[0m[1m,[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s ________________________ test_diagnose[source_strings] _________________________
212s
212s filename = 'source_strings'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'source_strings'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert "\n\x1b[33m\x...tes'\x1b[0m\n" == "\n\x1b[33m\x...tes'\x1b[0m\n"
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msource_strings.py[0m", line [33m13[0m, in [35m[0m
212s 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
212s E - [36m│ └ [0m[36m[1m0[0m...
212s E
212s E ...Full output truncated (3 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msource_strings.py[0m", line [33m13[0m, in [35m[0m
212s [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
212s
212s [31m[1mTypeError[0m:[1m unsupported operand type(s) for +: 'int' and 'bytes'[0m
212s
212s _________________________ test_diagnose[syntax_error] __________________________
212s
212s filename = 'syntax_error'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'syntax_error'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ntax\x1b[0m\n' == '\n\x1b[33m\x...ntax\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msyntax_error.py[0m", line [33m17[0m, in [35m[0m
212s E [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
212s E - [36m └ [0m[36m[1m'\nif True:\n a = 5\n b = 7 *\n'[0m...
212s E
212s E ...Full output truncated (6 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_error.py[0m", line [33m17[0m, in [35m[0m
212s [1mexec[0m[1m([0m[1mcode[0m[1m)[0m
212s
212s File "", line 4
212s b = 7 *
212s ^
212s
212s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
212s
212s ______________________ test_diagnose[syntax_highlighting] ______________________
212s
212s filename = 'syntax_highlighting'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'syntax_highlighting'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m31[0m, in [35m[0m
212s E [1me[0m[1m([0m[34m[1m0[0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (25 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m31[0m, in [35m[0m
212s [1me[0m[1m([0m[34m[1m0[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m27[0m, in [35me[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m23[0m, in [35md[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m19[0m, in [35mc[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m15[0m, in [35mb[0m
212s [1ma[0m[1m([0m[1m)[0m [35m[1mor[0m [36m[1mFalse[0m [35m[1m==[0m [36m[1mNone[0m [35m[1m!=[0m [36m[1mTrue[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1msyntax_highlighting.py[0m", line [33m11[0m, in [35ma[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s __________________________ test_diagnose[truncating] ___________________________
212s
212s filename = 'truncating'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'truncating'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert "\n\x1b[33m\x...str'\x1b[0m\n" == "\n\x1b[33m\x...str'\x1b[0m\n"
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1mtruncating.py[0m", line [33m15[0m, in [35m[0m
212s E [1mdiv[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (6 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mtruncating.py[0m", line [33m15[0m, in [35m[0m
212s [1mdiv[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1mtruncating.py[0m", line [33m11[0m, in [35mdiv[0m
212s [35m[1mreturn[0m [34m[1m1[0m [35m[1m/[0m [1mvar[0m
212s
212s [31m[1mTypeError[0m:[1m unsupported operand type(s) for /: 'int' and 'str'[0m
212s
212s ______________________ test_diagnose[unprintable_object] _______________________
212s
212s filename = 'unprintable_object'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_error",
212s "assertion_error_custom",
212s "assertion_error_in_string",
212s "attributes",
212s "chained_both",
212s "encoding",
212s "global_variable",
212s "indentation_error",
212s "keyword_argument",
212s "multilines_repr",
212s "no_error_message",
212s "parenthesis",
212s "source_multilines",
212s "source_strings",
212s "syntax_error",
212s "syntax_highlighting",
212s "truncating",
212s "unprintable_object",
212s ],
212s )
212s def test_diagnose(filename):
212s > compare_exception("diagnose", filename)
212s
212s tests/test_exceptions_formatting.py:174:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'diagnose', filename = 'unprintable_object'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/diagnose/[0m[32m[1munprintable_object.py[0m", line [33m16[0m, in [35m[0m
212s E [1mobj[0m [35m[1m+[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s E - [36m└ [0m[36m[1m[0m
212s E
212s E [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/diagnose/[0m[32m[1munprintable_object.py[0m", line [33m16[0m, in [35m[0m
212s [1mobj[0m [35m[1m+[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s _________________ test_exception_ownership[assertion_from_lib] _________________
212s
212s filename = 'assertion_from_lib'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'assertion_from_lib'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ertionError\n' == '\n\x1b[33m\x...ertionError\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m20[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (51 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m20[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
212s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
212s assert x == y
212s
212s [31m[1mAssertionError[0m: [35m[1massert[0m [1mx[0m [35m[1m==[0m [1my[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
212s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
212s assert x == y
212s
212s [31m[1mAssertionError[0m: [35m[1massert[0m [1mx[0m [35m[1m==[0m [1my[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m22[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
212s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
212s assert x == y
212s [31m[1mAssertionError[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_lib.py[0m", line [33m15[0m, in [35mtest[0m
212s [1massertionerror[0m[1m([0m[1ma[0m[1m,[0m [1mb[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
212s assert x == y
212s [31m[1mAssertionError[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/assertion_from_lib.py", line 15, in test
212s assertionerror(a, b)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 22, in assertionerror
212s assert x == y
212s AssertionError
212s
212s ________________ test_exception_ownership[assertion_from_local] ________________
212s
212s filename = 'assertion_from_local'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'assertion_from_local'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ertionError\n' == '\n\x1b[33m\x...ertionError\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m20[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (33 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m20[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
212s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
212s
212s [31m[1mAssertionError[0m: [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
212s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
212s
212s [31m[1mAssertionError[0m: [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m22[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
212s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
212s [31m[1mAssertionError[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1massertion_from_local.py[0m", line [33m15[0m, in [35mtest[0m
212s [35m[1massert[0m [1ma[0m [35m[1m==[0m [1mb[0m
212s [31m[1mAssertionError[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/assertion_from_local.py", line 15, in test
212s assert a == b
212s AssertionError
212s
212s ______________________ test_exception_ownership[callback] ______________________
212s
212s filename = 'callback'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'callback'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m22[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (77 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m22[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m24[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcallback.py[0m", line [33m14[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/callback.py", line 17, in test
212s callme(callback)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/callback.py", line 14, in callback
212s divide(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s ZeroDivisionError: division by zero
212s
212s __________________ test_exception_ownership[catch_decorator] ___________________
212s
212s filename = 'catch_decorator'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'catch_decorator'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m20[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (61 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m20[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mfoo[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mfoo[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m22[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mfoo[0m[1m([0m[1m)[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mfoo[0m[1m([0m[1m)[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator.py[0m", line [33m15[0m, in [35mfoo[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/catch_decorator.py", line 17, in test
212s foo()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/catch_decorator.py", line 15, in foo
212s divide(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s ZeroDivisionError: division by zero
212s
212s ______________ test_exception_ownership[catch_decorator_from_lib] ______________
212s
212s filename = 'catch_decorator_from_lib'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'catch_decorator_from_lib'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m20[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (68 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m20[0m, in [35m[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m22[0m, in [35m[0m
212s [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
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m17[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mcatch_decorator_from_lib.py[0m", line [33m15[0m, in [35mcallback[0m
212s [1mdivide[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/catch_decorator_from_lib.py", line 15, in callback
212s divide(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s ZeroDivisionError: division by zero
212s
212s _________________ test_exception_ownership[decorated_callback] _________________
212s
212s filename = 'decorated_callback'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'decorated_callback'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m21[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (54 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m21[0m, in [35m[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m18[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
212s [1ma[0m [35m[1m/[0m [1mb[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
212s [1ma[0m [35m[1m/[0m [1mb[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m23[0m, in [35m[0m
212s [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
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m18[0m, in [35mtest[0m
212s [1mcallme[0m[1m([0m[1mcallback[0m[1m)[0m
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
212s [1ma[0m [35m[1m/[0m [1mb[0m
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdecorated_callback.py[0m", line [33m16[0m, in [35mcallback[0m
212s [1ma[0m [35m[1m/[0m [1mb[0m
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 10, in callme
212s callback()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/decorated_callback.py", line 16, in callback
212s a / b
212s ZeroDivisionError: division by zero
212s
212s _______________________ test_exception_ownership[direct] _______________________
212s
212s filename = 'direct'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'direct'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m19[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (47 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m19[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m21[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mdirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/direct.py", line 14, in test
212s divide(10, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s ZeroDivisionError: division by zero
212s
212s ______________________ test_exception_ownership[indirect] ______________________
212s
212s filename = 'indirect'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'indirect'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m19[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (63 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m19[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
212s divide(a, b)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
212s divide(a, b)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m21[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
212s divide(a, b)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mindirect.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mdivide_indirect[0m[1m([0m[34m[1m10[0m[1m,[0m [34m[1m0[0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
212s divide(a, b)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/indirect.py", line 14, in test
212s divide_indirect(10, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 6, in divide_indirect
212s divide(a, b)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s ZeroDivisionError: division by zero
212s
212s _____________________ test_exception_ownership[string_lib] _____________________
212s
212s filename = 'string_lib'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'string_lib'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m19[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (62 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m19[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexecute[0m[1m([0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
212s exec("divide(1, 0)")
212s File "", line 1, in
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexecute[0m[1m([0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
212s exec("divide(1, 0)")
212s File "", line 1, in
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m21[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexecute[0m[1m([0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
212s exec("divide(1, 0)")
212s File "", line 1, in
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_lib.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexecute[0m[1m([0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
212s exec("divide(1, 0)")
212s File "", line 1, in
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/string_lib.py", line 14, in test
212s execute()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 14, in execute
212s exec("divide(1, 0)")
212s File "", line 1, in
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 2, in divide
212s x / y
212s ZeroDivisionError: division by zero
212s
212s ___________________ test_exception_ownership[string_source] ____________________
212s
212s filename = 'string_source'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'string_source'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...ion by zero\n' == '\n\x1b[33m\x...ion by zero\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m19[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (48 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m19[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
212s
212s File "", line 1, in
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
212s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
212s
212s File "", line 1, in
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
212s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m21[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
212s File "", line 1, in
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
212s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m14[0m, in [35mtest[0m
212s [1mexec[0m[1m([0m[36m"foo()"[0m[1m)[0m
212s File "", line 1, in
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1mstring_source.py[0m", line [33m11[0m, in [35mfoo[0m
212s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/string_source.py", line 14, in test
212s exec("foo()")
212s File "", line 1, in
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/string_source.py", line 11, in foo
212s 1 / 0
212s ZeroDivisionError: division by zero
212s
212s ____________________ test_exception_ownership[syntaxerror] _____________________
212s
212s filename = 'syntaxerror'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertion_from_lib",
212s "assertion_from_local",
212s "callback",
212s "catch_decorator",
212s "catch_decorator_from_lib",
212s "decorated_callback",
212s "direct",
212s "indirect",
212s "string_lib",
212s "string_source",
212s "syntaxerror",
212s ],
212s )
212s def test_exception_ownership(filename):
212s > compare_exception("ownership", filename)
212s
212s tests/test_exceptions_formatting.py:194:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'ownership', filename = 'syntaxerror'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...alid syntax\n' == '\n\x1b[33m\x...alid syntax\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m19[0m, in [35m[0m
212s 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
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (58 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m19[0m, in [35m[0m
212s [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
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
212s [1msyntaxerror[0m[1m([0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
212s exec("foo =")
212s File "", line 1
212s foo =
212s ^
212s
212s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
212s [1msyntaxerror[0m[1m([0m[1m)[0m
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
212s exec("foo =")
212s File "", line 1
212s foo =
212s ^
212s
212s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m21[0m, in [35m[0m
212s [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
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
212s [1msyntaxerror[0m[1m([0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
212s exec("foo =")
212s File "", line 1
212s foo =
212s ^
212s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
212s
212s [33m[1mTraceback (most recent call last):[0m
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/[0m[32m[1msyntaxerror.py[0m", line [33m14[0m, in [35mtest[0m
212s [1msyntaxerror[0m[1m([0m[1m)[0m
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
212s exec("foo =")
212s File "", line 1
212s foo =
212s ^
212s [31m[1mSyntaxError[0m:[1m invalid syntax[0m
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/syntaxerror.py", line 14, in test
212s syntaxerror()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/ownership/usersite/somelib/__init__.py", line 18, in syntaxerror
212s exec("foo =")
212s File "", line 1
212s foo =
212s ^
212s SyntaxError: invalid syntax
212s
212s ____________ test_exception_others[exception_formatting_coroutine] _____________
212s
212s filename = 'exception_formatting_coroutine'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'exception_formatting_coroutine'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
212s E f.send(None)
212s E File "tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
212s E a / b...
212s E
212s E ...Full output truncated (36 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
212s f.send(None)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
212s f.send(None)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
212s f.send(None)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 20, in
212s f.send(None)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_coroutine.py", line 14, in foo
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s _____________ test_exception_others[exception_formatting_function] _____________
212s
212s filename = 'exception_formatting_function'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'exception_formatting_function'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/exception_formatting_function.py", line 17, in
212s E a(1, 0)
212s E File "tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
212s E a / b...
212s E
212s E ...Full output truncated (34 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
212s a(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
212s a(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
212s a(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 17, in
212s a(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_function.py", line 14, in a
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s ____________ test_exception_others[exception_formatting_generator] _____________
212s
212s filename = 'exception_formatting_generator'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'exception_formatting_generator'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
212s E next(f)
212s E File "tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
212s E yield a / b...
212s E
212s E ...Full output truncated (34 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
212s next(f)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
212s yield a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
212s next(f)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
212s yield a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
212s next(f)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
212s yield a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 20, in
212s next(f)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_formatting_generator.py", line 14, in foo
212s yield a / b
212s
212s ZeroDivisionError: division by zero
212s
212s _________________ test_exception_others[exception_in_property] _________________
212s
212s filename = 'exception_in_property'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'exception_in_property'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E
212s E File "tests/exceptions/source/others/exception_in_property.py", line 22, in
212s E value = a.value
212s E - │ └ ...
212s E
212s E ...Full output truncated (6 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_in_property.py", line 22, in
212s value = a.value
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/exception_in_property.py", line 13, in value
212s 1 / 0
212s
212s ZeroDivisionError: division by zero
212s
212s __________________ test_exception_others[nested_with_reraise] __________________
212s
212s filename = 'nested_with_reraise'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'nested_with_reraise'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...nValueError\n' == '\nTraceback ...nValueError\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s E f = foo(x, y)
212s E File "tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s E a / b...
212s E
212s E ...Full output truncated (148 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
212s baz()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
212s bar(1, 0)
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
212s baz()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
212s bar(1, 0)
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s ZeroDivisionError: division by zero
212s
212s The above exception was the direct cause of the following exception:
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
212s bar(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
212s raise ValueError from e
212s ValueError
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s
212s The above exception was the direct cause of the following exception:
212s
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
212s bar(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
212s raise ValueError from e
212s
212s ValueError
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s ZeroDivisionError: division by zero
212s
212s The above exception was the direct cause of the following exception:
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
212s baz()
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
212s bar(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
212s raise ValueError from e
212s ValueError
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 20, in bar
212s f = foo(x, y)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 14, in foo
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s
212s The above exception was the direct cause of the following exception:
212s
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 30, in
212s baz()
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 26, in baz
212s bar(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/nested_with_reraise.py", line 22, in bar
212s raise ValueError from e
212s
212s ValueError
212s
212s __________________ test_exception_others[sys_tracebacklimit] ___________________
212s
212s filename = 'sys_tracebacklimit'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'sys_tracebacklimit'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
212s E g()
212s E File "tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
212s E h()...
212s E
212s E ...Full output truncated (70 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
212s g()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
212s h()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
212s i()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
212s j(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
212s g()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
212s h()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
212s i()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
212s j(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
212s g()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
212s h()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
212s i()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
212s j(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 33, in f
212s g()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 37, in g
212s h()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 41, in h
212s i()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 45, in i
212s j(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit.py", line 49, in j
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s ________________ test_exception_others[sys_tracebacklimit_none] ________________
212s
212s filename = 'sys_tracebacklimit_none'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'sys_tracebacklimit_none'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
212s E a()
212s E File "tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
212s E b()...
212s E
212s E ...Full output truncated (142 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
212s a()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
212s b()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
212s c()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
212s d()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
212s e()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
212s f()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
212s g()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
212s h()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
212s i()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
212s j(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
212s a()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
212s b()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
212s c()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
212s d()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
212s e()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
212s f()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
212s g()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
212s h()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
212s i()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
212s j(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
212s a()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
212s b()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
212s c()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
212s d()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
212s e()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
212s f()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
212s g()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
212s h()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
212s i()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
212s j(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 55, in
212s a()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 13, in a
212s b()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 17, in b
212s c()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 21, in c
212s d()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 25, in d
212s e()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 29, in e
212s f()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 33, in f
212s g()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 37, in g
212s h()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 41, in h
212s i()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 45, in i
212s j(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_none.py", line 49, in j
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s _______________ test_exception_others[sys_tracebacklimit_unset] ________________
212s
212s filename = 'sys_tracebacklimit_unset'
212s
212s @pytest.mark.parametrize(
212s "filename",
212s [
212s "assertionerror_without_traceback",
212s "catch_as_context_manager",
212s "catch_as_decorator_with_parentheses",
212s "catch_as_decorator_without_parentheses",
212s "catch_as_function",
212s "catch_message",
212s "exception_formatting_coroutine",
212s "exception_formatting_function",
212s "exception_formatting_generator",
212s "exception_in_property",
212s "handler_formatting_with_context_manager",
212s "handler_formatting_with_decorator",
212s "level_name",
212s "level_number",
212s "message_formatting_with_context_manager",
212s "message_formatting_with_decorator",
212s "nested_with_reraise",
212s "syntaxerror_without_traceback",
212s "sys_tracebacklimit",
212s "sys_tracebacklimit_negative",
212s "sys_tracebacklimit_none",
212s "sys_tracebacklimit_unset",
212s "zerodivisionerror_without_traceback",
212s ],
212s )
212s def test_exception_others(filename):
212s > compare_exception("others", filename)
212s
212s tests/test_exceptions_formatting.py:226:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'others', filename = 'sys_tracebacklimit_unset'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...ion by zero\n' == '\nTraceback ...ion by zero\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
212s E a()
212s E File "tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
212s E b()...
212s E
212s E ...Full output truncated (142 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
212s a()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
212s b()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
212s c()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
212s d()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
212s e()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
212s f()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
212s g()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
212s h()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
212s i()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
212s j(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
212s a()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
212s b()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
212s c()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
212s d()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
212s e()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
212s f()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
212s g()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
212s h()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
212s i()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
212s j(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
212s a()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
212s b()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
212s c()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
212s d()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
212s e()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
212s f()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
212s g()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
212s h()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
212s i()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
212s j(1, 0)
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
212s a / b
212s ZeroDivisionError: division by zero
212s
212s Traceback (most recent call last):
212s
212s > File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 58, in
212s a()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 13, in a
212s b()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 17, in b
212s c()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 21, in c
212s d()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 25, in d
212s e()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 29, in e
212s f()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 33, in f
212s g()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 37, in g
212s h()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 41, in h
212s i()
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 45, in i
212s j(1, 0)
212s
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/others/sys_tracebacklimit_unset.py", line 49, in j
212s a / b
212s
212s ZeroDivisionError: division by zero
212s
212s __________ test_exception_modern[type_hints-minimum_python_version0] ___________
212s
212s filename = 'type_hints', minimum_python_version = (3, 6)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'type_hints'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m23[0m, in [35m[0m
212s E [1mmain[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (16 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m23[0m, in [35m[0m
212s [1mmain[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m19[0m, in [35mmain[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m15[0m, in [35mfoo[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s ___ test_exception_modern[positional_only_argument-minimum_python_version1] ____
212s
212s filename = 'positional_only_argument', minimum_python_version = (3, 8)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'positional_only_argument'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m23[0m, in [35m[0m
212s E [1mmain[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (14 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m23[0m, in [35m[0m
212s [1mmain[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m19[0m, in [35mmain[0m
212s [1mfoo[0m[1m([0m[34m[1m1[0m[1m,[0m [34m[1m2[0m[1m,[0m [1mc[0m[35m[1m=[0m[34m[1m3[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mpositional_only_argument.py[0m", line [33m15[0m, in [35mfoo[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s ________ test_exception_modern[walrus_operator-minimum_python_version2] ________
212s
212s filename = 'walrus_operator', minimum_python_version = (3, 8)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'walrus_operator'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E > File "[32mtests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m25[0m, in [35m[0m
212s E [1mmain[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (10 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m25[0m, in [35m[0m
212s [1mmain[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m19[0m, in [35mmain[0m
212s [1m([0m[1mwalrus[0m [35m[1m:=[0m [1mfoo[0m[1m([0m[1m)[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mwalrus_operator.py[0m", line [33m8[0m, in [35mfoo[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s ________ test_exception_modern[match_statement-minimum_python_version3] ________
212s
212s filename = 'match_statement', minimum_python_version = (3, 10)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'match_statement'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m21[0m, in [35m[0m
212s E [1mmatch[0m[1m([0m[34m[1m1[0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (14 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m21[0m, in [35m[0m
212s [1mmatch[0m[1m([0m[34m[1m1[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m18[0m, in [35mmatch[0m
212s [1mcase[0m [1my[0m[1m:[0m [1mcase[0m[1m([0m[1mx[0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mmatch_statement.py[0m", line [33m11[0m, in [35mcase[0m
212s [1mmatch[0m [1my[0m [35m[1m/[0m [34m[1m0[0m[1m:[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s _____ test_exception_modern[exception_group_catch-minimum_python_version4] _____
212s
212s filename = 'exception_group_catch', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'exception_group_catch'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n + \x1b[3...1m 2\x1b[0m\n' == '\n + \x1b[3...1m 2\x1b[0m\n'
212s E
212s E
212s E + [33m[1mException Group Traceback (most recent call last):[0m
212s E |
212s E | File "[32mtests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m14[0m, in [35ma[0m
212s 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
212s E |...
212s E
212s E ...Full output truncated (24 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m14[0m, in [35ma[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group (1 sub-exception)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m 1[0m
212s +------------------------------------
212s
212s
212s [1mDuring handling of the above exception, another exception occurred:[0m
212s
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m25[0m, in [35m[0m
212s [1mb[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m21[0m, in [35mb[0m
212s [35m[1mexcept[0m[35m[1m*[0m [1mTypeError[0m[1m:[0m [1ma[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mexception_group_catch.py[0m", line [33m15[0m, in [35ma[0m
212s [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
212s
212s [31m[1mValueError[0m:[1m 2[0m
212s
212s _____________ test_exception_modern[notes-minimum_python_version5] _____________
212s
212s filename = 'notes', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'notes'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...rror\x1b[0m\n' == '\nTraceback ...rror\x1b[0m\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/modern/notes.py", line 13, in
212s E raise e
212s E ValueError: invalid value
212s E Note...
212s E
212s E ...Full output truncated (111 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 13, in
212s raise e
212s ValueError: invalid value
212s Note
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m13[0m, in [35m[0m
212s [35m[1mraise[0m [1me[0m
212s
212s [31m[1mValueError[0m:[1m invalid value[0m
212s Note
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 20, in
212s raise e
212s ValueError: invalid value
212s Note1
212s Note2
212s Note3
212s
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m20[0m, in [35m[0m
212s [35m[1mraise[0m [1me[0m
212s
212s [31m[1mValueError[0m:[1m invalid value[0m
212s Note1
212s Note2
212s Note3
212s
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 27, in
212s | raise e
212s | ExceptionGroup: Grouped (2 sub-exceptions)
212s | Note 1
212s | Note 2
212s | Note 3
212s +-+---------------- 1 ----------------
212s | ValueError: 1
212s +---------------- 2 ----------------
212s | ValueError: 2
212s +------------------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m27[0m, in [35m[0m
212s | [35m[1mraise[0m [1me[0m
212s |
212s | [31m[1mExceptionGroup[0m:[1m Grouped (2 sub-exceptions)[0m
212s | Note 1
212s | Note 2
212s | Note 3
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m 1[0m
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 2[0m
212s +------------------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 32, in
212s raise e
212s TabError: tab error
212s Note
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m32[0m, in [35m[0m
212s [35m[1mraise[0m [1me[0m
212s
212s [31m[1mTabError[0m:[1m tab error[0m
212s Note
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 38, in
212s raise e
212s File "", line 1
212s a = 7 *
212s ^
212s SyntaxError: syntax error
212s Note 1
212s Note 2
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m38[0m, in [35m[0m
212s [35m[1mraise[0m [1me[0m
212s
212s File "", line 1
212s a = 7 *
212s ^
212s
212s [31m[1mSyntaxError[0m:[1m syntax error[0m
212s Note 1
212s Note 2
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/notes.py", line 43, in
212s raise e
212s TypeError: type error
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mnotes.py[0m", line [33m43[0m, in [35m[0m
212s [35m[1mraise[0m [1me[0m
212s
212s [31m[1mTypeError[0m:[1m type error[0m
212s
212s ________ test_exception_modern[grouped_simple-minimum_python_version6] _________
212s
212s filename = 'grouped_simple', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'grouped_simple'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
212s E
212s E
212s E + Exception Group Traceback (most recent call last):
212s E | File "tests/exceptions/source/modern/grouped_simple.py", line 41, in
212s E | main()
212s E | File "tests/exceptions/source/modern/grouped_simple.py", line 34, in main
212s E | raise ExceptionGroup("group", [error_1, error_2, error_3]) from None...
212s E
212s E ...Full output truncated (94 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 41, in
212s | main()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 34, in main
212s | raise ExceptionGroup("group", [error_1, error_2, error_3]) from None
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 26, in main
212s | c(b)
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 20, in c
212s | f()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 16, in b
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 12, in a
212s | x / y
212s | ZeroDivisionError: division by zero
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 29, in main
212s | c(a)
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 20, in c
212s | f()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 12, in a
212s | x / y
212s | ZeroDivisionError: division by zero
212s +---------------- 3 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 32, in main
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_simple.py", line 12, in a
212s | x / y
212s | ZeroDivisionError: division by zero
212s +------------------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m41[0m, in [35m[0m
212s | [1mmain[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m34[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m26[0m, in [35mmain[0m
212s | [1mc[0m[1m([0m[1mb[0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m20[0m, in [35mc[0m
212s | [1mf[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m16[0m, in [35mb[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m12[0m, in [35ma[0m
212s | [1mx[0m [35m[1m/[0m [1my[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m29[0m, in [35mmain[0m
212s | [1mc[0m[1m([0m[1ma[0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m20[0m, in [35mc[0m
212s | [1mf[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m12[0m, in [35ma[0m
212s | [1mx[0m [35m[1m/[0m [1my[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +---------------- 3 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m32[0m, in [35mmain[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_simple.py[0m", line [33m12[0m, in [35ma[0m
212s | [1mx[0m [35m[1m/[0m [1my[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +------------------------------------
212s
212s ________ test_exception_modern[grouped_nested-minimum_python_version7] _________
212s
212s filename = 'grouped_nested', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'grouped_nested'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
212s E
212s E
212s E + Exception Group Traceback (most recent call last):
212s E | File "tests/exceptions/source/modern/grouped_nested.py", line 40, in
212s E | main()
212s E | File "tests/exceptions/source/modern/grouped_nested.py", line 33, in main
212s E | raise ExceptionGroup("group_2", [error_4, error_3]) from None...
212s E
212s E ...Full output truncated (144 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 40, in
212s | main()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 33, in main
212s | raise ExceptionGroup("group_2", [error_4, error_3]) from None
212s | ExceptionGroup: group_2 (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 26, in main
212s | raise ExceptionGroup("group_1", [error_1, error_2])
212s | ExceptionGroup: group_1 (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 17, in main
212s | divide_by_zero()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 6, in divide_by_zero
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 22, in main
212s | raise_value_error(100)
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 10, in raise_value_error
212s | raise ValueError(value)
212s | ValueError: 100
212s +------------------------------------
212s |
212s | During handling of the above exception, another exception occurred:
212s |
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 29, in main
212s | raise_value_error(-100)
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 10, in raise_value_error
212s | raise ValueError(value)
212s | ValueError: -100
212s +---------------- 2 ----------------
212s | Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 26, in main
212s | raise ExceptionGroup("group_1", [error_1, error_2])
212s | ExceptionGroup: group_1 (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 17, in main
212s | divide_by_zero()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 6, in divide_by_zero
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 22, in main
212s | raise_value_error(100)
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_nested.py", line 10, in raise_value_error
212s | raise ValueError(value)
212s | ValueError: 100
212s +------------------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m40[0m, in [35m[0m
212s | [1mmain[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m33[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_2 (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m26[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_1 (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m17[0m, in [35mmain[0m
212s | [1mdivide_by_zero[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m6[0m, in [35mdivide_by_zero[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m22[0m, in [35mmain[0m
212s | [1mraise_value_error[0m[1m([0m[34m[1m100[0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m10[0m, in [35mraise_value_error[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[1mvalue[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m 100[0m
212s +------------------------------------
212s |
212s |
212s | [1mDuring handling of the above exception, another exception occurred:[0m
212s |
212s |
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m29[0m, in [35mmain[0m
212s | [1mraise_value_error[0m[1m([0m[35m[1m-[0m[34m[1m100[0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m10[0m, in [35mraise_value_error[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[1mvalue[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m -100[0m
212s +---------------- 2 ----------------
212s | [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m26[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_1 (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m17[0m, in [35mmain[0m
212s | [1mdivide_by_zero[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m6[0m, in [35mdivide_by_zero[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m22[0m, in [35mmain[0m
212s | [1mraise_value_error[0m[1m([0m[34m[1m100[0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_nested.py[0m", line [33m10[0m, in [35mraise_value_error[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[1mvalue[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m 100[0m
212s +------------------------------------
212s
212s _ test_exception_modern[grouped_with_cause_and_context-minimum_python_version8] _
212s
212s filename = 'grouped_with_cause_and_context', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'grouped_with_cause_and_context'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\nTraceback ...-----------\n' == '\nTraceback ...-----------\n'
212s E
212s E
212s E Traceback (most recent call last):
212s E File "tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 31, in main
212s E a()
212s E File "tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
212s E 1 / 0...
212s E
212s E ...Full output truncated (130 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 31, in main
212s a()
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
212s 1 / 0
212s ZeroDivisionError: division by zero
212s
212s The above exception was the direct cause of the following exception:
212s
212s Traceback (most recent call last):
212s File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 34, in main
212s raise ValueError("Error") from err
212s ValueError: Error
212s
212s During handling of the above exception, another exception occurred:
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 43, in
212s | main()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 36, in main
212s | raise ExceptionGroup("from_context", [from_context, from_cause])
212s | ExceptionGroup: from_context (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 17, in main
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s |
212s | The above exception was the direct cause of the following exception:
212s |
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 19, in main
212s | raise ValueError("ContextError") from err
212s | ValueError: ContextError
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 24, in main
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 10, in a
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s |
212s | During handling of the above exception, another exception occurred:
212s |
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_with_cause_and_context.py", line 26, in main
212s | raise ValueError("CauseError")
212s | ValueError: CauseError
212s +------------------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m31[0m, in [35mmain[0m
212s [1ma[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
212s [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s
212s [1mThe above exception was the direct cause of the following exception:[0m
212s
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m34[0m, in [35mmain[0m
212s [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m [35m[1mfrom[0m [1merr[0m
212s
212s [31m[1mValueError[0m:[1m Error[0m
212s
212s
212s [1mDuring handling of the above exception, another exception occurred:[0m
212s
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m43[0m, in [35m[0m
212s | [1mmain[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m36[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m from_context (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m17[0m, in [35mmain[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s |
212s |
212s | [1mThe above exception was the direct cause of the following exception:[0m
212s |
212s |
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m19[0m, in [35mmain[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"ContextError"[0m[1m)[0m [35m[1mfrom[0m [1merr[0m
212s |
212s | [31m[1mValueError[0m:[1m ContextError[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m24[0m, in [35mmain[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s |
212s |
212s | [1mDuring handling of the above exception, another exception occurred:[0m
212s |
212s |
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_with_cause_and_context.py[0m", line [33m26[0m, in [35mmain[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"CauseError"[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m CauseError[0m
212s +------------------------------------
212s
212s _ test_exception_modern[grouped_as_cause_and_context-minimum_python_version9] __
212s
212s filename = 'grouped_as_cause_and_context', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'grouped_as_cause_and_context'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
212s E
212s E
212s E + Exception Group Traceback (most recent call last):
212s E | File "tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 31, in main
212s E | raise ExceptionGroup("group_1", [error_1, error_2])
212s E | ExceptionGroup: group_1 (2 sub-exceptions)
212s E +-+---------------- 1 ----------------...
212s E
212s E ...Full output truncated (180 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 31, in main
212s | raise ExceptionGroup("group_1", [error_1, error_2])
212s | ExceptionGroup: group_1 (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 20, in main
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 10, in a
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 25, in main
212s | b()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 14, in b
212s | raise ValueError("Error")
212s | ValueError: Error
212s +------------------------------------
212s
212s The above exception was the direct cause of the following exception:
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 33, in main
212s | raise ExceptionGroup("group_2", [error_2, error_1]) from err
212s | ExceptionGroup: group_2 (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 25, in main
212s | b()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 14, in b
212s | raise ValueError("Error")
212s | ValueError: Error
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 20, in main
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 10, in a
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s +------------------------------------
212s
212s During handling of the above exception, another exception occurred:
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 42, in
212s | main()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 35, in main
212s | raise ExceptionGroup("group_3", [err])
212s | ExceptionGroup: group_3 (1 sub-exception)
212s +-+---------------- 1 ----------------
212s | Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 33, in main
212s | raise ExceptionGroup("group_2", [error_2, error_1]) from err
212s | ExceptionGroup: group_2 (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 25, in main
212s | b()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 14, in b
212s | raise ValueError("Error")
212s | ValueError: Error
212s +---------------- 2 ----------------
212s | Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 20, in main
212s | a()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_as_cause_and_context.py", line 10, in a
212s | 1 / 0
212s | ZeroDivisionError: division by zero
212s +------------------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m31[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_1 (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m20[0m, in [35mmain[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m25[0m, in [35mmain[0m
212s | [1mb[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m14[0m, in [35mb[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m Error[0m
212s +------------------------------------
212s
212s
212s [1mThe above exception was the direct cause of the following exception:[0m
212s
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m33[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_2 (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m25[0m, in [35mmain[0m
212s | [1mb[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m14[0m, in [35mb[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m Error[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m20[0m, in [35mmain[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +------------------------------------
212s
212s
212s [1mDuring handling of the above exception, another exception occurred:[0m
212s
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m42[0m, in [35m[0m
212s | [1mmain[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m35[0m, in [35mmain[0m
212s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group_3"[0m[1m,[0m [1m[[0m[1merr[0m[1m][0m[1m)[0m
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_3 (1 sub-exception)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m33[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group_2 (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m25[0m, in [35mmain[0m
212s | [1mb[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m14[0m, in [35mb[0m
212s | [35m[1mraise[0m [1mValueError[0m[1m([0m[36m"Error"[0m[1m)[0m
212s |
212s | [31m[1mValueError[0m:[1m Error[0m
212s +---------------- 2 ----------------
212s | [33m[1mTraceback (most recent call last):[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m20[0m, in [35mmain[0m
212s | [1ma[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_as_cause_and_context.py[0m", line [33m10[0m, in [35ma[0m
212s | [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m
212s |
212s | [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s +------------------------------------
212s
212s ______ test_exception_modern[grouped_max_length-minimum_python_version10] ______
212s
212s filename = 'grouped_max_length', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'grouped_max_length'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
212s E
212s E
212s E + Exception Group Traceback (most recent call last):
212s E | File "tests/exceptions/source/modern/grouped_max_length.py", line 15, in
212s E | main()
212s E | File "tests/exceptions/source/modern/grouped_max_length.py", line 8, in main
212s E | raise ExceptionGroup("group", errors)...
212s E
212s E ...Full output truncated (79 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_length.py", line 15, in
212s | main()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_length.py", line 8, in main
212s | raise ExceptionGroup("group", errors)
212s | ExceptionGroup: group (100 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: 0
212s +---------------- 2 ----------------
212s | ValueError: 1
212s +---------------- 3 ----------------
212s | ValueError: 2
212s +---------------- 4 ----------------
212s | ValueError: 3
212s +---------------- 5 ----------------
212s | ValueError: 4
212s +---------------- 6 ----------------
212s | ValueError: 5
212s +---------------- 7 ----------------
212s | ValueError: 6
212s +---------------- 8 ----------------
212s | ValueError: 7
212s +---------------- 9 ----------------
212s | ValueError: 8
212s +---------------- 10 ---------------
212s | ValueError: 9
212s +---------------- 11 ---------------
212s | ValueError: 10
212s +---------------- 12 ---------------
212s | ValueError: 11
212s +---------------- 13 ---------------
212s | ValueError: 12
212s +---------------- 14 ---------------
212s | ValueError: 13
212s +---------------- 15 ---------------
212s | ValueError: 14
212s +--------------- ... ---------------
212s | and 85 more exceptions
212s +------------------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_length.py[0m", line [33m15[0m, in [35m[0m
212s | [1mmain[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_length.py[0m", line [33m8[0m, in [35mmain[0m
212s | [35m[1mraise[0m [1mExceptionGroup[0m[1m([0m[36m"group"[0m[1m,[0m [1merrors[0m[1m)[0m
212s |
212s | [31m[1mExceptionGroup[0m:[1m group (100 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m 0[0m
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 1[0m
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 2[0m
212s +---------------- 4 ----------------
212s | [31m[1mValueError[0m:[1m 3[0m
212s +---------------- 5 ----------------
212s | [31m[1mValueError[0m:[1m 4[0m
212s +---------------- 6 ----------------
212s | [31m[1mValueError[0m:[1m 5[0m
212s +---------------- 7 ----------------
212s | [31m[1mValueError[0m:[1m 6[0m
212s +---------------- 8 ----------------
212s | [31m[1mValueError[0m:[1m 7[0m
212s +---------------- 9 ----------------
212s | [31m[1mValueError[0m:[1m 8[0m
212s +---------------- 10 ---------------
212s | [31m[1mValueError[0m:[1m 9[0m
212s +---------------- 11 ---------------
212s | [31m[1mValueError[0m:[1m 10[0m
212s +---------------- 12 ---------------
212s | [31m[1mValueError[0m:[1m 11[0m
212s +---------------- 13 ---------------
212s | [31m[1mValueError[0m:[1m 12[0m
212s +---------------- 14 ---------------
212s | [31m[1mValueError[0m:[1m 13[0m
212s +---------------- 15 ---------------
212s | [31m[1mValueError[0m:[1m 14[0m
212s +--------------- ... ---------------
212s | and 85 more exceptions
212s +------------------------------------
212s
212s ______ test_exception_modern[grouped_max_depth-minimum_python_version11] _______
212s
212s filename = 'grouped_max_depth', minimum_python_version = (3, 11)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'grouped_max_depth'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n + Except...-----------\n' == '\n + Except...-----------\n'
212s E
212s E
212s E + Exception Group Traceback (most recent call last):
212s E | File "tests/exceptions/source/modern/grouped_max_depth.py", line 26, in
212s E | main()
212s E | File "tests/exceptions/source/modern/grouped_max_depth.py", line 19, in main
212s E | raise ExceptionGroup("group", [nesting_left, nesting_right, nesting_both])...
212s E
212s E ...Full output truncated (317 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s + Exception Group Traceback (most recent call last):
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_depth.py", line 26, in
212s | main()
212s | File "/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/grouped_max_depth.py", line 19, in main
212s | raise ExceptionGroup("group", [nesting_left, nesting_right, nesting_both])
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -99
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -98
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -97
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -96
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -95
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -94
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -93
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -92
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -91
212s +---------------- 2 ----------------
212s | ... (max_group_depth is 10)
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ExceptionGroup: group (2 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ... (max_group_depth is 10)
212s +---------------- 2 ----------------
212s | ValueError: 91
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 92
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 93
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 94
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 95
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 96
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 97
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 98
212s +------------------------------------
212s +---------------- 2 ----------------
212s | ValueError: 99
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -99
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -98
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -97
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -96
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -95
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -94
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -93
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -92
212s +---------------- 2 ----------------
212s | ExceptionGroup: group (3 sub-exceptions)
212s +-+---------------- 1 ----------------
212s | ValueError: -91
212s +---------------- 2 ----------------
212s | ... (max_group_depth is 10)
212s +---------------- 3 ----------------
212s | ValueError: 91
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 92
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 93
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 94
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 95
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 96
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 97
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 98
212s +------------------------------------
212s +---------------- 3 ----------------
212s | ValueError: 99
212s +------------------------------------
212s
212s + [33m[1mException Group Traceback (most recent call last):[0m
212s |
212s | > File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_depth.py[0m", line [33m26[0m, in [35m[0m
212s | [1mmain[0m[1m([0m[1m)[0m
212s |
212s | File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mgrouped_max_depth.py[0m", line [33m19[0m, in [35mmain[0m
212s | [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
212s |
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -99[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -98[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -97[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -96[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -95[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -94[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -93[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -92[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -91[0m
212s +---------------- 2 ----------------
212s | ... (max_group_depth is 10)
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (2 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | ... (max_group_depth is 10)
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 91[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 92[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 93[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 94[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 95[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 96[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 97[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 98[0m
212s +------------------------------------
212s +---------------- 2 ----------------
212s | [31m[1mValueError[0m:[1m 99[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -99[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -98[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -97[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -96[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -95[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -94[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -93[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -92[0m
212s +---------------- 2 ----------------
212s | [31m[1mExceptionGroup[0m:[1m group (3 sub-exceptions)[0m
212s +-+---------------- 1 ----------------
212s | [31m[1mValueError[0m:[1m -91[0m
212s +---------------- 2 ----------------
212s | ... (max_group_depth is 10)
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 91[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 92[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 93[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 94[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 95[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 96[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 97[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 98[0m
212s +------------------------------------
212s +---------------- 3 ----------------
212s | [31m[1mValueError[0m:[1m 99[0m
212s +------------------------------------
212s
212s ___________ test_exception_modern[f_string-minimum_python_version12] ___________
212s
212s filename = 'f_string', minimum_python_version = (3, 12)
212s
212s @pytest.mark.parametrize(
212s "filename, minimum_python_version",
212s [
212s ("type_hints", (3, 6)),
212s ("positional_only_argument", (3, 8)),
212s ("walrus_operator", (3, 8)),
212s ("match_statement", (3, 10)),
212s ("exception_group_catch", (3, 11)),
212s ("notes", (3, 11)),
212s ("grouped_simple", (3, 11)),
212s ("grouped_nested", (3, 11)),
212s ("grouped_with_cause_and_context", (3, 11)),
212s ("grouped_as_cause_and_context", (3, 11)),
212s ("grouped_max_length", (3, 11)),
212s ("grouped_max_depth", (3, 11)),
212s ("f_string", (3, 12)), # Available since 3.6 but in 3.12 the lexer for f-string changed.
212s ],
212s )
212s def test_exception_modern(filename, minimum_python_version):
212s if sys.version_info < minimum_python_version:
212s pytest.skip("Feature not supported in this Python version")
212s
212s > compare_exception("modern", filename)
212s
212s tests/test_exceptions_formatting.py:251:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s dirname = 'modern', filename = 'f_string'
212s
212s def compare_exception(dirname, filename):
212s cwd = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
212s python = sys.executable or "python"
212s filepath = os.path.join("tests", "exceptions", "source", dirname, filename + ".py")
212s outpath = os.path.join(cwd, "tests", "exceptions", "output", dirname, filename + ".txt")
212s
212s with subprocess.Popen(
212s [python, filepath],
212s shell=False,
212s cwd=cwd,
212s stdout=subprocess.PIPE,
212s stderr=subprocess.PIPE,
212s universal_newlines=True,
212s env=dict(os.environ, PYTHONPATH=cwd, PYTHONIOENCODING="utf8"),
212s ) as proc:
212s stdout, stderr = proc.communicate()
212s print(stderr, file=sys.stderr)
212s assert proc.returncode == 0
212s assert stdout == ""
212s assert stderr != ""
212s
212s stderr = normalize(stderr)
212s
212s # generate(stderr, outpath)
212s
212s with open(outpath, "r") as file:
212s > assert stderr == file.read()
212s E assert '\n\x1b[33m\x...zero\x1b[0m\n' == '\n\x1b[33m\x...zero\x1b[0m\n'
212s E
212s E
212s E [33m[1mTraceback (most recent call last):[0m
212s E
212s E File "[32mtests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m21[0m, in [35m[0m
212s E [1mhello[0m[1m([0m[1m)[0m
212s E - [36m└ [0m[36m[1m[0m...
212s E
212s E ...Full output truncated (12 lines hidden), use '-vv' to show
212s
212s tests/test_exceptions_formatting.py:114: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s
212s [33m[1mTraceback (most recent call last):[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m21[0m, in [35m[0m
212s [1mhello[0m[1m([0m[1m)[0m
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m11[0m, in [35mhello[0m
212s [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
212s
212s File "[32m/tmp/autopkgtest.UqIti3/autopkgtest_tmp/tests/exceptions/source/modern/[0m[32m[1mf_string.py[0m", line [33m17[0m, in [35mworld[0m
212s [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
212s
212s [31m[1mZeroDivisionError[0m:[1m division by zero[0m
212s
212s ________________ test_log_formatters[False-{elapsed}-] _________________
212s
212s format = '{elapsed}', validator = at 0x3ff8388db20>
212s writer = .w at 0x3ff808eafc0>, use_log_function = False
212s
212s @pytest.mark.parametrize(
212s "format, validator",
212s [
212s ("{name}", lambda r: r == "tests.test_formatting"),
212s ("{time}", lambda r: re.fullmatch(r"\d+-\d+-\d+T\d+:\d+:\d+[.,]\d+[+-]\d{4}", r)),
212s ("{elapsed}", lambda r: re.fullmatch(r"\d:\d{2}:\d{2}\.\d{6}", r)),
212s ("{elapsed.seconds}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{line}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{level}", lambda r: r == "DEBUG"),
212s ("{level.name}", lambda r: r == "DEBUG"),
212s ("{level.no}", lambda r: r == "10"),
212s ("{level.icon}", lambda r: r == "🐞"),
212s ("{file}", lambda r: r == "test_formatting.py"),
212s ("{file.name}", lambda r: r == "test_formatting.py"),
212s ("{file.path}", lambda r: os.path.normcase(r) == os.path.normcase(__file__)),
212s ("{function}", lambda r: r == "test_log_formatters"),
212s ("{module}", lambda r: r == "test_formatting"),
212s ("{thread}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{thread.id}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{thread.name}", lambda r: isinstance(r, str) and r != ""),
212s ("{process}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{process.id}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{process.name}", lambda r: isinstance(r, str) and r != ""),
212s ("{message}", lambda r: r == "Message"),
212s ("%s {{a}} 天 {{1}} %d", lambda r: r == "%s {a} 天 {1} %d"),
212s ],
212s )
212s @pytest.mark.parametrize("use_log_function", [False, True])
212s def test_log_formatters(format, validator, writer, use_log_function):
212s message = "Message"
212s
212s logger.add(writer, format=format)
212s
212s if use_log_function:
212s logger.log("DEBUG", message)
212s else:
212s logger.debug(message)
212s
212s result = writer.read().rstrip("\n")
212s > assert validator(result)
212s E AssertionError: assert None
212s E + where None = at 0x3ff8388db20>('-1 day, 23:59:12.409106')
212s
212s tests/test_formatting.py:48: AssertionError
212s _________________ test_log_formatters[True-{elapsed}-] _________________
212s
212s format = '{elapsed}', validator = at 0x3ff8388db20>
212s writer = .w at 0x3ff81326840>, use_log_function = True
212s
212s @pytest.mark.parametrize(
212s "format, validator",
212s [
212s ("{name}", lambda r: r == "tests.test_formatting"),
212s ("{time}", lambda r: re.fullmatch(r"\d+-\d+-\d+T\d+:\d+:\d+[.,]\d+[+-]\d{4}", r)),
212s ("{elapsed}", lambda r: re.fullmatch(r"\d:\d{2}:\d{2}\.\d{6}", r)),
212s ("{elapsed.seconds}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{line}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{level}", lambda r: r == "DEBUG"),
212s ("{level.name}", lambda r: r == "DEBUG"),
212s ("{level.no}", lambda r: r == "10"),
212s ("{level.icon}", lambda r: r == "🐞"),
212s ("{file}", lambda r: r == "test_formatting.py"),
212s ("{file.name}", lambda r: r == "test_formatting.py"),
212s ("{file.path}", lambda r: os.path.normcase(r) == os.path.normcase(__file__)),
212s ("{function}", lambda r: r == "test_log_formatters"),
212s ("{module}", lambda r: r == "test_formatting"),
212s ("{thread}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{thread.id}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{thread.name}", lambda r: isinstance(r, str) and r != ""),
212s ("{process}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{process.id}", lambda r: re.fullmatch(r"\d+", r)),
212s ("{process.name}", lambda r: isinstance(r, str) and r != ""),
212s ("{message}", lambda r: r == "Message"),
212s ("%s {{a}} 天 {{1}} %d", lambda r: r == "%s {a} 天 {1} %d"),
212s ],
212s )
212s @pytest.mark.parametrize("use_log_function", [False, True])
212s def test_log_formatters(format, validator, writer, use_log_function):
212s message = "Message"
212s
212s logger.add(writer, format=format)
212s
212s if use_log_function:
212s logger.log("DEBUG", message)
212s else:
212s logger.debug(message)
212s
212s result = writer.read().rstrip("\n")
212s > assert validator(result)
212s E AssertionError: assert None
212s E + where None = at 0x3ff8388db20>('-1 day, 23:59:12.588383')
212s
212s tests/test_formatting.py:48: AssertionError
212s ________________________ test_pickling_standard_handler ________________________
212s
212s def test_pickling_standard_handler():
212s handler = StandardHandler(logging.NOTSET)
212s logger.add(handler, format="{level} - {function} - {message}")
212s pickled = pickle.dumps(logger)
212s unpickled = pickle.loads(pickled)
212s unpickled.debug("A message")
212s handler = next(iter(unpickled._core.handlers.values()))._sink._handler
212s > assert handler.written == "DEBUG - test_pickling_standard_handler - A message"
212s E AssertionError: assert '' == 'DEBUG - test...r - A message'
212s E
212s E - DEBUG - test_pickling_standard_handler - A message
212s
212s tests/test_pickling.py:130: AssertionError
212s ----------------------------- Captured stderr call -----------------------------
212s --- Logging error in Loguru Handler #0 ---
212s Record was: {'elapsed': datetime.timedelta(days=-1, seconds=86363, microseconds=648128), 'exception': None, 'extra': {}, 'file': (name='test_pickling.py', path='/tmp/autopkgtest.UqIti3/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=1689, name='MainProcess'), 'thread': (id=4396006998272, name='MainThread'), 'time': datetime(2024, 11, 23, 17, 51, 22, 855074, tzinfo=datetime.timezone(datetime.timedelta(0), 'UTC'))}
212s Traceback (most recent call last):
212s File "/usr/lib/python3/dist-packages/loguru/_handler.py", line 206, in emit
212s self._sink.write(str_record)
212s ~~~~~~~~~~~~~~~~^^^^^^^^^^^^
212s File "/usr/lib/python3/dist-packages/loguru/_simple_sinks.py", line 51, in write
212s self._handler.handle(record)
212s ~~~~~~~~~~~~~~~~~~~~^^^^^^^^
212s File "/usr/lib/python3.13/logging/__init__.py", line 1025, in handle
212s with self.lock:
212s ^^^^^^^^^
212s TypeError: 'NoneType' object does not support the context manager protocol
212s --- End of logging error ---
212s ___________ test_pickling_standard_handler_root_logger_not_picklable ___________
212s
212s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x3ff812058d0>
212s capsys = <_pytest.capture.CaptureFixture object at 0x3ff81205550>
212s
212s def test_pickling_standard_handler_root_logger_not_picklable(monkeypatch, capsys):
212s def reduce_protocol():
212s raise TypeError("Not picklable")
212s
212s monkeypatch.setattr(logging.getLogger(), "__reduce__", reduce_protocol, raising=False)
212s
212s handler = StandardHandler(logging.NOTSET)
212s logger.add(handler, format="=> {message}", catch=False)
212s
212s pickled = pickle.dumps(logger)
212s pickle.loads(pickled)
212s
212s > logger.info("Ok")
212s
212s tests/test_pickling.py:145:
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s /usr/lib/python3/dist-packages/loguru/_logger.py:2044: in info
212s __self._log("INFO", False, __self._options, __message, args, kwargs)
212s /usr/lib/python3/dist-packages/loguru/_logger.py:2032: in _log
212s handler.emit(log_record, level_id, from_decorator, raw, colored_message)
212s /usr/lib/python3/dist-packages/loguru/_handler.py:206: in emit
212s self._sink.write(str_record)
212s /usr/lib/python3/dist-packages/loguru/_simple_sinks.py:51: in write
212s self._handler.handle(record)
212s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
212s
212s self =
212s record = Ok">
212s
212s def handle(self, record):
212s """
212s Conditionally emit the specified logging record.
212s
212s Emission depends on filters which may have been added to the handler.
212s Wrap the actual emission of the record with acquisition/release of
212s the I/O thread lock.
212s
212s Returns an instance of the log record that was emitted
212s if it passed all filters, otherwise a false value is returned.
212s """
212s rv = self.filter(record)
212s if isinstance(rv, LogRecord):
212s record = rv
212s if rv:
212s > with self.lock:
212s E TypeError: 'NoneType' object does not support the context manager protocol
212s
212s /usr/lib/python3.13/logging/__init__.py:1025: TypeError
212s =============================== warnings summary ===============================
212s tests/test_multiprocessing.py: 216 warnings
212s /usr/lib/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: This process (pid=1689) is multi-threaded, use of fork() may lead to deadlocks in the child.
212s self.pid = os.fork()
212s
212s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
212s =========================== short test summary info ============================
212s FAILED tests/test_exceptions_catch.py::test_file_sink_ascii_encoding - assert...
212s FAILED tests/test_exceptions_catch.py::test_file_sink_utf8_encoding - assert ...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[assertion_error] - ...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[assertion_error_custom]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[assertion_error_in_string]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[attributes] - asser...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[chained_both] - ass...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[encoding] - assert ...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[global_variable] - ...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[indentation_error]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[keyword_argument]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[multilines_repr] - ...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[no_error_message]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[parenthesis] - asse...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[source_multilines]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[source_strings] - a...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[syntax_error] - ass...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[syntax_highlighting]
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[truncating] - asser...
212s FAILED tests/test_exceptions_formatting.py::test_diagnose[unprintable_object]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[assertion_from_lib]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[assertion_from_local]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[callback]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[catch_decorator_from_lib]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[decorated_callback]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[direct]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[indirect]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[string_lib]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[string_source]
212s FAILED tests/test_exceptions_formatting.py::test_exception_ownership[syntaxerror]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_coroutine]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_function]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_formatting_generator]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[exception_in_property]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[nested_with_reraise]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_none]
212s FAILED tests/test_exceptions_formatting.py::test_exception_others[sys_tracebacklimit_unset]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[type_hints-minimum_python_version0]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[positional_only_argument-minimum_python_version1]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[walrus_operator-minimum_python_version2]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[match_statement-minimum_python_version3]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[exception_group_catch-minimum_python_version4]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[notes-minimum_python_version5]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_simple-minimum_python_version6]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_nested-minimum_python_version7]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_with_cause_and_context-minimum_python_version8]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_as_cause_and_context-minimum_python_version9]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_max_length-minimum_python_version10]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[grouped_max_depth-minimum_python_version11]
212s FAILED tests/test_exceptions_formatting.py::test_exception_modern[f_string-minimum_python_version12]
212s FAILED tests/test_formatting.py::test_log_formatters[False-{elapsed}-]
212s FAILED tests/test_formatting.py::test_log_formatters[True-{elapsed}-]
212s FAILED tests/test_pickling.py::test_pickling_standard_handler - AssertionErro...
212s FAILED tests/test_pickling.py::test_pickling_standard_handler_root_logger_not_picklable
212s ========= 56 failed, 1411 passed, 30 skipped, 216 warnings in -22.94s ==========
212s autopkgtest [17:51:36]: test run-unit-test: -----------------------]
213s run-unit-test FAIL non-zero exit status 1
213s autopkgtest [17:51:37]: test run-unit-test: - - - - - - - - - - results - - - - - - - - - -
213s autopkgtest [17:51:37]: test autodep8-python3: preparing testbed
328s autopkgtest [17:53:32]: testbed dpkg architecture: s390x
328s autopkgtest [17:53:32]: testbed apt version: 2.9.8
328s autopkgtest [17:53:32]: @@@@@@@@@@@@@@@@@@@@ test bed setup
329s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB]
330s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9704 B]
330s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [912 kB]
330s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.6 kB]
330s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [56.7 kB]
330s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x Packages [72.3 kB]
330s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/restricted s390x Packages [756 B]
330s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x Packages [754 kB]
330s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse s390x Packages [6452 B]
330s Fetched 1899 kB in 1s (2254 kB/s)
330s Reading package lists...
332s Reading package lists...
332s Building dependency tree...
332s Reading state information...
332s Calculating upgrade...
333s The following package was automatically installed and is no longer required:
333s libsgutils2-1.46-2
333s Use 'sudo apt autoremove' to remove it.
333s The following NEW packages will be installed:
333s libsgutils2-1.48
333s The following packages will be upgraded:
333s bpftrace curl debconf debconf-i18n distro-info gir1.2-girepository-2.0
333s gir1.2-glib-2.0 hostname libaudit-common libaudit1 libcurl3t64-gnutls
333s libcurl4t64 libgirepository-1.0-1 libglib2.0-0t64 libglib2.0-data
333s libpam-modules libpam-modules-bin libpam-runtime libpam0g libplymouth5
333s libpython3-stdlib libselinux1 libsemanage-common libsemanage2 linux-base
333s lxd-installer openssh-client openssh-server openssh-sftp-server plymouth
333s plymouth-theme-ubuntu-text python3 python3-blinker python3-debconf
333s python3-jsonschema-specifications python3-minimal python3-rpds-py
333s python3-yaml sg3-utils sg3-utils-udev vim-common vim-tiny xxd
333s 43 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
333s Need to get 10.5 MB of archives.
333s After this operation, 2418 kB of additional disk space will be used.
333s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x hostname s390x 3.25 [11.2 kB]
333s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x libaudit-common all 1:4.0.2-2ubuntu1 [6578 B]
333s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libaudit1 s390x 1:4.0.2-2ubuntu1 [52.5 kB]
333s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x debconf-i18n all 1.5.87ubuntu1 [204 kB]
333s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3-minimal s390x 3.12.7-1 [27.4 kB]
333s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3 s390x 3.12.7-1 [24.0 kB]
333s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x libpython3-stdlib s390x 3.12.7-1 [10.0 kB]
333s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x python3-debconf all 1.5.87ubuntu1 [4156 B]
333s Get:9 http://ftpmaster.internal/ubuntu plucky/main s390x debconf all 1.5.87ubuntu1 [124 kB]
333s Get:10 http://ftpmaster.internal/ubuntu plucky/main s390x libpam0g s390x 1.5.3-7ubuntu4 [70.0 kB]
333s Get:11 http://ftpmaster.internal/ubuntu plucky/main s390x libselinux1 s390x 3.7-3ubuntu1 [85.2 kB]
333s Get:12 http://ftpmaster.internal/ubuntu plucky/main s390x libpam-modules-bin s390x 1.5.3-7ubuntu4 [56.2 kB]
333s Get:13 http://ftpmaster.internal/ubuntu plucky/main s390x libpam-modules s390x 1.5.3-7ubuntu4 [294 kB]
333s Get:14 http://ftpmaster.internal/ubuntu plucky/main s390x openssh-sftp-server s390x 1:9.9p1-3ubuntu2 [38.2 kB]
333s Get:15 http://ftpmaster.internal/ubuntu plucky/main s390x openssh-server s390x 1:9.9p1-3ubuntu2 [552 kB]
333s Get:16 http://ftpmaster.internal/ubuntu plucky/main s390x openssh-client s390x 1:9.9p1-3ubuntu2 [955 kB]
333s Get:17 http://ftpmaster.internal/ubuntu plucky/main s390x libpam-runtime all 1.5.3-7ubuntu4 [40.8 kB]
333s Get:18 http://ftpmaster.internal/ubuntu plucky/main s390x libsemanage-common all 3.7-2build1 [7186 B]
333s Get:19 http://ftpmaster.internal/ubuntu plucky/main s390x libsemanage2 s390x 3.7-2build1 [97.1 kB]
333s Get:20 http://ftpmaster.internal/ubuntu plucky/main s390x distro-info s390x 1.12 [20.0 kB]
333s Get:21 http://ftpmaster.internal/ubuntu plucky/main s390x gir1.2-girepository-2.0 s390x 1.82.0-2 [25.0 kB]
333s Get:22 http://ftpmaster.internal/ubuntu plucky/main s390x gir1.2-glib-2.0 s390x 2.82.2-3 [180 kB]
333s Get:23 http://ftpmaster.internal/ubuntu plucky/main s390x libglib2.0-0t64 s390x 2.82.2-3 [1575 kB]
333s Get:24 http://ftpmaster.internal/ubuntu plucky/main s390x libgirepository-1.0-1 s390x 1.82.0-2 [84.9 kB]
333s Get:25 http://ftpmaster.internal/ubuntu plucky/main s390x libglib2.0-data all 2.82.2-3 [51.7 kB]
333s Get:26 http://ftpmaster.internal/ubuntu plucky/main s390x python3-yaml s390x 6.0.2-1build1 [188 kB]
333s Get:27 http://ftpmaster.internal/ubuntu plucky/main s390x vim-tiny s390x 2:9.1.0861-1ubuntu1 [664 kB]
333s Get:28 http://ftpmaster.internal/ubuntu plucky/main s390x vim-common all 2:9.1.0861-1ubuntu1 [395 kB]
333s Get:29 http://ftpmaster.internal/ubuntu plucky/main s390x xxd s390x 2:9.1.0861-1ubuntu1 [66.6 kB]
333s Get:30 http://ftpmaster.internal/ubuntu plucky/main s390x libplymouth5 s390x 24.004.60-2ubuntu3 [150 kB]
333s Get:31 http://ftpmaster.internal/ubuntu plucky/main s390x plymouth-theme-ubuntu-text s390x 24.004.60-2ubuntu3 [10.1 kB]
333s Get:32 http://ftpmaster.internal/ubuntu plucky/main s390x plymouth s390x 24.004.60-2ubuntu3 [144 kB]
333s Get:33 http://ftpmaster.internal/ubuntu plucky/main s390x bpftrace s390x 0.21.2-2ubuntu3 [1718 kB]
334s Get:34 http://ftpmaster.internal/ubuntu plucky/main s390x curl s390x 8.9.1-2ubuntu3 [241 kB]
334s Get:35 http://ftpmaster.internal/ubuntu plucky/main s390x libcurl4t64 s390x 8.9.1-2ubuntu3 [386 kB]
334s Get:36 http://ftpmaster.internal/ubuntu plucky/main s390x libcurl3t64-gnutls s390x 8.9.1-2ubuntu3 [379 kB]
334s Get:37 http://ftpmaster.internal/ubuntu plucky/main s390x libsgutils2-1.48 s390x 1.48-0ubuntu1 [120 kB]
334s Get:38 http://ftpmaster.internal/ubuntu plucky/main s390x linux-base all 4.10.1ubuntu1 [34.8 kB]
334s Get:39 http://ftpmaster.internal/ubuntu plucky/main s390x lxd-installer all 10 [5264 B]
334s Get:40 http://ftpmaster.internal/ubuntu plucky/main s390x python3-blinker all 1.9.0-1 [10.7 kB]
334s Get:41 http://ftpmaster.internal/ubuntu plucky/main s390x python3-rpds-py s390x 0.21.0-2ubuntu1 [368 kB]
334s Get:42 http://ftpmaster.internal/ubuntu plucky/main s390x python3-jsonschema-specifications all 2023.12.1-2 [9116 B]
334s Get:43 http://ftpmaster.internal/ubuntu plucky/main s390x sg3-utils s390x 1.48-0ubuntu1 [1027 kB]
334s Get:44 http://ftpmaster.internal/ubuntu plucky/main s390x sg3-utils-udev all 1.48-0ubuntu1 [6608 B]
334s Preconfiguring packages ...
334s Fetched 10.5 MB in 1s (10.5 MB/s)
334s (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 ... 55541 files and directories currently installed.)
334s Preparing to unpack .../hostname_3.25_s390x.deb ...
334s Unpacking hostname (3.25) over (3.23+nmu2ubuntu2) ...
334s Setting up hostname (3.25) ...
334s (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 ... 55541 files and directories currently installed.)
334s Preparing to unpack .../libaudit-common_1%3a4.0.2-2ubuntu1_all.deb ...
334s Unpacking libaudit-common (1:4.0.2-2ubuntu1) over (1:4.0.1-1ubuntu2) ...
334s Setting up libaudit-common (1:4.0.2-2ubuntu1) ...
334s (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 ... 55541 files and directories currently installed.)
334s Preparing to unpack .../libaudit1_1%3a4.0.2-2ubuntu1_s390x.deb ...
334s Unpacking libaudit1:s390x (1:4.0.2-2ubuntu1) over (1:4.0.1-1ubuntu2) ...
334s Setting up libaudit1:s390x (1:4.0.2-2ubuntu1) ...
334s (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 ... 55541 files and directories currently installed.)
334s Preparing to unpack .../debconf-i18n_1.5.87ubuntu1_all.deb ...
334s Unpacking debconf-i18n (1.5.87ubuntu1) over (1.5.86ubuntu1) ...
334s Preparing to unpack .../python3-minimal_3.12.7-1_s390x.deb ...
334s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ...
334s Setting up python3-minimal (3.12.7-1) ...
334s (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 ... 55541 files and directories currently installed.)
334s Preparing to unpack .../python3_3.12.7-1_s390x.deb ...
335s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ...
335s Preparing to unpack .../libpython3-stdlib_3.12.7-1_s390x.deb ...
335s Unpacking libpython3-stdlib:s390x (3.12.7-1) over (3.12.6-0ubuntu1) ...
335s Preparing to unpack .../python3-debconf_1.5.87ubuntu1_all.deb ...
335s Unpacking python3-debconf (1.5.87ubuntu1) over (1.5.86ubuntu1) ...
335s Preparing to unpack .../debconf_1.5.87ubuntu1_all.deb ...
335s Unpacking debconf (1.5.87ubuntu1) over (1.5.86ubuntu1) ...
335s Setting up debconf (1.5.87ubuntu1) ...
335s (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 ... 55541 files and directories currently installed.)
335s Preparing to unpack .../libpam0g_1.5.3-7ubuntu4_s390x.deb ...
335s Unpacking libpam0g:s390x (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
335s Setting up libpam0g:s390x (1.5.3-7ubuntu4) ...
335s (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 ... 55541 files and directories currently installed.)
335s Preparing to unpack .../libselinux1_3.7-3ubuntu1_s390x.deb ...
335s Unpacking libselinux1:s390x (3.7-3ubuntu1) over (3.5-2ubuntu5) ...
335s Setting up libselinux1:s390x (3.7-3ubuntu1) ...
335s (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 ... 55541 files and directories currently installed.)
335s Preparing to unpack .../libpam-modules-bin_1.5.3-7ubuntu4_s390x.deb ...
335s Unpacking libpam-modules-bin (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
335s Setting up libpam-modules-bin (1.5.3-7ubuntu4) ...
335s pam_namespace.service is a disabled or a static unit not running, not starting it.
335s (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 ... 55541 files and directories currently installed.)
335s Preparing to unpack .../libpam-modules_1.5.3-7ubuntu4_s390x.deb ...
335s Unpacking libpam-modules:s390x (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
335s Setting up libpam-modules:s390x (1.5.3-7ubuntu4) ...
335s (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 ... 55541 files and directories currently installed.)
335s Preparing to unpack .../openssh-sftp-server_1%3a9.9p1-3ubuntu2_s390x.deb ...
335s Unpacking openssh-sftp-server (1:9.9p1-3ubuntu2) over (1:9.7p1-7ubuntu5) ...
335s Preparing to unpack .../openssh-server_1%3a9.9p1-3ubuntu2_s390x.deb ...
335s Unpacking openssh-server (1:9.9p1-3ubuntu2) over (1:9.7p1-7ubuntu5) ...
335s Preparing to unpack .../openssh-client_1%3a9.9p1-3ubuntu2_s390x.deb ...
335s Unpacking openssh-client (1:9.9p1-3ubuntu2) over (1:9.7p1-7ubuntu5) ...
335s Preparing to unpack .../libpam-runtime_1.5.3-7ubuntu4_all.deb ...
335s Unpacking libpam-runtime (1.5.3-7ubuntu4) over (1.5.3-7ubuntu2) ...
336s Setting up libpam-runtime (1.5.3-7ubuntu4) ...
336s (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 ... 55543 files and directories currently installed.)
336s Preparing to unpack .../libsemanage-common_3.7-2build1_all.deb ...
336s Unpacking libsemanage-common (3.7-2build1) over (3.5-1build6) ...
336s Setting up libsemanage-common (3.7-2build1) ...
336s (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 ... 55542 files and directories currently installed.)
336s Preparing to unpack .../libsemanage2_3.7-2build1_s390x.deb ...
336s Unpacking libsemanage2:s390x (3.7-2build1) over (3.5-1build6) ...
336s Setting up libsemanage2:s390x (3.7-2build1) ...
336s (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 ... 55542 files and directories currently installed.)
336s Preparing to unpack .../00-distro-info_1.12_s390x.deb ...
336s Unpacking distro-info (1.12) over (1.9) ...
336s Preparing to unpack .../01-gir1.2-girepository-2.0_1.82.0-2_s390x.deb ...
336s Unpacking gir1.2-girepository-2.0:s390x (1.82.0-2) over (1.80.1-4) ...
336s Preparing to unpack .../02-gir1.2-glib-2.0_2.82.2-3_s390x.deb ...
336s Unpacking gir1.2-glib-2.0:s390x (2.82.2-3) over (2.82.1-0ubuntu1) ...
336s Preparing to unpack .../03-libglib2.0-0t64_2.82.2-3_s390x.deb ...
336s Unpacking libglib2.0-0t64:s390x (2.82.2-3) over (2.82.1-0ubuntu1) ...
336s Preparing to unpack .../04-libgirepository-1.0-1_1.82.0-2_s390x.deb ...
336s Unpacking libgirepository-1.0-1:s390x (1.82.0-2) over (1.80.1-4) ...
336s Preparing to unpack .../05-libglib2.0-data_2.82.2-3_all.deb ...
336s Unpacking libglib2.0-data (2.82.2-3) over (2.82.1-0ubuntu1) ...
336s Preparing to unpack .../06-python3-yaml_6.0.2-1build1_s390x.deb ...
336s Unpacking python3-yaml (6.0.2-1build1) over (6.0.2-1) ...
336s Preparing to unpack .../07-vim-tiny_2%3a9.1.0861-1ubuntu1_s390x.deb ...
336s Unpacking vim-tiny (2:9.1.0861-1ubuntu1) over (2:9.1.0777-1ubuntu1) ...
336s Preparing to unpack .../08-vim-common_2%3a9.1.0861-1ubuntu1_all.deb ...
336s Unpacking vim-common (2:9.1.0861-1ubuntu1) over (2:9.1.0777-1ubuntu1) ...
336s Preparing to unpack .../09-xxd_2%3a9.1.0861-1ubuntu1_s390x.deb ...
336s Unpacking xxd (2:9.1.0861-1ubuntu1) over (2:9.1.0777-1ubuntu1) ...
336s Preparing to unpack .../10-libplymouth5_24.004.60-2ubuntu3_s390x.deb ...
336s Unpacking libplymouth5:s390x (24.004.60-2ubuntu3) over (24.004.60-1ubuntu11) ...
336s Preparing to unpack .../11-plymouth-theme-ubuntu-text_24.004.60-2ubuntu3_s390x.deb ...
336s Unpacking plymouth-theme-ubuntu-text (24.004.60-2ubuntu3) over (24.004.60-1ubuntu11) ...
336s Preparing to unpack .../12-plymouth_24.004.60-2ubuntu3_s390x.deb ...
336s Unpacking plymouth (24.004.60-2ubuntu3) over (24.004.60-1ubuntu11) ...
336s Preparing to unpack .../13-bpftrace_0.21.2-2ubuntu3_s390x.deb ...
336s Unpacking bpftrace (0.21.2-2ubuntu3) over (0.21.2-2ubuntu2) ...
336s Preparing to unpack .../14-curl_8.9.1-2ubuntu3_s390x.deb ...
336s Unpacking curl (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ...
336s Preparing to unpack .../15-libcurl4t64_8.9.1-2ubuntu3_s390x.deb ...
336s Unpacking libcurl4t64:s390x (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ...
336s Preparing to unpack .../16-libcurl3t64-gnutls_8.9.1-2ubuntu3_s390x.deb ...
336s Unpacking libcurl3t64-gnutls:s390x (8.9.1-2ubuntu3) over (8.9.1-2ubuntu2) ...
336s Selecting previously unselected package libsgutils2-1.48:s390x.
336s Preparing to unpack .../17-libsgutils2-1.48_1.48-0ubuntu1_s390x.deb ...
336s Unpacking libsgutils2-1.48:s390x (1.48-0ubuntu1) ...
336s Preparing to unpack .../18-linux-base_4.10.1ubuntu1_all.deb ...
336s Unpacking linux-base (4.10.1ubuntu1) over (4.5ubuntu9) ...
336s Preparing to unpack .../19-lxd-installer_10_all.deb ...
336s Unpacking lxd-installer (10) over (9) ...
336s Preparing to unpack .../20-python3-blinker_1.9.0-1_all.deb ...
336s Unpacking python3-blinker (1.9.0-1) over (1.8.2-1) ...
336s Preparing to unpack .../21-python3-rpds-py_0.21.0-2ubuntu1_s390x.deb ...
336s Unpacking python3-rpds-py (0.21.0-2ubuntu1) over (0.20.0-0ubuntu3) ...
336s Preparing to unpack .../22-python3-jsonschema-specifications_2023.12.1-2_all.deb ...
336s Unpacking python3-jsonschema-specifications (2023.12.1-2) over (2023.12.1-1ubuntu1) ...
336s Preparing to unpack .../23-sg3-utils_1.48-0ubuntu1_s390x.deb ...
336s Unpacking sg3-utils (1.48-0ubuntu1) over (1.46-3ubuntu5) ...
337s Preparing to unpack .../24-sg3-utils-udev_1.48-0ubuntu1_all.deb ...
337s Unpacking sg3-utils-udev (1.48-0ubuntu1) over (1.46-3ubuntu5) ...
337s Setting up distro-info (1.12) ...
337s Setting up linux-base (4.10.1ubuntu1) ...
337s Setting up libcurl4t64:s390x (8.9.1-2ubuntu3) ...
337s Setting up bpftrace (0.21.2-2ubuntu3) ...
337s Setting up openssh-client (1:9.9p1-3ubuntu2) ...
337s Setting up libcurl3t64-gnutls:s390x (8.9.1-2ubuntu3) ...
337s Setting up libsgutils2-1.48:s390x (1.48-0ubuntu1) ...
337s Setting up debconf-i18n (1.5.87ubuntu1) ...
337s Setting up xxd (2:9.1.0861-1ubuntu1) ...
337s Setting up libglib2.0-0t64:s390x (2.82.2-3) ...
337s No schema files found: doing nothing.
337s Setting up libglib2.0-data (2.82.2-3) ...
337s Setting up vim-common (2:9.1.0861-1ubuntu1) ...
337s Setting up gir1.2-glib-2.0:s390x (2.82.2-3) ...
337s Setting up lxd-installer (10) ...
337s Setting up libplymouth5:s390x (24.004.60-2ubuntu3) ...
337s Setting up libgirepository-1.0-1:s390x (1.82.0-2) ...
337s Setting up curl (8.9.1-2ubuntu3) ...
337s Setting up libpython3-stdlib:s390x (3.12.7-1) ...
337s Setting up sg3-utils (1.48-0ubuntu1) ...
337s Setting up openssh-sftp-server (1:9.9p1-3ubuntu2) ...
337s Setting up openssh-server (1:9.9p1-3ubuntu2) ...
337s Installing new version of config file /etc/ssh/moduli ...
337s Replacing config file /etc/ssh/sshd_config with new version
338s Setting up plymouth (24.004.60-2ubuntu3) ...
338s update-initramfs: Generating /boot/initrd.img-6.11.0-8-generic
338s W: No lz4 in /usr/bin:/sbin:/bin, using gzip
340s Using config file '/etc/zipl.conf'
340s Building bootmap in '/boot'
340s Adding IPL section 'ubuntu' (default)
340s Preparing boot device for LD-IPL: vda (0000).
340s Done.
340s update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
341s update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
341s Setting up python3 (3.12.7-1) ...
341s Setting up vim-tiny (2:9.1.0861-1ubuntu1) ...
341s Setting up sg3-utils-udev (1.48-0ubuntu1) ...
341s update-initramfs: deferring update (trigger activated)
341s Setting up plymouth-theme-ubuntu-text (24.004.60-2ubuntu3) ...
341s update-initramfs: deferring update (trigger activated)
341s Setting up gir1.2-girepository-2.0:s390x (1.82.0-2) ...
341s Setting up python3-rpds-py (0.21.0-2ubuntu1) ...
341s Setting up python3-jsonschema-specifications (2023.12.1-2) ...
341s Setting up python3-blinker (1.9.0-1) ...
341s Setting up python3-debconf (1.5.87ubuntu1) ...
341s Setting up python3-yaml (6.0.2-1build1) ...
342s Processing triggers for man-db (2.13.0-1) ...
343s Processing triggers for initramfs-tools (0.142ubuntu35) ...
343s update-initramfs: Generating /boot/initrd.img-6.11.0-8-generic
343s W: No lz4 in /usr/bin:/sbin:/bin, using gzip
345s Using config file '/etc/zipl.conf'
345s Building bootmap in '/boot'
345s Adding IPL section 'ubuntu' (default)
345s Preparing boot device for LD-IPL: vda (0000).
345s Done.
345s Processing triggers for libc-bin (2.40-1ubuntu3) ...
345s Processing triggers for ufw (0.36.2-8) ...
345s Reading package lists...
345s Building dependency tree...
345s Reading state information...
345s The following packages will be REMOVED:
345s libsgutils2-1.46-2*
345s 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
345s After this operation, 294 kB disk space will be freed.
345s (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 ... 55573 files and directories currently installed.)
345s Removing libsgutils2-1.46-2:s390x (1.46-3ubuntu5) ...
346s Processing triggers for libc-bin (2.40-1ubuntu3) ...
346s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease
346s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease
346s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease
346s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease
347s Reading package lists...
347s Reading package lists...
347s Building dependency tree...
347s Reading state information...
347s Calculating upgrade...
347s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
347s Reading package lists...
348s Building dependency tree...
348s Reading state information...
348s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
348s autopkgtest [17:53:52]: rebooting testbed after setup commands that affected boot
352s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds...
373s Reading package lists...
373s Building dependency tree...
373s Reading state information...
373s Starting pkgProblemResolver with broken count: 0
373s Starting 2 pkgProblemResolver with broken count: 0
374s Done
374s The following additional packages will be installed:
374s libpython3.13-minimal libpython3.13-stdlib python3-all python3-colorama
374s python3-loguru python3.13 python3.13-minimal
374s Suggested packages:
374s python3.13-venv python3.13-doc binfmt-support
374s The following NEW packages will be installed:
374s autopkgtest-satdep libpython3.13-minimal libpython3.13-stdlib python3-all
374s python3-colorama python3-loguru python3.13 python3.13-minimal
374s 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded.
374s Need to get 5941 kB/5942 kB of archives.
374s After this operation, 22.9 MB of additional disk space will be used.
374s Get:1 /tmp/autopkgtest.UqIti3/2-autopkgtest-satdep.deb autopkgtest-satdep s390x 0 [716 B]
374s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.13-minimal s390x 3.13.0-2 [877 kB]
374s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x python3.13-minimal s390x 3.13.0-2 [2172 kB]
374s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.13-stdlib s390x 3.13.0-2 [2086 kB]
374s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x python3.13 s390x 3.13.0-2 [719 kB]
374s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3-all s390x 3.12.7-1 [890 B]
374s Get:7 http://ftpmaster.internal/ubuntu plucky/main s390x python3-colorama all 0.4.6-4 [32.1 kB]
374s Get:8 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-loguru all 0.7.2-3 [53.2 kB]
375s Fetched 5941 kB in 1s (7708 kB/s)
375s Selecting previously unselected package libpython3.13-minimal:s390x.
375s (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 ... 55568 files and directories currently installed.)
375s Preparing to unpack .../0-libpython3.13-minimal_3.13.0-2_s390x.deb ...
375s Unpacking libpython3.13-minimal:s390x (3.13.0-2) ...
375s Selecting previously unselected package python3.13-minimal.
375s Preparing to unpack .../1-python3.13-minimal_3.13.0-2_s390x.deb ...
375s Unpacking python3.13-minimal (3.13.0-2) ...
375s Selecting previously unselected package libpython3.13-stdlib:s390x.
375s Preparing to unpack .../2-libpython3.13-stdlib_3.13.0-2_s390x.deb ...
375s Unpacking libpython3.13-stdlib:s390x (3.13.0-2) ...
375s Selecting previously unselected package python3.13.
375s Preparing to unpack .../3-python3.13_3.13.0-2_s390x.deb ...
375s Unpacking python3.13 (3.13.0-2) ...
375s Selecting previously unselected package python3-all.
375s Preparing to unpack .../4-python3-all_3.12.7-1_s390x.deb ...
375s Unpacking python3-all (3.12.7-1) ...
375s Selecting previously unselected package python3-colorama.
375s Preparing to unpack .../5-python3-colorama_0.4.6-4_all.deb ...
375s Unpacking python3-colorama (0.4.6-4) ...
375s Selecting previously unselected package python3-loguru.
375s Preparing to unpack .../6-python3-loguru_0.7.2-3_all.deb ...
375s Unpacking python3-loguru (0.7.2-3) ...
375s Selecting previously unselected package autopkgtest-satdep.
375s Preparing to unpack .../7-2-autopkgtest-satdep.deb ...
375s Unpacking autopkgtest-satdep (0) ...
375s Setting up python3-colorama (0.4.6-4) ...
375s Setting up python3-loguru (0.7.2-3) ...
376s Setting up libpython3.13-minimal:s390x (3.13.0-2) ...
376s Setting up python3.13-minimal (3.13.0-2) ...
376s Setting up libpython3.13-stdlib:s390x (3.13.0-2) ...
376s Setting up python3.13 (3.13.0-2) ...
377s Setting up python3-all (3.12.7-1) ...
377s Setting up autopkgtest-satdep (0) ...
377s Processing triggers for man-db (2.13.0-1) ...
378s Processing triggers for systemd (256.5-2ubuntu4) ...
379s (Reading database ... 56370 files and directories currently installed.)
379s Removing autopkgtest-satdep (0) ...
381s autopkgtest [17:54:25]: test autodep8-python3: set -e ; for py in $(py3versions -r 2>/dev/null) ; do cd "$AUTOPKGTEST_TMP" ; echo "Testing with $py:" ; $py -c "import loguru; print(loguru)" ; done
381s autopkgtest [17:54:25]: test autodep8-python3: [-----------------------
381s Testing with python3.13:
381s
381s Testing with python3.12:
381s
382s autopkgtest [17:54:26]: test autodep8-python3: -----------------------]
382s autopkgtest [17:54:26]: test autodep8-python3: - - - - - - - - - - results - - - - - - - - - -
382s autodep8-python3 PASS (superficial)
382s autopkgtest [17:54:26]: @@@@@@@@@@@@@@@@@@@@ summary
382s run-unit-test FAIL non-zero exit status 1
382s autodep8-python3 PASS (superficial)
394s virt: nova [W] Using flock in prodstack6-s390x
394s virt: flock: timeout while waiting to get lock
394s virt: Creating nova instance adt-plucky-s390x-loguru-20241123-174803-juju-7f2275-prod-proposed-migration-environment-2-ec6725b6-4235-4774-bf07-f73d22657dfb from image adt/ubuntu-plucky-s390x-server-20241119.img (UUID 0efe7a44-24e0-44d8-af6e-8997f14b87bd)...
394s virt: nova [W] Using flock in prodstack6-s390x
394s virt: flock: timeout while waiting to get lock
394s virt: Creating nova instance adt-plucky-s390x-loguru-20241123-174803-juju-7f2275-prod-proposed-migration-environment-2-ec6725b6-4235-4774-bf07-f73d22657dfb from image adt/ubuntu-plucky-s390x-server-20241119.img (UUID 0efe7a44-24e0-44d8-af6e-8997f14b87bd)...