sbuild (Debian sbuild) 0.86.3~bpo12+1 (03 November 2024) on debusine-worker-arm64-demeter-01.freexian.com
+==============================================================================+
| textual 0.52.1-1 (arm64) Mon, 18 Nov 2024 17:10:07 +0000 |
+==============================================================================+
Package: textual
Version: 0.52.1-1
Source Version: 0.52.1-1
Distribution: sid
Machine Architecture: arm64
Host Architecture: arm64
Build Architecture: arm64
Build Type: binary
I: No tarballs found in /var/lib/debusine/worker/.cache/sbuild
Unpacking /var/lib/debusine/worker/system-images/957781/system.tar.xz to /tmp/tmp.sbuild.5Tu6XQ2gdr...
I: NOTICE: Log filtering will replace 'sbuild-unshare-dummy-location' with '<<CHROOT>>'
+------------------------------------------------------------------------------+
| Chroot Setup Commands |
+------------------------------------------------------------------------------+
rm -f /etc/resolv.conf
----------------------
I: Finished running 'rm -f /etc/resolv.conf'.
Finished processing commands.
--------------------------------------------------------------------------------
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/dpkg-dbgsym_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/dpkg_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/dselect-dbgsym_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/dselect_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/libdpkg-dev_1.22.12~1.gbp82cafd_arm64.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/dpkg-dev_1.22.12~1.gbp82cafd_all.deb to /<<CHROOT>>...
Copying /tmp/debusine-fetch-exec-upload-rg61sto7/libdpkg-perl_1.22.12~1.gbp82cafd_all.deb to /<<CHROOT>>...
I: NOTICE: Log filtering will replace 'build/textual-2QFhaG/resolver-oEQ51U' with '<<RESOLVERDIR>>'
+------------------------------------------------------------------------------+
| Update chroot |
+------------------------------------------------------------------------------+
Get:1 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ InRelease
Ign:1 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ InRelease
Get:2 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ Release [606 B]
Get:3 http://deb.debian.org/debian sid InRelease [202 kB]
Get:2 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ Release [606 B]
Get:4 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ Release.gpg
Ign:4 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ Release.gpg
Get:5 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ Packages [9246 B]
Get:6 http://deb.debian.org/debian sid/main arm64 Packages [9956 kB]
Get:7 http://deb.debian.org/debian sid/main arm64 Components [4906 kB]
Fetched 15.1 MB in 2s (6521 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
The following packages will be upgraded:
apt bsdextrautils bsdutils debianutils diffstat dpkg dpkg-dev
libapt-pkg6.0t64 libaudit-common libaudit1 libblkid1 libbrotli1 libcap-ng0
libdpkg-perl libglib2.0-0t64 libmarkdown2 libmount1 libpcre2-8-0 libseccomp2
libselinux1 libsemanage2 libsmartcols1 libsystemd0 libudev1 libuuid1 libxml2
login login.defs mount passwd util-linux
31 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 9307 kB/12.8 MB of archives.
After this operation, 603 kB disk space will be freed.
Get:1 http://deb.debian.org/debian sid/main arm64 bsdutils arm64 1:2.40.2-11 [104 kB]
Get:2 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ dpkg 1.22.12~1.gbp82cafd [1513 kB]
Get:3 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ dpkg-dev 1.22.12~1.gbp82cafd [1337 kB]
Get:4 http://deb.debian.org/debian sid/main arm64 debianutils arm64 5.21 [92.1 kB]
Get:5 http://deb.debian.org/debian sid/main arm64 libsystemd0 arm64 257~rc2-3 [416 kB]
Get:6 file:/build/textual-2QFhaG/resolver-GV6109/apt_archive ./ libdpkg-perl 1.22.12~1.gbp82cafd [647 kB]
Get:7 http://deb.debian.org/debian sid/main arm64 libudev1 arm64 257~rc2-3 [139 kB]
Get:8 http://deb.debian.org/debian sid/main arm64 libapt-pkg6.0t64 arm64 2.9.11 [921 kB]
Get:9 http://deb.debian.org/debian sid/main arm64 bsdextrautils arm64 2.40.2-11 [91.2 kB]
Get:10 http://deb.debian.org/debian sid/main arm64 libblkid1 arm64 2.40.2-11 [162 kB]
Get:11 http://deb.debian.org/debian sid/main arm64 libmount1 arm64 2.40.2-11 [190 kB]
Get:12 http://deb.debian.org/debian sid/main arm64 libsmartcols1 arm64 2.40.2-11 [135 kB]
Get:13 http://deb.debian.org/debian sid/main arm64 mount arm64 2.40.2-11 [153 kB]
Get:14 http://deb.debian.org/debian sid/main arm64 libuuid1 arm64 2.40.2-11 [35.7 kB]
Get:15 http://deb.debian.org/debian sid/main arm64 util-linux arm64 2.40.2-11 [1170 kB]
Get:16 http://deb.debian.org/debian sid/main arm64 libpcre2-8-0 arm64 10.44-4 [243 kB]
Get:17 http://deb.debian.org/debian sid/main arm64 libselinux1 arm64 3.7-3+b1 [72.1 kB]
Get:18 http://deb.debian.org/debian sid/main arm64 libseccomp2 arm64 2.5.5-1+b3 [46.8 kB]
Get:19 http://deb.debian.org/debian sid/main arm64 apt arm64 2.9.11 [1287 kB]
Get:20 http://deb.debian.org/debian sid/main arm64 libaudit-common all 1:4.0.2-2 [12.7 kB]
Get:21 http://deb.debian.org/debian sid/main arm64 libcap-ng0 arm64 0.8.5-3+b1 [17.0 kB]
Get:22 http://deb.debian.org/debian sid/main arm64 libaudit1 arm64 1:4.0.2-2 [54.2 kB]
Get:23 http://deb.debian.org/debian sid/main arm64 login arm64 1:4.16.0-2+really2.40.2-11 [80.0 kB]
Get:24 http://deb.debian.org/debian sid/main arm64 login.defs all 1:4.16.0-5 [185 kB]
Get:25 http://deb.debian.org/debian sid/main arm64 libsemanage2 arm64 3.7-2+b1 [84.5 kB]
Get:26 http://deb.debian.org/debian sid/main arm64 passwd arm64 1:4.16.0-5 [1210 kB]
Get:27 http://deb.debian.org/debian sid/main arm64 diffstat arm64 1.67-1 [32.6 kB]
Get:28 http://deb.debian.org/debian sid/main arm64 libbrotli1 arm64 1.1.0-2+b6 [297 kB]
Get:29 http://deb.debian.org/debian sid/main arm64 libglib2.0-0t64 arm64 2.82.2-3 [1411 kB]
Get:30 http://deb.debian.org/debian sid/main arm64 libmarkdown2 arm64 2.2.7-2.1 [33.1 kB]
Get:31 http://deb.debian.org/debian sid/main arm64 libxml2 arm64 2.12.7+dfsg+really2.9.14-0.2+b1 [630 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 9307 kB in 0s (61.9 MB/s)
(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 ... 17129 files and directories currently installed.)
Preparing to unpack .../bsdutils_1%3a2.40.2-11_arm64.deb ...
Unpacking bsdutils (1:2.40.2-11) over (1:2.40.2-10) ...
Setting up bsdutils (1:2.40.2-11) ...
(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 ... 17129 files and directories currently installed.)
Preparing to unpack .../debianutils_5.21_arm64.deb ...
Unpacking debianutils (5.21) over (5.20+b1) ...
Setting up debianutils (5.21) ...
(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 ... 17128 files and directories currently installed.)
Preparing to unpack .../libsystemd0_257~rc2-3_arm64.deb ...
Unpacking libsystemd0:arm64 (257~rc2-3) over (257~rc1-4) ...
Setting up libsystemd0:arm64 (257~rc2-3) ...
(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 ... 17128 files and directories currently installed.)
Preparing to unpack .../libudev1_257~rc2-3_arm64.deb ...
Unpacking libudev1:arm64 (257~rc2-3) over (257~rc1-4) ...
Setting up libudev1:arm64 (257~rc2-3) ...
(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 ... 17128 files and directories currently installed.)
Preparing to unpack .../libapt-pkg6.0t64_2.9.11_arm64.deb ...
Unpacking libapt-pkg6.0t64:arm64 (2.9.11) over (2.9.10) ...
Setting up libapt-pkg6.0t64:arm64 (2.9.11) ...
(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 ... 17128 files and directories currently installed.)
Preparing to unpack .../dpkg_1.22.12~1.gbp82cafd_arm64.deb ...
Unpacking dpkg (1.22.12~1.gbp82cafd) over (1.22.11) ...
Setting up dpkg (1.22.12~1.gbp82cafd) ...
(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 ... 17127 files and directories currently installed.)
Preparing to unpack .../bsdextrautils_2.40.2-11_arm64.deb ...
Unpacking bsdextrautils (2.40.2-11) over (2.40.2-10) ...
Preparing to unpack .../libblkid1_2.40.2-11_arm64.deb ...
Unpacking libblkid1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libblkid1:arm64 (2.40.2-11) ...
(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 ... 17123 files and directories currently installed.)
Preparing to unpack .../libmount1_2.40.2-11_arm64.deb ...
Unpacking libmount1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libmount1:arm64 (2.40.2-11) ...
(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 ... 17123 files and directories currently installed.)
Preparing to unpack .../libsmartcols1_2.40.2-11_arm64.deb ...
Unpacking libsmartcols1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libsmartcols1:arm64 (2.40.2-11) ...
(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 ... 17123 files and directories currently installed.)
Preparing to unpack .../mount_2.40.2-11_arm64.deb ...
Unpacking mount (2.40.2-11) over (2.40.2-10) ...
Preparing to unpack .../libuuid1_2.40.2-11_arm64.deb ...
Unpacking libuuid1:arm64 (2.40.2-11) over (2.40.2-10) ...
Setting up libuuid1:arm64 (2.40.2-11) ...
(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 ... 17123 files and directories currently installed.)
Preparing to unpack .../util-linux_2.40.2-11_arm64.deb ...
Unpacking util-linux (2.40.2-11) over (2.40.2-10) ...
Setting up util-linux (2.40.2-11) ...
(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 ... 17120 files and directories currently installed.)
Preparing to unpack .../libpcre2-8-0_10.44-4_arm64.deb ...
Unpacking libpcre2-8-0:arm64 (10.44-4) over (10.42-4+b2) ...
Setting up libpcre2-8-0:arm64 (10.44-4) ...
(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 ... 17119 files and directories currently installed.)
Preparing to unpack .../libselinux1_3.7-3+b1_arm64.deb ...
Unpacking libselinux1:arm64 (3.7-3+b1) over (3.7-3) ...
Setting up libselinux1:arm64 (3.7-3+b1) ...
(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 ... 17120 files and directories currently installed.)
Preparing to unpack .../libseccomp2_2.5.5-1+b3_arm64.deb ...
Unpacking libseccomp2:arm64 (2.5.5-1+b3) over (2.5.5-1+b2) ...
Setting up libseccomp2:arm64 (2.5.5-1+b3) ...
(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 ... 17120 files and directories currently installed.)
Preparing to unpack .../archives/apt_2.9.11_arm64.deb ...
Unpacking apt (2.9.11) over (2.9.10) ...
Setting up apt (2.9.11) ...
(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 ... 17117 files and directories currently installed.)
Preparing to unpack .../libaudit-common_1%3a4.0.2-2_all.deb ...
Unpacking libaudit-common (1:4.0.2-2) over (1:4.0.1-3) ...
Setting up libaudit-common (1:4.0.2-2) ...
(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 ... 17117 files and directories currently installed.)
Preparing to unpack .../libcap-ng0_0.8.5-3+b1_arm64.deb ...
Unpacking libcap-ng0:arm64 (0.8.5-3+b1) over (0.8.5-3) ...
Setting up libcap-ng0:arm64 (0.8.5-3+b1) ...
(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 ... 17118 files and directories currently installed.)
Preparing to unpack .../libaudit1_1%3a4.0.2-2_arm64.deb ...
Unpacking libaudit1:arm64 (1:4.0.2-2) over (1:4.0.1-3) ...
Setting up libaudit1:arm64 (1:4.0.2-2) ...
(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 ... 17118 files and directories currently installed.)
Preparing to unpack .../00-login_1%3a4.16.0-2+really2.40.2-11_arm64.deb ...
Unpacking login (1:4.16.0-2+really2.40.2-11) over (1:4.16.0-2+really2.40.2-10) ...
Preparing to unpack .../01-login.defs_1%3a4.16.0-5_all.deb ...
Unpacking login.defs (1:4.16.0-5) over (1:4.16.0-4) ...
Preparing to unpack .../02-libsemanage2_3.7-2+b1_arm64.deb ...
Unpacking libsemanage2:arm64 (3.7-2+b1) over (3.7-2) ...
Preparing to unpack .../03-passwd_1%3a4.16.0-5_arm64.deb ...
Unpacking passwd (1:4.16.0-5) over (1:4.16.0-4) ...
Preparing to unpack .../04-diffstat_1.67-1_arm64.deb ...
Unpacking diffstat (1.67-1) over (1.66-1+b1) ...
Preparing to unpack .../05-dpkg-dev_1.22.12~1.gbp82cafd_all.deb ...
Unpacking dpkg-dev (1.22.12~1.gbp82cafd) over (1.22.11) ...
Preparing to unpack .../06-libdpkg-perl_1.22.12~1.gbp82cafd_all.deb ...
Unpacking libdpkg-perl (1.22.12~1.gbp82cafd) over (1.22.11) ...
Preparing to unpack .../07-libbrotli1_1.1.0-2+b6_arm64.deb ...
Unpacking libbrotli1:arm64 (1.1.0-2+b6) over (1.1.0-2+b5) ...
Preparing to unpack .../08-libglib2.0-0t64_2.82.2-3_arm64.deb ...
Unpacking libglib2.0-0t64:arm64 (2.82.2-3) over (2.82.2-2) ...
Preparing to unpack .../09-libmarkdown2_2.2.7-2.1_arm64.deb ...
Unpacking libmarkdown2:arm64 (2.2.7-2.1) over (2.2.7-2+b1) ...
Preparing to unpack .../10-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_arm64.deb ...
Unpacking libxml2:arm64 (2.12.7+dfsg+really2.9.14-0.2+b1) over (2.12.7+dfsg+really2.9.14-0.1) ...
Setting up bsdextrautils (2.40.2-11) ...
Setting up login.defs (1:4.16.0-5) ...
Installing new version of config file /etc/login.defs ...
Setting up libbrotli1:arm64 (1.1.0-2+b6) ...
Setting up libglib2.0-0t64:arm64 (2.82.2-3) ...
No schema files found: doing nothing.
Setting up diffstat (1.67-1) ...
Setting up libdpkg-perl (1.22.12~1.gbp82cafd) ...
Setting up mount (2.40.2-11) ...
Setting up libsemanage2:arm64 (3.7-2+b1) ...
Setting up libxml2:arm64 (2.12.7+dfsg+really2.9.14-0.2+b1) ...
Setting up libmarkdown2:arm64 (2.2.7-2.1) ...
Setting up login (1:4.16.0-2+really2.40.2-11) ...
Setting up dpkg-dev (1.22.12~1.gbp82cafd) ...
Setting up passwd (1:4.16.0-5) ...
Processing triggers for man-db (2.13.0-1) ...
Processing triggers for libc-bin (2.40-3) ...
+------------------------------------------------------------------------------+
| Fetch source files |
+------------------------------------------------------------------------------+
Local sources
-------------
/tmp/debusine-fetch-exec-upload-rg61sto7/textual_0.52.1-1.dsc exists in /tmp/debusine-fetch-exec-upload-rg61sto7; copying to chroot
I: NOTICE: Log filtering will replace 'build/textual-2QFhaG/textual-0.52.1' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/textual-2QFhaG' with '<<BUILDDIR>>'
+------------------------------------------------------------------------------+
| Install package build dependencies |
+------------------------------------------------------------------------------+
Setup apt archive
-----------------
Merged Build-Depends: debhelper-compat (= 13), pybuild-plugin-pyproject, python3-all, python3-click, python3-jinja2, python3-linkify-it, python3-poetry, python3-pytest (>= 6.2.3), python3-pytest-asyncio, python3-rich (>= 10.7.0), python3-syrupy, python3-typing-extensions, build-essential, fakeroot
Filtered Build-Depends: debhelper-compat (= 13), pybuild-plugin-pyproject, python3-all, python3-click, python3-jinja2, python3-linkify-it, python3-poetry, python3-pytest (>= 6.2.3), python3-pytest-asyncio, python3-rich (>= 10.7.0), python3-syrupy, python3-typing-extensions, build-essential, fakeroot
dpkg-deb: warning: root directory has unusual owner or group 998:999.
Hint: either pass --root-owner-group, see dpkg-build-api(7) or add an explicit 'Rules-Requires-Root: no' in debian/control.
dpkg-deb: warning: ignoring 1 warning about the control file(s)
dpkg-deb: building package 'sbuild-build-depends-main-dummy' in '/<<RESOLVERDIR>>/apt_archive/sbuild-build-depends-main-dummy.deb'.
Ign:1 copy:/<<RESOLVERDIR>>/apt_archive ./ InRelease
Get:2 copy:/<<RESOLVERDIR>>/apt_archive ./ Release [609 B]
Ign:3 copy:/<<RESOLVERDIR>>/apt_archive ./ Release.gpg
Get:4 copy:/<<RESOLVERDIR>>/apt_archive ./ Sources [931 B]
Get:5 copy:/<<RESOLVERDIR>>/apt_archive ./ Packages [875 B]
Fetched 2415 B in 0s (209 kB/s)
Reading package lists...
Get:1 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ InRelease
Ign:1 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ InRelease
Get:2 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release [606 B]
Get:2 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release [606 B]
Get:3 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release.gpg
Ign:3 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release.gpg
Reading package lists...
Reading package lists...
Install main build dependencies (apt-based resolver)
----------------------------------------------------
Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
autoconf automake autopoint autotools-dev build-essential cpp cpp-14
cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper dh-autoreconf
dh-python dh-strip-nondeterminism dwz fakeroot g++ g++-14
g++-14-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-14
gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu libasan8 libc-dev-bin
libc6-dev libcc1-0 libcrypt-dev libdebhelper-perl libelf1t64 libexpat1
libfakeroot libfile-stripnondeterminism-perl libgcc-14-dev libhwasan0
libisl23 libitm1 liblsan0 libmpc3 libmpfr6 libncursesw6 libnsl2
libpython3-stdlib libpython3.12-minimal libpython3.12-stdlib
libpython3.13-minimal libpython3.13-stdlib libstdc++-14-dev libtirpc-common
libtirpc3t64 libtool libtsan2 libubsan1 linux-libc-dev m4 media-types
po-debconf pybuild-plugin-pyproject python3 python3-all
python3-async-generator python3-autocommand python3-bcrypt python3-build
python3-cachecontrol python3-certifi python3-cffi-backend python3-chardet
python3-charset-normalizer python3-cleo python3-click python3-colorama
python3-crashtest python3-cryptography python3-distlib python3-dulwich
python3-fastjsonschema python3-filelock python3-idna
python3-importlib-metadata python3-inflect python3-iniconfig
python3-installer python3-jaraco.classes python3-jaraco.context
python3-jaraco.functools python3-jaraco.text python3-jeepney python3-jinja2
python3-keyring python3-linkify-it python3-markdown-it python3-markupsafe
python3-mdurl python3-minimal python3-more-itertools python3-msgpack
python3-packaging python3-pexpect python3-pip-whl python3-pkg-resources
python3-pkginfo python3-platformdirs python3-pluggy python3-poetry
python3-poetry-core python3-poetry-plugin-export python3-ptyprocess
python3-pygments python3-pylev python3-pyproject-hooks python3-pytest
python3-pytest-asyncio python3-requests python3-requests-toolbelt
python3-rich python3-secretstorage python3-setuptools python3-setuptools-whl
python3-shellingham python3-syrupy python3-toml python3-tomlkit
python3-trove-classifiers python3-typeguard python3-typing-extensions
python3-uc-micro python3-urllib3 python3-virtualenv python3-wheel
python3-wheel-whl python3-zipp python3.12 python3.12-minimal python3.13
python3.13-minimal rpcsvc-proto
Suggested packages:
autoconf-archive gnu-standards autoconf-doc cpp-doc gcc-14-locales
cpp-14-doc dh-make flit gcc-14-doc gcc-multilib manpages-dev flex bison gdb
gcc-doc gdb-aarch64-linux-gnu libc-devtools glibc-doc libstdc++-14-doc
libtool-doc gfortran | fortran95-compiler gcj-jdk m4-doc libmail-box-perl
python3-doc python3-tk python3-venv python3-pip python-build-doc
python-charset-normalizer-doc python-cleo-doc python-cryptography-doc
python3-cryptography-vectors python3-gpg python-fastjsonschema-doc
python-installer-doc python-jinja2-doc gir1.2-secret-1 gnome-keyring
libkf5wallet-bin python3-dbus python3-gi python3-keyrings.alt python3-shtab
python-pexpect-doc python-pygments-doc ttf-bitstream-vera python3-openssl
python3-socks python-requests-doc default-dbus-session-bus
| dbus-session-bus gnome-keyring | libkf5wallet-bin | keepassxc
python-secretstorage-doc python-setuptools-doc python3-brotli
python3.12-venv python3.12-doc binfmt-support python3.13-venv python3.13-doc
Recommended packages:
manpages manpages-dev libarchive-cpio-perl libgpm2 libltdl-dev
libmail-sendmail-perl python3-fastimport python3-babel python-pkginfo-doc
python3-dev
The following NEW packages will be installed:
autoconf automake autopoint autotools-dev build-essential cpp cpp-14
cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper dh-autoreconf
dh-python dh-strip-nondeterminism dwz fakeroot g++ g++-14
g++-14-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-14
gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu libasan8 libc-dev-bin
libc6-dev libcc1-0 libcrypt-dev libdebhelper-perl libelf1t64 libexpat1
libfakeroot libfile-stripnondeterminism-perl libgcc-14-dev libhwasan0
libisl23 libitm1 liblsan0 libmpc3 libmpfr6 libncursesw6 libnsl2
libpython3-stdlib libpython3.12-minimal libpython3.12-stdlib
libpython3.13-minimal libpython3.13-stdlib libstdc++-14-dev libtirpc-common
libtirpc3t64 libtool libtsan2 libubsan1 linux-libc-dev m4 media-types
po-debconf pybuild-plugin-pyproject python3 python3-all
python3-async-generator python3-autocommand python3-bcrypt python3-build
python3-cachecontrol python3-certifi python3-cffi-backend python3-chardet
python3-charset-normalizer python3-cleo python3-click python3-colorama
python3-crashtest python3-cryptography python3-distlib python3-dulwich
python3-fastjsonschema python3-filelock python3-idna
python3-importlib-metadata python3-inflect python3-iniconfig
python3-installer python3-jaraco.classes python3-jaraco.context
python3-jaraco.functools python3-jaraco.text python3-jeepney python3-jinja2
python3-keyring python3-linkify-it python3-markdown-it python3-markupsafe
python3-mdurl python3-minimal python3-more-itertools python3-msgpack
python3-packaging python3-pexpect python3-pip-whl python3-pkg-resources
python3-pkginfo python3-platformdirs python3-pluggy python3-poetry
python3-poetry-core python3-poetry-plugin-export python3-ptyprocess
python3-pygments python3-pylev python3-pyproject-hooks python3-pytest
python3-pytest-asyncio python3-requests python3-requests-toolbelt
python3-rich python3-secretstorage python3-setuptools python3-setuptools-whl
python3-shellingham python3-syrupy python3-toml python3-tomlkit
python3-trove-classifiers python3-typeguard python3-typing-extensions
python3-uc-micro python3-urllib3 python3-virtualenv python3-wheel
python3-wheel-whl python3-zipp python3.12 python3.12-minimal python3.13
python3.13-minimal rpcsvc-proto sbuild-build-depends-main-dummy
0 upgraded, 138 newly installed, 0 to remove and 0 not upgraded.
Need to get 81.6 MB of archives.
After this operation, 326 MB of additional disk space will be used.
Get:1 copy:/<<RESOLVERDIR>>/apt_archive ./ sbuild-build-depends-main-dummy 0.invalid.0 [992 B]
Get:2 http://deb.debian.org/debian sid/main arm64 libpython3.12-minimal arm64 3.12.7-3 [808 kB]
Get:3 http://deb.debian.org/debian sid/main arm64 libexpat1 arm64 2.6.4-1 [90.7 kB]
Get:4 http://deb.debian.org/debian sid/main arm64 python3.12-minimal arm64 3.12.7-3 [1940 kB]
Get:5 http://deb.debian.org/debian sid/main arm64 python3-minimal arm64 3.12.7-1 [26.8 kB]
Get:6 http://deb.debian.org/debian sid/main arm64 media-types all 10.1.0 [26.9 kB]
Get:7 http://deb.debian.org/debian sid/main arm64 libncursesw6 arm64 6.5-2+b1 [125 kB]
Get:8 http://deb.debian.org/debian sid/main arm64 libtirpc-common all 1.3.4+ds-1.3 [10.9 kB]
Get:9 http://deb.debian.org/debian sid/main arm64 libtirpc3t64 arm64 1.3.4+ds-1.3+b1 [78.7 kB]
Get:10 http://deb.debian.org/debian sid/main arm64 libnsl2 arm64 1.3.0-3+b3 [37.9 kB]
Get:11 http://deb.debian.org/debian sid/main arm64 libpython3.12-stdlib arm64 3.12.7-3 [1902 kB]
Get:12 http://deb.debian.org/debian sid/main arm64 python3.12 arm64 3.12.7-3 [671 kB]
Get:13 http://deb.debian.org/debian sid/main arm64 libpython3-stdlib arm64 3.12.7-1 [9708 B]
Get:14 http://deb.debian.org/debian sid/main arm64 python3 arm64 3.12.7-1 [27.8 kB]
Get:15 http://deb.debian.org/debian sid/main arm64 libpython3.13-minimal arm64 3.13.0-2 [850 kB]
Get:16 http://deb.debian.org/debian sid/main arm64 python3.13-minimal arm64 3.13.0-2 [1838 kB]
Get:17 http://deb.debian.org/debian sid/main arm64 m4 arm64 1.4.19-4 [277 kB]
Get:18 http://deb.debian.org/debian sid/main arm64 autoconf all 2.72-3 [493 kB]
Get:19 http://deb.debian.org/debian sid/main arm64 autotools-dev all 20220109.1 [51.6 kB]
Get:20 http://deb.debian.org/debian sid/main arm64 automake all 1:1.16.5-1.3 [823 kB]
Get:21 http://deb.debian.org/debian sid/main arm64 autopoint all 0.22.5-2 [723 kB]
Get:22 http://deb.debian.org/debian sid/main arm64 libc-dev-bin arm64 2.40-3 [50.9 kB]
Get:23 http://deb.debian.org/debian sid/main arm64 linux-libc-dev all 6.11.9-1 [2459 kB]
Get:24 http://deb.debian.org/debian sid/main arm64 libcrypt-dev arm64 1:4.4.36-5 [122 kB]
Get:25 http://deb.debian.org/debian sid/main arm64 rpcsvc-proto arm64 1.4.3-1+b1 [60.5 kB]
Get:26 http://deb.debian.org/debian sid/main arm64 libc6-dev arm64 2.40-3 [1591 kB]
Get:27 http://deb.debian.org/debian sid/main arm64 libisl23 arm64 0.27-1 [601 kB]
Get:28 http://deb.debian.org/debian sid/main arm64 libmpfr6 arm64 4.2.1-1+b2 [680 kB]
Get:29 http://deb.debian.org/debian sid/main arm64 libmpc3 arm64 1.3.1-1+b3 [50.5 kB]
Get:30 http://deb.debian.org/debian sid/main arm64 cpp-14-aarch64-linux-gnu arm64 14.2.0-8 [9166 kB]
Get:31 http://deb.debian.org/debian sid/main arm64 cpp-14 arm64 14.2.0-8 [1284 B]
Get:32 http://deb.debian.org/debian sid/main arm64 cpp-aarch64-linux-gnu arm64 4:14.2.0-1 [4832 B]
Get:33 http://deb.debian.org/debian sid/main arm64 cpp arm64 4:14.2.0-1 [1568 B]
Get:34 http://deb.debian.org/debian sid/main arm64 libcc1-0 arm64 14.2.0-8 [42.2 kB]
Get:35 http://deb.debian.org/debian sid/main arm64 libitm1 arm64 14.2.0-8 [24.2 kB]
Get:36 http://deb.debian.org/debian sid/main arm64 libasan8 arm64 14.2.0-8 [2579 kB]
Get:37 http://deb.debian.org/debian sid/main arm64 liblsan0 arm64 14.2.0-8 [1161 kB]
Get:38 http://deb.debian.org/debian sid/main arm64 libtsan2 arm64 14.2.0-8 [2386 kB]
Get:39 http://deb.debian.org/debian sid/main arm64 libubsan1 arm64 14.2.0-8 [1039 kB]
Get:40 http://deb.debian.org/debian sid/main arm64 libhwasan0 arm64 14.2.0-8 [1442 kB]
Get:41 http://deb.debian.org/debian sid/main arm64 libgcc-14-dev arm64 14.2.0-8 [2365 kB]
Get:42 http://deb.debian.org/debian sid/main arm64 gcc-14-aarch64-linux-gnu arm64 14.2.0-8 [17.7 MB]
Get:43 http://deb.debian.org/debian sid/main arm64 gcc-14 arm64 14.2.0-8 [519 kB]
Get:44 http://deb.debian.org/debian sid/main arm64 gcc-aarch64-linux-gnu arm64 4:14.2.0-1 [1440 B]
Get:45 http://deb.debian.org/debian sid/main arm64 gcc arm64 4:14.2.0-1 [5136 B]
Get:46 http://deb.debian.org/debian sid/main arm64 libstdc++-14-dev arm64 14.2.0-8 [2267 kB]
Get:47 http://deb.debian.org/debian sid/main arm64 g++-14-aarch64-linux-gnu arm64 14.2.0-8 [10.1 MB]
Get:48 http://deb.debian.org/debian sid/main arm64 g++-14 arm64 14.2.0-8 [20.2 kB]
Get:49 http://deb.debian.org/debian sid/main arm64 g++-aarch64-linux-gnu arm64 4:14.2.0-1 [1200 B]
Get:50 http://deb.debian.org/debian sid/main arm64 g++ arm64 4:14.2.0-1 [1332 B]
Get:51 http://deb.debian.org/debian sid/main arm64 build-essential arm64 12.12 [4624 B]
Get:52 http://deb.debian.org/debian sid/main arm64 libdebhelper-perl all 13.20 [89.7 kB]
Get:53 http://deb.debian.org/debian sid/main arm64 libtool all 2.4.7-8 [517 kB]
Get:54 http://deb.debian.org/debian sid/main arm64 dh-autoreconf all 20 [17.1 kB]
Get:55 http://deb.debian.org/debian sid/main arm64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB]
Get:56 http://deb.debian.org/debian sid/main arm64 dh-strip-nondeterminism all 1.14.0-1 [8448 B]
Get:57 http://deb.debian.org/debian sid/main arm64 libelf1t64 arm64 0.192-4 [189 kB]
Get:58 http://deb.debian.org/debian sid/main arm64 dwz arm64 0.15-1+b1 [102 kB]
Get:59 http://deb.debian.org/debian sid/main arm64 po-debconf all 1.0.21+nmu1 [248 kB]
Get:60 http://deb.debian.org/debian sid/main arm64 debhelper all 13.20 [915 kB]
Get:61 http://deb.debian.org/debian sid/main arm64 python3-autocommand all 2.2.2-3 [13.6 kB]
Get:62 http://deb.debian.org/debian sid/main arm64 python3-more-itertools all 10.5.0-1 [63.8 kB]
Get:63 http://deb.debian.org/debian sid/main arm64 python3-typing-extensions all 4.12.2-2 [73.0 kB]
Get:64 http://deb.debian.org/debian sid/main arm64 python3-zipp all 3.21.0-1 [10.6 kB]
Get:65 http://deb.debian.org/debian sid/main arm64 python3-importlib-metadata all 8.5.0-1 [21.0 kB]
Get:66 http://deb.debian.org/debian sid/main arm64 python3-typeguard all 4.4.1-1 [37.0 kB]
Get:67 http://deb.debian.org/debian sid/main arm64 python3-inflect all 7.3.1-2 [32.4 kB]
Get:68 http://deb.debian.org/debian sid/main arm64 python3-jaraco.context all 6.0.0-1 [7984 B]
Get:69 http://deb.debian.org/debian sid/main arm64 python3-jaraco.functools all 4.1.0-1 [12.0 kB]
Get:70 http://deb.debian.org/debian sid/main arm64 python3-pkg-resources all 75.2.0-1 [213 kB]
Get:71 http://deb.debian.org/debian sid/main arm64 python3-jaraco.text all 4.0.0-1 [11.4 kB]
Get:72 http://deb.debian.org/debian sid/main arm64 python3-setuptools all 75.2.0-1 [731 kB]
Get:73 http://deb.debian.org/debian sid/main arm64 dh-python all 6.20241024 [109 kB]
Get:74 http://deb.debian.org/debian sid/main arm64 libfakeroot arm64 1.36-1 [29.1 kB]
Get:75 http://deb.debian.org/debian sid/main arm64 fakeroot arm64 1.36-1 [74.4 kB]
Get:76 http://deb.debian.org/debian sid/main arm64 libpython3.13-stdlib arm64 3.13.0-2 [1922 kB]
Get:77 http://deb.debian.org/debian sid/main arm64 python3-packaging all 24.2-1 [55.3 kB]
Get:78 http://deb.debian.org/debian sid/main arm64 python3-pyproject-hooks all 1.2.0-1 [11.7 kB]
Get:79 http://deb.debian.org/debian sid/main arm64 python3-toml all 0.10.2-1 [16.2 kB]
Get:80 http://deb.debian.org/debian sid/main arm64 python3-wheel all 0.45.0-1 [56.7 kB]
Get:81 http://deb.debian.org/debian sid/main arm64 python3-build all 1.2.2-1 [36.0 kB]
Get:82 http://deb.debian.org/debian sid/main arm64 python3-installer all 0.7.0+dfsg1-3 [18.6 kB]
Get:83 http://deb.debian.org/debian sid/main arm64 pybuild-plugin-pyproject all 6.20241024 [11.4 kB]
Get:84 http://deb.debian.org/debian sid/main arm64 python3.13 arm64 3.13.0-2 [730 kB]
Get:85 http://deb.debian.org/debian sid/main arm64 python3-all arm64 3.12.7-1 [1052 B]
Get:86 http://deb.debian.org/debian sid/main arm64 python3-async-generator all 1.10-4 [17.4 kB]
Get:87 http://deb.debian.org/debian sid/main arm64 python3-bcrypt arm64 4.2.0-2.1 [212 kB]
Get:88 http://deb.debian.org/debian sid/main arm64 python3-certifi all 2024.8.30+dfsg-1 [9576 B]
Get:89 http://deb.debian.org/debian sid/main arm64 python3-charset-normalizer arm64 3.4.0-1+b1 [129 kB]
Get:90 http://deb.debian.org/debian sid/main arm64 python3-idna all 3.8-2 [41.6 kB]
Get:91 http://deb.debian.org/debian sid/main arm64 python3-urllib3 all 2.0.7-2 [111 kB]
Get:92 http://deb.debian.org/debian sid/main arm64 python3-chardet all 5.2.0+dfsg-1 [107 kB]
Get:93 http://deb.debian.org/debian sid/main arm64 python3-requests all 2.32.3+dfsg-1 [71.9 kB]
Get:94 http://deb.debian.org/debian sid/main arm64 python3-msgpack arm64 1.0.3-3+b4 [96.8 kB]
Get:95 http://deb.debian.org/debian sid/main arm64 python3-cachecontrol all 0.14.1-1 [18.6 kB]
Get:96 http://deb.debian.org/debian sid/main arm64 python3-cffi-backend arm64 1.17.1-2+b1 [94.8 kB]
Get:97 http://deb.debian.org/debian sid/main arm64 python3-crashtest all 0.4.1-1 [6740 B]
Get:98 http://deb.debian.org/debian sid/main arm64 python3-pylev all 1.4.0-1 [6496 B]
Get:99 http://deb.debian.org/debian sid/main arm64 python3-cleo all 2.1.0-2 [54.4 kB]
Get:100 http://deb.debian.org/debian sid/main arm64 python3-colorama all 0.4.6-4 [36.2 kB]
Get:101 http://deb.debian.org/debian sid/main arm64 python3-click all 8.1.7-2 [94.3 kB]
Get:102 http://deb.debian.org/debian sid/main arm64 python3-cryptography arm64 43.0.0-1 [835 kB]
Get:103 http://deb.debian.org/debian sid/main arm64 python3-distlib all 0.3.9-1 [257 kB]
Get:104 http://deb.debian.org/debian sid/main arm64 python3-dulwich arm64 0.22.5-1+b1 [478 kB]
Get:105 http://deb.debian.org/debian sid/main arm64 python3-fastjsonschema all 2.20.0-1 [21.8 kB]
Get:106 http://deb.debian.org/debian sid/main arm64 python3-filelock all 3.16.1-1 [12.6 kB]
Get:107 http://deb.debian.org/debian sid/main arm64 python3-iniconfig all 1.1.1-2 [6396 B]
Get:108 http://deb.debian.org/debian sid/main arm64 python3-jaraco.classes all 3.4.0-1 [7728 B]
Get:109 http://deb.debian.org/debian sid/main arm64 python3-jeepney all 0.8.0-4 [32.6 kB]
Get:110 http://deb.debian.org/debian sid/main arm64 python3-markupsafe arm64 2.1.5-1+b3 [14.0 kB]
Get:111 http://deb.debian.org/debian sid/main arm64 python3-jinja2 all 3.1.3-1 [119 kB]
Get:112 http://deb.debian.org/debian sid/main arm64 python3-secretstorage all 3.3.3-3 [16.1 kB]
Get:113 http://deb.debian.org/debian sid/main arm64 python3-keyring all 25.4.1-1 [54.6 kB]
Get:114 http://deb.debian.org/debian sid/main arm64 python3-uc-micro all 1.0.3-1 [5744 B]
Get:115 http://deb.debian.org/debian sid/main arm64 python3-linkify-it all 2.0.3-1 [18.7 kB]
Get:116 http://deb.debian.org/debian sid/main arm64 python3-mdurl all 0.1.2-1 [9444 B]
Get:117 http://deb.debian.org/debian sid/main arm64 python3-markdown-it all 3.0.0-2 [62.5 kB]
Get:118 http://deb.debian.org/debian sid/main arm64 python3-ptyprocess all 0.7.0-6 [14.5 kB]
Get:119 http://deb.debian.org/debian sid/main arm64 python3-pexpect all 4.9-3 [55.6 kB]
Get:120 http://deb.debian.org/debian sid/main arm64 python3-pip-whl all 24.3.1+dfsg-1 [1501 kB]
Get:121 http://deb.debian.org/debian sid/main arm64 python3-pkginfo all 1.11.2-1 [20.4 kB]
Get:122 http://deb.debian.org/debian sid/main arm64 python3-platformdirs all 4.3.6-1 [16.6 kB]
Get:123 http://deb.debian.org/debian sid/main arm64 python3-pluggy all 1.5.0-1 [26.9 kB]
Get:124 http://deb.debian.org/debian sid/main arm64 python3-poetry-core all 1.9.0-2 [210 kB]
Get:125 http://deb.debian.org/debian sid/main arm64 python3-poetry-plugin-export all 1.8.0-1 [12.0 kB]
Get:126 http://deb.debian.org/debian sid/main arm64 python3-requests-toolbelt all 1.0.0-3 [40.2 kB]
Get:127 http://deb.debian.org/debian sid/main arm64 python3-shellingham all 1.5.4-1 [11.0 kB]
Get:128 http://deb.debian.org/debian sid/main arm64 python3-tomlkit all 0.13.2-1 [42.7 kB]
Get:129 http://deb.debian.org/debian sid/main arm64 python3-trove-classifiers all 2024.9.12-1 [10.2 kB]
Get:130 http://deb.debian.org/debian sid/main arm64 python3-setuptools-whl all 75.2.0-1 [1249 kB]
Get:131 http://deb.debian.org/debian sid/main arm64 python3-wheel-whl all 0.45.0-1 [75.3 kB]
Get:132 http://deb.debian.org/debian sid/main arm64 python3-virtualenv all 20.27.0+ds-1 [71.1 kB]
Get:133 http://deb.debian.org/debian sid/main arm64 python3-poetry all 1.8.3+dfsg-4 [181 kB]
Get:134 http://deb.debian.org/debian sid/main arm64 python3-pygments all 2.18.0+dfsg-1 [836 kB]
Get:135 http://deb.debian.org/debian sid/main arm64 python3-pytest all 8.3.3-1 [249 kB]
Get:136 http://deb.debian.org/debian sid/main arm64 python3-pytest-asyncio all 0.24.0a1-1 [15.6 kB]
Get:137 http://deb.debian.org/debian sid/main arm64 python3-rich all 13.7.1-1 [201 kB]
Get:138 http://deb.debian.org/debian sid/main arm64 python3-syrupy all 4.7.2-1 [53.0 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 81.6 MB in 1s (84.0 MB/s)
Selecting previously unselected package libpython3.12-minimal:arm64.
(Reading database ... 17118 files and directories currently installed.)
Preparing to unpack .../libpython3.12-minimal_3.12.7-3_arm64.deb ...
Unpacking libpython3.12-minimal:arm64 (3.12.7-3) ...
Selecting previously unselected package libexpat1:arm64.
Preparing to unpack .../libexpat1_2.6.4-1_arm64.deb ...
Unpacking libexpat1:arm64 (2.6.4-1) ...
Selecting previously unselected package python3.12-minimal.
Preparing to unpack .../python3.12-minimal_3.12.7-3_arm64.deb ...
Unpacking python3.12-minimal (3.12.7-3) ...
Setting up libpython3.12-minimal:arm64 (3.12.7-3) ...
Setting up libexpat1:arm64 (2.6.4-1) ...
Setting up python3.12-minimal (3.12.7-3) ...
Selecting previously unselected package python3-minimal.
(Reading database ... 17438 files and directories currently installed.)
Preparing to unpack .../0-python3-minimal_3.12.7-1_arm64.deb ...
Unpacking python3-minimal (3.12.7-1) ...
Selecting previously unselected package media-types.
Preparing to unpack .../1-media-types_10.1.0_all.deb ...
Unpacking media-types (10.1.0) ...
Selecting previously unselected package libncursesw6:arm64.
Preparing to unpack .../2-libncursesw6_6.5-2+b1_arm64.deb ...
Unpacking libncursesw6:arm64 (6.5-2+b1) ...
Selecting previously unselected package libtirpc-common.
Preparing to unpack .../3-libtirpc-common_1.3.4+ds-1.3_all.deb ...
Unpacking libtirpc-common (1.3.4+ds-1.3) ...
Selecting previously unselected package libtirpc3t64:arm64.
Preparing to unpack .../4-libtirpc3t64_1.3.4+ds-1.3+b1_arm64.deb ...
Adding 'diversion of /lib/aarch64-linux-gnu/libtirpc.so.3 to /lib/aarch64-linux-gnu/libtirpc.so.3.usr-is-merged by libtirpc3t64'
Adding 'diversion of /lib/aarch64-linux-gnu/libtirpc.so.3.0.0 to /lib/aarch64-linux-gnu/libtirpc.so.3.0.0.usr-is-merged by libtirpc3t64'
Unpacking libtirpc3t64:arm64 (1.3.4+ds-1.3+b1) ...
Selecting previously unselected package libnsl2:arm64.
Preparing to unpack .../5-libnsl2_1.3.0-3+b3_arm64.deb ...
Unpacking libnsl2:arm64 (1.3.0-3+b3) ...
Selecting previously unselected package libpython3.12-stdlib:arm64.
Preparing to unpack .../6-libpython3.12-stdlib_3.12.7-3_arm64.deb ...
Unpacking libpython3.12-stdlib:arm64 (3.12.7-3) ...
Selecting previously unselected package python3.12.
Preparing to unpack .../7-python3.12_3.12.7-3_arm64.deb ...
Unpacking python3.12 (3.12.7-3) ...
Selecting previously unselected package libpython3-stdlib:arm64.
Preparing to unpack .../8-libpython3-stdlib_3.12.7-1_arm64.deb ...
Unpacking libpython3-stdlib:arm64 (3.12.7-1) ...
Setting up python3-minimal (3.12.7-1) ...
Selecting previously unselected package python3.
(Reading database ... 17911 files and directories currently installed.)
Preparing to unpack .../000-python3_3.12.7-1_arm64.deb ...
Unpacking python3 (3.12.7-1) ...
Selecting previously unselected package libpython3.13-minimal:arm64.
Preparing to unpack .../001-libpython3.13-minimal_3.13.0-2_arm64.deb ...
Unpacking libpython3.13-minimal:arm64 (3.13.0-2) ...
Selecting previously unselected package python3.13-minimal.
Preparing to unpack .../002-python3.13-minimal_3.13.0-2_arm64.deb ...
Unpacking python3.13-minimal (3.13.0-2) ...
Selecting previously unselected package m4.
Preparing to unpack .../003-m4_1.4.19-4_arm64.deb ...
Unpacking m4 (1.4.19-4) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../004-autoconf_2.72-3_all.deb ...
Unpacking autoconf (2.72-3) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../005-autotools-dev_20220109.1_all.deb ...
Unpacking autotools-dev (20220109.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../006-automake_1%3a1.16.5-1.3_all.deb ...
Unpacking automake (1:1.16.5-1.3) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../007-autopoint_0.22.5-2_all.deb ...
Unpacking autopoint (0.22.5-2) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../008-libc-dev-bin_2.40-3_arm64.deb ...
Unpacking libc-dev-bin (2.40-3) ...
Selecting previously unselected package linux-libc-dev.
Preparing to unpack .../009-linux-libc-dev_6.11.9-1_all.deb ...
Unpacking linux-libc-dev (6.11.9-1) ...
Selecting previously unselected package libcrypt-dev:arm64.
Preparing to unpack .../010-libcrypt-dev_1%3a4.4.36-5_arm64.deb ...
Unpacking libcrypt-dev:arm64 (1:4.4.36-5) ...
Selecting previously unselected package rpcsvc-proto.
Preparing to unpack .../011-rpcsvc-proto_1.4.3-1+b1_arm64.deb ...
Unpacking rpcsvc-proto (1.4.3-1+b1) ...
Selecting previously unselected package libc6-dev:arm64.
Preparing to unpack .../012-libc6-dev_2.40-3_arm64.deb ...
Unpacking libc6-dev:arm64 (2.40-3) ...
Selecting previously unselected package libisl23:arm64.
Preparing to unpack .../013-libisl23_0.27-1_arm64.deb ...
Unpacking libisl23:arm64 (0.27-1) ...
Selecting previously unselected package libmpfr6:arm64.
Preparing to unpack .../014-libmpfr6_4.2.1-1+b2_arm64.deb ...
Unpacking libmpfr6:arm64 (4.2.1-1+b2) ...
Selecting previously unselected package libmpc3:arm64.
Preparing to unpack .../015-libmpc3_1.3.1-1+b3_arm64.deb ...
Unpacking libmpc3:arm64 (1.3.1-1+b3) ...
Selecting previously unselected package cpp-14-aarch64-linux-gnu.
Preparing to unpack .../016-cpp-14-aarch64-linux-gnu_14.2.0-8_arm64.deb ...
Unpacking cpp-14-aarch64-linux-gnu (14.2.0-8) ...
Selecting previously unselected package cpp-14.
Preparing to unpack .../017-cpp-14_14.2.0-8_arm64.deb ...
Unpacking cpp-14 (14.2.0-8) ...
Selecting previously unselected package cpp-aarch64-linux-gnu.
Preparing to unpack .../018-cpp-aarch64-linux-gnu_4%3a14.2.0-1_arm64.deb ...
Unpacking cpp-aarch64-linux-gnu (4:14.2.0-1) ...
Selecting previously unselected package cpp.
Preparing to unpack .../019-cpp_4%3a14.2.0-1_arm64.deb ...
Unpacking cpp (4:14.2.0-1) ...
Selecting previously unselected package libcc1-0:arm64.
Preparing to unpack .../020-libcc1-0_14.2.0-8_arm64.deb ...
Unpacking libcc1-0:arm64 (14.2.0-8) ...
Selecting previously unselected package libitm1:arm64.
Preparing to unpack .../021-libitm1_14.2.0-8_arm64.deb ...
Unpacking libitm1:arm64 (14.2.0-8) ...
Selecting previously unselected package libasan8:arm64.
Preparing to unpack .../022-libasan8_14.2.0-8_arm64.deb ...
Unpacking libasan8:arm64 (14.2.0-8) ...
Selecting previously unselected package liblsan0:arm64.
Preparing to unpack .../023-liblsan0_14.2.0-8_arm64.deb ...
Unpacking liblsan0:arm64 (14.2.0-8) ...
Selecting previously unselected package libtsan2:arm64.
Preparing to unpack .../024-libtsan2_14.2.0-8_arm64.deb ...
Unpacking libtsan2:arm64 (14.2.0-8) ...
Selecting previously unselected package libubsan1:arm64.
Preparing to unpack .../025-libubsan1_14.2.0-8_arm64.deb ...
Unpacking libubsan1:arm64 (14.2.0-8) ...
Selecting previously unselected package libhwasan0:arm64.
Preparing to unpack .../026-libhwasan0_14.2.0-8_arm64.deb ...
Unpacking libhwasan0:arm64 (14.2.0-8) ...
Selecting previously unselected package libgcc-14-dev:arm64.
Preparing to unpack .../027-libgcc-14-dev_14.2.0-8_arm64.deb ...
Unpacking libgcc-14-dev:arm64 (14.2.0-8) ...
Selecting previously unselected package gcc-14-aarch64-linux-gnu.
Preparing to unpack .../028-gcc-14-aarch64-linux-gnu_14.2.0-8_arm64.deb ...
Unpacking gcc-14-aarch64-linux-gnu (14.2.0-8) ...
Selecting previously unselected package gcc-14.
Preparing to unpack .../029-gcc-14_14.2.0-8_arm64.deb ...
Unpacking gcc-14 (14.2.0-8) ...
Selecting previously unselected package gcc-aarch64-linux-gnu.
Preparing to unpack .../030-gcc-aarch64-linux-gnu_4%3a14.2.0-1_arm64.deb ...
Unpacking gcc-aarch64-linux-gnu (4:14.2.0-1) ...
Selecting previously unselected package gcc.
Preparing to unpack .../031-gcc_4%3a14.2.0-1_arm64.deb ...
Unpacking gcc (4:14.2.0-1) ...
Selecting previously unselected package libstdc++-14-dev:arm64.
Preparing to unpack .../032-libstdc++-14-dev_14.2.0-8_arm64.deb ...
Unpacking libstdc++-14-dev:arm64 (14.2.0-8) ...
Selecting previously unselected package g++-14-aarch64-linux-gnu.
Preparing to unpack .../033-g++-14-aarch64-linux-gnu_14.2.0-8_arm64.deb ...
Unpacking g++-14-aarch64-linux-gnu (14.2.0-8) ...
Selecting previously unselected package g++-14.
Preparing to unpack .../034-g++-14_14.2.0-8_arm64.deb ...
Unpacking g++-14 (14.2.0-8) ...
Selecting previously unselected package g++-aarch64-linux-gnu.
Preparing to unpack .../035-g++-aarch64-linux-gnu_4%3a14.2.0-1_arm64.deb ...
Unpacking g++-aarch64-linux-gnu (4:14.2.0-1) ...
Selecting previously unselected package g++.
Preparing to unpack .../036-g++_4%3a14.2.0-1_arm64.deb ...
Unpacking g++ (4:14.2.0-1) ...
Selecting previously unselected package build-essential.
Preparing to unpack .../037-build-essential_12.12_arm64.deb ...
Unpacking build-essential (12.12) ...
Selecting previously unselected package libdebhelper-perl.
Preparing to unpack .../038-libdebhelper-perl_13.20_all.deb ...
Unpacking libdebhelper-perl (13.20) ...
Selecting previously unselected package libtool.
Preparing to unpack .../039-libtool_2.4.7-8_all.deb ...
Unpacking libtool (2.4.7-8) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../040-dh-autoreconf_20_all.deb ...
Unpacking dh-autoreconf (20) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../041-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../042-dh-strip-nondeterminism_1.14.0-1_all.deb ...
Unpacking dh-strip-nondeterminism (1.14.0-1) ...
Selecting previously unselected package libelf1t64:arm64.
Preparing to unpack .../043-libelf1t64_0.192-4_arm64.deb ...
Unpacking libelf1t64:arm64 (0.192-4) ...
Selecting previously unselected package dwz.
Preparing to unpack .../044-dwz_0.15-1+b1_arm64.deb ...
Unpacking dwz (0.15-1+b1) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../045-po-debconf_1.0.21+nmu1_all.deb ...
Unpacking po-debconf (1.0.21+nmu1) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../046-debhelper_13.20_all.deb ...
Unpacking debhelper (13.20) ...
Selecting previously unselected package python3-autocommand.
Preparing to unpack .../047-python3-autocommand_2.2.2-3_all.deb ...
Unpacking python3-autocommand (2.2.2-3) ...
Selecting previously unselected package python3-more-itertools.
Preparing to unpack .../048-python3-more-itertools_10.5.0-1_all.deb ...
Unpacking python3-more-itertools (10.5.0-1) ...
Selecting previously unselected package python3-typing-extensions.
Preparing to unpack .../049-python3-typing-extensions_4.12.2-2_all.deb ...
Unpacking python3-typing-extensions (4.12.2-2) ...
Selecting previously unselected package python3-zipp.
Preparing to unpack .../050-python3-zipp_3.21.0-1_all.deb ...
Unpacking python3-zipp (3.21.0-1) ...
Selecting previously unselected package python3-importlib-metadata.
Preparing to unpack .../051-python3-importlib-metadata_8.5.0-1_all.deb ...
Unpacking python3-importlib-metadata (8.5.0-1) ...
Selecting previously unselected package python3-typeguard.
Preparing to unpack .../052-python3-typeguard_4.4.1-1_all.deb ...
Unpacking python3-typeguard (4.4.1-1) ...
Selecting previously unselected package python3-inflect.
Preparing to unpack .../053-python3-inflect_7.3.1-2_all.deb ...
Unpacking python3-inflect (7.3.1-2) ...
Selecting previously unselected package python3-jaraco.context.
Preparing to unpack .../054-python3-jaraco.context_6.0.0-1_all.deb ...
Unpacking python3-jaraco.context (6.0.0-1) ...
Selecting previously unselected package python3-jaraco.functools.
Preparing to unpack .../055-python3-jaraco.functools_4.1.0-1_all.deb ...
Unpacking python3-jaraco.functools (4.1.0-1) ...
Selecting previously unselected package python3-pkg-resources.
Preparing to unpack .../056-python3-pkg-resources_75.2.0-1_all.deb ...
Unpacking python3-pkg-resources (75.2.0-1) ...
Selecting previously unselected package python3-jaraco.text.
Preparing to unpack .../057-python3-jaraco.text_4.0.0-1_all.deb ...
Unpacking python3-jaraco.text (4.0.0-1) ...
Selecting previously unselected package python3-setuptools.
Preparing to unpack .../058-python3-setuptools_75.2.0-1_all.deb ...
Unpacking python3-setuptools (75.2.0-1) ...
Selecting previously unselected package dh-python.
Preparing to unpack .../059-dh-python_6.20241024_all.deb ...
Unpacking dh-python (6.20241024) ...
Selecting previously unselected package libfakeroot:arm64.
Preparing to unpack .../060-libfakeroot_1.36-1_arm64.deb ...
Unpacking libfakeroot:arm64 (1.36-1) ...
Selecting previously unselected package fakeroot.
Preparing to unpack .../061-fakeroot_1.36-1_arm64.deb ...
Unpacking fakeroot (1.36-1) ...
Selecting previously unselected package libpython3.13-stdlib:arm64.
Preparing to unpack .../062-libpython3.13-stdlib_3.13.0-2_arm64.deb ...
Unpacking libpython3.13-stdlib:arm64 (3.13.0-2) ...
Selecting previously unselected package python3-packaging.
Preparing to unpack .../063-python3-packaging_24.2-1_all.deb ...
Unpacking python3-packaging (24.2-1) ...
Selecting previously unselected package python3-pyproject-hooks.
Preparing to unpack .../064-python3-pyproject-hooks_1.2.0-1_all.deb ...
Unpacking python3-pyproject-hooks (1.2.0-1) ...
Selecting previously unselected package python3-toml.
Preparing to unpack .../065-python3-toml_0.10.2-1_all.deb ...
Unpacking python3-toml (0.10.2-1) ...
Selecting previously unselected package python3-wheel.
Preparing to unpack .../066-python3-wheel_0.45.0-1_all.deb ...
Unpacking python3-wheel (0.45.0-1) ...
Selecting previously unselected package python3-build.
Preparing to unpack .../067-python3-build_1.2.2-1_all.deb ...
Unpacking python3-build (1.2.2-1) ...
Selecting previously unselected package python3-installer.
Preparing to unpack .../068-python3-installer_0.7.0+dfsg1-3_all.deb ...
Unpacking python3-installer (0.7.0+dfsg1-3) ...
Selecting previously unselected package pybuild-plugin-pyproject.
Preparing to unpack .../069-pybuild-plugin-pyproject_6.20241024_all.deb ...
Unpacking pybuild-plugin-pyproject (6.20241024) ...
Selecting previously unselected package python3.13.
Preparing to unpack .../070-python3.13_3.13.0-2_arm64.deb ...
Unpacking python3.13 (3.13.0-2) ...
Selecting previously unselected package python3-all.
Preparing to unpack .../071-python3-all_3.12.7-1_arm64.deb ...
Unpacking python3-all (3.12.7-1) ...
Selecting previously unselected package python3-async-generator.
Preparing to unpack .../072-python3-async-generator_1.10-4_all.deb ...
Unpacking python3-async-generator (1.10-4) ...
Selecting previously unselected package python3-bcrypt.
Preparing to unpack .../073-python3-bcrypt_4.2.0-2.1_arm64.deb ...
Unpacking python3-bcrypt (4.2.0-2.1) ...
Selecting previously unselected package python3-certifi.
Preparing to unpack .../074-python3-certifi_2024.8.30+dfsg-1_all.deb ...
Unpacking python3-certifi (2024.8.30+dfsg-1) ...
Selecting previously unselected package python3-charset-normalizer.
Preparing to unpack .../075-python3-charset-normalizer_3.4.0-1+b1_arm64.deb ...
Unpacking python3-charset-normalizer (3.4.0-1+b1) ...
Selecting previously unselected package python3-idna.
Preparing to unpack .../076-python3-idna_3.8-2_all.deb ...
Unpacking python3-idna (3.8-2) ...
Selecting previously unselected package python3-urllib3.
Preparing to unpack .../077-python3-urllib3_2.0.7-2_all.deb ...
Unpacking python3-urllib3 (2.0.7-2) ...
Selecting previously unselected package python3-chardet.
Preparing to unpack .../078-python3-chardet_5.2.0+dfsg-1_all.deb ...
Unpacking python3-chardet (5.2.0+dfsg-1) ...
Selecting previously unselected package python3-requests.
Preparing to unpack .../079-python3-requests_2.32.3+dfsg-1_all.deb ...
Unpacking python3-requests (2.32.3+dfsg-1) ...
Selecting previously unselected package python3-msgpack.
Preparing to unpack .../080-python3-msgpack_1.0.3-3+b4_arm64.deb ...
Unpacking python3-msgpack (1.0.3-3+b4) ...
Selecting previously unselected package python3-cachecontrol.
Preparing to unpack .../081-python3-cachecontrol_0.14.1-1_all.deb ...
Unpacking python3-cachecontrol (0.14.1-1) ...
Selecting previously unselected package python3-cffi-backend:arm64.
Preparing to unpack .../082-python3-cffi-backend_1.17.1-2+b1_arm64.deb ...
Unpacking python3-cffi-backend:arm64 (1.17.1-2+b1) ...
Selecting previously unselected package python3-crashtest.
Preparing to unpack .../083-python3-crashtest_0.4.1-1_all.deb ...
Unpacking python3-crashtest (0.4.1-1) ...
Selecting previously unselected package python3-pylev.
Preparing to unpack .../084-python3-pylev_1.4.0-1_all.deb ...
Unpacking python3-pylev (1.4.0-1) ...
Selecting previously unselected package python3-cleo.
Preparing to unpack .../085-python3-cleo_2.1.0-2_all.deb ...
Unpacking python3-cleo (2.1.0-2) ...
Selecting previously unselected package python3-colorama.
Preparing to unpack .../086-python3-colorama_0.4.6-4_all.deb ...
Unpacking python3-colorama (0.4.6-4) ...
Selecting previously unselected package python3-click.
Preparing to unpack .../087-python3-click_8.1.7-2_all.deb ...
Unpacking python3-click (8.1.7-2) ...
Selecting previously unselected package python3-cryptography.
Preparing to unpack .../088-python3-cryptography_43.0.0-1_arm64.deb ...
Unpacking python3-cryptography (43.0.0-1) ...
Selecting previously unselected package python3-distlib.
Preparing to unpack .../089-python3-distlib_0.3.9-1_all.deb ...
Unpacking python3-distlib (0.3.9-1) ...
Selecting previously unselected package python3-dulwich.
Preparing to unpack .../090-python3-dulwich_0.22.5-1+b1_arm64.deb ...
Unpacking python3-dulwich (0.22.5-1+b1) ...
Selecting previously unselected package python3-fastjsonschema.
Preparing to unpack .../091-python3-fastjsonschema_2.20.0-1_all.deb ...
Unpacking python3-fastjsonschema (2.20.0-1) ...
Selecting previously unselected package python3-filelock.
Preparing to unpack .../092-python3-filelock_3.16.1-1_all.deb ...
Unpacking python3-filelock (3.16.1-1) ...
Selecting previously unselected package python3-iniconfig.
Preparing to unpack .../093-python3-iniconfig_1.1.1-2_all.deb ...
Unpacking python3-iniconfig (1.1.1-2) ...
Selecting previously unselected package python3-jaraco.classes.
Preparing to unpack .../094-python3-jaraco.classes_3.4.0-1_all.deb ...
Unpacking python3-jaraco.classes (3.4.0-1) ...
Selecting previously unselected package python3-jeepney.
Preparing to unpack .../095-python3-jeepney_0.8.0-4_all.deb ...
Unpacking python3-jeepney (0.8.0-4) ...
Selecting previously unselected package python3-markupsafe.
Preparing to unpack .../096-python3-markupsafe_2.1.5-1+b3_arm64.deb ...
Unpacking python3-markupsafe (2.1.5-1+b3) ...
Selecting previously unselected package python3-jinja2.
Preparing to unpack .../097-python3-jinja2_3.1.3-1_all.deb ...
Unpacking python3-jinja2 (3.1.3-1) ...
Selecting previously unselected package python3-secretstorage.
Preparing to unpack .../098-python3-secretstorage_3.3.3-3_all.deb ...
Unpacking python3-secretstorage (3.3.3-3) ...
Selecting previously unselected package python3-keyring.
Preparing to unpack .../099-python3-keyring_25.4.1-1_all.deb ...
Unpacking python3-keyring (25.4.1-1) ...
Selecting previously unselected package python3-uc-micro.
Preparing to unpack .../100-python3-uc-micro_1.0.3-1_all.deb ...
Unpacking python3-uc-micro (1.0.3-1) ...
Selecting previously unselected package python3-linkify-it.
Preparing to unpack .../101-python3-linkify-it_2.0.3-1_all.deb ...
Unpacking python3-linkify-it (2.0.3-1) ...
Selecting previously unselected package python3-mdurl.
Preparing to unpack .../102-python3-mdurl_0.1.2-1_all.deb ...
Unpacking python3-mdurl (0.1.2-1) ...
Selecting previously unselected package python3-markdown-it.
Preparing to unpack .../103-python3-markdown-it_3.0.0-2_all.deb ...
Unpacking python3-markdown-it (3.0.0-2) ...
Selecting previously unselected package python3-ptyprocess.
Preparing to unpack .../104-python3-ptyprocess_0.7.0-6_all.deb ...
Unpacking python3-ptyprocess (0.7.0-6) ...
Selecting previously unselected package python3-pexpect.
Preparing to unpack .../105-python3-pexpect_4.9-3_all.deb ...
Unpacking python3-pexpect (4.9-3) ...
Selecting previously unselected package python3-pip-whl.
Preparing to unpack .../106-python3-pip-whl_24.3.1+dfsg-1_all.deb ...
Unpacking python3-pip-whl (24.3.1+dfsg-1) ...
Selecting previously unselected package python3-pkginfo.
Preparing to unpack .../107-python3-pkginfo_1.11.2-1_all.deb ...
Unpacking python3-pkginfo (1.11.2-1) ...
Selecting previously unselected package python3-platformdirs.
Preparing to unpack .../108-python3-platformdirs_4.3.6-1_all.deb ...
Unpacking python3-platformdirs (4.3.6-1) ...
Selecting previously unselected package python3-pluggy.
Preparing to unpack .../109-python3-pluggy_1.5.0-1_all.deb ...
Unpacking python3-pluggy (1.5.0-1) ...
Selecting previously unselected package python3-poetry-core.
Preparing to unpack .../110-python3-poetry-core_1.9.0-2_all.deb ...
Unpacking python3-poetry-core (1.9.0-2) ...
Selecting previously unselected package python3-poetry-plugin-export.
Preparing to unpack .../111-python3-poetry-plugin-export_1.8.0-1_all.deb ...
Unpacking python3-poetry-plugin-export (1.8.0-1) ...
Selecting previously unselected package python3-requests-toolbelt.
Preparing to unpack .../112-python3-requests-toolbelt_1.0.0-3_all.deb ...
Unpacking python3-requests-toolbelt (1.0.0-3) ...
Selecting previously unselected package python3-shellingham.
Preparing to unpack .../113-python3-shellingham_1.5.4-1_all.deb ...
Unpacking python3-shellingham (1.5.4-1) ...
Selecting previously unselected package python3-tomlkit.
Preparing to unpack .../114-python3-tomlkit_0.13.2-1_all.deb ...
Unpacking python3-tomlkit (0.13.2-1) ...
Selecting previously unselected package python3-trove-classifiers.
Preparing to unpack .../115-python3-trove-classifiers_2024.9.12-1_all.deb ...
Unpacking python3-trove-classifiers (2024.9.12-1) ...
Selecting previously unselected package python3-setuptools-whl.
Preparing to unpack .../116-python3-setuptools-whl_75.2.0-1_all.deb ...
Unpacking python3-setuptools-whl (75.2.0-1) ...
Selecting previously unselected package python3-wheel-whl.
Preparing to unpack .../117-python3-wheel-whl_0.45.0-1_all.deb ...
Unpacking python3-wheel-whl (0.45.0-1) ...
Selecting previously unselected package python3-virtualenv.
Preparing to unpack .../118-python3-virtualenv_20.27.0+ds-1_all.deb ...
Unpacking python3-virtualenv (20.27.0+ds-1) ...
Selecting previously unselected package python3-poetry.
Preparing to unpack .../119-python3-poetry_1.8.3+dfsg-4_all.deb ...
Unpacking python3-poetry (1.8.3+dfsg-4) ...
Selecting previously unselected package python3-pygments.
Preparing to unpack .../120-python3-pygments_2.18.0+dfsg-1_all.deb ...
Unpacking python3-pygments (2.18.0+dfsg-1) ...
Selecting previously unselected package python3-pytest.
Preparing to unpack .../121-python3-pytest_8.3.3-1_all.deb ...
Unpacking python3-pytest (8.3.3-1) ...
Selecting previously unselected package python3-pytest-asyncio.
Preparing to unpack .../122-python3-pytest-asyncio_0.24.0a1-1_all.deb ...
Unpacking python3-pytest-asyncio (0.24.0a1-1) ...
Selecting previously unselected package python3-rich.
Preparing to unpack .../123-python3-rich_13.7.1-1_all.deb ...
Unpacking python3-rich (13.7.1-1) ...
Selecting previously unselected package python3-syrupy.
Preparing to unpack .../124-python3-syrupy_4.7.2-1_all.deb ...
Unpacking python3-syrupy (4.7.2-1) ...
Selecting previously unselected package sbuild-build-depends-main-dummy.
Preparing to unpack .../125-sbuild-build-depends-main-dummy_0.invalid.0_arm64.deb ...
Unpacking sbuild-build-depends-main-dummy (0.invalid.0) ...
Setting up media-types (10.1.0) ...
Setting up libfile-stripnondeterminism-perl (1.14.0-1) ...
Setting up python3-setuptools-whl (75.2.0-1) ...
Setting up python3-pip-whl (24.3.1+dfsg-1) ...
Setting up libtirpc-common (1.3.4+ds-1.3) ...
Setting up po-debconf (1.0.21+nmu1) ...
Setting up libdebhelper-perl (13.20) ...
Setting up linux-libc-dev (6.11.9-1) ...
Setting up m4 (1.4.19-4) ...
Setting up libfakeroot:arm64 (1.36-1) ...
Setting up libelf1t64:arm64 (0.192-4) ...
Setting up fakeroot (1.36-1) ...
update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode
Setting up libpython3.13-minimal:arm64 (3.13.0-2) ...
Setting up autotools-dev (20220109.1) ...
Setting up rpcsvc-proto (1.4.3-1+b1) ...
Setting up libmpfr6:arm64 (4.2.1-1+b2) ...
Setting up libmpc3:arm64 (1.3.1-1+b3) ...
Setting up autopoint (0.22.5-2) ...
Setting up libncursesw6:arm64 (6.5-2+b1) ...
Setting up autoconf (2.72-3) ...
Setting up libubsan1:arm64 (14.2.0-8) ...
Setting up dh-strip-nondeterminism (1.14.0-1) ...
Setting up dwz (0.15-1+b1) ...
Setting up libhwasan0:arm64 (14.2.0-8) ...
Setting up libcrypt-dev:arm64 (1:4.4.36-5) ...
Setting up libasan8:arm64 (14.2.0-8) ...
Setting up python3.13-minimal (3.13.0-2) ...
Setting up libtsan2:arm64 (14.2.0-8) ...
Setting up libisl23:arm64 (0.27-1) ...
Setting up libc-dev-bin (2.40-3) ...
Setting up python3-wheel-whl (0.45.0-1) ...
Setting up libpython3.13-stdlib:arm64 (3.13.0-2) ...
Setting up libcc1-0:arm64 (14.2.0-8) ...
Setting up liblsan0:arm64 (14.2.0-8) ...
Setting up libitm1:arm64 (14.2.0-8) ...
Setting up automake (1:1.16.5-1.3) ...
update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode
Setting up libtirpc3t64:arm64 (1.3.4+ds-1.3+b1) ...
Setting up python3.13 (3.13.0-2) ...
Setting up cpp-14-aarch64-linux-gnu (14.2.0-8) ...
Setting up libnsl2:arm64 (1.3.0-3+b3) ...
Setting up libc6-dev:arm64 (2.40-3) ...
Setting up libgcc-14-dev:arm64 (14.2.0-8) ...
Setting up libstdc++-14-dev:arm64 (14.2.0-8) ...
Setting up libpython3.12-stdlib:arm64 (3.12.7-3) ...
Setting up python3.12 (3.12.7-3) ...
Setting up cpp-aarch64-linux-gnu (4:14.2.0-1) ...
Setting up cpp-14 (14.2.0-8) ...
Setting up cpp (4:14.2.0-1) ...
Setting up gcc-14-aarch64-linux-gnu (14.2.0-8) ...
Setting up libpython3-stdlib:arm64 (3.12.7-1) ...
Setting up gcc-aarch64-linux-gnu (4:14.2.0-1) ...
Setting up g++-14-aarch64-linux-gnu (14.2.0-8) ...
Setting up python3 (3.12.7-1) ...
Setting up python3-distlib (0.3.9-1) ...
Setting up python3-zipp (3.21.0-1) ...
Setting up python3-autocommand (2.2.2-3) ...
Setting up python3-markupsafe (2.1.5-1+b3) ...
Setting up python3-wheel (0.45.0-1) ...
Setting up python3-uc-micro (1.0.3-1) ...
Setting up python3-platformdirs (4.3.6-1) ...
Setting up gcc-14 (14.2.0-8) ...
Setting up python3-jinja2 (3.1.3-1) ...
Setting up python3-packaging (24.2-1) ...
Setting up python3-pyproject-hooks (1.2.0-1) ...
Setting up python3-certifi (2024.8.30+dfsg-1) ...
Setting up python3-poetry-core (1.9.0-2) ...
Setting up python3-mdurl (0.1.2-1) ...
Setting up python3-crashtest (0.4.1-1) ...
Setting up python3-idna (3.8-2) ...
Setting up python3-typing-extensions (4.12.2-2) ...
Setting up python3-toml (0.10.2-1) ...
Setting up python3-jeepney (0.8.0-4) ...
Setting up python3-installer (0.7.0+dfsg1-3) ...
Setting up python3-urllib3 (2.0.7-2) ...
Setting up python3-pluggy (1.5.0-1) ...
Setting up python3-markdown-it (3.0.0-2) ...
Setting up python3-fastjsonschema (2.20.0-1) ...
Setting up python3-trove-classifiers (2024.9.12-1) ...
Setting up python3-dulwich (0.22.5-1+b1) ...
Setting up g++-aarch64-linux-gnu (4:14.2.0-1) ...
Setting up python3-linkify-it (2.0.3-1) ...
Setting up python3-msgpack (1.0.3-3+b4) ...
Setting up g++-14 (14.2.0-8) ...
Setting up python3-build (1.2.2-1) ...
Setting up python3-shellingham (1.5.4-1) ...
Setting up python3-tomlkit (0.13.2-1) ...
Setting up python3-cffi-backend:arm64 (1.17.1-2+b1) ...
Setting up python3-ptyprocess (0.7.0-6) ...
Setting up python3-more-itertools (10.5.0-1) ...
Setting up python3-iniconfig (1.1.1-2) ...
Setting up python3-filelock (3.16.1-1) ...
Setting up python3-jaraco.classes (3.4.0-1) ...
Setting up python3-importlib-metadata (8.5.0-1) ...
Setting up python3-jaraco.functools (4.1.0-1) ...
Setting up python3-async-generator (1.10-4) ...
Setting up python3-jaraco.context (6.0.0-1) ...
Setting up libtool (2.4.7-8) ...
Setting up python3-colorama (0.4.6-4) ...
Setting up python3-charset-normalizer (3.4.0-1+b1) ...
Setting up python3-pytest (8.3.3-1) ...
Setting up python3-bcrypt (4.2.0-2.1) ...
Setting up python3-syrupy (4.7.2-1) ...
Setting up python3-typeguard (4.4.1-1) ...
Setting up python3-pylev (1.4.0-1) ...
Setting up python3-virtualenv (20.27.0+ds-1) ...
Setting up python3-all (3.12.7-1) ...
Setting up python3-click (8.1.7-2) ...
Setting up gcc (4:14.2.0-1) ...
Setting up dh-autoreconf (20) ...
Setting up python3-inflect (7.3.1-2) ...
Setting up python3-jaraco.text (4.0.0-1) ...
Setting up python3-pexpect (4.9-3) ...
Setting up python3-cryptography (43.0.0-1) ...
Setting up python3-pytest-asyncio (0.24.0a1-1) ...
Setting up g++ (4:14.2.0-1) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up build-essential (12.12) ...
Setting up python3-cleo (2.1.0-2) ...
Setting up python3-pkg-resources (75.2.0-1) ...
Setting up python3-setuptools (75.2.0-1) ...
Setting up python3-pkginfo (1.11.2-1) ...
Setting up debhelper (13.20) ...
Setting up python3-pygments (2.18.0+dfsg-1) ...
Setting up python3-chardet (5.2.0+dfsg-1) ...
Setting up python3-secretstorage (3.3.3-3) ...
Setting up python3-requests (2.32.3+dfsg-1) ...
Setting up python3-keyring (25.4.1-1) ...
Setting up python3-cachecontrol (0.14.1-1) ...
Setting up dh-python (6.20241024) ...
Setting up python3-requests-toolbelt (1.0.0-3) ...
Setting up python3-rich (13.7.1-1) ...
Setting up pybuild-plugin-pyproject (6.20241024) ...
Setting up python3-poetry (1.8.3+dfsg-4) ...
Setting up sbuild-build-depends-main-dummy (0.invalid.0) ...
Setting up python3-poetry-plugin-export (1.8.0-1) ...
Processing triggers for libc-bin (2.40-3) ...
Processing triggers for man-db (2.13.0-1) ...
+------------------------------------------------------------------------------+
| Check architectures |
+------------------------------------------------------------------------------+
Arch check ok (arm64 included in all)
+------------------------------------------------------------------------------+
| Build environment |
+------------------------------------------------------------------------------+
Kernel: Linux 6.1.0-27-cloud-arm64 #1 SMP Debian 6.1.115-1 (2024-11-01) arm64 (aarch64)
Toolchain package versions: binutils_2.43.1-5 dpkg-dev_1.22.12~1.gbp82cafd g++-14_14.2.0-8 gcc-14_14.2.0-8 libc6-dev_2.40-3 libstdc++-14-dev_14.2.0-8 libstdc++6_14.2.0-8 linux-libc-dev_6.11.9-1
Package versions: appstream_1.0.3-1+b1 apt_2.9.11 autoconf_2.72-3 automake_1:1.16.5-1.3 autopoint_0.22.5-2 autotools-dev_20220109.1 base-files_13.5 base-passwd_3.6.5 bash_5.2.32-1+b2 binutils_2.43.1-5 binutils-aarch64-linux-gnu_2.43.1-5 binutils-common_2.43.1-5 bsdextrautils_2.40.2-11 bsdutils_1:2.40.2-11 build-essential_12.12 bzip2_1.0.8-6 ca-certificates_20240203 coreutils_9.5-1+b1 cpp_4:14.2.0-1 cpp-14_14.2.0-8 cpp-14-aarch64-linux-gnu_14.2.0-8 cpp-aarch64-linux-gnu_4:14.2.0-1 dash_0.5.12-9+b1 debconf_1.5.87 debhelper_13.20 debian-archive-keyring_2023.4 debianutils_5.21 dh-autoreconf_20 dh-python_6.20241024 dh-strip-nondeterminism_1.14.0-1 diffstat_1.67-1 diffutils_1:3.10-1+b1 dpkg_1.22.12~1.gbp82cafd dpkg-dev_1.22.12~1.gbp82cafd dwz_0.15-1+b1 e2fsprogs_1.47.1-1+b1 fakeroot_1.36-1 file_1:5.45-3+b1 findutils_4.10.0-3 g++_4:14.2.0-1 g++-14_14.2.0-8 g++-14-aarch64-linux-gnu_14.2.0-8 g++-aarch64-linux-gnu_4:14.2.0-1 gcc_4:14.2.0-1 gcc-14_14.2.0-8 gcc-14-aarch64-linux-gnu_14.2.0-8 gcc-14-base_14.2.0-8 gcc-aarch64-linux-gnu_4:14.2.0-1 gettext_0.22.5-2 gettext-base_0.22.5-2 gpg_2.2.45-2 gpgconf_2.2.45-2 gpgv_2.2.45-2 grep_3.11-4+b1 groff-base_1.23.0-5 gzip_1.12-1.1+b1 hostname_3.25 init-system-helpers_1.67 intltool-debian_0.35.0+20060710.6 iso-codes_4.17.0-1 libacl1_2.3.2-2+b1 libaliased-perl_0.34-3 libappstream5_1.0.3-1+b1 libapt-pkg-perl_0.1.40+b6 libapt-pkg6.0t64_2.9.11 libarchive-zip-perl_1.68-1 libasan8_14.2.0-8 libassuan9_3.0.1-2 libatomic1_14.2.0-8 libattr1_1:2.5.2-2 libaudit-common_1:4.0.2-2 libaudit1_1:4.0.2-2 libb-hooks-endofscope-perl_0.28-1 libb-hooks-op-check-perl_0.22-3+b2 libberkeleydb-perl_0.66-1 libbinutils_2.43.1-5 libblkid1_2.40.2-11 libbrotli1_1.1.0-2+b6 libbsd0_0.12.2-2 libbz2-1.0_1.0.8-6 libc-bin_2.40-3 libc-dev-bin_2.40-3 libc6_2.40-3 libc6-dev_2.40-3 libcap-ng0_0.8.5-3+b1 libcap2_1:2.66-5+b1 libcapture-tiny-perl_0.48-2 libcc1-0_14.2.0-8 libcgi-pm-perl_4.66-1 libclass-data-inheritable-perl_0.10-1 libclass-inspector-perl_1.36-3 libclass-method-modifiers-perl_2.15-1 libclass-xsaccessor-perl_1.19-4+b4 libclone-perl_0.47-1+b1 libcom-err2_1.47.1-1+b1 libconfig-tiny-perl_2.30-1 libconst-fast-perl_0.014-2 libcpanel-json-xs-perl_4.38-1+b1 libcrypt-dev_1:4.4.36-5 libcrypt1_1:4.4.36-5 libctf-nobfd0_2.43.1-5 libctf0_2.43.1-5 libcurl3t64-gnutls_8.11.0-1 libdata-dpath-perl_0.60-1 libdata-messagepack-perl_1.02-1+b4 libdata-optlist-perl_0.114-1 libdata-validate-domain-perl_0.15-1 libdata-validate-ip-perl_0.31-1 libdata-validate-uri-perl_0.07-3 libdb5.3t64_5.3.28+dfsg2-9 libdebconfclient0_0.273 libdebhelper-perl_13.20 libdevel-callchecker-perl_0.009-1+b1 libdevel-size-perl_0.84-1+b1 libdevel-stacktrace-perl_2.0500-1 libdpkg-perl_1.22.12~1.gbp82cafd libdynaloader-functions-perl_0.004-1 libelf1t64_0.192-4 libemail-address-xs-perl_1.05-1+b4 libencode-locale-perl_1.05-3 libexception-class-perl_1.45-1 libexpat1_2.6.4-1 libext2fs2t64_1.47.1-1+b1 libfakeroot_1.36-1 libffi8_3.4.6-1 libfile-basedir-perl_0.09-2 libfile-find-rule-perl_0.34-3 libfile-listing-perl_6.16-1 libfile-sharedir-perl_1.118-3 libfile-stripnondeterminism-perl_1.14.0-1 libfont-ttf-perl_1.06-2 libgcc-14-dev_14.2.0-8 libgcc-s1_14.2.0-8 libgcrypt20_1.11.0-6 libgdbm-compat4t64_1.24-2 libgdbm6t64_1.24-2 libglib2.0-0t64_2.82.2-3 libgmp10_2:6.3.0+dfsg-2+b2 libgnutls30t64_3.8.8-2 libgomp1_14.2.0-8 libgpg-error0_1.50-4 libgprofng0_2.43.1-5 libgssapi-krb5-2_1.21.3-3 libhogweed6t64_3.10-1+b1 libhtml-form-perl_6.12-1 libhtml-html5-entities-perl_0.004-3 libhtml-parser-perl_3.83-1+b1 libhtml-tagset-perl_3.24-1 libhtml-tokeparser-simple-perl_3.16-4 libhtml-tree-perl_5.07-3 libhttp-cookies-perl_6.11-1 libhttp-date-perl_6.06-1 libhttp-message-perl_7.00-2 libhttp-negotiate-perl_6.01-2 libhwasan0_14.2.0-8 libicu72_72.1-5+b1 libidn2-0_2.3.7-2+b1 libimport-into-perl_1.002005-2 libio-html-perl_1.004-3 libio-interactive-perl_1.025-1 libio-socket-ssl-perl_2.089-1 libio-string-perl_1.08-4 libipc-run3-perl_0.049-1 libipc-system-simple-perl_1.30-2 libisl23_0.27-1 libiterator-perl_0.03+ds1-2 libiterator-util-perl_0.02+ds1-2 libitm1_14.2.0-8 libjansson4_2.14-2+b3 libjson-maybexs-perl_1.004008-1 libk5crypto3_1.21.3-3 libkeyutils1_1.6.3-4 libkrb5-3_1.21.3-3 libkrb5support0_1.21.3-3 libldap-2.5-0_2.5.18+dfsg-3+b1 liblist-compare-perl_0.55-2 liblist-someutils-perl_0.59-1 liblist-utilsby-perl_0.12-2 liblsan0_14.2.0-8 liblwp-mediatypes-perl_6.04-2 liblwp-protocol-https-perl_6.14-1 liblz1_1.15~pre2-1 liblz4-1_1.9.4-3+b1 liblzma5_5.6.3-1+b1 liblzo2-2_2.10-3+b1 libmagic-mgc_1:5.45-3+b1 libmagic1t64_1:5.45-3+b1 libmarkdown2_2.2.7-2.1 libmd0_1.1.0-2+b1 libmldbm-perl_2.05-4 libmodule-implementation-perl_0.09-2 libmodule-runtime-perl_0.016-2 libmoo-perl_2.005005-1 libmoox-aliases-perl_0.001006-2 libmount1_2.40.2-11 libmouse-perl_2.5.11-1+b1 libmpc3_1.3.1-1+b3 libmpfr6_4.2.1-1+b2 libnamespace-clean-perl_0.27-2 libncursesw6_6.5-2+b1 libnet-domain-tld-perl_1.75-4 libnet-http-perl_6.23-1 libnet-ipv6addr-perl_1.02-1 libnet-netmask-perl_2.0002-2 libnet-ssleay-perl_1.94-2 libnetaddr-ip-perl_4.079+dfsg-2+b4 libnettle8t64_3.10-1+b1 libnghttp2-14_1.64.0-1 libnghttp3-9_1.4.0-1+b1 libngtcp2-16_1.6.0-1 libngtcp2-crypto-gnutls8_1.6.0-1 libnsl2_1.3.0-3+b3 libnumber-compare-perl_0.03-3 libp11-kit0_0.25.5-2+b1 libpackage-stash-perl_0.40-1 libpam-modules_1.5.3-7+b1 libpam-modules-bin_1.5.3-7+b1 libpam-runtime_1.5.3-7 libpam0g_1.5.3-7+b1 libparams-classify-perl_0.015-2+b4 libparams-util-perl_1.102-3+b1 libpath-tiny-perl_0.146-1 libpcre2-8-0_10.44-4 libperl5.40_5.40.0-7 libperlio-gzip-perl_0.20-1+b4 libperlio-utf8-strict-perl_0.010-1+b3 libpipeline1_1.5.8-1 libproc-processtable-perl_0.636-1+b3 libpsl5t64_0.21.2-1.1+b1 libpython3-stdlib_3.12.7-1 libpython3.12-minimal_3.12.7-3 libpython3.12-stdlib_3.12.7-3 libpython3.13-minimal_3.13.0-2 libpython3.13-stdlib_3.13.0-2 libreadline8t64_8.2-5 libregexp-wildcards-perl_1.05-3 librole-tiny-perl_2.002004-1 librtmp1_2.4+20151223.gitfa8646d.1-2+b5 libsasl2-2_2.1.28+dfsg1-8 libsasl2-modules-db_2.1.28+dfsg1-8 libseccomp2_2.5.5-1+b3 libselinux1_3.7-3+b1 libsemanage-common_3.7-2 libsemanage2_3.7-2+b1 libsepol2_3.7-1 libsereal-decoder-perl_5.004+ds-1+b3 libsereal-encoder-perl_5.004+ds-1+b3 libsframe1_2.43.1-5 libsmartcols1_2.40.2-11 libsort-versions-perl_1.62-3 libsqlite3-0_3.46.1-1 libss2_1.47.1-1+b1 libssh2-1t64_1.11.1-1 libssl3t64_3.3.2-2 libstdc++-14-dev_14.2.0-8 libstdc++6_14.2.0-8 libstemmer0d_2.2.0-4+b2 libstrictures-perl_2.000006-1 libsub-exporter-perl_0.990-1 libsub-exporter-progressive-perl_0.001013-3 libsub-identify-perl_0.14-3+b3 libsub-install-perl_0.929-1 libsub-name-perl_0.27-1+b3 libsub-quote-perl_2.006008-1 libsyntax-keyword-try-perl_0.30-1+b1 libsystemd0_257~rc2-3 libtasn1-6_4.19.0-3+b3 libterm-readkey-perl_2.38-2+b4 libtext-glob-perl_0.11-3 libtext-levenshteinxs-perl_0.03-5+b4 libtext-markdown-discount-perl_0.16-1+b3 libtext-xslate-perl_3.5.9-2+b1 libtime-duration-perl_1.21-2 libtime-moment-perl_0.44-2+b4 libtimedate-perl_2.3300-2 libtinfo6_6.5-2+b1 libtirpc-common_1.3.4+ds-1.3 libtirpc3t64_1.3.4+ds-1.3+b1 libtool_2.4.7-8 libtry-tiny-perl_0.32-1 libtsan2_14.2.0-8 libubsan1_14.2.0-8 libuchardet0_0.0.8-1+b2 libudev1_257~rc2-3 libunicode-utf8-perl_0.62-2+b3 libunistring5_1.2-1+b1 liburi-perl_5.30-1 libuuid1_2.40.2-11 libvariable-magic-perl_0.64-1+b1 libwww-mechanize-perl_2.19-1 libwww-perl_6.77-1 libwww-robotrules-perl_6.02-1 libxml-libxml-perl_2.0207+dfsg+really+2.0134-5+b1 libxml-namespacesupport-perl_1.12-2 libxml-sax-base-perl_1.09-3 libxml-sax-perl_1.02+dfsg-3 libxml2_2.12.7+dfsg+really2.9.14-0.2+b1 libxmlb2_0.3.21-1 libxs-parse-keyword-perl_0.46-1+b1 libxxhash0_0.8.2-2+b2 libyaml-0-2_0.2.5-1+b2 libyaml-libyaml-perl_0.902.0+ds-2+b1 libzstd1_1.5.6+dfsg-1+b1 lintian_2.120.0 linux-libc-dev_6.11.9-1 login_1:4.16.0-2+really2.40.2-11 login.defs_1:4.16.0-5 logsave_1.47.1-1+b1 lzop_1.04-2+b1 m4_1.4.19-4 make_4.3-4.1+b1 man-db_2.13.0-1 mawk_1.3.4.20240905-1 media-types_10.1.0 mount_2.40.2-11 ncurses-base_6.5-2 ncurses-bin_6.5-2+b1 netbase_6.4 openssl_3.3.2-2 openssl-provider-legacy_3.3.2-2 passwd_1:4.16.0-5 patch_2.7.6-7+b1 patchutils_0.4.2-1+b1 perl_5.40.0-7 perl-base_5.40.0-7 perl-modules-5.40_5.40.0-7 perl-openssl-defaults_7+b2 plzip_1.11-2 po-debconf_1.0.21+nmu1 pybuild-plugin-pyproject_6.20241024 python3_3.12.7-1 python3-all_3.12.7-1 python3-async-generator_1.10-4 python3-autocommand_2.2.2-3 python3-bcrypt_4.2.0-2.1 python3-build_1.2.2-1 python3-cachecontrol_0.14.1-1 python3-certifi_2024.8.30+dfsg-1 python3-cffi-backend_1.17.1-2+b1 python3-chardet_5.2.0+dfsg-1 python3-charset-normalizer_3.4.0-1+b1 python3-cleo_2.1.0-2 python3-click_8.1.7-2 python3-colorama_0.4.6-4 python3-crashtest_0.4.1-1 python3-cryptography_43.0.0-1 python3-distlib_0.3.9-1 python3-dulwich_0.22.5-1+b1 python3-fastjsonschema_2.20.0-1 python3-filelock_3.16.1-1 python3-idna_3.8-2 python3-importlib-metadata_8.5.0-1 python3-inflect_7.3.1-2 python3-iniconfig_1.1.1-2 python3-installer_0.7.0+dfsg1-3 python3-jaraco.classes_3.4.0-1 python3-jaraco.context_6.0.0-1 python3-jaraco.functools_4.1.0-1 python3-jaraco.text_4.0.0-1 python3-jeepney_0.8.0-4 python3-jinja2_3.1.3-1 python3-keyring_25.4.1-1 python3-linkify-it_2.0.3-1 python3-markdown-it_3.0.0-2 python3-markupsafe_2.1.5-1+b3 python3-mdurl_0.1.2-1 python3-minimal_3.12.7-1 python3-more-itertools_10.5.0-1 python3-msgpack_1.0.3-3+b4 python3-packaging_24.2-1 python3-pexpect_4.9-3 python3-pip-whl_24.3.1+dfsg-1 python3-pkg-resources_75.2.0-1 python3-pkginfo_1.11.2-1 python3-platformdirs_4.3.6-1 python3-pluggy_1.5.0-1 python3-poetry_1.8.3+dfsg-4 python3-poetry-core_1.9.0-2 python3-poetry-plugin-export_1.8.0-1 python3-ptyprocess_0.7.0-6 python3-pygments_2.18.0+dfsg-1 python3-pylev_1.4.0-1 python3-pyproject-hooks_1.2.0-1 python3-pytest_8.3.3-1 python3-pytest-asyncio_0.24.0a1-1 python3-requests_2.32.3+dfsg-1 python3-requests-toolbelt_1.0.0-3 python3-rich_13.7.1-1 python3-secretstorage_3.3.3-3 python3-setuptools_75.2.0-1 python3-setuptools-whl_75.2.0-1 python3-shellingham_1.5.4-1 python3-syrupy_4.7.2-1 python3-toml_0.10.2-1 python3-tomlkit_0.13.2-1 python3-trove-classifiers_2024.9.12-1 python3-typeguard_4.4.1-1 python3-typing-extensions_4.12.2-2 python3-uc-micro_1.0.3-1 python3-urllib3_2.0.7-2 python3-virtualenv_20.27.0+ds-1 python3-wheel_0.45.0-1 python3-wheel-whl_0.45.0-1 python3-zipp_3.21.0-1 python3.12_3.12.7-3 python3.12-minimal_3.12.7-3 python3.13_3.13.0-2 python3.13-minimal_3.13.0-2 readline-common_8.2-5 rpcsvc-proto_1.4.3-1+b1 sbuild-build-depends-main-dummy_0.invalid.0 sed_4.9-2+b1 sensible-utils_0.0.24 shared-mime-info_2.4-5+b1 sysvinit-utils_3.11-1 t1utils_1.41-4+b1 tar_1.35+dfsg-3+b1 tzdata_2024b-3 ucf_3.0043+nmu1 unzip_6.0-28+b1 util-linux_2.40.2-11 xz-utils_5.6.3-1+b1 zlib1g_1:1.3.dfsg+really1.3.1-1+b1
+------------------------------------------------------------------------------+
| Build |
+------------------------------------------------------------------------------+
Unpack source
-------------
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 3.0 (quilt)
Source: textual
Binary: python3-textual
Architecture: all
Version: 0.52.1-1
Maintainer: Sandro Tosi <morph@debian.org>
Homepage: https://github.com/willmcgugan/textual
Standards-Version: 4.6.2
Vcs-Browser: https://salsa.debian.org/morph/textual
Vcs-Git: https://salsa.debian.org/morph/textual.git
Testsuite: autopkgtest-pkg-pybuild
Build-Depends: debhelper-compat (= 13), pybuild-plugin-pyproject, python3-all, python3-click <!nocheck>, python3-jinja2 <!nocheck>, python3-linkify-it <!nocheck>, python3-poetry, python3-pytest (>= 6.2.3) <!nocheck>, python3-pytest-asyncio <!nocheck>, python3-rich (>= 10.7.0) <!nocheck>, python3-syrupy <!nocheck>, python3-typing-extensions <!nocheck>
Package-List:
python3-textual deb python optional arch=all
Checksums-Sha1:
97f1af6d53fb03f4cc87236f10f2472ed531af23 24987696 textual_0.52.1.orig.tar.xz
da330efcd2d189fbcfbd711ef04654a75bedea4a 3060 textual_0.52.1-1.debian.tar.xz
Checksums-Sha256:
58421f75a37fcd8b7fe22c702429e69a5bda212e533c6901672265b1bc0b3cc7 24987696 textual_0.52.1.orig.tar.xz
30265beda4c53bbe0860ce174a88d4a278c5f8d20be1cad5cd488764df678ba0 3060 textual_0.52.1-1.debian.tar.xz
Files:
d99858b6c68a0973c8332e2833c96fda 24987696 textual_0.52.1.orig.tar.xz
710a2d8cc0a30ece4a77c92d6c33a046 3060 textual_0.52.1-1.debian.tar.xz
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEufrTGSrz5KUwnZ05h588mTgBqU8FAmXr3LkACgkQh588mTgB
qU95HxAAzpucVDje8bn+UBsnOU3rWhmBm2yrS0FC6oiAact02WA4fEEa+/MfB8rc
9AcrHdw2W+fl2vgtQll4LSr45jRa1PpWHpro7mqHAkwBHVCBDvhxQghN5FM17CnZ
AF/9KjoWJt6/5WThof3LGxNT1O+U7dNiH7j0eC0+tv24JGwJ9RLsKQUU/pejb3Kb
7satXxPvfV2fkPRhgVfCZV27Vcz3MzduGHB5NRl9bIvq/9NlzmelF9aYqnPBwLBO
Qg4vAA9+DPaLfp4hFzQh3m3cx2k8xT3cKNvSqDX/VQ+MUPVK9PIIOsAIn9ZmGsLF
AWxywSG+7dK23wlJ7BbhHQzgGTo/pi/Hr8g0BifPOAw6pO1IoMU4nrDBsKJ+ZHrQ
c2aZy80801CbErsfYSIV/sZgeOxiyNIvbv5SdLm1Lmm5SvzopoQEHPm3Mf+alag2
U5/6OVmsYPTMQw2F4soNW//nTDN15TJEstFNRNmCHgeG+EdbsOR2bo71mZt+tH+u
6mHRxFyRNRoAYfbIett9g7OK9VzaY2QhzTnsZDJQaHUlX9ndYcsd6168W7TRW9Uo
rGLOPBvPaUCkAHy9G++HbuiqjvoKsBIdFdGryuL8jG0+irbEzuoKQyJIYxVMl98w
HV4DhhqfSxrnvw9oDSBXE56uyZ68tGlGlLIjcxea6D55SrHGbQI=
=Zz39
-----END PGP SIGNATURE-----
gpgv: Signature made Sat Mar 9 03:51:21 2024 UTC
gpgv: using RSA key B9FAD3192AF3E4A5309D9D39879F3C993801A94F
gpgv: Can't check signature: No public key
dpkg-source: warning: cannot verify inline signature for ./textual_0.52.1-1.dsc: no acceptable signature found
dpkg-source: info: extracting textual in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking textual_0.52.1.orig.tar.xz
dpkg-source: info: unpacking textual_0.52.1-1.debian.tar.xz
Check disk space
----------------
Sufficient free space for build
User Environment
----------------
APT_CONFIG=/var/lib/sbuild/apt.conf
HOME=/sbuild-nonexistent
LANG=C.UTF-8
LC_ALL=C.UTF-8
LOGNAME=debusine-worker
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SHELL=/bin/sh
USER=debusine-worker
dpkg-buildpackage
-----------------
Command: dpkg-buildpackage -us -uc -b -rfakeroot
dpkg-buildpackage: info: source package textual
dpkg-buildpackage: info: source version 0.52.1-1
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Sandro Tosi <morph@debian.org>
dpkg-source --before-build .
dpkg-buildpackage: info: host architecture arm64
dpkg-source: info: using options from textual-0.52.1/debian/source/options: --extend-diff-ignore=^[^/]+.egg-info/
debian/rules clean
dh clean --with python3 --buildsystem=pybuild
dh_auto_clean -O--buildsystem=pybuild
dh_autoreconf_clean -O--buildsystem=pybuild
dh_clean -O--buildsystem=pybuild
debian/rules binary
dh binary --with python3 --buildsystem=pybuild
dh_update_autotools_config -O--buildsystem=pybuild
dh_autoreconf -O--buildsystem=pybuild
dh_auto_configure -O--buildsystem=pybuild
dh_auto_build -O--buildsystem=pybuild
I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module
I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_textual
* Building wheel...
Successfully built textual-0.52.1-py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with "installer" module
I: pybuild plugin_pyproject:129: Building wheel for python3.12 with "build" module
I: pybuild base:311: python3.12 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_textual
* Building wheel...
Successfully built textual-0.52.1-py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.12 with "installer" module
dh_auto_test -O--buildsystem=pybuild
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_textual/build; python3.13 -m pytest -x -vvv -m "not syntax" --ignore=tests/test_features.py --ignore=tests/command_palette --ignore=tests/snapshot_tests -k "not test_footer_highlight_when_pushing_modal and not test_softbreak_split_links_rendered_correctly and not test_headings_that_look_like_they_contain_markup and not test_screen_stack_preserved and not test_clicking_outside_command_palette_closes_it and not test_command_source_environment and not test_escape_closes_when_no_list_visible and not test_register_language"
/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:208: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"
warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.13
cachedir: .pytest_cache
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_textual/build
configfile: pyproject.toml
testpaths: tests
plugins: asyncio-0.24.0a1, syrupy-4.7.2, typeguard-4.4.1
asyncio: mode=Mode.AUTO, default_loop_scope=None
collecting ... collected 2402 items / 8 deselected / 2394 selected
tests/animations/test_disabling_animations.py::test_style_animations_via_animate_work_on_full PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_animate_are_disabled_on_basic PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_animate_are_disabled_on_none PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_transition_work_on_full PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_transition_are_disabled_on_basic PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_transition_are_disabled_on_none PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[-full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[FULL-full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[BASIC-basic] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[NONE-none] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[garbanzo beans-full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test_app_show_animations[full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test_app_show_animations[basic] PASSED [ 0%]
tests/animations/test_environment_variable.py::test_app_show_animations[none] PASSED [ 0%]
tests/animations/test_loading_indicator_animation.py::test_loading_indicator_is_not_static_on_full PASSED [ 0%]
tests/animations/test_loading_indicator_animation.py::test_loading_indicator_is_not_static_on_basic PASSED [ 0%]
tests/animations/test_loading_indicator_animation.py::test_loading_indicator_is_static_on_none PASSED [ 0%]
tests/animations/test_progress_bar_animation.py::test_progress_bar_animates_on_full PASSED [ 0%]
tests/animations/test_progress_bar_animation.py::test_progress_bar_animates_on_basic PASSED [ 0%]
tests/animations/test_progress_bar_animation.py::test_progress_bar_does_not_animate_on_none PASSED [ 0%]
tests/animations/test_scrolling_animation.py::test_scrolling_animates_on_full PASSED [ 0%]
tests/animations/test_scrolling_animation.py::test_scrolling_animates_on_basic PASSED [ 0%]
tests/animations/test_scrolling_animation.py::test_scrolling_does_not_animate_on_none PASSED [ 0%]
tests/animations/test_switch_animation.py::test_switch_animates_on_full PASSED [ 1%]
tests/animations/test_switch_animation.py::test_switch_animates_on_basic PASSED [ 1%]
tests/animations/test_switch_animation.py::test_switch_does_not_animate_on_none PASSED [ 1%]
tests/animations/test_tabs_underline_animation.py::test_tabs_underline_animates_on_full PASSED [ 1%]
tests/animations/test_tabs_underline_animation.py::test_tabs_underline_animates_on_basic PASSED [ 1%]
tests/animations/test_tabs_underline_animation.py::test_tabs_underline_does_not_animate_on_none PASSED [ 1%]
tests/css/test_css_reloading.py::test_css_reloading_applies_to_non_top_screen PASSED [ 1%]
tests/css/test_css_reloading.py::test_css_reloading_file_not_found PASSED [ 1%]
tests/css/test_grid_rows_columns_relative_units.py::test_grid_rows_columns_relative_units_are_correct PASSED [ 1%]
tests/css/test_grid_rows_columns_relative_units.py::test_styles_builder_uses_correct_relative_units_grid_rows_columns PASSED [ 1%]
tests/css/test_help_text.py::test_help_text_examples_are_contextualized PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_wrong_number_of_values[css] PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_wrong_number_of_values[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_invalid_value[css] PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_invalid_value[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_scalar_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_scalar_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_string_enum_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_string_enum_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_color_property_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_color_property_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_border_property_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_border_property_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_layout_property_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_layout_property_help_text[inline] PASSED [ 2%]
tests/css/test_help_text.py::test_fractional_property_help_text[css] PASSED [ 2%]
tests/css/test_help_text.py::test_fractional_property_help_text[inline] PASSED [ 2%]
tests/css/test_help_text.py::test_offset_property_help_text[css] PASSED [ 2%]
tests/css/test_help_text.py::test_offset_property_help_text[inline] PASSED [ 2%]
tests/css/test_help_text.py::test_align_help_text PASSED [ 2%]
tests/css/test_help_text.py::test_offset_single_axis_help_text PASSED [ 2%]
tests/css/test_help_text.py::test_style_flags_property_help_text[css] PASSED [ 2%]
tests/css/test_help_text.py::test_style_flags_property_help_text[inline] PASSED [ 2%]
tests/css/test_inheritance.py::test_inheritance XFAIL (Overlapping
styles should prioritize the most recent widget in the inheritance
chain) [ 2%]
tests/css/test_initial.py::test_initial_default PASSED [ 2%]
tests/css/test_initial.py::test_initial PASSED [ 2%]
tests/css/test_mega_stylesheet.py::test_mega_stylesheet PASSED [ 2%]
tests/css/test_nested_css.py::test_nest_app PASSED [ 2%]
tests/css/test_nested_css.py::test_lists_of_selectors_in_nested_css PASSED [ 2%]
tests/css/test_nested_css.py::test_rule_declaration_after_nested PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[Selector {-EOFError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[Selector{ Foo {-EOFError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[Selector{ Foo {}-EOFError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[> {}-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[&-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[&&-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[&.foo-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[& .foo-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[{-TokenError] PASSED [ 3%]
tests/css/test_nested_css.py::test_parse_errors[*{-EOFError] PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_simple_reference PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_simple_reference_no_whitespace PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_undefined_variable PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_empty_variable PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_transitive_reference PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_multi_value_variable PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_variable_used_inside_property_value PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_variable_definition_eof PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_variable_reference_whitespace_trimming PASSED [ 3%]
tests/css/test_parse.py::TestParseLayout::test_valid_layout_name PASSED [ 3%]
tests/css/test_parse.py::TestParseLayout::test_invalid_layout_name PASSED [ 3%]
tests/css/test_parse.py::TestParseText::test_foreground PASSED [ 3%]
tests/css/test_parse.py::TestParseText::test_background PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgb(1,255,50)-result0] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgb( 1, 255,50 )-result1] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgba( 1, 255,50,0.3 )-result2] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgba( 1, 255,50, 1.3 )-result3] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsl( 180, 50%, 50% )-result4] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsl(180,50%,50%)-result5] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsla(180,50%,50%,0.25)-result6] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsla( 180, 50% ,50%,0.25 )-result7] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsla( 180, 50% , 50% , 1.5 )-result8] PASSED [ 3%]
tests/css/test_parse.py::TestParseOffset::test_composite_rule[-5.5%-parsed_x0--30%-parsed_y0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_composite_rule[5%-parsed_x1-40%-parsed_y1] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_composite_rule[10-parsed_x2-40-parsed_y2] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_separate_rules[-5.5%-parsed_x0--30%-parsed_y0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_separate_rules[5%-parsed_x1-40%-parsed_y1] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_separate_rules[-10-parsed_x2-40-parsed_y2] PASSED [ 4%]
tests/css/test_parse.py::TestParseOverflow::test_multiple_enum PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[5.57s-5.57] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[0.5s-0.5] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[1200ms-1.2] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[0.5ms-0.0005] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[20-20.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[0.1-0.1] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_no_delay_specified PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_unknown_easing_function PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[-0.2-0.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[0.4-0.4] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[1.3-1.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[-20%-0.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[25%-0.25] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[128%-1.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_invalid_value PASSED [ 4%]
tests/css/test_parse.py::TestParseMargin::test_margin_partial PASSED [ 4%]
tests/css/test_parse.py::TestParsePadding::test_padding_partial PASSED [ 4%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[left] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[start] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[center] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[right] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[end] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[justify] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align_invalid PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_type_no_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_type_with_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_type_starts_with_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_combined_type_no_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_combined_type_with_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_combined_type_starts_with_number PASSED [ 5%]
tests/css/test_parse.py::test_parse_bad_pseudo_selector PASSED [ 5%]
tests/css/test_parse.py::test_parse_bad_pseudo_selector_with_suggestion PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_size_rows-3] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_size_columns-3] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_gutter_vertical-4] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_gutter_horizontal-4] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_rows-1fr 3fr] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_columns-1fr 3fr] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_align_change_updates_children_position[align_horizontal-right] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_align_change_updates_children_position[align_vertical-bottom] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_align_change_updates_children_position[align-value2] PASSED [ 5%]
tests/css/test_scalar.py::test_copy_with_value PASSED [ 6%]
tests/css/test_scalar.py::test_copy_with_unit PASSED [ 6%]
tests/css/test_scalar.py::test_copy_with_percent_unit PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_pushing_and_popping_does_not_reparse_css PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_push_screen_instance PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_push_screen_instance_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_push_screen_type_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_screen_instance PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_screen_instance_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_screen_type_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_mode_screen_instance PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_mode_screen_instance_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_mode_screen_type_by_name PASSED [ 6%]
tests/css/test_styles.py::test_styles_reset PASSED [ 6%]
tests/css/test_styles.py::test_has_rule PASSED [ 6%]
tests/css/test_styles.py::test_clear_rule PASSED [ 6%]
tests/css/test_styles.py::test_get_rules PASSED [ 6%]
tests/css/test_styles.py::test_set_rule PASSED [ 6%]
tests/css/test_styles.py::test_reset PASSED [ 6%]
tests/css/test_styles.py::test_merge PASSED [ 6%]
tests/css/test_styles.py::test_merge_rules PASSED [ 6%]
tests/css/test_styles.py::test_render_styles_border PASSED [ 6%]
tests/css/test_styles.py::test_get_opacity_default PASSED [ 6%]
tests/css/test_styles.py::test_styles_css_property PASSED [ 6%]
tests/css/test_styles.py::test_opacity_set_then_get[0.2-0.2] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[-0.4-0.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[5.8-1.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[25%-0.25] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[-10%-0.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[120%-1.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_invalid_type_error PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_allows_integer_value PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[None-None] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1-size_dimension_expected_output1] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1.0-size_dimension_expected_output2] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1.2-size_dimension_expected_output3] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1200.0-size_dimension_expected_output4] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[20-size_dimension_expected_output5] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1.4-size_dimension_expected_output6] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input7-size_dimension_expected_output7] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input8-size_dimension_expected_output8] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input9-size_dimension_expected_output9] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input10-size_dimension_expected_output10] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input11-size_dimension_expected_output11] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input12-size_dimension_expected_output12] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input13-size_dimension_expected_output13] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[a] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[1.4e3] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[3.14j] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input3] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input4] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input5] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input6] PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_highest_specificity_wins PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_doesnt_override_defaults PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_highest_specificity_wins_multiple_classes PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_many_classes_dont_overrule_id PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_last_rule_wins_when_same_rule_twice_in_one_ruleset PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_rulesets_merged_for_duplicate_selectors PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_takes_final_rule_in_specificity_clash PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_empty_rulesets PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_user_css_over_widget_css PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[transparent-expectation0-expected_color0] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[ansi_red-expectation1-expected_color1] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[ansi_bright_magenta-expectation2-expected_color2] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[red-expectation3-expected_color3] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[lime-expectation4-expected_color4] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[coral-expectation5-expected_color5] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[aqua-expectation6-expected_color6] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[deepskyblue-expectation7-expected_color7] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[rebeccapurple-expectation8-expected_color8] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[#ffcc00-expectation9-expected_color9] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[#ffcc0033-expectation10-expected_color10] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[rgb(200,90,30)-expectation11-expected_color11] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[rgba(200,90,30,0.3)-expectation12-expected_color12] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[coffee-expectation13-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[ansi_dark_cyan-expectation14-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[red 4-expectation15-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[1-expectation16-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[()-expectation17-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[backgroundu-background] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[bckgroundu-background] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[ofset-x-offset-x] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[ofst_y-offset-y] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[colr-color] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[colour-color] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[wdth-width] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[wth-width] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[wh-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[xkcd-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[color-blu-blue] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[background-chartruse-chartreuse] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[tint-ansi_whi-ansi_white] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[scrollbar-color-transprnt-transparent] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[color-xkcd-None] PASSED [ 9%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warning-text] PASSED [ 9%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warning_text] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warningtext1] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[1warningtext] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[WarningText1] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warningtext_] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warningtext-] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[_warningtext] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[-warningtext] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_multiple_values PASSED [ 10%]
tests/css/test_tokenize.py::test_single_line_comment PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_comment_ignored PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_comment_interspersed_ignored PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_no_semicolon PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_invalid_value PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_declarations_amongst_rulesets PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_reference_in_rule_declaration_value PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_reference_in_rule_declaration_value_multiple PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_reference_in_variable_declaration PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_references_in_variable_declaration_multiple PASSED [ 10%]
tests/css/test_tokenize.py::test_allow_new_lines PASSED [ 10%]
tests/directory_tree/test_early_show_root.py::test_managed_to_set_show_root_before_mounted PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\nFear is the mind-killer.] PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\nFear is the mind-killer.\n] PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\r\nFear is the mind-killer.] PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\r\nFear is the mind-killer.\r\n] PASSED [ 11%]
tests/document/test_document.py::test_lines_newline_eof PASSED [ 11%]
tests/document/test_document.py::test_lines_no_newline_eof PASSED [ 11%]
tests/document/test_document.py::test_lines_windows PASSED [ 11%]
tests/document/test_document.py::test_lines_windows_newline PASSED [ 11%]
tests/document/test_document.py::test_newline_unix PASSED [ 11%]
tests/document/test_document.py::test_newline_windows PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_no_selection PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_single_line PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_multiple_lines_unix PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_multiple_lines_windows PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_including_final_newline_unix PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_including_final_newline_windows PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_no_newline_at_end_of_file PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_no_newline_at_end_of_file_windows PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\nFear is the mind-killer.\n] PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\r\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\r\nFear is the mind-killer.\r\n] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\nFear is the mind-killer.\n] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\r\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\r\nFear is the mind-killer.\r\n] PASSED [ 11%]
tests/document/test_document_delete.py::test_delete_single_character PASSED [ 11%]
tests/document/test_document_delete.py::test_delete_single_newline PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_near_end_of_document PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_clearing_the_document PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_multiple_characters_on_one_line PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_multiple_lines_partially_spanned PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_end_of_line PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_single_line_excluding_newline PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_single_line_including_newline PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_end_of_file_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_no_newlines PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_empty_string PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_invalid_column PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_invalid_row_and_column PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_range_newline_file_start PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_newline_splits_line PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_newline_splits_line_selection PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_multiple_lines_ends_with_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_multiple_lines_ends_with_no_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_multiple_lines_starts_with_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_range_text_no_newlines PASSED [ 12%]
tests/document/test_document_insert.py::test_newline_eof PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start0-end0] PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start1-end1] PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start2-end2] PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start3-end3] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start4-end4] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start5-end5] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start6-end6] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start7-end7] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start8-end8] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start9-end9] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start10-end10] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start0-end0] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start1-end1] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start2-end2] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start3-end3] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start4-end4] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start5-end5] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start6-end6] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start7-end7] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start8-end8] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start0-end0] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start1-end1] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start2-end2] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start3-end3] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start4-end4] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start5-end5] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start6-end6] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start7-end7] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_home[start8-end8] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start0-end0] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start1-end1] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start2-end2] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start3-end3] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start4-end4] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_wrap PASSED [ 14%]
tests/document/test_wrapped_document.py::test_wrap_empty_document PASSED [ 14%]
tests/document/test_wrapped_document.py::test_wrap_width_zero_no_wrapping PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range_new_text_wrapped PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range_wrapping_at_previously_unavailable_range PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range_wrapping_disabled_previously_unavailable_range PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset0-location0] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset1-location1] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset2-location2] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset3-location3] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset4-location4] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset5-location5] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset6-location6] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset7-location7] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset8-location8] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset0-location0] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset1-location1] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset2-location2] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset3-location3] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset4-location4] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset5-location5] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset6-location6] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_invalid_offset_clamps_to_valid_offset[offset0-location0] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_invalid_offset_clamps_to_valid_offset[offset1-location1] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets[0-offsets0] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets[1-offsets1] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets[2-offsets2] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets_no_wrapping PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets_invalid_line_index[-4] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets_invalid_line_index[10000] PASSED [ 15%]
tests/input/test_input_clear.py::test_input_clear PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_word_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_word_from_inside_first_word PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_word_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_password_delete_left_word_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_all_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_all_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_right_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_right_from_end PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_password_delete_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_word_from_end PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_all_from_home PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_all_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_word_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_word_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_password_input_left_word_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_password_input_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_word_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_word_to_the_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_word_from_the_end PASSED [ 16%]
tests/input/test_input_messages.py::test_no_startup_messages PASSED [ 16%]
tests/input/test_input_messages.py::test_startup_messages_with_initial_value PASSED [ 16%]
tests/input/test_input_messages.py::test_typing_from_empty_causes_changed PASSED [ 16%]
tests/input/test_input_messages.py::test_typing_from_pre_populated_causes_changed PASSED [ 17%]
tests/input/test_input_messages.py::test_submit_empty_input PASSED [ 17%]
tests/input/test_input_messages.py::test_submit_pre_populated_input PASSED [ 17%]
tests/input/test_input_messages.py::test_paste_event_impact PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-0-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-1-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-10-10] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-47-47] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-48-48] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-58-48] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-0-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-1-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-2-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-3-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-4-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-5-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-9-4] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-10-5] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-50-5] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-0-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-1-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-2-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-3-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-4-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-5-3] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-13-9] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-14-9] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-15-10] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-60-10] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_click_outwith PASSED [ 18%]
tests/input/test_input_properties.py::test_internal_value_no_password PASSED [ 18%]
tests/input/test_input_properties.py::test_internal_value_password PASSED [ 18%]
tests/input/test_input_properties.py::test_internal_value_highlighted PASSED [ 18%]
tests/input/test_input_properties.py::test_cursor_toggle PASSED [ 18%]
tests/input/test_input_properties.py::test_input_height PASSED [ 18%]
tests/input/test_input_restrict.py::test_input_number_type PASSED [ 18%]
tests/input/test_input_restrict.py::test_input_integer_type PASSED [ 18%]
tests/input/test_input_restrict.py::test_bad_type PASSED [ 18%]
tests/input/test_input_restrict.py::test_max_length PASSED [ 18%]
tests/input/test_input_restrict.py::test_restrict PASSED [ 18%]
tests/input/test_input_restrict.py::test_restrict_type PASSED [ 18%]
tests/input/test_input_terminal_cursor.py::test_initial_terminal_cursor_position PASSED [ 18%]
tests/input/test_input_terminal_cursor.py::test_terminal_cursor_position_update_on_cursor_move PASSED [ 18%]
tests/input/test_input_validation.py::test_input_changed_message_validation_failure PASSED [ 18%]
tests/input/test_input_validation.py::test_input_changed_message_validation_success PASSED [ 18%]
tests/input/test_input_validation.py::test_input_submitted_message_validation_failure PASSED [ 18%]
tests/input/test_input_validation.py::test_input_submitted_message_validation_success PASSED [ 18%]
tests/input/test_input_validation.py::test_on_blur_triggers_validation PASSED [ 18%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on0] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on1] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on2] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on3] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on4] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on0] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on1] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on2] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on3] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on4] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on0] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on1] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on2] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on3] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on4] PASSED [ 19%]
tests/input/test_input_validation.py::test_none_validate_on_means_all_validations_happen PASSED [ 19%]
tests/input/test_input_validation.py::test_valid_empty PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_on_instantiation PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_after_value_assignment PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_if_mounted_later PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_if_mounted_later_and_focused PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_if_mounted_later_and_assigned_after PASSED [ 19%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[horizontal-block-True] PASSED [ 19%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[vertical-block-True] PASSED [ 19%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[horizontal-none-False] PASSED [ 20%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[vertical-none-False] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_height[GridLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_height[HorizontalLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_height[VerticalLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_width[GridLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_width[HorizontalLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_width[VerticalLayout] PASSED [ 20%]
tests/layouts/test_factory.py::test_get_layout_valid_layout PASSED [ 20%]
tests/layouts/test_factory.py::test_get_layout_invalid_layout PASSED [ 20%]
tests/layouts/test_horizontal.py::test_horizontal_get_content_width PASSED [ 20%]
tests/listview/test_inherit_listview.py::test_empty_inherited_list_view PASSED [ 20%]
tests/listview/test_inherit_listview.py::test_populated_inherited_list_view PASSED [ 20%]
tests/listview/test_inherit_listview.py::test_actions_work_when_list_view_empty PASSED [ 20%]
tests/listview/test_listview_navigation.py::test_keyboard_navigation_with_disabled_items PASSED [ 20%]
tests/notifications/test_all_levels_notifications.py::test_all_levels_of_notification PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_no_notifications PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_with_notifications PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_with_removing_notifications PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_with_notifications_that_expire PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_clearing_notifications PASSED [ 20%]
tests/notifications/test_notification.py::test_message PASSED [ 20%]
tests/notifications/test_notification.py::test_default_title PASSED [ 20%]
tests/notifications/test_notification.py::test_default_severity_level PASSED [ 20%]
tests/notifications/test_notification.py::test_default_timeout PASSED [ 21%]
tests/notifications/test_notification.py::test_identity_is_unique PASSED [ 21%]
tests/notifications/test_notification.py::test_time_out PASSED [ 21%]
tests/notifications/test_notifications.py::test_empty_to_start_with PASSED [ 21%]
tests/notifications/test_notifications.py::test_many_notifications PASSED [ 21%]
tests/notifications/test_notifications.py::test_timeout PASSED [ 21%]
tests/notifications/test_notifications.py::test_in PASSED [ 21%]
tests/notifications/test_notifications.py::test_remove_notification PASSED [ 21%]
tests/notifications/test_notifications.py::test_remove_notification_multiple_times PASSED [ 21%]
tests/notifications/test_notifications.py::test_clear PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_all_parameters_become_options PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_id_capture PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_by_id PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_with_bad_id PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_by_index PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_at_bad_index PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_clear_option_list PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_add_later PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_create_with_duplicate_id PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_create_with_duplicate_id_and_subsequent_non_dupes PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_adding_multiple_duplicates_at_once PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_options_are_available_soon PASSED [ 21%]
tests/option_list/test_option_list_disabled.py::test_default_enabled PASSED [ 21%]
tests/option_list/test_option_list_disabled.py::test_default_disabled PASSED [ 21%]
tests/option_list/test_option_list_disabled.py::test_enabled_to_disabled_via_index PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disabled_to_enabled_via_index PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_enabled_to_disabled_via_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disabled_to_enabled_via_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disable_invalid_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disable_invalid_index PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_enable_invalid_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_enable_invalid_index PASSED [ 22%]
tests/option_list/test_option_list_id_stability.py::test_get_after_add PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_no_hover PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_highlight PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_no_highlight PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_disabled PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_then_leave PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_initial_highlight PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_cleared_highlight_is_none PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_cleared_movement_does_nothing PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_down PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_down_from_end PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_up PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_up_from_nowhere PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_end PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_home PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_page_down_from_start_short_list PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_page_up_from_end_short_list PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_page_down_from_end_short_list PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_page_up_from_start_short_list PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_empty_list_movement PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[up-99] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[down-0] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[home-0] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[end-99] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[pageup-0] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[pagedown-99] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_keyboard_navigation_with_disabled_options PASSED [ 23%]
tests/option_list/test_option_list_option_subclass.py::test_option_list_with_subclassed_options PASSED [ 23%]
tests/option_list/test_option_messages.py::test_messages_on_startup PASSED [ 23%]
tests/option_list/test_option_messages.py::test_same_highlight_message PASSED [ 23%]
tests/option_list/test_option_messages.py::test_highlight_disabled_option_no_message PASSED [ 23%]
tests/option_list/test_option_messages.py::test_new_highlight PASSED [ 23%]
tests/option_list/test_option_messages.py::test_move_highlight_with_keyboard PASSED [ 23%]
tests/option_list/test_option_messages.py::test_select_message_with_keyboard PASSED [ 23%]
tests/option_list/test_option_messages.py::test_click_option_with_mouse PASSED [ 23%]
tests/option_list/test_option_messages.py::test_click_disabled_option_with_mouse PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_invalid_id PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_invalid_index PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_valid_id PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_valid_index PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_single_line_option_prompt_with_multiple PASSED [ 24%]
tests/option_list/test_option_prompt_replacement.py::test_replace_multiple_line_option_prompt_with_single PASSED [ 24%]
tests/option_list/test_option_prompt_replacement.py::test_replace_multiple_line_option_prompt_with_multiple PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_first_option_via_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_first_option_via_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_last_option_via_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_last_option_via_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_all_options_via_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_all_options_via_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_invalid_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_invalid_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_with_hover_on_last_option PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_no_data PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_single_datapoint PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_two_values_min_max PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_expand_data_to_width PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_expand_data_to_width_non_divisible PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_shrink_data_to_width PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_color_blend PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_simple_text_opacity PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_value_zero_doesnt_render_the_text PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_text_opacity_value_of_one_noop PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_ansi_colors_noop PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_text_opacity_no_style_noop PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_text_opacity_only_fg_noop PASSED [ 25%]
tests/renderables/test_text_opacity.py::test_text_opacity_only_bg_noop PASSED [ 25%]
tests/renderables/test_tint.py::test_tint PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_no_highlight PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_from_zero PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_from_zero_point_five PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_middle PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_half_start PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_half_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_half_start_and_half_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_to_near_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_to_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_out_of_bounds_start PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_out_of_bounds_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_full_range_out_of_bounds_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_full_range_out_of_bounds_start PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_custom_styles PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_clickable_ranges PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_value_is_blank_by_default PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_setting_and_checking_blank PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_clear_with_allow_blanks PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_clear_fails_if_allow_blank_is_false PASSED [ 25%]
tests/select/test_changed_message.py::test_message_control PASSED [ 25%]
tests/select/test_changed_message.py::test_selecting_posts_message PASSED [ 25%]
tests/select/test_changed_message.py::test_same_selection_does_not_post_message PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_select_is_ok_with_blanks PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_set_options_is_ok_with_blanks PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_select_raises_exception_if_allow_blank_is_false PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_set_options_raises_exception_if_allow_blank_is_false PASSED [ 26%]
tests/select/test_prompt.py::test_reactive_prompt_change PASSED [ 26%]
tests/select/test_prompt.py::test_reactive_prompt_change_when_allow_blank_is_false PASSED [ 26%]
tests/select/test_value.py::test_initial_value_is_validated PASSED [ 26%]
tests/select/test_value.py::test_value_unknown_option_raises_error PASSED [ 26%]
tests/select/test_value.py::test_initial_value_inside_compose_is_validated PASSED [ 26%]
tests/select/test_value.py::test_value_assign_to_blank PASSED [ 26%]
tests/select/test_value.py::test_initial_value_is_picked_if_allow_blank_is_false PASSED [ 26%]
tests/select/test_value.py::test_set_value_to_blank_with_allow_blank_false PASSED [ 26%]
tests/select/test_value.py::test_set_options_resets_value_to_blank PASSED [ 26%]
tests/select/test_value.py::test_set_options_resets_value_if_allow_blank_is_false PASSED [ 26%]
tests/selection_list/test_over_wide_selections.py::test_over_wide_options PASSED [ 26%]
tests/selection_list/test_selection_click_checkbox.py::test_click_on_prompt PASSED [ 26%]
tests/selection_list/test_selection_click_checkbox.py::test_click_on_checkbox PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_all_parameters_become_selctions PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_get_selection_by_index PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_get_selection_by_id PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_add_later PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_add_later_selcted_state PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_add_non_selections PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_clear_options PASSED [ 27%]
tests/selection_list/test_selection_list_create.py::test_options_are_available_soon PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_messages_on_startup PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_new_highlight PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_toggle PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_toggle_via_user PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_toggle_all PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_selected PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_all PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_all_selected PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_deselect PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_deselect_deselected PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_deselect_all PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_then_deselect_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_empty_selected PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_select PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_select_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_deselect PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_deselect_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_toggle PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_toggle_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_removal_of_selected_item PASSED [ 27%]
tests/suggester/test_input_suggestions.py::test_no_suggestions PASSED [ 27%]
tests/suggester/test_input_suggestions.py::test_suggestion PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_accept_suggestion PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_no_suggestion_on_empty_value PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_no_suggestion_on_empty_value_after_deleting PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_shows_up_after_deleting_extra_chars PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_shows_up_after_deleting_extra_chars_in_middle_of_word PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[.......-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[hey there-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[Ol\xe1, tudo bem?-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[\xe1\xe0\xf3\xe3\xf5\xf1\xe7-2] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[!"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[~}|{`_^]\\[@?>=<;:/.-,+*)('&%$#"!-5] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[!$'*-:=@]`}-5] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_priority PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[s] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[S] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[sc] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[sC] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[Sc] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[SC] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[p] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[P] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[po] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[Po] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[pO] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[PO] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[port] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[Port] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[pORT] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[PORT] PASSED [ 29%]
tests/suggester/test_suggester.py::test_cache_on PASSED [ 29%]
tests/suggester/test_suggester.py::test_cache_off PASSED [ 29%]
tests/suggester/test_suggester.py::test_suggestion_ready_message PASSED [ 29%]
tests/suggester/test_suggester.py::test_no_message_if_no_suggestion PASSED [ 29%]
tests/suggester/test_suggester.py::test_suggestion_ready_message_on_cache_hit PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[hello] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[HELLO] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[HeLlO] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[Hello] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[hELLO] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_cache_hits PASSED [ 29%]
tests/test_actions.py::test_parse_action[spam-spam-expected_arguments0] PASSED [ 29%]
tests/test_actions.py::test_parse_action[hypothetical_action()-hypothetical_action-expected_arguments1] PASSED [ 29%]
tests/test_actions.py::test_parse_action[another_action(1)-another_action-expected_arguments2] PASSED [ 29%]
tests/test_actions.py::test_parse_action[foo(True, False)-foo-expected_arguments3] PASSED [ 29%]
tests/test_actions.py::test_parse_action[foo.bar.baz(3, 3.15, 'Python')-foo.bar.baz-expected_arguments4] PASSED [ 29%]
tests/test_actions.py::test_parse_action[m1234.n5678(None, [1, 2])-m1234.n5678-expected_arguments5] PASSED [ 29%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f()-expected_arguments0] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f(())-expected_arguments1] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((1, 2, 3))-expected_arguments2] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((1, 2, 3), (1, 2, 3))-expected_arguments3] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f(((1, 2), (), None), 0)-expected_arguments4] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((((((1))))))-expected_arguments5] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f(((((((((1, 2)))))))))-expected_arguments6] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((1, 2), (3, 4))-expected_arguments7] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((((((1, 2), (3, 4))))))-expected_arguments8] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('')-expected_arguments0] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f("")-expected_arguments1] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('''''')-expected_arguments2] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f("""""")-expected_arguments3] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('(')-expected_arguments4] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f(')')-expected_arguments5] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('f()')-expected_arguments6] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[foo(,,,,,)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[bar(1 2 3 4 5)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[baz.spam(Tru, Fals, in)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[ham(not)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[cheese((((()] PASSED [ 30%]
tests/test_animation.py::test_animate_height PASSED [ 30%]
tests/test_animation.py::test_scheduling_animation PASSED [ 30%]
tests/test_animation.py::test_wait_for_current_animations PASSED [ 30%]
tests/test_animation.py::test_wait_for_current_and_scheduled_animations PASSED [ 31%]
tests/test_animation.py::test_reverse_animations PASSED [ 31%]
tests/test_animation.py::test_schedule_reverse_animations PASSED [ 31%]
tests/test_animation.py::test_cancel_app_animation PASSED [ 31%]
tests/test_animation.py::test_cancel_app_non_animation PASSED [ 31%]
tests/test_animation.py::test_cancel_widget_animation PASSED [ 31%]
tests/test_animation.py::test_cancel_widget_non_animation PASSED [ 31%]
tests/test_animator.py::test_simple_animation PASSED [ 31%]
tests/test_animator.py::test_simple_animation_duration_zero PASSED [ 31%]
tests/test_animator.py::test_simple_animation_reverse PASSED [ 31%]
tests/test_animator.py::test_animatable PASSED [ 31%]
tests/test_animator.py::test_animator PASSED [ 31%]
tests/test_animator.py::test_bound_animator PASSED [ 31%]
tests/test_animator.py::test_animator_on_complete_callback_not_fired_before_duration_ends PASSED [ 31%]
tests/test_animator.py::test_animator_on_complete_callback_fired_at_duration PASSED [ 31%]
tests/test_animator.py::test_force_stop_animation PASSED [ 31%]
tests/test_app.py::test_batch_update PASSED [ 31%]
tests/test_app.py::test_hover_update_styles PASSED [ 31%]
tests/test_app.py::test_setting_title PASSED [ 31%]
tests/test_app.py::test_setting_sub_title PASSED [ 31%]
tests/test_app.py::test_default_return_code_is_zero PASSED [ 31%]
tests/test_app.py::test_return_code_is_one_after_crash PASSED [ 31%]
tests/test_app.py::test_set_return_code PASSED [ 31%]
tests/test_app.py::test_no_return_code_before_running PASSED [ 31%]
tests/test_app.py::test_no_return_code_while_running PASSED [ 32%]
tests/test_arrange.py::test_arrange_empty PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_top PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_left PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_right PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_bottom PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_badly PASSED [ 32%]
tests/test_auto_refresh.py::test_auto_refresh PASSED [ 32%]
tests/test_await_remove.py::test_multiple_simultaneous_removals PASSED [ 32%]
tests/test_binding.py::test_bindings_get_key PASSED [ 32%]
tests/test_binding.py::test_bindings_get_key_spaced_list PASSED [ 32%]
tests/test_binding.py::test_bindings_merge_simple PASSED [ 32%]
tests/test_binding.py::test_bindings_merge_overlap PASSED [ 32%]
tests/test_binding.py::test_bad_binding_tuple PASSED [ 32%]
tests/test_binding.py::test_binding_from_tuples PASSED [ 32%]
tests/test_binding.py::test_shown PASSED [ 32%]
tests/test_binding.py::test_invalid_binding PASSED [ 32%]
tests/test_binding_inheritance.py::test_just_app_no_bindings PASSED [ 32%]
tests/test_binding_inheritance.py::test_just_app_alpha_binding PASSED [ 32%]
tests/test_binding_inheritance.py::test_just_app_low_priority_alpha_binding PASSED [ 32%]
tests/test_binding_inheritance.py::test_app_screen_with_bindings PASSED [ 32%]
tests/test_binding_inheritance.py::test_app_screen_with_low_bindings PASSED [ 32%]
tests/test_binding_inheritance.py::test_pressing_alpha_on_app PASSED [ 32%]
tests/test_binding_inheritance.py::test_pressing_movement_keys_app PASSED [ 32%]
tests/test_binding_inheritance.py::test_focused_child_widget_with_movement_bindings PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_contained_focused_child_widget_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_with_movement_bindings_no_inherit PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_no_inherit_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_no_inherit_empty_bindings_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_overlapping_priority_bindings PASSED [ 33%]
tests/test_binding_inheritance.py::test_skip_action PASSED [ 33%]
tests/test_border.py::test_border_render_row PASSED [ 33%]
tests/test_border.py::test_border_title_single_line PASSED [ 33%]
tests/test_border.py::test_border_subtitle_single_line PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-True-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-False-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-False-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-True-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-False-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-False-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-2-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-2-True-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-2-False-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-3-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-4-True-True] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[Why did the scarecrow] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[win a Nobel prize?] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[because it was outstanding] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[in its field.] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[b][/]] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[i b][/]] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[white on red][/]] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[blue]] PASSED [ 34%]
tests/test_border.py::test_render_border_label PASSED [ 34%]
tests/test_border_subtitle.py::test_border_subtitle PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad10-quad20-expected0] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad11-quad21-expected1] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad12-quad22-expected2] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad13-quad23-expected3] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad14-quad24-expected4] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad15-quad25-expected5] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad16-quad26-expected6] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad17-quad27-expected7] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad18-quad28-expected8] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad19-quad29-expected9] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad110-quad210-expected10] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad111-quad211-expected11] PASSED [ 34%]
tests/test_box_model.py::test_content_box PASSED [ 34%]
tests/test_box_model.py::test_width PASSED [ 35%]
tests/test_box_model.py::test_height PASSED [ 35%]
tests/test_box_model.py::test_max PASSED [ 35%]
tests/test_box_model.py::test_min PASSED [ 35%]
tests/test_cache.py::test_lru_cache PASSED [ 35%]
tests/test_cache.py::test_lru_cache_hits PASSED [ 35%]
tests/test_cache.py::test_lru_cache_get PASSED [ 35%]
tests/test_cache.py::test_lru_cache_maxsize PASSED [ 35%]
tests/test_cache.py::test_lru_cache_mapping PASSED [ 35%]
tests/test_cache.py::test_lru_cache_clear PASSED [ 35%]
tests/test_cache.py::test_lru_cache_bool PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys0-expected0] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys1-expected1] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys2-expected2] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys3-expected3] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys4-expected4] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys5-expected5] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys0-0] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys1-1] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys2-2] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys3-3] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys4-3] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys5-3] PASSED [ 35%]
tests/test_cache.py::test_fifo_cache PASSED [ 35%]
tests/test_cache.py::test_fifo_cache_hits PASSED [ 36%]
tests/test_cache.py::test_discard PASSED [ 36%]
tests/test_cache.py::test_discard_regression PASSED [ 36%]
tests/test_call_x_schedulers.py::test_call_later PASSED [ 36%]
tests/test_call_x_schedulers.py::test_call_after_refresh PASSED [ 36%]
tests/test_case.py::test_camel_to_snake PASSED [ 36%]
tests/test_collapsible.py::test_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_default_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_empty_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_nested_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_expanded_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_collapsible_collapsed_contents_display_false PASSED [ 36%]
tests/test_collapsible.py::test_collapsible_expanded_contents_display_true PASSED [ 36%]
tests/test_collapsible.py::test_toggle_title PASSED [ 36%]
tests/test_collapsible.py::test_toggle_message PASSED [ 36%]
tests/test_collapsible.py::test_expand_message PASSED [ 36%]
tests/test_collapsible.py::test_collapse_message PASSED [ 36%]
tests/test_collapsible.py::test_collapsible_title_reactive_change PASSED [ 36%]
tests/test_color.py::test_rich_color PASSED [ 36%]
tests/test_color.py::test_normalized PASSED [ 36%]
tests/test_color.py::test_clamped PASSED [ 36%]
tests/test_color.py::test_css PASSED [ 36%]
tests/test_color.py::test_monochrome PASSED [ 36%]
tests/test_color.py::test_rgb PASSED [ 36%]
tests/test_color.py::test_hsl PASSED [ 37%]
tests/test_color.py::test_color_brightness PASSED [ 37%]
tests/test_color.py::test_color_hex PASSED [ 37%]
tests/test_color.py::test_color_hex6 PASSED [ 37%]
tests/test_color.py::test_color_css PASSED [ 37%]
tests/test_color.py::test_color_with_alpha PASSED [ 37%]
tests/test_color.py::test_multiply_alpha PASSED [ 37%]
tests/test_color.py::test_color_blend PASSED [ 37%]
tests/test_color.py::test_color_parse[#000000-expected0] PASSED [ 37%]
tests/test_color.py::test_color_parse[#ffffff-expected1] PASSED [ 37%]
tests/test_color.py::test_color_parse[#FFFFFF-expected2] PASSED [ 37%]
tests/test_color.py::test_color_parse[#fab-expected3] PASSED [ 37%]
tests/test_color.py::test_color_parse[#fab0-expected4] PASSED [ 37%]
tests/test_color.py::test_color_parse[#020304ff-expected5] PASSED [ 37%]
tests/test_color.py::test_color_parse[#02030400-expected6] PASSED [ 37%]
tests/test_color.py::test_color_parse[#0203040f-expected7] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgb(0,0,0)-expected8] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgb(255,255,255)-expected9] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgba(255,255,255,1)-expected10] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgb(2,3,4)-expected11] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgba(2,3,4,1.0)-expected12] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgba(2,3,4,0.058823529411764705)-expected13] PASSED [ 37%]
tests/test_color.py::test_color_parse[hsl(45,25%,25%)-expected14] PASSED [ 37%]
tests/test_color.py::test_color_parse[hsla(45,25%,25%,0.35)-expected15] PASSED [ 37%]
tests/test_color.py::test_color_parse_input_has_spaces[rgb( 300, 300 , 300 )-output0] PASSED [ 38%]
tests/test_color.py::test_color_parse_input_has_spaces[rgba( 2 , 3 , 4, 1.0 )-output1] PASSED [ 38%]
tests/test_color.py::test_color_parse_input_has_spaces[hsl( 45, 25% , 25% )-output2] PASSED [ 38%]
tests/test_color.py::test_color_parse_input_has_spaces[hsla( 45, 25% , 25%, 0.35 )-output3] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[rgb(300, 300, 300)-output0] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[rgba(300, 300, 300, 300)-output1] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[hsl(400, 200%, 250%)-output2] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[hsla(400, 200%, 250%, 1.9)-output3] PASSED [ 38%]
tests/test_color.py::test_color_parse_hsl_negative_degrees PASSED [ 38%]
tests/test_color.py::test_color_parse_hsla_negative_degrees PASSED [ 38%]
tests/test_color.py::test_color_parse_color PASSED [ 38%]
tests/test_color.py::test_color_add PASSED [ 38%]
tests/test_color.py::test_color_darken PASSED [ 38%]
tests/test_color.py::test_color_lighten PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[10-23-73-10.245-15.913--32.672] PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[200-34-123-45.438-67.75--8.008] PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[0-0-0-0-0-0] PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[255-255-255-100-0-0] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[10-23-73-10.245-15.913--32.672] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[200-34-123-45.438-67.75--8.008] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[0-0-0-0-0-0] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[255-255-255-100-0-0] PASSED [ 38%]
tests/test_color.py::test_rgb_lab_rgb_roundtrip PASSED [ 38%]
tests/test_color.py::test_inverse PASSED [ 38%]
tests/test_color.py::test_gradient_errors PASSED [ 39%]
tests/test_color.py::test_gradient PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_no_regions PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_single_region PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_partially_overlapping_regions PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_fully_overlapping_regions PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_disjoint_regions_different_lines PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_disjoint_regions_same_line PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_directly_adjacent_ranges_merged PASSED [ 39%]
tests/test_concurrency.py::test_call_from_thread_app_not_running PASSED [ 39%]
tests/test_concurrency.py::test_call_from_thread PASSED [ 39%]
tests/test_containers.py::test_horizontal_vs_horizontalscroll_scrolling PASSED [ 39%]
tests/test_containers.py::test_vertical_vs_verticalscroll_scrolling PASSED [ 39%]
tests/test_containers.py::test_center_container PASSED [ 39%]
tests/test_containers.py::test_middle_container PASSED [ 39%]
tests/test_containers.py::test_scrollbar_zero_thickness PASSED [ 39%]
tests/test_content_switcher.py::test_no_initial_display PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display PASSED [ 39%]
tests/test_content_switcher.py::test_no_initial_display_then_set PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display_then_change PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display_then_hide PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display_unknown_id XFAILs
related to https://github.com/Textualize/textual/issues/1972) [ 39%]
tests/test_content_switcher.py::test_set_current_to_unknown_id PASSED [ 39%]
tests/test_dark_toggle.py::test_toggle_dark_on_load PASSED [ 39%]
tests/test_dark_toggle.py::test_toggle_dark_on_mount PASSED [ 40%]
tests/test_dark_toggle.py::test_toggle_dark_in_action PASSED [ 40%]
tests/test_data_bind.py::test_data_binding PASSED [ 40%]
tests/test_data_bind.py::test_data_binding_missing_reactive PASSED [ 40%]
tests/test_data_table.py::test_datatable_message_emission PASSED [ 40%]
tests/test_data_table.py::test_empty_table_interactions PASSED [ 40%]
tests/test_data_table.py::test_cursor_movement_with_home_pagedown_etc[True] PASSED [ 40%]
tests/test_data_table.py::test_cursor_movement_with_home_pagedown_etc[False] PASSED [ 40%]
tests/test_data_table.py::test_add_rows PASSED [ 40%]
tests/test_data_table.py::test_add_rows_user_defined_keys PASSED [ 40%]
tests/test_data_table.py::test_add_row_duplicate_key PASSED [ 40%]
tests/test_data_table.py::test_add_column_duplicate_key PASSED [ 40%]
tests/test_data_table.py::test_add_column_with_width PASSED [ 40%]
tests/test_data_table.py::test_add_columns PASSED [ 40%]
tests/test_data_table.py::test_add_columns_user_defined_keys PASSED [ 40%]
tests/test_data_table.py::test_remove_row PASSED [ 40%]
tests/test_data_table.py::test_remove_row_and_update PASSED [ 40%]
tests/test_data_table.py::test_remove_column PASSED [ 40%]
tests/test_data_table.py::test_remove_column_and_update PASSED [ 40%]
tests/test_data_table.py::test_clear PASSED [ 40%]
tests/test_data_table.py::test_column_labels PASSED [ 40%]
tests/test_data_table.py::test_initial_column_widths PASSED [ 40%]
tests/test_data_table.py::test_get_cell_returns_value_at_cell PASSED [ 40%]
tests/test_data_table.py::test_get_cell_invalid_row_key PASSED [ 40%]
tests/test_data_table.py::test_get_cell_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_get_cell_coordinate_returns_coordinate PASSED [ 41%]
tests/test_data_table.py::test_get_cell_coordinate_invalid_row_key PASSED [ 41%]
tests/test_data_table.py::test_get_cell_coordinate_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_get_cell_at_returns_value_at_cell PASSED [ 41%]
tests/test_data_table.py::test_get_cell_at_exception PASSED [ 41%]
tests/test_data_table.py::test_get_row PASSED [ 41%]
tests/test_data_table.py::test_get_row_invalid_row_key PASSED [ 41%]
tests/test_data_table.py::test_get_row_at PASSED [ 41%]
tests/test_data_table.py::test_get_row_at_invalid_index[-1] PASSED [ 41%]
tests/test_data_table.py::test_get_row_at_invalid_index[2] PASSED [ 41%]
tests/test_data_table.py::test_get_row_index_returns_index PASSED [ 41%]
tests/test_data_table.py::test_get_row_index_invalid_row_key PASSED [ 41%]
tests/test_data_table.py::test_get_column PASSED [ 41%]
tests/test_data_table.py::test_get_column_invalid_key PASSED [ 41%]
tests/test_data_table.py::test_get_column_at PASSED [ 41%]
tests/test_data_table.py::test_get_column_at_invalid_index[-1] PASSED [ 41%]
tests/test_data_table.py::test_get_column_at_invalid_index[5] PASSED [ 41%]
tests/test_data_table.py::test_get_column_index_returns_index PASSED [ 41%]
tests/test_data_table.py::test_get_column_index_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_update_cell_cell_exists PASSED [ 41%]
tests/test_data_table.py::test_update_cell_cell_doesnt_exist PASSED [ 41%]
tests/test_data_table.py::test_update_cell_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_update_cell_at_coordinate_exists PASSED [ 41%]
tests/test_data_table.py::test_update_cell_at_coordinate_doesnt_exist PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[A-BB-3] PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[1234567-1234-7] PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[12345-123-5] PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[12345-123456789-9] PASSED [ 42%]
tests/test_data_table.py::test_coordinate_to_cell_key PASSED [ 42%]
tests/test_data_table.py::test_coordinate_to_cell_key_invalid_coordinate PASSED [ 42%]
tests/test_data_table.py::test_datatable_click_cell_cursor PASSED [ 42%]
tests/test_data_table.py::test_click_row_cursor PASSED [ 42%]
tests/test_data_table.py::test_click_column_cursor PASSED [ 42%]
tests/test_data_table.py::test_hover_coordinate PASSED [ 42%]
tests/test_data_table.py::test_hover_mouse_leave PASSED [ 42%]
tests/test_data_table.py::test_header_selected PASSED [ 42%]
tests/test_data_table.py::test_row_label_selected PASSED [ 42%]
tests/test_data_table.py::test_sort_coordinate_and_key_access PASSED [ 42%]
tests/test_data_table.py::test_sort_reverse_coordinate_and_key_access PASSED [ 42%]
tests/test_data_table.py::test_cell_cursor_highlight_events PASSED [ 42%]
tests/test_data_table.py::test_row_cursor_highlight_events PASSED [ 42%]
tests/test_data_table.py::test_column_cursor_highlight_events PASSED [ 42%]
tests/test_data_table.py::test_reuse_row_key_after_clear PASSED [ 42%]
tests/test_data_table.py::test_reuse_column_key_after_clear PASSED [ 42%]
tests/test_data_table.py::test_key_equals_equivalent_string PASSED [ 42%]
tests/test_data_table.py::test_key_doesnt_match_non_equal_string PASSED [ 42%]
tests/test_data_table.py::test_key_equals_self PASSED [ 42%]
tests/test_data_table.py::test_key_string_lookup PASSED [ 43%]
tests/test_data_table.py::test_scrolling_cursor_into_view PASSED [ 43%]
tests/test_data_table.py::test_move_cursor PASSED [ 43%]
tests/test_data_table.py::test_unset_hover_highlight_when_no_table_cell_under_mouse PASSED [ 43%]
tests/test_data_table.py::test_sort_by_all_columns_no_key PASSED [ 43%]
tests/test_data_table.py::test_sort_by_multiple_columns_no_key PASSED [ 43%]
tests/test_data_table.py::test_sort_by_function_sum PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[hey there-1] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[cell1-1] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[cell2-2] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[cell3-4] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[1\n2\n3\n4\n5\n6\n7-7] PASSED [ 43%]
tests/test_data_table.py::test_add_row_expands_column_widths PASSED [ 43%]
tests/test_data_table.py::test_cell_padding_updates_virtual_size PASSED [ 43%]
tests/test_data_table.py::test_cell_padding_cannot_be_negative PASSED [ 43%]
tests/test_data_table.py::test_move_cursor_respects_animate_parameter PASSED [ 43%]
tests/test_disabled.py::test_all_initially_enabled PASSED [ 43%]
tests/test_disabled.py::test_enabled_widgets_have_enabled_pseudo_class PASSED [ 43%]
tests/test_disabled.py::test_all_individually_disabled PASSED [ 43%]
tests/test_disabled.py::test_disabled_widgets_have_disabled_pseudo_class PASSED [ 43%]
tests/test_disabled.py::test_disable_via_container PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Button] PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Checkbox] PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[DataTable] PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[DirectoryTree] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Input] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[ListView] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[OptionList] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[RadioSet] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Select] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Switch] PASSED [ 44%]
tests/test_dom.py::test_display_default PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[True-block] PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[False-none] PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[block-block] PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[none-none] PASSED [ 44%]
tests/test_dom.py::test_display_set_invalid_value PASSED [ 44%]
tests/test_dom.py::test_validate PASSED [ 44%]
tests/test_dom.py::test_classes_setter PASSED [ 44%]
tests/test_dom.py::test_classes_setter_iterable PASSED [ 44%]
tests/test_dom.py::test_classes_set_classes PASSED [ 44%]
tests/test_dom.py::test_inherited_bindings PASSED [ 44%]
tests/test_dom.py::test__get_default_css PASSED [ 44%]
tests/test_dom.py::test_component_classes_inheritance PASSED [ 44%]
tests/test_dom.py::test_walk_children_depth PASSED [ 44%]
tests/test_dom.py::test_walk_children_with_self_depth PASSED [ 44%]
tests/test_dom.py::test_walk_children_breadth PASSED [ 44%]
tests/test_dom.py::test_walk_children_with_self_breadth PASSED [ 44%]
tests/test_dom.py::test_id_validation[ bad] PASSED [ 45%]
tests/test_dom.py::test_id_validation[ terrible ] PASSED [ 45%]
tests/test_dom.py::test_id_validation[worse! ] PASSED [ 45%]
tests/test_dom.py::test_id_validation[&ersand] PASSED [ 45%]
tests/test_dom.py::test_id_validation[amper&sand] PASSED [ 45%]
tests/test_dom.py::test_id_validation[ampersand&] PASSED [ 45%]
tests/test_dom.py::test_id_validation[2_leading_digits] PASSED [ 45%]
tests/test_dom.py::test_id_validation[\xe1gua] PASSED [ 45%]
tests/test_dom.py::test_id_validation[c\xe3o] PASSED [ 45%]
tests/test_dom.py::test_id_validation[@'/.23] PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_up_click PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_up_click_widget PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_drag_inside_widget_up_click PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_drag_outside_widget_up_click PASSED [ 45%]
tests/test_easing.py::test_coverage PASSED [ 45%]
tests/test_easing.py::test_easings PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[ b ar - b ar ] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\tbar- bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\tbar\t- bar ] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\tr\t- r ] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[1\tbar-1 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[12\tbar-12 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[123\tbar-123 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[1234\tbar-1234 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\U0001f4a9\tbar-\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\U0001f4a9\U0001f4a9\tbar-\U0001f4a9\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\U0001f4a9\U0001f4a9\U0001f4a9\tbar-\U0001f4a9\U0001f4a9\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[F\U0001f4a9\tbar-F\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[F\U0001f4a9O\tbar-F\U0001f4a9O bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_get_tab_widths PASSED [ 46%]
tests/test_file_monitor.py::test_repr PASSED [ 46%]
tests/test_file_monitor.py::test_file_never_found PASSED [ 46%]
tests/test_file_monitor.py::test_file_deletion PASSED [ 46%]
tests/test_focus.py::test_focus_chain PASSED [ 46%]
tests/test_focus.py::test_allow_focus PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous PASSED [ 46%]
tests/test_focus.py::test_focus_next_wrap_around PASSED [ 46%]
tests/test_focus.py::test_focus_previous_wrap_around PASSED [ 46%]
tests/test_focus.py::test_wrap_around_selector PASSED [ 46%]
tests/test_focus.py::test_no_focus_empty_selector PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_type_selector PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_str_selector PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_type_selector_without_self PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_str_selector_without_self PASSED [ 46%]
tests/test_focus.py::test_focus_does_not_move_to_invisible_widgets PASSED [ 46%]
tests/test_focus.py::test_focus_moves_to_visible_widgets_inside_invisible_containers PASSED [ 46%]
tests/test_focus.py::test_focus_chain_handles_inherited_visibility PASSED [ 46%]
tests/test_focus.py::test_mouse_down_gives_focus PASSED [ 46%]
tests/test_focus.py::test_mouse_up_does_not_give_focus PASSED [ 47%]
tests/test_focus.py::test_focus_pseudo_class PASSED [ 47%]
tests/test_freeze.py::test_freeze PASSED [ 47%]
tests/test_fuzzy.py::test_match PASSED [ 47%]
tests/test_fuzzy.py::test_highlight PASSED [ 47%]
tests/test_geometry.py::test_dimensions_region PASSED [ 47%]
tests/test_geometry.py::test_dimensions_contains PASSED [ 47%]
tests/test_geometry.py::test_dimensions_contains_point PASSED [ 47%]
tests/test_geometry.py::test_dimensions_contains_special PASSED [ 47%]
tests/test_geometry.py::test_dimensions_bool PASSED [ 47%]
tests/test_geometry.py::test_dimensions_area PASSED [ 47%]
tests/test_geometry.py::test_clamp PASSED [ 47%]
tests/test_geometry.py::test_offset_bool PASSED [ 47%]
tests/test_geometry.py::test_offset_is_origin PASSED [ 47%]
tests/test_geometry.py::test_clamped PASSED [ 47%]
tests/test_geometry.py::test_offset_add PASSED [ 47%]
tests/test_geometry.py::test_offset_sub PASSED [ 47%]
tests/test_geometry.py::test_offset_neg PASSED [ 47%]
tests/test_geometry.py::test_offset_mul PASSED [ 47%]
tests/test_geometry.py::test_offset_blend PASSED [ 47%]
tests/test_geometry.py::test_offset_get_distance_to PASSED [ 47%]
tests/test_geometry.py::test_region_null PASSED [ 47%]
tests/test_geometry.py::test_region_from_union PASSED [ 47%]
tests/test_geometry.py::test_region_from_offset PASSED [ 47%]
tests/test_geometry.py::test_get_scroll_to_visible[window0-region0-scroll0] PASSED [ 48%]
tests/test_geometry.py::test_get_scroll_to_visible[window1-region1-scroll1] PASSED [ 48%]
tests/test_geometry.py::test_get_scroll_to_visible[window2-region2-scroll2] PASSED [ 48%]
tests/test_geometry.py::test_region_area PASSED [ 48%]
tests/test_geometry.py::test_region_size PASSED [ 48%]
tests/test_geometry.py::test_region_origin PASSED [ 48%]
tests/test_geometry.py::test_region_bottom_left PASSED [ 48%]
tests/test_geometry.py::test_region_top_right PASSED [ 48%]
tests/test_geometry.py::test_region_bottom_right PASSED [ 48%]
tests/test_geometry.py::test_region_add PASSED [ 48%]
tests/test_geometry.py::test_region_sub PASSED [ 48%]
tests/test_geometry.py::test_region_at_offset PASSED [ 48%]
tests/test_geometry.py::test_crop_size PASSED [ 48%]
tests/test_geometry.py::test_clip_size PASSED [ 48%]
tests/test_geometry.py::test_region_overlaps PASSED [ 48%]
tests/test_geometry.py::test_region_contains PASSED [ 48%]
tests/test_geometry.py::test_region_contains_point PASSED [ 48%]
tests/test_geometry.py::test_region_contains_region PASSED [ 48%]
tests/test_geometry.py::test_region_translate PASSED [ 48%]
tests/test_geometry.py::test_region_contains_special PASSED [ 48%]
tests/test_geometry.py::test_clip PASSED [ 48%]
tests/test_geometry.py::test_region_shrink PASSED [ 48%]
tests/test_geometry.py::test_region_grow PASSED [ 48%]
tests/test_geometry.py::test_region_intersection PASSED [ 48%]
tests/test_geometry.py::test_region_union PASSED [ 49%]
tests/test_geometry.py::test_size_add PASSED [ 49%]
tests/test_geometry.py::test_size_sub PASSED [ 49%]
tests/test_geometry.py::test_size_line_range PASSED [ 49%]
tests/test_geometry.py::test_region_x_extents PASSED [ 49%]
tests/test_geometry.py::test_region_y_extents PASSED [ 49%]
tests/test_geometry.py::test_region_x_max PASSED [ 49%]
tests/test_geometry.py::test_region_y_max PASSED [ 49%]
tests/test_geometry.py::test_region_columns_range PASSED [ 49%]
tests/test_geometry.py::test_region_lines_range PASSED [ 49%]
tests/test_geometry.py::test_region_reset_offset PASSED [ 49%]
tests/test_geometry.py::test_region_expand PASSED [ 49%]
tests/test_geometry.py::test_spacing_bool PASSED [ 49%]
tests/test_geometry.py::test_spacing_width PASSED [ 49%]
tests/test_geometry.py::test_spacing_height PASSED [ 49%]
tests/test_geometry.py::test_spacing_top_left PASSED [ 49%]
tests/test_geometry.py::test_spacing_bottom_right PASSED [ 49%]
tests/test_geometry.py::test_spacing_totals PASSED [ 49%]
tests/test_geometry.py::test_spacing_css PASSED [ 49%]
tests/test_geometry.py::test_spacing_unpack PASSED [ 49%]
tests/test_geometry.py::test_spacing_add PASSED [ 49%]
tests/test_geometry.py::test_spacing_sub PASSED [ 49%]
tests/test_geometry.py::test_spacing_convenience_constructors PASSED [ 49%]
tests/test_geometry.py::test_split PASSED [ 50%]
tests/test_geometry.py::test_split_negative PASSED [ 50%]
tests/test_geometry.py::test_split_vertical PASSED [ 50%]
tests/test_geometry.py::test_split_vertical_negative PASSED [ 50%]
tests/test_geometry.py::test_split_horizontal PASSED [ 50%]
tests/test_geometry.py::test_split_horizontal_negative PASSED [ 50%]
tests/test_geometry.py::test_translate_inside PASSED [ 50%]
tests/test_geometry.py::test_inflect PASSED [ 50%]
tests/test_header.py::test_screen_title_none_is_ignored PASSED [ 50%]
tests/test_header.py::test_screen_title_overrides_app_title PASSED [ 50%]
tests/test_header.py::test_screen_title_reactive_updates_title PASSED [ 50%]
tests/test_header.py::test_app_title_reactive_does_not_update_title_when_screen_title_is_set PASSED [ 50%]
tests/test_header.py::test_screen_sub_title_none_is_ignored PASSED [ 50%]
tests/test_header.py::test_screen_sub_title_overrides_app_sub_title PASSED [ 50%]
tests/test_header.py::test_screen_sub_title_reactive_updates_sub_title PASSED [ 50%]
tests/test_header.py::test_app_sub_title_reactive_does_not_update_sub_title_when_screen_sub_title_is_set PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_empty_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_non_empty_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_no_assign_to_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_no_del_from_iummutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_get_item_from_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_get_slice_from_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_immutable_sequence_contains PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_immutable_sequence_index PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_reverse_immutable_sequence PASSED [ 51%]
tests/test_keys.py::test_character_to_key[1-1] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[2-2] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[a-a] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[z-z] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[_-underscore] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[ -space] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[~-tilde] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[?-question_mark] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[\xa3-pound_sign] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[,-comma] PASSED [ 51%]
tests/test_keys.py::test_character_bindings PASSED [ 51%]
tests/test_keys.py::test_get_key_display PASSED [ 51%]
tests/test_keys.py::test_get_key_display_when_used_in_conjunction PASSED [ 51%]
tests/test_layout_resolve.py::test_empty PASSED [ 51%]
tests/test_layout_resolve.py::test_total_zero PASSED [ 51%]
tests/test_layout_resolve.py::test_single PASSED [ 51%]
tests/test_layout_resolve.py::test_two PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges0-result0] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges1-result1] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges2-result2] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges3-result3] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges4-result4] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges5-result5] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges6-result6] PASSED [ 52%]
tests/test_layout_resolve.py::test_multiple[2-edges7-result7] PASSED [ 52%]
tests/test_layout_resolve.py::test_multiple[2-edges8-result8] PASSED [ 52%]
tests/test_layout_resolve.py::test_multiple[18-edges9-result9] PASSED [ 52%]
tests/test_lazy.py::test_lazy PASSED [ 52%]
tests/test_line_filter.py::test_dim_apply PASSED [ 52%]
tests/test_line_split.py::test_split_string_to_lines_and_endings PASSED [ 52%]
tests/test_loading.py::test_loading_disables_and_remove_scrollbars PASSED [ 52%]
tests/test_log.py::test_process_line PASSED [ 52%]
tests/test_loop.py::test_loop_first PASSED [ 52%]
tests/test_loop.py::test_loop_last PASSED [ 52%]
tests/test_loop.py::test_loop_first_last PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[-expected_nodes0] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[# Hello-expected_nodes1] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[## Hello-expected_nodes2] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[### Hello-expected_nodes3] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[#### Hello-expected_nodes4] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[##### Hello-expected_nodes5] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[###### Hello-expected_nodes6] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[----expected_nodes7] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[Hello-expected_nodes8] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[Hello\nWorld-expected_nodes9] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[> Hello-expected_nodes10] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[- One\n-Two-expected_nodes11] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[1. One\n2. Two-expected_nodes12] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[ 1-expected_nodes13] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[```\n1\n```-expected_nodes14] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[```python\n1\n```-expected_nodes15] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[| One | Two |\n| :- | :- |\n| 1 | 2 |-expected_nodes16] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[- One\n```\nTwo\n```\n- Three\n-expected_nodes17] PASSED [ 53%]
tests/test_markdown.py::test_load_non_existing_file PASSED [ 53%]
tests/test_markdown.py::test_goto_anchor[hello-world-False] PASSED [ 53%]
tests/test_markdown.py::test_goto_anchor[hello-there-True] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_file_viewer_anchor_link[0] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_file_viewer_anchor_link[1] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_string_viewer_anchor_link[0] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_string_viewer_anchor_link[1] PASSED [ 53%]
tests/test_message_handling.py::test_message_inheritance_namespace PASSED [ 53%]
tests/test_message_pump.py::test_dispatch_key_valid_key PASSED [ 53%]
tests/test_message_pump.py::test_dispatch_key_valid_key_alias PASSED [ 53%]
tests/test_message_pump.py::test_dispatch_key_raises_when_conflicting_handler_aliases PASSED [ 53%]
tests/test_message_pump.py::test_message_queue_size PASSED [ 53%]
tests/test_message_pump.py::test_prevent PASSED [ 53%]
tests/test_message_pump.py::test_prevent_with_call_next PASSED [ 53%]
tests/test_mount.py::test_render_only_after_mount PASSED [ 53%]
tests/test_node_list.py::test_empty_list PASSED [ 53%]
tests/test_node_list.py::test_add_one PASSED [ 53%]
tests/test_node_list.py::test_repeat_add_one PASSED [ 53%]
tests/test_node_list.py::test_insert PASSED [ 54%]
tests/test_node_list.py::test_truthy PASSED [ 54%]
tests/test_node_list.py::test_contains PASSED [ 54%]
tests/test_node_list.py::test_index PASSED [ 54%]
tests/test_node_list.py::test_remove PASSED [ 54%]
tests/test_node_list.py::test_clear PASSED [ 54%]
tests/test_node_list.py::test_listy PASSED [ 54%]
tests/test_on.py::test_on_button_pressed PASSED [ 54%]
tests/test_on.py::test_on_inheritance PASSED [ 54%]
tests/test_on.py::test_on_bad_selector PASSED [ 54%]
tests/test_on.py::test_on_no_control PASSED [ 54%]
tests/test_on.py::test_on_attribute_not_listed PASSED [ 54%]
tests/test_on.py::test_on_arbitrary_attributes PASSED [ 54%]
tests/test_on.py::test_fire_on_inherited_message PASSED [ 54%]
tests/test_on.py::test_fire_inherited_on_single_handler PASSED [ 54%]
tests/test_on.py::test_fire_inherited_on_single_handler_multi_selector PASSED [ 54%]
tests/test_on.py::test_fire_inherited_and_on_methods PASSED [ 54%]
tests/test_on.py::test_fire_on_inherited_message_plus_mixins PASSED [ 54%]
tests/test_overflow_change.py::test_overflow_change_updates_virtual_size_appropriately PASSED [ 54%]
tests/test_parser.py::test_read1 PASSED [ 54%]
tests/test_parser.py::test_read PASSED [ 54%]
tests/test_partition.py::test_partition PASSED [ 54%]
tests/test_paste.py::test_paste_app PASSED [ 54%]
tests/test_paste.py::test_empty_paste PASSED [ 54%]
tests/test_path.py::test_css_paths_of_various_types[app0-expected_css_path_attribute0] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app1-expected_css_path_attribute1] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app2-expected_css_path_attribute2] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app3-expected_css_path_attribute3] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app4-expected_css_path_attribute4] PASSED [ 55%]
tests/test_pilot.py::test_pilot_press_ascii_chars PASSED [ 55%]
tests/test_pilot.py::test_pilot_exception_catching_compose PASSED [ 55%]
tests/test_pilot.py::test_pilot_exception_catching_action PASSED [ 55%]
tests/test_pilot.py::test_pilot_click_screen PASSED [ 55%]
tests/test_pilot.py::test_pilot_hover_screen PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size0-offset0] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size1-offset1] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size2-offset2] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size3-offset3] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size4-offset4] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size5-offset5] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size6-offset6] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size7-offset7] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size8-offset8] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size9-offset9] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size10-offset10] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size11-offset11] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size12-offset12] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size13-offset13] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size14-offset14] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size15-offset15] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size16-offset16] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size17-offset17] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size18-offset18] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size19-offset19] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size20-offset20] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size21-offset21] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size22-offset22] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size23-offset23] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size24-offset24] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size25-offset25] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size26-offset26] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size27-offset27] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size28-offset28] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size29-offset29] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size30-offset30] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size31-offset31] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size32-offset32] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size33-offset33] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size34-offset34] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size35-offset35] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size36-offset36] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size37-offset37] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size38-offset38] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size39-offset39] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size40-offset40] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size41-offset41] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size42-offset42] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size43-offset43] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size44-offset44] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size45-offset45] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size46-offset46] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size47-offset47] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size48-offset48] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size49-offset49] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size50-offset50] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size51-offset51] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size52-offset52] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size53-offset53] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size54-offset54] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size55-offset55] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size56-offset56] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size57-offset57] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size58-offset58] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size59-offset59] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size60-offset60] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size61-offset61] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size62-offset62] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size63-offset63] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset0] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset1] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset2] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset3] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset4] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset5] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset6] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset7] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset8] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset9] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset10] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset11] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset12] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset13] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset14] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset15] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset16] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset17] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset18] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset19] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset20] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset21] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset22] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset23] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset24] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset25] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset26] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset27] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset28] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset29] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset30] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset31] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset32] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset33] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset34] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset35] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[click-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[click-#label90] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[click-Button] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[hover-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[hover-#label90] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[hover-Button] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_down-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_down-#label90] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_down-Button] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_up-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_up-#label90] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_up-Button] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[click] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[hover] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[mouse_down] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[mouse_up] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[click] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[hover] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[mouse_down] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[mouse_up] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset0] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset1] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset2] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset3] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset4] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset5] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset6] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset7] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset8] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset9] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset10] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset11] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset12] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset13] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset14] PASSED [ 61%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset15] PASSED [ 61%]
tests/test_placeholder.py::test_invalid_placeholder_variant PASSED [ 61%]
tests/test_placeholder.py::test_invalid_reactive_variant_change PASSED [ 61%]
tests/test_progress_bar.py::test_initial_status PASSED [ 61%]
tests/test_progress_bar.py::test_advance PASSED [ 61%]
tests/test_progress_bar.py::test_advance_backwards PASSED [ 61%]
tests/test_progress_bar.py::test_progress_overflow PASSED [ 61%]
tests/test_progress_bar.py::test_progress_underflow PASSED [ 61%]
tests/test_progress_bar.py::test_non_negative_total PASSED [ 61%]
tests/test_progress_bar.py::test_update_total PASSED [ 61%]
tests/test_progress_bar.py::test_update_progress PASSED [ 61%]
tests/test_progress_bar.py::test_update_advance PASSED [ 61%]
tests/test_progress_bar.py::test_update PASSED [ 61%]
tests/test_progress_bar.py::test_go_back_to_indeterminate PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-True-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-True-False] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-False-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-False-False] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-True-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-True-False] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-False-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-False-False] PASSED [ 61%]
tests/test_query.py::test_query PASSED [ 61%]
tests/test_query.py::test_query_classes PASSED [ 62%]
tests/test_query.py::test_invalid_query PASSED [ 62%]
tests/test_query.py::test_universal_selector_doesnt_select_self PASSED [ 62%]
tests/test_query.py::test_query_set_styles_invalid_css_raises_error PASSED [ 62%]
tests/test_query.py::test_query_set_styles_kwds PASSED [ 62%]
tests/test_query.py::test_query_set_styles_css_and_kwds PASSED [ 62%]
tests/test_query.py::test_query_set_styles_css PASSED [ 62%]
tests/test_query.py::test_query_refresh[args0] PASSED [ 62%]
tests/test_query.py::test_query_refresh[args1] PASSED [ 62%]
tests/test_query.py::test_query_refresh[args2] PASSED [ 62%]
tests/test_query.py::test_query_refresh[args3] PASSED [ 62%]
tests/test_query.py::test_query_focus_blur PASSED [ 62%]
tests/test_reactive.py::test_watch PASSED [ 62%]
tests/test_reactive.py::test_watch_async_init_false PASSED [ 62%]
tests/test_reactive.py::test_watch_async_init_true PASSED [ 62%]
tests/test_reactive.py::test_watch_init_false_always_update_false PASSED [ 62%]
tests/test_reactive.py::test_watch_init_true PASSED [ 62%]
tests/test_reactive.py::test_reactive_always_update PASSED [ 62%]
tests/test_reactive.py::test_reactive_with_callable_default PASSED [ 62%]
tests/test_reactive.py::test_validate_init_true PASSED [ 62%]
tests/test_reactive.py::test_validate_init_true_set_before_dom_ready PASSED [ 62%]
tests/test_reactive.py::test_reactive_compute_first_time_set PASSED [ 62%]
tests/test_reactive.py::test_reactive_method_call_order PASSED [ 62%]
tests/test_reactive.py::test_premature_reactive_call PASSED [ 62%]
tests/test_reactive.py::test_reactive_inheritance PASSED [ 63%]
tests/test_reactive.py::test_compute PASSED [ 63%]
tests/test_reactive.py::test_watch_compute PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_watch PASSED [ 63%]
tests/test_reactive.py::test_private_validate PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_validate PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_validate_order PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_compute PASSED [ 63%]
tests/test_reactive.py::test_private_compute PASSED [ 63%]
tests/test_reactive.py::test_async_reactive_watch_callbacks_go_on_the_watcher PASSED [ 63%]
tests/test_reactive.py::test_sync_reactive_watch_callbacks_go_on_the_watcher PASSED [ 63%]
tests/test_reactive.py::test_set_reactive PASSED [ 63%]
tests/test_reactive.py::test_no_duplicate_external_watchers PASSED [ 63%]
tests/test_reactive.py::test_external_watch_init_does_not_propagate PASSED [ 63%]
tests/test_reactive.py::test_external_watch_init_does_not_propagate_to_externals PASSED [ 63%]
tests/test_resolve.py::test_resolve_empty PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars0-100-0-result0] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars1-100-0-result1] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars2-100-1-result2] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars3-100-1-result3] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars4-100-0-result4] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars5-100-1-result5] PASSED [ 63%]
tests/test_resolve.py::test_resolve_fraction_unit PASSED [ 63%]
tests/test_resolve.py::test_resolve_fraction_unit_stress_test PASSED [ 63%]
tests/test_resolve.py::test_resolve_issue_2502 PASSED [ 64%]
tests/test_rule.py::test_invalid_rule_orientation PASSED [ 64%]
tests/test_rule.py::test_invalid_rule_line_style PASSED [ 64%]
tests/test_rule.py::test_invalid_reactive_rule_orientation_change PASSED [ 64%]
tests/test_rule.py::test_invalid_reactive_rule_line_style_change PASSED [ 64%]
tests/test_screen_modes.py::test_mode_setup PASSED [ 64%]
tests/test_screen_modes.py::test_switch_mode PASSED [ 64%]
tests/test_screen_modes.py::test_switch_same_mode PASSED [ 64%]
tests/test_screen_modes.py::test_switch_unknown_mode PASSED [ 64%]
tests/test_screen_modes.py::test_remove_mode PASSED [ 64%]
tests/test_screen_modes.py::test_remove_active_mode PASSED [ 64%]
tests/test_screen_modes.py::test_add_mode PASSED [ 64%]
tests/test_screen_modes.py::test_add_mode_duplicated PASSED [ 64%]
tests/test_screen_modes.py::test_multiple_mode_callbacks PASSED [ 64%]
tests/test_screens.py::test_screen_walk_children PASSED [ 64%]
tests/test_screens.py::test_installed_screens PASSED [ 64%]
tests/test_screens.py::test_screens PASSED [ 64%]
tests/test_screens.py::test_auto_focus_on_screen_if_app_auto_focus_is_none PASSED [ 64%]
tests/test_screens.py::test_auto_focus_on_screen_if_app_auto_focus_is_disabled PASSED [ 64%]
tests/test_screens.py::test_auto_focus_inheritance PASSED [ 64%]
tests/test_screens.py::test_auto_focus_skips_non_focusable_widgets PASSED [ 64%]
tests/test_screens.py::test_dismiss_non_top_screen PASSED [ 64%]
tests/test_screens.py::test_dismiss_action PASSED [ 64%]
tests/test_screens.py::test_switch_screen_no_op PASSED [ 64%]
tests/test_screens.py::test_switch_screen_updates_results_callback_stack PASSED [ 65%]
tests/test_screens.py::test_screen_receives_mouse_move_events PASSED [ 65%]
tests/test_screens.py::test_mouse_move_event_bubbles_to_screen_from_widget PASSED [ 65%]
tests/test_screens.py::test_push_screen_wait_for_dismiss PASSED [ 65%]
tests/test_screens.py::test_push_screen_wait_for_dismiss_no_worker PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop_emoji PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop_edge PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop_edge_2 PASSED [ 65%]
tests/test_segment_tools.py::test_line_trim_ascii PASSED [ 65%]
tests/test_segment_tools.py::test_line_pad PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_vertical_middle PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_top_left PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_top_right PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_perfect_fit_horizontal_left PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_perfect_fit_horizontal_center PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_perfect_fit_horizontal_right PASSED [ 65%]
tests/test_signal.py::test_signal PASSED [ 65%]
tests/test_signal.py::test_signal_errors PASSED [ 65%]
tests/test_signal.py::test_repr PASSED [ 65%]
tests/test_slug.py::test_simple_slug[test-test] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[Test-test] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[ Test -test] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[-test---test-] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[!test!-test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test!!test-testtest] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test! !test-test-test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test test-test-test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test test-test--test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test test-test----------test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[--test---test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test---test--] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[--test--test-----test--test--] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test!"#$%&'()*+,-./:;<=>?@[]^_`{|}~test-test-_test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[t\xebst-t%C3%ABst] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test\U0001f642test-testtest] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test\U0001f937test-testtest] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test\U0001f937\U0001f3fb\u200d\u2640\ufe0ftest-testtest] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test-test] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test-test-1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test-test-2] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[-test---test-] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[-test---test--1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test!"#$%&'()*+,-./:;<=>?@[]^_`{|}~test-test-_test] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test!"#$%&'()*+,-./:;<=>?@[]^_`{|}~test-test-_test-1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[t\xebst-t%C3%ABst] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[t\xebst-t%C3%ABst-1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[t\xebst-t%C3%ABst-2] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test\U0001f642test-testtest] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test\U0001f937test-testtest-1] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test\U0001f937\U0001f3fb\u200d\u2640\ufe0ftest-testtest-2] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test-test-3] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test-test-4] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[ test -test-5] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region0-grid0] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region1-grid1] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region2-grid2] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region3-grid3] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region4-grid4] PASSED [ 67%]
tests/test_spatial_map.py::test_get_values_in_region PASSED [ 67%]
tests/test_strip.py::test_cell_length PASSED [ 67%]
tests/test_strip.py::test_repr PASSED [ 67%]
tests/test_strip.py::test_join PASSED [ 67%]
tests/test_strip.py::test_bool PASSED [ 67%]
tests/test_strip.py::test_iter PASSED [ 67%]
tests/test_strip.py::test_len PASSED [ 67%]
tests/test_strip.py::test_reversed PASSED [ 67%]
tests/test_strip.py::test_eq PASSED [ 67%]
tests/test_strip.py::test_adjust_cell_length PASSED [ 67%]
tests/test_strip.py::test_extend_cell_length PASSED [ 67%]
tests/test_strip.py::test_simplify PASSED [ 67%]
tests/test_strip.py::test_apply_filter PASSED [ 68%]
tests/test_strip.py::test_style_links PASSED [ 68%]
tests/test_strip.py::test_crop PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop0-output0] PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop1-output1] PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop2-output2] PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop3-output3] PASSED [ 68%]
tests/test_strip.py::test_divide PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[0-0] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[1-1] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[2-2] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[3-3] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[4-4] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[5-6] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[6-8] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[7-10] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[8-11] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[9-12] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[10-13] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[11-14] PASSED [ 68%]
tests/test_strip.py::test_index_cell_position_no_segments PASSED [ 68%]
tests/test_strip.py::test_index_cell_position_index_too_large PASSED [ 68%]
tests/test_strip.py::test_text PASSED [ 68%]
tests/test_style_importance.py::test_border_importance PASSED [ 68%]
tests/test_style_importance.py::test_outline_importance PASSED [ 69%]
tests/test_style_importance.py::test_align_importance PASSED [ 69%]
tests/test_style_importance.py::test_content_align_importance PASSED [ 69%]
tests/test_style_importance.py::test_offset_importance PASSED [ 69%]
tests/test_style_importance.py::test_overflow_importance PASSED [ 69%]
tests/test_style_importance.py::test_padding_importance PASSED [ 69%]
tests/test_style_importance.py::test_scrollbar_size_importance PASSED [ 69%]
tests/test_style_inheritance.py::test_text_style_inheritance PASSED [ 69%]
tests/test_style_properties.py::test_box_normalization PASSED [ 69%]
tests/test_style_properties.py::test_text_style_none_with_others[text_style] PASSED [ 69%]
tests/test_style_properties.py::test_text_style_none_with_others[link_style] PASSED [ 69%]
tests/test_style_properties.py::test_text_style_set_to_none[text_style] PASSED [ 69%]
tests/test_style_properties.py::test_text_style_set_to_none[link_style] PASSED [ 69%]
tests/test_styles_cache.py::test_set_dirty PASSED [ 69%]
tests/test_styles_cache.py::test_no_styles PASSED [ 69%]
tests/test_styles_cache.py::test_border PASSED [ 69%]
tests/test_styles_cache.py::test_padding PASSED [ 69%]
tests/test_styles_cache.py::test_padding_border PASSED [ 69%]
tests/test_styles_cache.py::test_outline PASSED [ 69%]
tests/test_styles_cache.py::test_crop PASSED [ 69%]
tests/test_styles_cache.py::test_dirty_cache PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[background-possible_words0-background] PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[backgroundu-possible_words1-background] PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[bkgrund-possible_words2-background] PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[llow-possible_words3-None] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestion[llow-possible_words4-yellow] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestion[yllow-possible_words5-yellow] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[background-possible_words0-1-expected_result0] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[backgroundu-possible_words1-1-expected_result1] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[bkgrund-possible_words2-1-expected_result2] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[llow-possible_words3-1-expected_result3] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[llow-possible_words4-1-expected_result4] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[yllow-possible_words5-1-expected_result5] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[yllow-possible_words6-2-expected_result6] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[yllow-possible_words7-2-expected_result7] PASSED [ 70%]
tests/test_suspend.py::test_suspend_not_supported PASSED [ 70%]
tests/test_suspend.py::test_suspend_supported PASSED [ 70%]
tests/test_switch.py::test_switch_click_doesnt_bubble_up PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_switch_via_ui PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_switch_via_code PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_initial PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_messages PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_later_from_empty PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_later_from_composed PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_id PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_pane PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_badly PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_after PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_after_pane PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_add_after_badly PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_and_after PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_removal PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_reversed_removal PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_clear PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_does_not_deactivate_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_disabled_tab_cannot_be_clicked PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_via_tabbed_content PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_via_tab_pane PASSED [ 71%]
tests/test_tabbed_content.py::test_creating_disabled_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_navigation_around_disabled_tabs PASSED [ 71%]
tests/test_tabbed_content.py::test_reenabling_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_reenabling_via_tabbed_content PASSED [ 71%]
tests/test_tabbed_content.py::test_reenabling_via_tab_pane PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_enabling_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_hide_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_show_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_hide_show_messages PASSED [ 71%]
tests/test_tabbed_content.py::test_hide_last_tab_means_no_tab_active PASSED [ 71%]
tests/test_tabbed_content.py::test_hiding_tabs_moves_active_to_next_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_showing_tabs_does_not_change_active_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_showing_first_tab_activates_tab[tab-1] PASSED [ 71%]
tests/test_tabbed_content.py::test_showing_first_tab_activates_tab[tab-2] PASSED [ 72%]
tests/test_tabbed_content.py::test_disabling_nested_tabs PASSED [ 72%]
tests/test_tabbed_content.py::test_hiding_nested_tabs PASSED [ 72%]
tests/test_tabbed_content.py::test_tabs_nested_in_tabbed_content_doesnt_crash PASSED [ 72%]
tests/test_tabbed_content.py::test_tabs_nested_doesnt_interfere_with_ancestor_tabbed_content PASSED [ 72%]
tests/test_tabs.py::test_tab_label PASSED [ 72%]
tests/test_tabs.py::test_tab_relabel PASSED [ 72%]
tests/test_tabs.py::test_compose_empty_tabs PASSED [ 72%]
tests/test_tabs.py::test_compose_tabs_from_strings PASSED [ 72%]
tests/test_tabs.py::test_compose_tabs_from_tabs PASSED [ 72%]
tests/test_tabs.py::test_add_tabs_later PASSED [ 72%]
tests/test_tabs.py::test_add_tab_before PASSED [ 72%]
tests/test_tabs.py::test_add_tab_before_badly PASSED [ 72%]
tests/test_tabs.py::test_add_tab_after PASSED [ 72%]
tests/test_tabs.py::test_add_tab_after_badly PASSED [ 72%]
tests/test_tabs.py::test_add_tab_before_and_after PASSED [ 72%]
tests/test_tabs.py::test_remove_tabs PASSED [ 72%]
tests/test_tabs.py::test_remove_tabs_reversed PASSED [ 72%]
tests/test_tabs.py::test_clear_tabs PASSED [ 72%]
tests/test_tabs.py::test_change_active_from_code PASSED [ 72%]
tests/test_tabs.py::test_navigate_tabs_with_keyboard PASSED [ 72%]
tests/test_tabs.py::test_navigate_empty_tabs_with_keyboard PASSED [ 72%]
tests/test_tabs.py::test_navigate_tabs_with_mouse PASSED [ 72%]
tests/test_tabs.py::test_startup_messages PASSED [ 72%]
tests/test_tabs.py::test_change_tab_with_code_messages PASSED [ 73%]
tests/test_tabs.py::test_remove_tabs_messages PASSED [ 73%]
tests/test_tabs.py::test_reverse_remove_tabs_messages PASSED [ 73%]
tests/test_tabs.py::test_keyboard_navigation_messages PASSED [ 73%]
tests/test_tabs.py::test_mouse_navigation_messages PASSED [ 73%]
tests/test_test_runner.py::test_run_test PASSED [ 73%]
tests/test_textlog.py::test_make_renderable_expand_tabs PASSED [ 73%]
tests/test_two_way_dict.py::test_get PASSED [ 73%]
tests/test_two_way_dict.py::test_get_key PASSED [ 73%]
tests/test_two_way_dict.py::test_set_item PASSED [ 73%]
tests/test_two_way_dict.py::test_len PASSED [ 73%]
tests/test_two_way_dict.py::test_delitem PASSED [ 73%]
tests/test_two_way_dict.py::test_contains PASSED [ 73%]
tests/test_unmount.py::test_unmount PASSED [ 73%]
tests/test_validation.py::test_ValidationResult_merge_successes PASSED [ 73%]
tests/test_validation.py::test_ValidationResult_merge_failures PASSED [ 73%]
tests/test_validation.py::test_ValidationResult_failure_descriptions PASSED [ 73%]
tests/test_validation.py::test_Failure_description_priorities_parameter_only PASSED [ 73%]
tests/test_validation.py::test_Failure_description_priorities_parameter_and_describe_failure PASSED [ 73%]
tests/test_validation.py::test_Failure_description_priorities_describe_failure_only PASSED [ 73%]
tests/test_validation.py::test_Failure_description_parameter_and_description_inside_validate PASSED [ 73%]
tests/test_validation.py::test_Failure_description_describe_and_description_inside_validate PASSED [ 73%]
tests/test_validation.py::test_Number_validate[123-None-None-True] PASSED [ 73%]
tests/test_validation.py::test_Number_validate[-123-None-None-True] PASSED [ 73%]
tests/test_validation.py::test_Number_validate[123.45-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[1.23e-4-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[abc-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[123-100-200-True] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[99-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[201-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[1.23e4-0-50000-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\d+-123-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\d+-abc-False] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[[a-z]+-abc-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[[a-z]+-ABC-False] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\w+-abc123-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\w+-!@#-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[123-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[-123-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[123.45-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[1.23e-4-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[abc-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[123-100-200-True] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[99-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[201-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[1.23e4-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Length_validate[-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Length_validate[test-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Length_validate[test-5-None-False] PASSED [ 75%]
tests/test_validation.py::test_Length_validate[test-None-3-False] PASSED [ 75%]
tests/test_validation.py::test_Length_validate[test-4-4-True] PASSED [ 75%]
tests/test_validation.py::test_Length_validate[test-2-6-True] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[http://example.com-True] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[https://example.com-True] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[www.example.com-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[://example.com-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[https:///path-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[redis://username:pass[word@localhost:6379/0-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[-False] PASSED [ 75%]
tests/test_validation.py::test_Function_validate[<lambda>-None-True] PASSED [ 75%]
tests/test_validation.py::test_Function_validate[<lambda>-failure!-False] PASSED [ 75%]
tests/test_version.py::test_version PASSED [ 75%]
tests/test_visible.py::test_visibility_changes PASSED [ 75%]
tests/test_visible.py::test_visible_is_inherited PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[True-True-visible] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[False-False-hidden] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[hidden-False-hidden] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[visible-True-visible] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_invalid_string PASSED [ 75%]
tests/test_widget.py::test_widget_content_width PASSED [ 75%]
tests/test_widget.py::test_get_child_by_id_gets_first_child PASSED [ 75%]
tests/test_widget.py::test_get_child_by_id_no_matching_child PASSED [ 75%]
tests/test_widget.py::test_get_child_by_id_only_immediate_descendents PASSED [ 76%]
tests/test_widget.py::test_get_child_by_type PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_no_matching_child PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_non_immediate_descendants PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_immediate_descendants PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_doesnt_return_self PASSED [ 76%]
tests/test_widget.py::test_get_widgets_app_delegated PASSED [ 76%]
tests/test_widget.py::test_widget_mount_ids_must_be_unique_mounting_all_in_one_go PASSED [ 76%]
tests/test_widget.py::test_widget_mount_ids_must_be_unique_mounting_multiple_calls PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_disabled PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_parent_disabled PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_hover PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_focus PASSED [ 76%]
tests/test_widget.py::test_remove PASSED [ 76%]
tests/test_widget.py::test_remove_unmounted PASSED [ 76%]
tests/test_widget.py::test_render_str PASSED [ 76%]
tests/test_widget.py::test_compose_order PASSED [ 76%]
tests/test_widget.py::test_children_must_be_widgets PASSED [ 76%]
tests/test_widget.py::test_orphan_widget_has_no_siblings PASSED [ 76%]
tests/test_widget.py::test__allow_scroll_default PASSED [ 76%]
tests/test_widget.py::test__allow_scroll PASSED [ 76%]
tests/test_widget.py::test_offset_getter_setter PASSED [ 76%]
tests/test_widget.py::test_get_set_tooltip PASSED [ 76%]
tests/test_widget.py::test_loading PASSED [ 77%]
tests/test_widget.py::test_is_mounted_property PASSED [ 77%]
tests/test_widget.py::test_mount_error_not_widget PASSED [ 77%]
tests/test_widget.py::test_mount_error_bad_widget PASSED [ 77%]
tests/test_widget.py::test_render_returns_text PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_no_direction PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_both_directions PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_not_our_child PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_to_outside PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_index[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_index[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_widget[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_widget[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_index[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_index[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_widget[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_widget[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_past_end_of_child_list PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_before_end_of_child_list PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_before_permutations PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_after_permutations PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_after_last_child PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_after_last_numeric_location PASSED [ 77%]
tests/test_widget_mount_point.py::test_find_dom_spot PASSED [ 77%]
tests/test_widget_mounting.py::test_mount_via_app PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8-1-10-4] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8--1-10-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[8-2--1-10-4] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[8-2-1-10-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[8-2-1-1234123512-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8-1-11-5] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8-1-12-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[5-5-1-10-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_enabled_returns_none_on_empty[find_first_enabled] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_enabled_returns_none_on_empty[find_last_enabled] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates0-None-1-None] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates1-None--1-None] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates2-None-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates3-None-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates4-None-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates5-None-1-1] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates6-None-1-2] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates7-None--1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates8-None--1-1] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates9-None--1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates10-None--1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates11-0-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates12-1-1-1] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates13-1--1-1] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates14-None--1-None] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates15-0-1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates16-0--1-4] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates17-1-1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates18-1--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates19-2-1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates20-2--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates21-3-1-4] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates22-3--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates23-4-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates24-4--1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates25-5-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates26-5--1-4] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates0-None-1-None] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates1-None--1-None] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates2-None-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates3-None-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates4-None-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates5-None-1-1] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates6-None-1-2] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates7-None--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates8-None--1-1] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates9-None--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates10-None--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates11-0-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates12-1-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates13-1--1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates14-None--1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates15-0-1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates16-0--1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates17-1-1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates18-1--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates19-2-1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates20-2--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates21-3-1-4] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates22-3--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates23-4-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates24-4--1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates25-5-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates26-5--1-4] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-0-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-0--1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-0-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-0--1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-1-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-1--1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-1-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-1--1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-2-1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-2--1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-2-1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-2--1] PASSED [ 81%]
tests/test_widget_removing.py::test_remove_single_widget PASSED [ 81%]
tests/test_widget_removing.py::test_many_remove_all_widgets PASSED [ 81%]
tests/test_widget_removing.py::test_many_remove_some_widgets PASSED [ 81%]
tests/test_widget_removing.py::test_remove_branch PASSED [ 81%]
tests/test_widget_removing.py::test_remove_overlap PASSED [ 81%]
tests/test_widget_removing.py::test_remove_move_focus PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_order PASSED [ 81%]
tests/test_widget_removing.py::test_query_remove_order PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_container PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_star_selector PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_string_selector PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_type_selector PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_selector_does_not_leak PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_no_children PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_no_children_match_selector PASSED [ 81%]
tests/test_win_sleep.py::test_win_sleep_timer_is_cancellable SKIPPED (We
only need to test this on Windows.) [ 81%]
tests/test_wrap.py::test_chunks[-expected_output0] PASSED [ 81%]
tests/test_wrap.py::test_chunks[ -expected_output1] PASSED [ 81%]
tests/test_wrap.py::test_chunks[\t-expected_output2] PASSED [ 81%]
tests/test_wrap.py::test_chunks[foo-expected_output3] PASSED [ 82%]
tests/test_wrap.py::test_chunks[ foo -expected_output4] PASSED [ 82%]
tests/test_wrap.py::test_chunks[foo bar-expected_output5] PASSED [ 82%]
tests/test_wrap.py::test_chunks[\tfoo bar-expected_output6] PASSED [ 82%]
tests/test_wrap.py::test_chunks[ foo bar-expected_output7] PASSED [ 82%]
tests/test_wrap.py::test_chunks[foo bar -expected_output8] PASSED [ 82%]
tests/test_wrap.py::test_chunks[foo\t bar -expected_output9] PASSED [ 82%]
tests/test_wrap.py::test_chunks[\u6728\t \u5ddd -expected_output10] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[-6-4-expected_output0] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t-6-4-expected_output1] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[ -6-4-expected_output2] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[foo bar baz-6-4-expected_output3] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfoo bar baz-6-4-expected_output4] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfo bar baz-6-4-expected_output5] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfo bar baz-6-8-expected_output6] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfo bar baz\t-6-8-expected_output7] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t\t\tfo bar baz\t-20-4-expected_output8] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t\t\t\t\t\t\t\tfo bar bar-19-4-expected_output9] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t\t\t\t\t-19-4-expected_output10] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[2] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[3] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[4] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[5] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[6] PASSED [ 82%]
tests/test_xterm_parser.py::test_bracketed_paste PASSED [ 83%]
tests/test_xterm_parser.py::test_bracketed_paste_content_contains_escape_codes PASSED [ 83%]
tests/test_xterm_parser.py::test_bracketed_paste_amongst_other_codes PASSED [ 83%]
tests/test_xterm_parser.py::test_cant_match_escape_sequence_too_long PASSED [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[2] XFAIL [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[3] PASSED [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[4] XFAIL [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[5] PASSED [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[6] PASSED [ 83%]
tests/test_xterm_parser.py::test_simple_key_presses_all_delivered_correct_order PASSED [ 83%]
tests/test_xterm_parser.py::test_simple_keypress_non_character_key PASSED [ 83%]
tests/test_xterm_parser.py::test_key_presses_and_escape_sequence_mixed PASSED [ 83%]
tests/test_xterm_parser.py::test_single_escape PASSED [ 83%]
tests/test_xterm_parser.py::test_double_escape PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<0;50;25M-MouseDown-False-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<4;50;25M-MouseDown-True-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<8;50;25M-MouseDown-False-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<12;50;25M-MouseDown-True-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<0;50;25m-MouseUp-False-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<4;50;25m-MouseUp-True-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<8;50;25m-MouseUp-False-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<12;50;25m-MouseUp-True-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<32;15;38M-False-False-1] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<35;15;38M-False-False-0] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<39;15;38M-True-False-0] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<43;15;38M-False-True-0] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_up[\x1b[<64;18;25M-False-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_up[\x1b[<68;18;25M-True-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_up[\x1b[<72;18;25M-False-True] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_down[\x1b[<65;18;25M-False-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_down[\x1b[<69;18;25M-True-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_down[\x1b[<73;18;25M-False-True] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_event_detected_but_info_not_parsed PASSED [ 84%]
tests/test_xterm_parser.py::test_escape_sequence_resulting_in_multiple_keypresses PASSED [ 84%]
tests/test_xterm_parser.py::test_terminal_mode_reporting_synchronized_output_supported PASSED [ 84%]
tests/test_xterm_parser.py::test_terminal_mode_reporting_synchronized_output_not_supported PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_text_start_maintain_selection_offset PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_text_start PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_empty_string PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_replace_empty_string PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location0-insert_location0-cursor_destination0] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location1-insert_location1-cursor_destination1] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location2-insert_location2-cursor_destination2] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location3-insert_location3-cursor_destination3] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_newlines_start PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_newlines_end PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_windows_newlines PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_old_mac_newlines PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_non_cursor_location PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_non_cursor_location_dont_maintain_offset PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_multiline_text PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_multiline_text_maintain_offset PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_replace_multiline_text PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_replace_multiline_text_maintain_selection PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_within_line PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_within_line_dont_maintain_offset PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_multiple_lines_selection_above PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_empty_document PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_clear PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_clear_empty_document PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_top[select_from0-select_to0] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_top[select_from1-select_to1] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_bottom[select_from0-select_to0] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_bottom[select_from1-select_to1] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_fully_within_selection PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_replace_fully_within_selection PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_text_setter PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_edits_on_read_only_mode PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_single_keypress_printable_character PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_single_keypress_enter PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[-0-4] PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[x-0-4] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[x-1-4] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxx-3-4] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxxx-4-8] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxxxx-5-8] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxxxxx-6-8] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[\U0001f4a9-1-3] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[\U0001f4a9\U0001f4a9-2-6] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_left PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_left_start PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_left_end PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[delete-selection0] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[delete-selection1] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[backspace-selection2] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[backspace-selection3] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_right PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_right_end_of_line PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection0-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection1-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection2-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection3-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection4-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection0-345\n678\n9\n] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection1-345\n678\n9\n] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection2-012\n345\n678\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection3-012\n345\n678\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection4-012\n678\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection5-012\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection6-012\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection7-012\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection8-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection0-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection1-01234] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection2-012345678] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection3-0123456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection4-012345678] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection5-0123456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection6-01234] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection7-01] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection0-0123456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection1-56789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection2-9] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection3-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection4-9] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection5-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection6-56789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection7-23456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection0- 012 345 6789-final_selection0] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection1- 2 345 6789-final_selection1] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection2- 345 6789-final_selection2] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection3- 345 6789-final_selection3] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection4- 012 345 -final_selection4] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection5- 01789-final_selection5] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection0-\t012 \t 345\t6789-final_selection0] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection1-\t \t 345\t6789-final_selection1] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection2-\t\t 345\t6789-final_selection2] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection3-\t 345\t6789-final_selection3] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection4-\t012 \t 345\t-final_selection4] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection5-\t0126789-final_selection5] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_to_start_of_line PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_at_line_start PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection0-012 345 6789-final_selection0] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection1- 01 345 6789-final_selection1] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection2- 012345 6789-final_selection2] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection3- 012 345 6789-final_selection3] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection4- 01789-final_selection4] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right_delete_to_end_of_line PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right_at_end_of_line PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[enter] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[backspace] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+u] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+f] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+w] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+k] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+x] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[space] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[1] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[tab] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_replace_lines_with_fewer_lines[selection0] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_replace_lines_with_fewer_lines[selection1] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_paste[selection0] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_paste[selection1] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_paste_read_only_does_nothing PASSED [ 89%]
tests/text_area/test_escape_binding.py::test_escape_key_when_tab_behavior_is_focus PASSED [ 89%]
tests/text_area/test_escape_binding.py::test_escape_key_when_tab_behavior_is_indent PASSED [ 89%]
tests/text_area/test_history.py::test_simple_undo_redo PASSED [ 89%]
tests/text_area/test_history.py::test_undo_selection_retained PASSED [ 89%]
tests/text_area/test_history.py::test_undo_checkpoint_created_on_cursor_move PASSED [ 89%]
tests/text_area/test_history.py::test_setting_text_property_resets_history PASSED [ 89%]
tests/text_area/test_history.py::test_edits_batched_by_time PASSED [ 89%]
tests/text_area/test_history.py::test_undo_checkpoint_character_limit_reached PASSED [ 89%]
tests/text_area/test_history.py::test_redo_with_no_undo_is_noop PASSED [ 89%]
tests/text_area/test_history.py::test_undo_with_empty_undo_stack_is_noop PASSED [ 89%]
tests/text_area/test_history.py::test_redo_stack_cleared_on_edit PASSED [ 89%]
tests/text_area/test_history.py::test_inserts_not_batched_with_deletes PASSED [ 89%]
tests/text_area/test_history.py::test_paste_is_an_isolated_batch PASSED [ 89%]
tests/text_area/test_history.py::test_focus_creates_checkpoint PASSED [ 90%]
tests/text_area/test_history.py::test_undo_redo_deletions_batched PASSED [ 90%]
tests/text_area/test_history.py::test_max_checkpoints PASSED [ 90%]
tests/text_area/test_history.py::test_redo_stack PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_builtin_language_via_constructor PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_builtin_language_via_attribute PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_language_to_none PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_unknown_language PASSED [ 90%]
tests/text_area/test_messages.py::test_changed_message_edit_via_api PASSED [ 90%]
tests/text_area/test_messages.py::test_changed_message_via_typing PASSED [ 90%]
tests/text_area/test_messages.py::test_selection_changed_via_api PASSED [ 90%]
tests/text_area/test_messages.py::test_selection_changed_via_typing PASSED [ 90%]
tests/text_area/test_selection.py::test_default_selection PASSED [ 90%]
tests/text_area/test_selection.py::test_cursor_location_get PASSED [ 90%]
tests/text_area/test_selection.py::test_cursor_location_set PASSED [ 90%]
tests/text_area/test_selection.py::test_cursor_location_set_while_selecting PASSED [ 90%]
tests/text_area/test_selection.py::test_move_cursor_select PASSED [ 90%]
tests/text_area/test_selection.py::test_move_cursor_relative PASSED [ 90%]
tests/text_area/test_selection.py::test_selected_text_forward PASSED [ 90%]
tests/text_area/test_selection.py::test_selected_text_backward PASSED [ 90%]
tests/text_area/test_selection.py::test_selected_text_multibyte PASSED [ 90%]
tests/text_area/test_selection.py::test_selection_clamp PASSED [ 90%]
tests/text_area/test_selection.py::test_get_cursor_left_location[start0-end0] PASSED [ 90%]
tests/text_area/test_selection.py::test_get_cursor_left_location[start1-end1] PASSED [ 90%]
tests/text_area/test_selection.py::test_get_cursor_left_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start3-end3] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_up_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_up_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_up_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_down_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_down_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_down_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start3-end3] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start4-end4] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start5-end5] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start6-end6] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start7-end7] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start8-end8] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start9-end9] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start10-end10] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start11-end11] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start12-end12] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start13-end13] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start14-end14] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start15-end15] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start0-end0] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start1-end1] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start2-end2] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start3-end3] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start4-end4] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start5-end5] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start6-end6] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start7-end7] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start8-end8] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start9-end9] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start10-end10] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start11-end11] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start12-end12] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start13-end13] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start14-end14] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start15-end15] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_all[123\n456\n789-expected_selection0] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_all[123\n456\n789\n-expected_selection1] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_all[-expected_selection2] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_line[1-123\n456\n789\n-expected_selection0] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_line[2-123\n456\n789\n-expected_selection1] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_line[3-123\n456\n789\n-expected_selection2] PASSED [ 93%]
tests/text_area/test_selection.py::test_select_line[1000-123\n456\n789\n-expected_selection3] PASSED [ 93%]
tests/text_area/test_selection.py::test_select_line[0--expected_selection4] PASSED [ 93%]
tests/text_area/test_selection.py::test_cursor_screen_offset_and_terminal_cursor_position_update PASSED [ 93%]
tests/text_area/test_selection.py::test_cursor_screen_offset_and_terminal_cursor_position_scrolling PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_clamp_from_right[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_clamp_from_right[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_gutter_clamp[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_gutter_clamp[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_movement_basic PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right_to_previous_line[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right_to_previous_line[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left_to_previous_line[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left_to_previous_line[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up_when_cursor_on_first_line[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up_when_cursor_on_first_line[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down_when_cursor_on_last_line[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down_when_cursor_on_last_line[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right_select[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right_select[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left_select[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left_select[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[True-end] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[True-ctrl+e] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[False-end] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[False-ctrl+e] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[True-home] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[True-ctrl+a] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[False-home] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[False-ctrl+a] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start0-cursor_destination0] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start1-cursor_destination1] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start2-cursor_destination2] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start3-cursor_destination3] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start4-cursor_destination4] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start5-cursor_destination5] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start0-cursor_destination0] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start1-cursor_destination1] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start2-cursor_destination2] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start3-cursor_destination3] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start4-cursor_destination4] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start5-cursor_destination5] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_down[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_down[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_up[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_up[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_vertical_movement_visual_alignment_snapping[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_vertical_movement_visual_alignment_snapping[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_line_binding[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_line_binding[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_all_binding[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_all_binding[False] PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_default_theme PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_setting_builtin_themes PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_setting_unknown_theme_raises_exception PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_registering_and_setting_theme PASSED [ 95%]
tests/toggles/test_checkbox.py::test_checkbox_initial_state PASSED [ 95%]
tests/toggles/test_checkbox.py::test_checkbox_toggle PASSED [ 95%]
tests/toggles/test_labels.py::test_change_labels PASSED [ 96%]
tests/toggles/test_radiobutton.py::test_radio_button_initial_state PASSED [ 96%]
tests/toggles/test_radiobutton.py::test_radio_button_toggle PASSED [ 96%]
tests/toggles/test_radioset.py::test_radio_sets_initial_state PASSED [ 96%]
tests/toggles/test_radioset.py::test_click_sets_focus PASSED [ 96%]
tests/toggles/test_radioset.py::test_radio_sets_toggle PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_same_button_mash PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_inner_navigation PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_inner_navigation_post_build PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_breakout_navigation PASSED [ 96%]
tests/toggles/test_radioset.py::test_there_can_only_be_one PASSED [ 96%]
tests/toggles/test_radioset.py::test_keyboard_navigation_with_disabled_buttons PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_file_selected_message PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_directory_selected_message PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_reload_node PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_reload_other_node PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_reloading_preserves_state PASSED [ 96%]
tests/tree/test_node_refresh.py::test_initial_state PASSED [ 96%]
tests/tree/test_node_refresh.py::test_root_refresh PASSED [ 96%]
tests/tree/test_node_refresh.py::test_child_refresh PASSED [ 96%]
tests/tree/test_node_refresh.py::test_grandchild_refresh PASSED [ 96%]
tests/tree/test_tree_availability.py::test_creating_disabled_tree PASSED [ 96%]
tests/tree/test_tree_availability.py::test_creating_enabled_tree PASSED [ 96%]
tests/tree/test_tree_availability.py::test_disabled_tree_node_selected_message PASSED [ 96%]
tests/tree/test_tree_availability.py::test_enabled_tree_node_selected_message PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_simple_clear PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_reset_with_label PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_reset_with_label_and_data PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_remove_node PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_remove_node_children PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_remove_children_of_root PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_attempt_to_remove_root PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_expand PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_expand_all PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_collapse PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_collapse_all PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_toggle PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_toggle_all PASSED [ 97%]
tests/tree/test_tree_get_node_by_id.py::test_get_tree_node_by_id PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_selected_message PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_selected_message_no_auto PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_expanded_message PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_collapsed_message PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_highlighted_message PASSED [ 97%]
tests/tree/test_tree_node_children.py::test_tree_node_children PASSED [ 97%]
tests/tree/test_tree_node_label.py::test_tree_node_label PASSED [ 97%]
tests/tree/test_tree_node_label.py::test_tree_node_label_via_tree PASSED [ 97%]
tests/tree/test_tree_node_parent.py::test_tree_node_parent PASSED [ 97%]
tests/workers/test_work_decorator.py::test_async_work PASSED [ 98%]
tests/workers/test_work_decorator.py::test_async_thread_work PASSED [ 98%]
tests/workers/test_work_decorator.py::test_thread_work PASSED [ 98%]
tests/workers/test_work_decorator.py::test_decorate_non_async_no_thread_argument PASSED [ 98%]
tests/workers/test_work_decorator.py::test_decorate_non_async_no_thread_is_false PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack0] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack1] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack2] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack3] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack4] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack5] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack6] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack7] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack8] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack9] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack10] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack11] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack12] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack13] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack14] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack15] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack16] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack17] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack18] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack19] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack20] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack21] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack22] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack23] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack24] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack25] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack26] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack27] PASSED [ 99%]
tests/workers/test_worker.py::test_initialize PASSED [ 99%]
tests/workers/test_worker.py::test_run_success PASSED [ 99%]
tests/workers/test_worker.py::test_run_error PASSED [ 99%]
tests/workers/test_worker.py::test_run_cancel PASSED [ 99%]
tests/workers/test_worker.py::test_run_cancel_immediately PASSED [ 99%]
tests/workers/test_worker.py::test_get_worker PASSED [ 99%]
tests/workers/test_worker.py::test_no_active_worker PASSED [ 99%]
tests/workers/test_worker.py::test_progress_update PASSED [ 99%]
tests/workers/test_worker.py::test_double_start PASSED [ 99%]
tests/workers/test_worker.py::test_self_referential_deadlock PASSED [ 99%]
tests/workers/test_worker.py::test_wait_without_start PASSED [ 99%]
tests/workers/test_worker_manager.py::test_worker_manager_init PASSED [ 99%]
tests/workers/test_worker_manager.py::test_run_worker_async PASSED [ 99%]
tests/workers/test_worker_manager.py::test_run_worker_thread_non_async PASSED [ 99%]
tests/workers/test_worker_manager.py::test_run_worker_thread_async PASSED [100%]
=============================== warnings summary ===============================
tests/test_widget.py::test_get_child_by_id_gets_first_child
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_textual/build/textual/strip.py:95: RuntimeWarning: coroutine 'test_async_reactive_watch_callbacks_go_on_the_watcher.<locals>.MyApp.callback' was never awaited
self._filter_cache: FIFOCache[tuple[LineFilter, Color], Strip] = FIFOCache(4)
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
= 2389 passed, 1 skipped, 8 deselected, 4 xfailed, 1 warning in 156.66s (0:02:36) =
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_textual/build; python3.12 -m pytest -x -vvv -m "not syntax" --ignore=tests/test_features.py --ignore=tests/command_palette --ignore=tests/snapshot_tests -k "not test_footer_highlight_when_pushing_modal and not test_softbreak_split_links_rendered_correctly and not test_headings_that_look_like_they_contain_markup and not test_screen_stack_preserved and not test_clicking_outside_command_palette_closes_it and not test_command_source_environment and not test_escape_closes_when_no_list_visible and not test_register_language"
/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:208: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session"
warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.12
cachedir: .pytest_cache
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_textual/build
configfile: pyproject.toml
testpaths: tests
plugins: asyncio-0.24.0a1, syrupy-4.7.2, typeguard-4.4.1
asyncio: mode=Mode.AUTO, default_loop_scope=None
collecting ... collected 2402 items / 8 deselected / 2394 selected
tests/animations/test_disabling_animations.py::test_style_animations_via_animate_work_on_full PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_animate_are_disabled_on_basic PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_animate_are_disabled_on_none PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_transition_work_on_full PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_transition_are_disabled_on_basic PASSED [ 0%]
tests/animations/test_disabling_animations.py::test_style_animations_via_transition_are_disabled_on_none PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[-full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[FULL-full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[BASIC-basic] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[NONE-none] PASSED [ 0%]
tests/animations/test_environment_variable.py::test__get_textual_animations[garbanzo beans-full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test_app_show_animations[full] PASSED [ 0%]
tests/animations/test_environment_variable.py::test_app_show_animations[basic] PASSED [ 0%]
tests/animations/test_environment_variable.py::test_app_show_animations[none] PASSED [ 0%]
tests/animations/test_loading_indicator_animation.py::test_loading_indicator_is_not_static_on_full PASSED [ 0%]
tests/animations/test_loading_indicator_animation.py::test_loading_indicator_is_not_static_on_basic PASSED [ 0%]
tests/animations/test_loading_indicator_animation.py::test_loading_indicator_is_static_on_none PASSED [ 0%]
tests/animations/test_progress_bar_animation.py::test_progress_bar_animates_on_full PASSED [ 0%]
tests/animations/test_progress_bar_animation.py::test_progress_bar_animates_on_basic PASSED [ 0%]
tests/animations/test_progress_bar_animation.py::test_progress_bar_does_not_animate_on_none PASSED [ 0%]
tests/animations/test_scrolling_animation.py::test_scrolling_animates_on_full PASSED [ 0%]
tests/animations/test_scrolling_animation.py::test_scrolling_animates_on_basic PASSED [ 0%]
tests/animations/test_scrolling_animation.py::test_scrolling_does_not_animate_on_none PASSED [ 0%]
tests/animations/test_switch_animation.py::test_switch_animates_on_full PASSED [ 1%]
tests/animations/test_switch_animation.py::test_switch_animates_on_basic PASSED [ 1%]
tests/animations/test_switch_animation.py::test_switch_does_not_animate_on_none PASSED [ 1%]
tests/animations/test_tabs_underline_animation.py::test_tabs_underline_animates_on_full PASSED [ 1%]
tests/animations/test_tabs_underline_animation.py::test_tabs_underline_animates_on_basic PASSED [ 1%]
tests/animations/test_tabs_underline_animation.py::test_tabs_underline_does_not_animate_on_none PASSED [ 1%]
tests/css/test_css_reloading.py::test_css_reloading_applies_to_non_top_screen PASSED [ 1%]
tests/css/test_css_reloading.py::test_css_reloading_file_not_found PASSED [ 1%]
tests/css/test_grid_rows_columns_relative_units.py::test_grid_rows_columns_relative_units_are_correct PASSED [ 1%]
tests/css/test_grid_rows_columns_relative_units.py::test_styles_builder_uses_correct_relative_units_grid_rows_columns PASSED [ 1%]
tests/css/test_help_text.py::test_help_text_examples_are_contextualized PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_wrong_number_of_values[css] PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_wrong_number_of_values[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_invalid_value[css] PASSED [ 1%]
tests/css/test_help_text.py::test_spacing_invalid_value[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_scalar_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_scalar_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_string_enum_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_string_enum_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_color_property_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_color_property_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_border_property_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_border_property_help_text[inline] PASSED [ 1%]
tests/css/test_help_text.py::test_layout_property_help_text[css] PASSED [ 1%]
tests/css/test_help_text.py::test_layout_property_help_text[inline] PASSED [ 2%]
tests/css/test_help_text.py::test_fractional_property_help_text[css] PASSED [ 2%]
tests/css/test_help_text.py::test_fractional_property_help_text[inline] PASSED [ 2%]
tests/css/test_help_text.py::test_offset_property_help_text[css] PASSED [ 2%]
tests/css/test_help_text.py::test_offset_property_help_text[inline] PASSED [ 2%]
tests/css/test_help_text.py::test_align_help_text PASSED [ 2%]
tests/css/test_help_text.py::test_offset_single_axis_help_text PASSED [ 2%]
tests/css/test_help_text.py::test_style_flags_property_help_text[css] PASSED [ 2%]
tests/css/test_help_text.py::test_style_flags_property_help_text[inline] PASSED [ 2%]
tests/css/test_inheritance.py::test_inheritance XFAIL (Overlapping
styles should prioritize the most recent widget in the inheritance
chain) [ 2%]
tests/css/test_initial.py::test_initial_default PASSED [ 2%]
tests/css/test_initial.py::test_initial PASSED [ 2%]
tests/css/test_mega_stylesheet.py::test_mega_stylesheet PASSED [ 2%]
tests/css/test_nested_css.py::test_nest_app PASSED [ 2%]
tests/css/test_nested_css.py::test_lists_of_selectors_in_nested_css PASSED [ 2%]
tests/css/test_nested_css.py::test_rule_declaration_after_nested PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[Selector {-EOFError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[Selector{ Foo {-EOFError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[Selector{ Foo {}-EOFError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[> {}-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[&-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[&&-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[&.foo-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[& .foo-TokenError] PASSED [ 2%]
tests/css/test_nested_css.py::test_parse_errors[{-TokenError] PASSED [ 3%]
tests/css/test_nested_css.py::test_parse_errors[*{-EOFError] PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_simple_reference PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_simple_reference_no_whitespace PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_undefined_variable PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_empty_variable PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_transitive_reference PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_multi_value_variable PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_variable_used_inside_property_value PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_variable_definition_eof PASSED [ 3%]
tests/css/test_parse.py::TestVariableReferenceSubstitution::test_variable_reference_whitespace_trimming PASSED [ 3%]
tests/css/test_parse.py::TestParseLayout::test_valid_layout_name PASSED [ 3%]
tests/css/test_parse.py::TestParseLayout::test_invalid_layout_name PASSED [ 3%]
tests/css/test_parse.py::TestParseText::test_foreground PASSED [ 3%]
tests/css/test_parse.py::TestParseText::test_background PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgb(1,255,50)-result0] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgb( 1, 255,50 )-result1] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgba( 1, 255,50,0.3 )-result2] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[rgba( 1, 255,50, 1.3 )-result3] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsl( 180, 50%, 50% )-result4] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsl(180,50%,50%)-result5] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsla(180,50%,50%,0.25)-result6] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsla( 180, 50% ,50%,0.25 )-result7] PASSED [ 3%]
tests/css/test_parse.py::TestParseColor::test_rgb_and_hsl[hsla( 180, 50% , 50% , 1.5 )-result8] PASSED [ 3%]
tests/css/test_parse.py::TestParseOffset::test_composite_rule[-5.5%-parsed_x0--30%-parsed_y0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_composite_rule[5%-parsed_x1-40%-parsed_y1] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_composite_rule[10-parsed_x2-40-parsed_y2] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_separate_rules[-5.5%-parsed_x0--30%-parsed_y0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_separate_rules[5%-parsed_x1-40%-parsed_y1] PASSED [ 4%]
tests/css/test_parse.py::TestParseOffset::test_separate_rules[-10-parsed_x2-40-parsed_y2] PASSED [ 4%]
tests/css/test_parse.py::TestParseOverflow::test_multiple_enum PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[5.57s-5.57] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[0.5s-0.5] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[1200ms-1.2] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[0.5ms-0.0005] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[20-20.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_various_duration_formats[0.1-0.1] PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_no_delay_specified PASSED [ 4%]
tests/css/test_parse.py::TestParseTransition::test_unknown_easing_function PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[-0.2-0.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[0.4-0.4] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[1.3-1.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[-20%-0.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[25%-0.25] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_to_styles[128%-1.0] PASSED [ 4%]
tests/css/test_parse.py::TestParseOpacity::test_opacity_invalid_value PASSED [ 4%]
tests/css/test_parse.py::TestParseMargin::test_margin_partial PASSED [ 4%]
tests/css/test_parse.py::TestParsePadding::test_padding_partial PASSED [ 4%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[left] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[start] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[center] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[right] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[end] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align[justify] PASSED [ 5%]
tests/css/test_parse.py::TestParseTextAlign::test_text_align_invalid PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_type_no_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_type_with_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_type_starts_with_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_combined_type_no_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_combined_type_with_number PASSED [ 5%]
tests/css/test_parse.py::TestTypeNames::test_combined_type_starts_with_number PASSED [ 5%]
tests/css/test_parse.py::test_parse_bad_pseudo_selector PASSED [ 5%]
tests/css/test_parse.py::test_parse_bad_pseudo_selector_with_suggestion PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_size_rows-3] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_size_columns-3] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_gutter_vertical-4] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_gutter_horizontal-4] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_rows-1fr 3fr] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_style_change_updates_children[grid_columns-1fr 3fr] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_align_change_updates_children_position[align_horizontal-right] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_align_change_updates_children_position[align_vertical-bottom] PASSED [ 5%]
tests/css/test_programmatic_style_changes.py::test_programmatic_align_change_updates_children_position[align-value2] PASSED [ 5%]
tests/css/test_scalar.py::test_copy_with_value PASSED [ 6%]
tests/css/test_scalar.py::test_copy_with_unit PASSED [ 6%]
tests/css/test_scalar.py::test_copy_with_percent_unit PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_pushing_and_popping_does_not_reparse_css PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_push_screen_instance PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_push_screen_instance_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_push_screen_type_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_screen_instance PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_screen_instance_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_screen_type_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_mode_screen_instance PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_mode_screen_instance_by_name PASSED [ 6%]
tests/css/test_screen_css.py::test_screen_css_switch_mode_screen_type_by_name PASSED [ 6%]
tests/css/test_styles.py::test_styles_reset PASSED [ 6%]
tests/css/test_styles.py::test_has_rule PASSED [ 6%]
tests/css/test_styles.py::test_clear_rule PASSED [ 6%]
tests/css/test_styles.py::test_get_rules PASSED [ 6%]
tests/css/test_styles.py::test_set_rule PASSED [ 6%]
tests/css/test_styles.py::test_reset PASSED [ 6%]
tests/css/test_styles.py::test_merge PASSED [ 6%]
tests/css/test_styles.py::test_merge_rules PASSED [ 6%]
tests/css/test_styles.py::test_render_styles_border PASSED [ 6%]
tests/css/test_styles.py::test_get_opacity_default PASSED [ 6%]
tests/css/test_styles.py::test_styles_css_property PASSED [ 6%]
tests/css/test_styles.py::test_opacity_set_then_get[0.2-0.2] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[-0.4-0.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[5.8-1.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[25%-0.25] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[-10%-0.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_then_get[120%-1.0] PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_invalid_type_error PASSED [ 7%]
tests/css/test_styles.py::test_opacity_set_allows_integer_value PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[None-None] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1-size_dimension_expected_output1] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1.0-size_dimension_expected_output2] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1.2-size_dimension_expected_output3] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1200.0-size_dimension_expected_output4] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[20-size_dimension_expected_output5] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[1.4-size_dimension_expected_output6] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input7-size_dimension_expected_output7] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input8-size_dimension_expected_output8] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input9-size_dimension_expected_output9] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input10-size_dimension_expected_output10] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input11-size_dimension_expected_output11] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input12-size_dimension_expected_output12] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_can_accept_various_data_types_and_normalize_them[size_dimension_input13-size_dimension_expected_output13] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[a] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[1.4e3] PASSED [ 7%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[3.14j] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input3] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input4] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input5] PASSED [ 8%]
tests/css/test_styles.py::test_widget_style_size_fails_if_data_type_is_not_supported[size_dimension_input6] PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_highest_specificity_wins PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_doesnt_override_defaults PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_highest_specificity_wins_multiple_classes PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_many_classes_dont_overrule_id PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_last_rule_wins_when_same_rule_twice_in_one_ruleset PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_rulesets_merged_for_duplicate_selectors PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_takes_final_rule_in_specificity_clash PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_empty_rulesets PASSED [ 8%]
tests/css/test_stylesheet.py::test_stylesheet_apply_user_css_over_widget_css PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[transparent-expectation0-expected_color0] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[ansi_red-expectation1-expected_color1] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[ansi_bright_magenta-expectation2-expected_color2] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[red-expectation3-expected_color3] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[lime-expectation4-expected_color4] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[coral-expectation5-expected_color5] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[aqua-expectation6-expected_color6] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[deepskyblue-expectation7-expected_color7] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[rebeccapurple-expectation8-expected_color8] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[#ffcc00-expectation9-expected_color9] PASSED [ 8%]
tests/css/test_stylesheet.py::test_color_property_parsing[#ffcc0033-expectation10-expected_color10] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[rgb(200,90,30)-expectation11-expected_color11] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[rgba(200,90,30,0.3)-expectation12-expected_color12] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[coffee-expectation13-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[ansi_dark_cyan-expectation14-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[red 4-expectation15-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[1-expectation16-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_color_property_parsing[()-expectation17-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[backgroundu-background] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[bckgroundu-background] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[ofset-x-offset-x] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[ofst_y-offset-y] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[colr-color] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[colour-color] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[wdth-width] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[wth-width] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[wh-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_css_property_names[xkcd-None] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[color-blu-blue] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[background-chartruse-chartreuse] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[tint-ansi_whi-ansi_white] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[scrollbar-color-transprnt-transparent] PASSED [ 9%]
tests/css/test_stylesheet.py::test_did_you_mean_for_color_names[color-xkcd-None] PASSED [ 9%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warning-text] PASSED [ 9%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warning_text] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warningtext1] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[1warningtext] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[WarningText1] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warningtext_] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[warningtext-] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[_warningtext] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_valid_names[-warningtext] PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_multiple_values PASSED [ 10%]
tests/css/test_tokenize.py::test_single_line_comment PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_comment_ignored PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_comment_interspersed_ignored PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_no_semicolon PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_declaration_invalid_value PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_declarations_amongst_rulesets PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_reference_in_rule_declaration_value PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_reference_in_rule_declaration_value_multiple PASSED [ 10%]
tests/css/test_tokenize.py::test_variables_reference_in_variable_declaration PASSED [ 10%]
tests/css/test_tokenize.py::test_variable_references_in_variable_declaration_multiple PASSED [ 10%]
tests/css/test_tokenize.py::test_allow_new_lines PASSED [ 10%]
tests/directory_tree/test_early_show_root.py::test_managed_to_set_show_root_before_mounted PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\nFear is the mind-killer.] PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\nFear is the mind-killer.\n] PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\r\nFear is the mind-killer.] PASSED [ 10%]
tests/document/test_document.py::test_text[I must not fear.\r\nFear is the mind-killer.\r\n] PASSED [ 11%]
tests/document/test_document.py::test_lines_newline_eof PASSED [ 11%]
tests/document/test_document.py::test_lines_no_newline_eof PASSED [ 11%]
tests/document/test_document.py::test_lines_windows PASSED [ 11%]
tests/document/test_document.py::test_lines_windows_newline PASSED [ 11%]
tests/document/test_document.py::test_newline_unix PASSED [ 11%]
tests/document/test_document.py::test_newline_windows PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_no_selection PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_single_line PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_multiple_lines_unix PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_multiple_lines_windows PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_including_final_newline_unix PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_including_final_newline_windows PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_no_newline_at_end_of_file PASSED [ 11%]
tests/document/test_document.py::test_get_selected_text_no_newline_at_end_of_file_windows PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\nFear is the mind-killer.\n] PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\r\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_index_from_location[I must not fear.\r\nFear is the mind-killer.\r\n] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\nFear is the mind-killer.\n] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\r\nFear is the mind-killer.] PASSED [ 11%]
tests/document/test_document.py::test_location_from_index[I must not fear.\r\nFear is the mind-killer.\r\n] PASSED [ 11%]
tests/document/test_document_delete.py::test_delete_single_character PASSED [ 11%]
tests/document/test_document_delete.py::test_delete_single_newline PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_near_end_of_document PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_clearing_the_document PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_multiple_characters_on_one_line PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_multiple_lines_partially_spanned PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_end_of_line PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_single_line_excluding_newline PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_single_line_including_newline PASSED [ 12%]
tests/document/test_document_delete.py::test_delete_end_of_file_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_no_newlines PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_empty_string PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_invalid_column PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_invalid_row_and_column PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_range_newline_file_start PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_newline_splits_line PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_newline_splits_line_selection PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_multiple_lines_ends_with_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_multiple_lines_ends_with_no_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_multiple_lines_starts_with_newline PASSED [ 12%]
tests/document/test_document_insert.py::test_insert_range_text_no_newlines PASSED [ 12%]
tests/document/test_document_insert.py::test_newline_eof PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start0-end0] PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start1-end1] PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start2-end2] PASSED [ 12%]
tests/document/test_document_navigator.py::test_get_location_above[start3-end3] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start4-end4] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start5-end5] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start6-end6] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start7-end7] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start8-end8] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start9-end9] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_above[start10-end10] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start0-end0] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start1-end1] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start2-end2] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start3-end3] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start4-end4] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start5-end5] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start6-end6] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start7-end7] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_below[start8-end8] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start0-end0] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start1-end1] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start2-end2] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start3-end3] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start4-end4] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start5-end5] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start6-end6] PASSED [ 13%]
tests/document/test_document_navigator.py::test_get_location_home[start7-end7] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_home[start8-end8] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start0-end0] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start1-end1] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start2-end2] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start3-end3] PASSED [ 14%]
tests/document/test_document_navigator.py::test_get_location_end[start4-end4] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_wrap PASSED [ 14%]
tests/document/test_wrapped_document.py::test_wrap_empty_document PASSED [ 14%]
tests/document/test_wrapped_document.py::test_wrap_width_zero_no_wrapping PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range_new_text_wrapped PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range_wrapping_at_previously_unavailable_range PASSED [ 14%]
tests/document/test_wrapped_document.py::test_refresh_range_wrapping_disabled_previously_unavailable_range PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset0-location0] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset1-location1] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset2-location2] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset3-location3] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset4-location4] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset5-location5] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset6-location6] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset7-location7] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_enabled[offset8-location8] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset0-location0] PASSED [ 14%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset1-location1] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset2-location2] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset3-location3] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset4-location4] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset5-location5] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_wrapping_disabled[offset6-location6] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_invalid_offset_clamps_to_valid_offset[offset0-location0] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_offset_to_location_invalid_offset_clamps_to_valid_offset[offset1-location1] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets[0-offsets0] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets[1-offsets1] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets[2-offsets2] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets_no_wrapping PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets_invalid_line_index[-4] PASSED [ 15%]
tests/document/test_wrapped_document.py::test_get_offsets_invalid_line_index[10000] PASSED [ 15%]
tests/input/test_input_clear.py::test_input_clear PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_word_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_word_from_inside_first_word PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_word_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_password_delete_left_word_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_all_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_left_all_from_end PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_right_from_home PASSED [ 15%]
tests/input/test_input_key_modification_actions.py::test_delete_right_from_end PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_password_delete_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_word_from_end PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_all_from_home PASSED [ 16%]
tests/input/test_input_key_modification_actions.py::test_delete_right_all_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_word_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_word_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_password_input_left_word_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_password_input_right_word_from_home PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_word_from_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_right_word_to_the_end PASSED [ 16%]
tests/input/test_input_key_movement_actions.py::test_input_left_word_from_the_end PASSED [ 16%]
tests/input/test_input_messages.py::test_no_startup_messages PASSED [ 16%]
tests/input/test_input_messages.py::test_startup_messages_with_initial_value PASSED [ 16%]
tests/input/test_input_messages.py::test_typing_from_empty_causes_changed PASSED [ 16%]
tests/input/test_input_messages.py::test_typing_from_pre_populated_causes_changed PASSED [ 17%]
tests/input/test_input_messages.py::test_submit_empty_input PASSED [ 17%]
tests/input/test_input_messages.py::test_submit_pre_populated_input PASSED [ 17%]
tests/input/test_input_messages.py::test_paste_event_impact PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-0-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-1-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-10-10] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-47-47] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-48-48] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[That gum you like is going to come back in style-58-48] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-0-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-1-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-2-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-3-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-4-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-5-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-9-4] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-10-5] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[\u3053\u3093\u306b\u3061\u306f-50-5] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-0-0] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-1-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-2-1] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-3-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-4-2] PASSED [ 17%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-5-3] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-13-9] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-14-9] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-15-10] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_clicks_within[a\u3053\u3093bc\u306bd\u3061e\u306f-60-10] PASSED [ 18%]
tests/input/test_input_mouse.py::test_mouse_click_outwith PASSED [ 18%]
tests/input/test_input_properties.py::test_internal_value_no_password PASSED [ 18%]
tests/input/test_input_properties.py::test_internal_value_password PASSED [ 18%]
tests/input/test_input_properties.py::test_internal_value_highlighted PASSED [ 18%]
tests/input/test_input_properties.py::test_cursor_toggle PASSED [ 18%]
tests/input/test_input_properties.py::test_input_height PASSED [ 18%]
tests/input/test_input_restrict.py::test_input_number_type PASSED [ 18%]
tests/input/test_input_restrict.py::test_input_integer_type PASSED [ 18%]
tests/input/test_input_restrict.py::test_bad_type PASSED [ 18%]
tests/input/test_input_restrict.py::test_max_length PASSED [ 18%]
tests/input/test_input_restrict.py::test_restrict PASSED [ 18%]
tests/input/test_input_restrict.py::test_restrict_type PASSED [ 18%]
tests/input/test_input_terminal_cursor.py::test_initial_terminal_cursor_position PASSED [ 18%]
tests/input/test_input_terminal_cursor.py::test_terminal_cursor_position_update_on_cursor_move PASSED [ 18%]
tests/input/test_input_validation.py::test_input_changed_message_validation_failure PASSED [ 18%]
tests/input/test_input_validation.py::test_input_changed_message_validation_success PASSED [ 18%]
tests/input/test_input_validation.py::test_input_submitted_message_validation_failure PASSED [ 18%]
tests/input/test_input_validation.py::test_input_submitted_message_validation_success PASSED [ 18%]
tests/input/test_input_validation.py::test_on_blur_triggers_validation PASSED [ 18%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on0] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on1] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on2] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on3] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_changed_should_not_happen[validate_on4] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on0] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on1] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on2] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on3] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_submitted_should_not_happen[validate_on4] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on0] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on1] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on2] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on3] PASSED [ 19%]
tests/input/test_input_validation.py::test_validation_on_blur_should_not_happen_unless_specified[validate_on4] PASSED [ 19%]
tests/input/test_input_validation.py::test_none_validate_on_means_all_validations_happen PASSED [ 19%]
tests/input/test_input_validation.py::test_valid_empty PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_on_instantiation PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_after_value_assignment PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_if_mounted_later PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_if_mounted_later_and_focused PASSED [ 19%]
tests/input/test_input_value_visibility.py::test_input_value_visible_if_mounted_later_and_assigned_after PASSED [ 19%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[horizontal-block-True] PASSED [ 19%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[vertical-block-True] PASSED [ 19%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[horizontal-none-False] PASSED [ 20%]
tests/layouts/test_common_layout_features.py::test_nodes_take_display_property_into_account_when_they_display_their_children[vertical-none-False] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_height[GridLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_height[HorizontalLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_height[VerticalLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_width[GridLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_width[HorizontalLayout] PASSED [ 20%]
tests/layouts/test_content_dimensions.py::test_empty_widget_width[VerticalLayout] PASSED [ 20%]
tests/layouts/test_factory.py::test_get_layout_valid_layout PASSED [ 20%]
tests/layouts/test_factory.py::test_get_layout_invalid_layout PASSED [ 20%]
tests/layouts/test_horizontal.py::test_horizontal_get_content_width PASSED [ 20%]
tests/listview/test_inherit_listview.py::test_empty_inherited_list_view PASSED [ 20%]
tests/listview/test_inherit_listview.py::test_populated_inherited_list_view PASSED [ 20%]
tests/listview/test_inherit_listview.py::test_actions_work_when_list_view_empty PASSED [ 20%]
tests/listview/test_listview_navigation.py::test_keyboard_navigation_with_disabled_items PASSED [ 20%]
tests/notifications/test_all_levels_notifications.py::test_all_levels_of_notification PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_no_notifications PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_with_notifications PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_with_removing_notifications PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_with_notifications_that_expire PASSED [ 20%]
tests/notifications/test_app_notifications.py::test_app_clearing_notifications PASSED [ 20%]
tests/notifications/test_notification.py::test_message PASSED [ 20%]
tests/notifications/test_notification.py::test_default_title PASSED [ 20%]
tests/notifications/test_notification.py::test_default_severity_level PASSED [ 20%]
tests/notifications/test_notification.py::test_default_timeout PASSED [ 21%]
tests/notifications/test_notification.py::test_identity_is_unique PASSED [ 21%]
tests/notifications/test_notification.py::test_time_out PASSED [ 21%]
tests/notifications/test_notifications.py::test_empty_to_start_with PASSED [ 21%]
tests/notifications/test_notifications.py::test_many_notifications PASSED [ 21%]
tests/notifications/test_notifications.py::test_timeout PASSED [ 21%]
tests/notifications/test_notifications.py::test_in PASSED [ 21%]
tests/notifications/test_notifications.py::test_remove_notification PASSED [ 21%]
tests/notifications/test_notifications.py::test_remove_notification_multiple_times PASSED [ 21%]
tests/notifications/test_notifications.py::test_clear PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_all_parameters_become_options PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_id_capture PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_by_id PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_with_bad_id PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_by_index PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_get_option_at_bad_index PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_clear_option_list PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_add_later PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_create_with_duplicate_id PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_create_with_duplicate_id_and_subsequent_non_dupes PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_adding_multiple_duplicates_at_once PASSED [ 21%]
tests/option_list/test_option_list_create.py::test_options_are_available_soon PASSED [ 21%]
tests/option_list/test_option_list_disabled.py::test_default_enabled PASSED [ 21%]
tests/option_list/test_option_list_disabled.py::test_default_disabled PASSED [ 21%]
tests/option_list/test_option_list_disabled.py::test_enabled_to_disabled_via_index PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disabled_to_enabled_via_index PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_enabled_to_disabled_via_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disabled_to_enabled_via_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disable_invalid_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_disable_invalid_index PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_enable_invalid_id PASSED [ 22%]
tests/option_list/test_option_list_disabled.py::test_enable_invalid_index PASSED [ 22%]
tests/option_list/test_option_list_id_stability.py::test_get_after_add PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_no_hover PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_highlight PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_no_highlight PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_disabled PASSED [ 22%]
tests/option_list/test_option_list_mouse_hover.py::test_hover_then_leave PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_initial_highlight PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_cleared_highlight_is_none PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_cleared_movement_does_nothing PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_down PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_down_from_end PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_up PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_up_from_nowhere PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_end PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_move_home PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_page_down_from_start_short_list PASSED [ 22%]
tests/option_list/test_option_list_movement.py::test_page_up_from_end_short_list PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_page_down_from_end_short_list PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_page_up_from_start_short_list PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_empty_list_movement PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[up-99] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[down-0] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[home-0] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[end-99] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[pageup-0] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_no_highlight_movement[pagedown-99] PASSED [ 23%]
tests/option_list/test_option_list_movement.py::test_keyboard_navigation_with_disabled_options PASSED [ 23%]
tests/option_list/test_option_list_option_subclass.py::test_option_list_with_subclassed_options PASSED [ 23%]
tests/option_list/test_option_messages.py::test_messages_on_startup PASSED [ 23%]
tests/option_list/test_option_messages.py::test_same_highlight_message PASSED [ 23%]
tests/option_list/test_option_messages.py::test_highlight_disabled_option_no_message PASSED [ 23%]
tests/option_list/test_option_messages.py::test_new_highlight PASSED [ 23%]
tests/option_list/test_option_messages.py::test_move_highlight_with_keyboard PASSED [ 23%]
tests/option_list/test_option_messages.py::test_select_message_with_keyboard PASSED [ 23%]
tests/option_list/test_option_messages.py::test_click_option_with_mouse PASSED [ 23%]
tests/option_list/test_option_messages.py::test_click_disabled_option_with_mouse PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_invalid_id PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_invalid_index PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_valid_id PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_option_prompt_with_valid_index PASSED [ 23%]
tests/option_list/test_option_prompt_replacement.py::test_replace_single_line_option_prompt_with_multiple PASSED [ 24%]
tests/option_list/test_option_prompt_replacement.py::test_replace_multiple_line_option_prompt_with_single PASSED [ 24%]
tests/option_list/test_option_prompt_replacement.py::test_replace_multiple_line_option_prompt_with_multiple PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_first_option_via_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_first_option_via_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_last_option_via_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_last_option_via_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_all_options_via_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_all_options_via_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_invalid_id PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_invalid_index PASSED [ 24%]
tests/option_list/test_option_removal.py::test_remove_with_hover_on_last_option PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_no_data PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_single_datapoint PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_two_values_min_max PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_expand_data_to_width PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_expand_data_to_width_non_divisible PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_shrink_data_to_width PASSED [ 24%]
tests/renderables/test_sparkline.py::test_sparkline_color_blend PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_simple_text_opacity PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_value_zero_doesnt_render_the_text PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_text_opacity_value_of_one_noop PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_ansi_colors_noop PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_text_opacity_no_style_noop PASSED [ 24%]
tests/renderables/test_text_opacity.py::test_text_opacity_only_fg_noop PASSED [ 25%]
tests/renderables/test_text_opacity.py::test_text_opacity_only_bg_noop PASSED [ 25%]
tests/renderables/test_tint.py::test_tint PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_no_highlight PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_from_zero PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_from_zero_point_five PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_middle PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_half_start PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_half_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_half_start_and_half_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_to_near_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_to_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_out_of_bounds_start PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_out_of_bounds_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_full_range_out_of_bounds_end PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_highlight_full_range_out_of_bounds_start PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_custom_styles PASSED [ 25%]
tests/renderables/test_underline_bar.py::test_clickable_ranges PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_value_is_blank_by_default PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_setting_and_checking_blank PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_clear_with_allow_blanks PASSED [ 25%]
tests/select/test_blank_and_clear.py::test_clear_fails_if_allow_blank_is_false PASSED [ 25%]
tests/select/test_changed_message.py::test_message_control PASSED [ 25%]
tests/select/test_changed_message.py::test_selecting_posts_message PASSED [ 25%]
tests/select/test_changed_message.py::test_same_selection_does_not_post_message PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_select_is_ok_with_blanks PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_set_options_is_ok_with_blanks PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_select_raises_exception_if_allow_blank_is_false PASSED [ 26%]
tests/select/test_empty_select.py::test_empty_set_options_raises_exception_if_allow_blank_is_false PASSED [ 26%]
tests/select/test_prompt.py::test_reactive_prompt_change PASSED [ 26%]
tests/select/test_prompt.py::test_reactive_prompt_change_when_allow_blank_is_false PASSED [ 26%]
tests/select/test_value.py::test_initial_value_is_validated PASSED [ 26%]
tests/select/test_value.py::test_value_unknown_option_raises_error PASSED [ 26%]
tests/select/test_value.py::test_initial_value_inside_compose_is_validated PASSED [ 26%]
tests/select/test_value.py::test_value_assign_to_blank PASSED [ 26%]
tests/select/test_value.py::test_initial_value_is_picked_if_allow_blank_is_false PASSED [ 26%]
tests/select/test_value.py::test_set_value_to_blank_with_allow_blank_false PASSED [ 26%]
tests/select/test_value.py::test_set_options_resets_value_to_blank PASSED [ 26%]
tests/select/test_value.py::test_set_options_resets_value_if_allow_blank_is_false PASSED [ 26%]
tests/selection_list/test_over_wide_selections.py::test_over_wide_options PASSED [ 26%]
tests/selection_list/test_selection_click_checkbox.py::test_click_on_prompt PASSED [ 26%]
tests/selection_list/test_selection_click_checkbox.py::test_click_on_checkbox PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_all_parameters_become_selctions PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_get_selection_by_index PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_get_selection_by_id PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_add_later PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_add_later_selcted_state PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_add_non_selections PASSED [ 26%]
tests/selection_list/test_selection_list_create.py::test_clear_options PASSED [ 27%]
tests/selection_list/test_selection_list_create.py::test_options_are_available_soon PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_messages_on_startup PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_new_highlight PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_toggle PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_toggle_via_user PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_toggle_all PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_selected PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_all PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_all_selected PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_deselect PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_deselect_deselected PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_deselect_all PASSED [ 27%]
tests/selection_list/test_selection_messages.py::test_select_then_deselect_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_empty_selected PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_select PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_select_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_deselect PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_deselect_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_toggle PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_programatic_toggle_all PASSED [ 27%]
tests/selection_list/test_selection_values.py::test_removal_of_selected_item PASSED [ 27%]
tests/suggester/test_input_suggestions.py::test_no_suggestions PASSED [ 27%]
tests/suggester/test_input_suggestions.py::test_suggestion PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_accept_suggestion PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_no_suggestion_on_empty_value PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_no_suggestion_on_empty_value_after_deleting PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_shows_up_after_deleting_extra_chars PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_shows_up_after_deleting_extra_chars_in_middle_of_word PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[.......-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[hey there-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[Ol\xe1, tudo bem?-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[\xe1\xe0\xf3\xe3\xf5\xf1\xe7-2] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[!"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~-3] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[~}|{`_^]\\[@?>=<;:/.-,+*)('&%$#"!-5] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_with_special_characters[!$'*-:=@]`}-5] PASSED [ 28%]
tests/suggester/test_input_suggestions.py::test_suggestion_priority PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[s] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[S] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[sc] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[sC] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[Sc] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_case_insensitive_suggestions[SC] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[p] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[P] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[po] PASSED [ 28%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[Po] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[pO] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[PO] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[port] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[Port] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[pORT] PASSED [ 29%]
tests/suggester/test_suggest_from_list.py::test_first_suggestion_has_priority_case_insensitive[PORT] PASSED [ 29%]
tests/suggester/test_suggester.py::test_cache_on PASSED [ 29%]
tests/suggester/test_suggester.py::test_cache_off PASSED [ 29%]
tests/suggester/test_suggester.py::test_suggestion_ready_message PASSED [ 29%]
tests/suggester/test_suggester.py::test_no_message_if_no_suggestion PASSED [ 29%]
tests/suggester/test_suggester.py::test_suggestion_ready_message_on_cache_hit PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[hello] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[HELLO] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[HeLlO] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[Hello] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_suggestions[hELLO] PASSED [ 29%]
tests/suggester/test_suggester.py::test_case_insensitive_cache_hits PASSED [ 29%]
tests/test_actions.py::test_parse_action[spam-spam-expected_arguments0] PASSED [ 29%]
tests/test_actions.py::test_parse_action[hypothetical_action()-hypothetical_action-expected_arguments1] PASSED [ 29%]
tests/test_actions.py::test_parse_action[another_action(1)-another_action-expected_arguments2] PASSED [ 29%]
tests/test_actions.py::test_parse_action[foo(True, False)-foo-expected_arguments3] PASSED [ 29%]
tests/test_actions.py::test_parse_action[foo.bar.baz(3, 3.15, 'Python')-foo.bar.baz-expected_arguments4] PASSED [ 29%]
tests/test_actions.py::test_parse_action[m1234.n5678(None, [1, 2])-m1234.n5678-expected_arguments5] PASSED [ 29%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f()-expected_arguments0] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f(())-expected_arguments1] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((1, 2, 3))-expected_arguments2] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((1, 2, 3), (1, 2, 3))-expected_arguments3] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f(((1, 2), (), None), 0)-expected_arguments4] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((((((1))))))-expected_arguments5] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f(((((((((1, 2)))))))))-expected_arguments6] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((1, 2), (3, 4))-expected_arguments7] PASSED [ 30%]
tests/test_actions.py::test_nested_and_convoluted_tuple_arguments[f((((((1, 2), (3, 4))))))-expected_arguments8] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('')-expected_arguments0] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f("")-expected_arguments1] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('''''')-expected_arguments2] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f("""""")-expected_arguments3] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('(')-expected_arguments4] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f(')')-expected_arguments5] PASSED [ 30%]
tests/test_actions.py::test_parse_action_nested_special_character_arguments[f('f()')-expected_arguments6] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[foo(,,,,,)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[bar(1 2 3 4 5)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[baz.spam(Tru, Fals, in)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[ham(not)] PASSED [ 30%]
tests/test_actions.py::test_parse_action_raises_error[cheese((((()] PASSED [ 30%]
tests/test_animation.py::test_animate_height PASSED [ 30%]
tests/test_animation.py::test_scheduling_animation PASSED [ 30%]
tests/test_animation.py::test_wait_for_current_animations PASSED [ 30%]
tests/test_animation.py::test_wait_for_current_and_scheduled_animations PASSED [ 31%]
tests/test_animation.py::test_reverse_animations PASSED [ 31%]
tests/test_animation.py::test_schedule_reverse_animations PASSED [ 31%]
tests/test_animation.py::test_cancel_app_animation PASSED [ 31%]
tests/test_animation.py::test_cancel_app_non_animation PASSED [ 31%]
tests/test_animation.py::test_cancel_widget_animation PASSED [ 31%]
tests/test_animation.py::test_cancel_widget_non_animation PASSED [ 31%]
tests/test_animator.py::test_simple_animation PASSED [ 31%]
tests/test_animator.py::test_simple_animation_duration_zero PASSED [ 31%]
tests/test_animator.py::test_simple_animation_reverse PASSED [ 31%]
tests/test_animator.py::test_animatable PASSED [ 31%]
tests/test_animator.py::test_animator PASSED [ 31%]
tests/test_animator.py::test_bound_animator PASSED [ 31%]
tests/test_animator.py::test_animator_on_complete_callback_not_fired_before_duration_ends PASSED [ 31%]
tests/test_animator.py::test_animator_on_complete_callback_fired_at_duration PASSED [ 31%]
tests/test_animator.py::test_force_stop_animation PASSED [ 31%]
tests/test_app.py::test_batch_update PASSED [ 31%]
tests/test_app.py::test_hover_update_styles PASSED [ 31%]
tests/test_app.py::test_setting_title PASSED [ 31%]
tests/test_app.py::test_setting_sub_title PASSED [ 31%]
tests/test_app.py::test_default_return_code_is_zero PASSED [ 31%]
tests/test_app.py::test_return_code_is_one_after_crash PASSED [ 31%]
tests/test_app.py::test_set_return_code PASSED [ 31%]
tests/test_app.py::test_no_return_code_before_running PASSED [ 31%]
tests/test_app.py::test_no_return_code_while_running PASSED [ 32%]
tests/test_arrange.py::test_arrange_empty PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_top PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_left PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_right PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_bottom PASSED [ 32%]
tests/test_arrange.py::test_arrange_dock_badly PASSED [ 32%]
tests/test_auto_refresh.py::test_auto_refresh PASSED [ 32%]
tests/test_await_remove.py::test_multiple_simultaneous_removals PASSED [ 32%]
tests/test_binding.py::test_bindings_get_key PASSED [ 32%]
tests/test_binding.py::test_bindings_get_key_spaced_list PASSED [ 32%]
tests/test_binding.py::test_bindings_merge_simple PASSED [ 32%]
tests/test_binding.py::test_bindings_merge_overlap PASSED [ 32%]
tests/test_binding.py::test_bad_binding_tuple PASSED [ 32%]
tests/test_binding.py::test_binding_from_tuples PASSED [ 32%]
tests/test_binding.py::test_shown PASSED [ 32%]
tests/test_binding.py::test_invalid_binding PASSED [ 32%]
tests/test_binding_inheritance.py::test_just_app_no_bindings PASSED [ 32%]
tests/test_binding_inheritance.py::test_just_app_alpha_binding PASSED [ 32%]
tests/test_binding_inheritance.py::test_just_app_low_priority_alpha_binding PASSED [ 32%]
tests/test_binding_inheritance.py::test_app_screen_with_bindings PASSED [ 32%]
tests/test_binding_inheritance.py::test_app_screen_with_low_bindings PASSED [ 32%]
tests/test_binding_inheritance.py::test_pressing_alpha_on_app PASSED [ 32%]
tests/test_binding_inheritance.py::test_pressing_movement_keys_app PASSED [ 32%]
tests/test_binding_inheritance.py::test_focused_child_widget_with_movement_bindings PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_contained_focused_child_widget_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_with_movement_bindings_no_inherit PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_no_inherit_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_focused_child_widget_no_inherit_empty_bindings_with_movement_bindings_on_screen PASSED [ 33%]
tests/test_binding_inheritance.py::test_overlapping_priority_bindings PASSED [ 33%]
tests/test_binding_inheritance.py::test_skip_action PASSED [ 33%]
tests/test_border.py::test_border_render_row PASSED [ 33%]
tests/test_border.py::test_border_title_single_line PASSED [ 33%]
tests/test_border.py::test_border_subtitle_single_line PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-True-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-False-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[10-False-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-True-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-False-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_empty_label_skipped[1-False-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-2-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-2-True-False] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-2-False-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-3-True-True] PASSED [ 33%]
tests/test_border.py::test_render_border_label_skipped_if_narrow[hey-4-True-True] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[Why did the scarecrow] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[win a Nobel prize?] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[because it was outstanding] PASSED [ 34%]
tests/test_border.py::test_render_border_label_wide_plain[in its field.] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[b][/]] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[i b][/]] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[white on red][/]] PASSED [ 34%]
tests/test_border.py::test_render_border_empty_text_with_markup[[blue]] PASSED [ 34%]
tests/test_border.py::test_render_border_label PASSED [ 34%]
tests/test_border_subtitle.py::test_border_subtitle PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad10-quad20-expected0] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad11-quad21-expected1] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad12-quad22-expected2] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad13-quad23-expected3] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad14-quad24-expected4] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad15-quad25-expected5] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad16-quad26-expected6] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad17-quad27-expected7] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad18-quad28-expected8] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad19-quad29-expected9] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad110-quad210-expected10] PASSED [ 34%]
tests/test_box_drawing.py::test_box_combine_quads[quad111-quad211-expected11] PASSED [ 34%]
tests/test_box_model.py::test_content_box PASSED [ 34%]
tests/test_box_model.py::test_width PASSED [ 35%]
tests/test_box_model.py::test_height PASSED [ 35%]
tests/test_box_model.py::test_max PASSED [ 35%]
tests/test_box_model.py::test_min PASSED [ 35%]
tests/test_cache.py::test_lru_cache PASSED [ 35%]
tests/test_cache.py::test_lru_cache_hits PASSED [ 35%]
tests/test_cache.py::test_lru_cache_get PASSED [ 35%]
tests/test_cache.py::test_lru_cache_maxsize PASSED [ 35%]
tests/test_cache.py::test_lru_cache_mapping PASSED [ 35%]
tests/test_cache.py::test_lru_cache_clear PASSED [ 35%]
tests/test_cache.py::test_lru_cache_bool PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys0-expected0] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys1-expected1] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys2-expected2] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys3-expected3] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys4-expected4] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_evicts[keys5-expected5] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys0-0] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys1-1] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys2-2] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys3-3] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys4-3] PASSED [ 35%]
tests/test_cache.py::test_lru_cache_len[keys5-3] PASSED [ 35%]
tests/test_cache.py::test_fifo_cache PASSED [ 35%]
tests/test_cache.py::test_fifo_cache_hits PASSED [ 36%]
tests/test_cache.py::test_discard PASSED [ 36%]
tests/test_cache.py::test_discard_regression PASSED [ 36%]
tests/test_call_x_schedulers.py::test_call_later PASSED [ 36%]
tests/test_call_x_schedulers.py::test_call_after_refresh PASSED [ 36%]
tests/test_case.py::test_camel_to_snake PASSED [ 36%]
tests/test_collapsible.py::test_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_default_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_empty_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_nested_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_compose_expanded_collapsible PASSED [ 36%]
tests/test_collapsible.py::test_collapsible_collapsed_contents_display_false PASSED [ 36%]
tests/test_collapsible.py::test_collapsible_expanded_contents_display_true PASSED [ 36%]
tests/test_collapsible.py::test_toggle_title PASSED [ 36%]
tests/test_collapsible.py::test_toggle_message PASSED [ 36%]
tests/test_collapsible.py::test_expand_message PASSED [ 36%]
tests/test_collapsible.py::test_collapse_message PASSED [ 36%]
tests/test_collapsible.py::test_collapsible_title_reactive_change PASSED [ 36%]
tests/test_color.py::test_rich_color PASSED [ 36%]
tests/test_color.py::test_normalized PASSED [ 36%]
tests/test_color.py::test_clamped PASSED [ 36%]
tests/test_color.py::test_css PASSED [ 36%]
tests/test_color.py::test_monochrome PASSED [ 36%]
tests/test_color.py::test_rgb PASSED [ 36%]
tests/test_color.py::test_hsl PASSED [ 37%]
tests/test_color.py::test_color_brightness PASSED [ 37%]
tests/test_color.py::test_color_hex PASSED [ 37%]
tests/test_color.py::test_color_hex6 PASSED [ 37%]
tests/test_color.py::test_color_css PASSED [ 37%]
tests/test_color.py::test_color_with_alpha PASSED [ 37%]
tests/test_color.py::test_multiply_alpha PASSED [ 37%]
tests/test_color.py::test_color_blend PASSED [ 37%]
tests/test_color.py::test_color_parse[#000000-expected0] PASSED [ 37%]
tests/test_color.py::test_color_parse[#ffffff-expected1] PASSED [ 37%]
tests/test_color.py::test_color_parse[#FFFFFF-expected2] PASSED [ 37%]
tests/test_color.py::test_color_parse[#fab-expected3] PASSED [ 37%]
tests/test_color.py::test_color_parse[#fab0-expected4] PASSED [ 37%]
tests/test_color.py::test_color_parse[#020304ff-expected5] PASSED [ 37%]
tests/test_color.py::test_color_parse[#02030400-expected6] PASSED [ 37%]
tests/test_color.py::test_color_parse[#0203040f-expected7] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgb(0,0,0)-expected8] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgb(255,255,255)-expected9] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgba(255,255,255,1)-expected10] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgb(2,3,4)-expected11] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgba(2,3,4,1.0)-expected12] PASSED [ 37%]
tests/test_color.py::test_color_parse[rgba(2,3,4,0.058823529411764705)-expected13] PASSED [ 37%]
tests/test_color.py::test_color_parse[hsl(45,25%,25%)-expected14] PASSED [ 37%]
tests/test_color.py::test_color_parse[hsla(45,25%,25%,0.35)-expected15] PASSED [ 37%]
tests/test_color.py::test_color_parse_input_has_spaces[rgb( 300, 300 , 300 )-output0] PASSED [ 38%]
tests/test_color.py::test_color_parse_input_has_spaces[rgba( 2 , 3 , 4, 1.0 )-output1] PASSED [ 38%]
tests/test_color.py::test_color_parse_input_has_spaces[hsl( 45, 25% , 25% )-output2] PASSED [ 38%]
tests/test_color.py::test_color_parse_input_has_spaces[hsla( 45, 25% , 25%, 0.35 )-output3] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[rgb(300, 300, 300)-output0] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[rgba(300, 300, 300, 300)-output1] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[hsl(400, 200%, 250%)-output2] PASSED [ 38%]
tests/test_color.py::test_color_parse_clamp[hsla(400, 200%, 250%, 1.9)-output3] PASSED [ 38%]
tests/test_color.py::test_color_parse_hsl_negative_degrees PASSED [ 38%]
tests/test_color.py::test_color_parse_hsla_negative_degrees PASSED [ 38%]
tests/test_color.py::test_color_parse_color PASSED [ 38%]
tests/test_color.py::test_color_add PASSED [ 38%]
tests/test_color.py::test_color_darken PASSED [ 38%]
tests/test_color.py::test_color_lighten PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[10-23-73-10.245-15.913--32.672] PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[200-34-123-45.438-67.75--8.008] PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[0-0-0-0-0-0] PASSED [ 38%]
tests/test_color.py::test_rgb_to_lab[255-255-255-100-0-0] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[10-23-73-10.245-15.913--32.672] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[200-34-123-45.438-67.75--8.008] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[0-0-0-0-0-0] PASSED [ 38%]
tests/test_color.py::test_lab_to_rgb[255-255-255-100-0-0] PASSED [ 38%]
tests/test_color.py::test_rgb_lab_rgb_roundtrip PASSED [ 38%]
tests/test_color.py::test_inverse PASSED [ 38%]
tests/test_color.py::test_gradient_errors PASSED [ 39%]
tests/test_color.py::test_gradient PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_no_regions PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_single_region PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_partially_overlapping_regions PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_fully_overlapping_regions PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_disjoint_regions_different_lines PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_disjoint_regions_same_line PASSED [ 39%]
tests/test_compositor_regions_to_spans.py::test_regions_to_ranges_directly_adjacent_ranges_merged PASSED [ 39%]
tests/test_concurrency.py::test_call_from_thread_app_not_running PASSED [ 39%]
tests/test_concurrency.py::test_call_from_thread PASSED [ 39%]
tests/test_containers.py::test_horizontal_vs_horizontalscroll_scrolling PASSED [ 39%]
tests/test_containers.py::test_vertical_vs_verticalscroll_scrolling PASSED [ 39%]
tests/test_containers.py::test_center_container PASSED [ 39%]
tests/test_containers.py::test_middle_container PASSED [ 39%]
tests/test_containers.py::test_scrollbar_zero_thickness PASSED [ 39%]
tests/test_content_switcher.py::test_no_initial_display PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display PASSED [ 39%]
tests/test_content_switcher.py::test_no_initial_display_then_set PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display_then_change PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display_then_hide PASSED [ 39%]
tests/test_content_switcher.py::test_initial_display_unknown_id XFAILs
related to https://github.com/Textualize/textual/issues/1972) [ 39%]
tests/test_content_switcher.py::test_set_current_to_unknown_id PASSED [ 39%]
tests/test_dark_toggle.py::test_toggle_dark_on_load PASSED [ 39%]
tests/test_dark_toggle.py::test_toggle_dark_on_mount PASSED [ 40%]
tests/test_dark_toggle.py::test_toggle_dark_in_action PASSED [ 40%]
tests/test_data_bind.py::test_data_binding PASSED [ 40%]
tests/test_data_bind.py::test_data_binding_missing_reactive PASSED [ 40%]
tests/test_data_table.py::test_datatable_message_emission PASSED [ 40%]
tests/test_data_table.py::test_empty_table_interactions PASSED [ 40%]
tests/test_data_table.py::test_cursor_movement_with_home_pagedown_etc[True] PASSED [ 40%]
tests/test_data_table.py::test_cursor_movement_with_home_pagedown_etc[False] PASSED [ 40%]
tests/test_data_table.py::test_add_rows PASSED [ 40%]
tests/test_data_table.py::test_add_rows_user_defined_keys PASSED [ 40%]
tests/test_data_table.py::test_add_row_duplicate_key PASSED [ 40%]
tests/test_data_table.py::test_add_column_duplicate_key PASSED [ 40%]
tests/test_data_table.py::test_add_column_with_width PASSED [ 40%]
tests/test_data_table.py::test_add_columns PASSED [ 40%]
tests/test_data_table.py::test_add_columns_user_defined_keys PASSED [ 40%]
tests/test_data_table.py::test_remove_row PASSED [ 40%]
tests/test_data_table.py::test_remove_row_and_update PASSED [ 40%]
tests/test_data_table.py::test_remove_column PASSED [ 40%]
tests/test_data_table.py::test_remove_column_and_update PASSED [ 40%]
tests/test_data_table.py::test_clear PASSED [ 40%]
tests/test_data_table.py::test_column_labels PASSED [ 40%]
tests/test_data_table.py::test_initial_column_widths PASSED [ 40%]
tests/test_data_table.py::test_get_cell_returns_value_at_cell PASSED [ 40%]
tests/test_data_table.py::test_get_cell_invalid_row_key PASSED [ 40%]
tests/test_data_table.py::test_get_cell_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_get_cell_coordinate_returns_coordinate PASSED [ 41%]
tests/test_data_table.py::test_get_cell_coordinate_invalid_row_key PASSED [ 41%]
tests/test_data_table.py::test_get_cell_coordinate_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_get_cell_at_returns_value_at_cell PASSED [ 41%]
tests/test_data_table.py::test_get_cell_at_exception PASSED [ 41%]
tests/test_data_table.py::test_get_row PASSED [ 41%]
tests/test_data_table.py::test_get_row_invalid_row_key PASSED [ 41%]
tests/test_data_table.py::test_get_row_at PASSED [ 41%]
tests/test_data_table.py::test_get_row_at_invalid_index[-1] PASSED [ 41%]
tests/test_data_table.py::test_get_row_at_invalid_index[2] PASSED [ 41%]
tests/test_data_table.py::test_get_row_index_returns_index PASSED [ 41%]
tests/test_data_table.py::test_get_row_index_invalid_row_key PASSED [ 41%]
tests/test_data_table.py::test_get_column PASSED [ 41%]
tests/test_data_table.py::test_get_column_invalid_key PASSED [ 41%]
tests/test_data_table.py::test_get_column_at PASSED [ 41%]
tests/test_data_table.py::test_get_column_at_invalid_index[-1] PASSED [ 41%]
tests/test_data_table.py::test_get_column_at_invalid_index[5] PASSED [ 41%]
tests/test_data_table.py::test_get_column_index_returns_index PASSED [ 41%]
tests/test_data_table.py::test_get_column_index_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_update_cell_cell_exists PASSED [ 41%]
tests/test_data_table.py::test_update_cell_cell_doesnt_exist PASSED [ 41%]
tests/test_data_table.py::test_update_cell_invalid_column_key PASSED [ 41%]
tests/test_data_table.py::test_update_cell_at_coordinate_exists PASSED [ 41%]
tests/test_data_table.py::test_update_cell_at_coordinate_doesnt_exist PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[A-BB-3] PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[1234567-1234-7] PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[12345-123-5] PASSED [ 42%]
tests/test_data_table.py::test_update_cell_at_column_width[12345-123456789-9] PASSED [ 42%]
tests/test_data_table.py::test_coordinate_to_cell_key PASSED [ 42%]
tests/test_data_table.py::test_coordinate_to_cell_key_invalid_coordinate PASSED [ 42%]
tests/test_data_table.py::test_datatable_click_cell_cursor PASSED [ 42%]
tests/test_data_table.py::test_click_row_cursor PASSED [ 42%]
tests/test_data_table.py::test_click_column_cursor PASSED [ 42%]
tests/test_data_table.py::test_hover_coordinate PASSED [ 42%]
tests/test_data_table.py::test_hover_mouse_leave PASSED [ 42%]
tests/test_data_table.py::test_header_selected PASSED [ 42%]
tests/test_data_table.py::test_row_label_selected PASSED [ 42%]
tests/test_data_table.py::test_sort_coordinate_and_key_access PASSED [ 42%]
tests/test_data_table.py::test_sort_reverse_coordinate_and_key_access PASSED [ 42%]
tests/test_data_table.py::test_cell_cursor_highlight_events PASSED [ 42%]
tests/test_data_table.py::test_row_cursor_highlight_events PASSED [ 42%]
tests/test_data_table.py::test_column_cursor_highlight_events PASSED [ 42%]
tests/test_data_table.py::test_reuse_row_key_after_clear PASSED [ 42%]
tests/test_data_table.py::test_reuse_column_key_after_clear PASSED [ 42%]
tests/test_data_table.py::test_key_equals_equivalent_string PASSED [ 42%]
tests/test_data_table.py::test_key_doesnt_match_non_equal_string PASSED [ 42%]
tests/test_data_table.py::test_key_equals_self PASSED [ 42%]
tests/test_data_table.py::test_key_string_lookup PASSED [ 43%]
tests/test_data_table.py::test_scrolling_cursor_into_view PASSED [ 43%]
tests/test_data_table.py::test_move_cursor PASSED [ 43%]
tests/test_data_table.py::test_unset_hover_highlight_when_no_table_cell_under_mouse PASSED [ 43%]
tests/test_data_table.py::test_sort_by_all_columns_no_key PASSED [ 43%]
tests/test_data_table.py::test_sort_by_multiple_columns_no_key PASSED [ 43%]
tests/test_data_table.py::test_sort_by_function_sum PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[hey there-1] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[cell1-1] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[cell2-2] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[cell3-4] PASSED [ 43%]
tests/test_data_table.py::test_add_row_auto_height[1\n2\n3\n4\n5\n6\n7-7] PASSED [ 43%]
tests/test_data_table.py::test_add_row_expands_column_widths PASSED [ 43%]
tests/test_data_table.py::test_cell_padding_updates_virtual_size PASSED [ 43%]
tests/test_data_table.py::test_cell_padding_cannot_be_negative PASSED [ 43%]
tests/test_data_table.py::test_move_cursor_respects_animate_parameter PASSED [ 43%]
tests/test_disabled.py::test_all_initially_enabled PASSED [ 43%]
tests/test_disabled.py::test_enabled_widgets_have_enabled_pseudo_class PASSED [ 43%]
tests/test_disabled.py::test_all_individually_disabled PASSED [ 43%]
tests/test_disabled.py::test_disabled_widgets_have_disabled_pseudo_class PASSED [ 43%]
tests/test_disabled.py::test_disable_via_container PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Button] PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Checkbox] PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[DataTable] PASSED [ 43%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[DirectoryTree] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Input] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[ListView] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[OptionList] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[RadioSet] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Select] PASSED [ 44%]
tests/test_disabled.py::test_children_loses_focus_if_container_is_disabled[Switch] PASSED [ 44%]
tests/test_dom.py::test_display_default PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[True-block] PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[False-none] PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[block-block] PASSED [ 44%]
tests/test_dom.py::test_display_set_bool[none-none] PASSED [ 44%]
tests/test_dom.py::test_display_set_invalid_value PASSED [ 44%]
tests/test_dom.py::test_validate PASSED [ 44%]
tests/test_dom.py::test_classes_setter PASSED [ 44%]
tests/test_dom.py::test_classes_setter_iterable PASSED [ 44%]
tests/test_dom.py::test_classes_set_classes PASSED [ 44%]
tests/test_dom.py::test_inherited_bindings PASSED [ 44%]
tests/test_dom.py::test__get_default_css PASSED [ 44%]
tests/test_dom.py::test_component_classes_inheritance PASSED [ 44%]
tests/test_dom.py::test_walk_children_depth PASSED [ 44%]
tests/test_dom.py::test_walk_children_with_self_depth PASSED [ 44%]
tests/test_dom.py::test_walk_children_breadth PASSED [ 44%]
tests/test_dom.py::test_walk_children_with_self_breadth PASSED [ 44%]
tests/test_dom.py::test_id_validation[ bad] PASSED [ 45%]
tests/test_dom.py::test_id_validation[ terrible ] PASSED [ 45%]
tests/test_dom.py::test_id_validation[worse! ] PASSED [ 45%]
tests/test_dom.py::test_id_validation[&ersand] PASSED [ 45%]
tests/test_dom.py::test_id_validation[amper&sand] PASSED [ 45%]
tests/test_dom.py::test_id_validation[ampersand&] PASSED [ 45%]
tests/test_dom.py::test_id_validation[2_leading_digits] PASSED [ 45%]
tests/test_dom.py::test_id_validation[\xe1gua] PASSED [ 45%]
tests/test_dom.py::test_id_validation[c\xe3o] PASSED [ 45%]
tests/test_dom.py::test_id_validation[@'/.23] PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_up_click PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_up_click_widget PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_drag_inside_widget_up_click PASSED [ 45%]
tests/test_driver.py::test_driver_mouse_down_drag_outside_widget_up_click PASSED [ 45%]
tests/test_easing.py::test_coverage PASSED [ 45%]
tests/test_easing.py::test_easings PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[ b ar - b ar ] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\tbar- bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\tbar\t- bar ] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\tr\t- r ] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[1\tbar-1 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[12\tbar-12 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[123\tbar-123 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[1234\tbar-1234 bar] PASSED [ 45%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\U0001f4a9\tbar-\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\U0001f4a9\U0001f4a9\tbar-\U0001f4a9\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[\U0001f4a9\U0001f4a9\U0001f4a9\tbar-\U0001f4a9\U0001f4a9\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[F\U0001f4a9\tbar-F\U0001f4a9 bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_expand_tabs_inline[F\U0001f4a9O\tbar-F\U0001f4a9O bar] PASSED [ 46%]
tests/test_expand_tabs.py::test_get_tab_widths PASSED [ 46%]
tests/test_file_monitor.py::test_repr PASSED [ 46%]
tests/test_file_monitor.py::test_file_never_found PASSED [ 46%]
tests/test_file_monitor.py::test_file_deletion PASSED [ 46%]
tests/test_focus.py::test_focus_chain PASSED [ 46%]
tests/test_focus.py::test_allow_focus PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous PASSED [ 46%]
tests/test_focus.py::test_focus_next_wrap_around PASSED [ 46%]
tests/test_focus.py::test_focus_previous_wrap_around PASSED [ 46%]
tests/test_focus.py::test_wrap_around_selector PASSED [ 46%]
tests/test_focus.py::test_no_focus_empty_selector PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_type_selector PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_str_selector PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_type_selector_without_self PASSED [ 46%]
tests/test_focus.py::test_focus_next_and_previous_with_str_selector_without_self PASSED [ 46%]
tests/test_focus.py::test_focus_does_not_move_to_invisible_widgets PASSED [ 46%]
tests/test_focus.py::test_focus_moves_to_visible_widgets_inside_invisible_containers PASSED [ 46%]
tests/test_focus.py::test_focus_chain_handles_inherited_visibility PASSED [ 46%]
tests/test_focus.py::test_mouse_down_gives_focus PASSED [ 46%]
tests/test_focus.py::test_mouse_up_does_not_give_focus PASSED [ 47%]
tests/test_focus.py::test_focus_pseudo_class PASSED [ 47%]
tests/test_freeze.py::test_freeze PASSED [ 47%]
tests/test_fuzzy.py::test_match PASSED [ 47%]
tests/test_fuzzy.py::test_highlight PASSED [ 47%]
tests/test_geometry.py::test_dimensions_region PASSED [ 47%]
tests/test_geometry.py::test_dimensions_contains PASSED [ 47%]
tests/test_geometry.py::test_dimensions_contains_point PASSED [ 47%]
tests/test_geometry.py::test_dimensions_contains_special PASSED [ 47%]
tests/test_geometry.py::test_dimensions_bool PASSED [ 47%]
tests/test_geometry.py::test_dimensions_area PASSED [ 47%]
tests/test_geometry.py::test_clamp PASSED [ 47%]
tests/test_geometry.py::test_offset_bool PASSED [ 47%]
tests/test_geometry.py::test_offset_is_origin PASSED [ 47%]
tests/test_geometry.py::test_clamped PASSED [ 47%]
tests/test_geometry.py::test_offset_add PASSED [ 47%]
tests/test_geometry.py::test_offset_sub PASSED [ 47%]
tests/test_geometry.py::test_offset_neg PASSED [ 47%]
tests/test_geometry.py::test_offset_mul PASSED [ 47%]
tests/test_geometry.py::test_offset_blend PASSED [ 47%]
tests/test_geometry.py::test_offset_get_distance_to PASSED [ 47%]
tests/test_geometry.py::test_region_null PASSED [ 47%]
tests/test_geometry.py::test_region_from_union PASSED [ 47%]
tests/test_geometry.py::test_region_from_offset PASSED [ 47%]
tests/test_geometry.py::test_get_scroll_to_visible[window0-region0-scroll0] PASSED [ 48%]
tests/test_geometry.py::test_get_scroll_to_visible[window1-region1-scroll1] PASSED [ 48%]
tests/test_geometry.py::test_get_scroll_to_visible[window2-region2-scroll2] PASSED [ 48%]
tests/test_geometry.py::test_region_area PASSED [ 48%]
tests/test_geometry.py::test_region_size PASSED [ 48%]
tests/test_geometry.py::test_region_origin PASSED [ 48%]
tests/test_geometry.py::test_region_bottom_left PASSED [ 48%]
tests/test_geometry.py::test_region_top_right PASSED [ 48%]
tests/test_geometry.py::test_region_bottom_right PASSED [ 48%]
tests/test_geometry.py::test_region_add PASSED [ 48%]
tests/test_geometry.py::test_region_sub PASSED [ 48%]
tests/test_geometry.py::test_region_at_offset PASSED [ 48%]
tests/test_geometry.py::test_crop_size PASSED [ 48%]
tests/test_geometry.py::test_clip_size PASSED [ 48%]
tests/test_geometry.py::test_region_overlaps PASSED [ 48%]
tests/test_geometry.py::test_region_contains PASSED [ 48%]
tests/test_geometry.py::test_region_contains_point PASSED [ 48%]
tests/test_geometry.py::test_region_contains_region PASSED [ 48%]
tests/test_geometry.py::test_region_translate PASSED [ 48%]
tests/test_geometry.py::test_region_contains_special PASSED [ 48%]
tests/test_geometry.py::test_clip PASSED [ 48%]
tests/test_geometry.py::test_region_shrink PASSED [ 48%]
tests/test_geometry.py::test_region_grow PASSED [ 48%]
tests/test_geometry.py::test_region_intersection PASSED [ 48%]
tests/test_geometry.py::test_region_union PASSED [ 49%]
tests/test_geometry.py::test_size_add PASSED [ 49%]
tests/test_geometry.py::test_size_sub PASSED [ 49%]
tests/test_geometry.py::test_size_line_range PASSED [ 49%]
tests/test_geometry.py::test_region_x_extents PASSED [ 49%]
tests/test_geometry.py::test_region_y_extents PASSED [ 49%]
tests/test_geometry.py::test_region_x_max PASSED [ 49%]
tests/test_geometry.py::test_region_y_max PASSED [ 49%]
tests/test_geometry.py::test_region_columns_range PASSED [ 49%]
tests/test_geometry.py::test_region_lines_range PASSED [ 49%]
tests/test_geometry.py::test_region_reset_offset PASSED [ 49%]
tests/test_geometry.py::test_region_expand PASSED [ 49%]
tests/test_geometry.py::test_spacing_bool PASSED [ 49%]
tests/test_geometry.py::test_spacing_width PASSED [ 49%]
tests/test_geometry.py::test_spacing_height PASSED [ 49%]
tests/test_geometry.py::test_spacing_top_left PASSED [ 49%]
tests/test_geometry.py::test_spacing_bottom_right PASSED [ 49%]
tests/test_geometry.py::test_spacing_totals PASSED [ 49%]
tests/test_geometry.py::test_spacing_css PASSED [ 49%]
tests/test_geometry.py::test_spacing_unpack PASSED [ 49%]
tests/test_geometry.py::test_spacing_add PASSED [ 49%]
tests/test_geometry.py::test_spacing_sub PASSED [ 49%]
tests/test_geometry.py::test_spacing_convenience_constructors PASSED [ 49%]
tests/test_geometry.py::test_split PASSED [ 50%]
tests/test_geometry.py::test_split_negative PASSED [ 50%]
tests/test_geometry.py::test_split_vertical PASSED [ 50%]
tests/test_geometry.py::test_split_vertical_negative PASSED [ 50%]
tests/test_geometry.py::test_split_horizontal PASSED [ 50%]
tests/test_geometry.py::test_split_horizontal_negative PASSED [ 50%]
tests/test_geometry.py::test_translate_inside PASSED [ 50%]
tests/test_geometry.py::test_inflect PASSED [ 50%]
tests/test_header.py::test_screen_title_none_is_ignored PASSED [ 50%]
tests/test_header.py::test_screen_title_overrides_app_title PASSED [ 50%]
tests/test_header.py::test_screen_title_reactive_updates_title PASSED [ 50%]
tests/test_header.py::test_app_title_reactive_does_not_update_title_when_screen_title_is_set PASSED [ 50%]
tests/test_header.py::test_screen_sub_title_none_is_ignored PASSED [ 50%]
tests/test_header.py::test_screen_sub_title_overrides_app_sub_title PASSED [ 50%]
tests/test_header.py::test_screen_sub_title_reactive_updates_sub_title PASSED [ 50%]
tests/test_header.py::test_app_sub_title_reactive_does_not_update_sub_title_when_screen_sub_title_is_set PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_empty_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_non_empty_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_no_assign_to_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_no_del_from_iummutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_get_item_from_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_get_slice_from_immutable_sequence PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_immutable_sequence_contains PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_immutable_sequence_index PASSED [ 50%]
tests/test_immutable_sequence_view.py::test_reverse_immutable_sequence PASSED [ 51%]
tests/test_keys.py::test_character_to_key[1-1] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[2-2] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[a-a] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[z-z] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[_-underscore] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[ -space] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[~-tilde] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[?-question_mark] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[\xa3-pound_sign] PASSED [ 51%]
tests/test_keys.py::test_character_to_key[,-comma] PASSED [ 51%]
tests/test_keys.py::test_character_bindings PASSED [ 51%]
tests/test_keys.py::test_get_key_display PASSED [ 51%]
tests/test_keys.py::test_get_key_display_when_used_in_conjunction PASSED [ 51%]
tests/test_layout_resolve.py::test_empty PASSED [ 51%]
tests/test_layout_resolve.py::test_total_zero PASSED [ 51%]
tests/test_layout_resolve.py::test_single PASSED [ 51%]
tests/test_layout_resolve.py::test_two PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges0-result0] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges1-result1] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges2-result2] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges3-result3] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges4-result4] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges5-result5] PASSED [ 51%]
tests/test_layout_resolve.py::test_multiple[10-edges6-result6] PASSED [ 52%]
tests/test_layout_resolve.py::test_multiple[2-edges7-result7] PASSED [ 52%]
tests/test_layout_resolve.py::test_multiple[2-edges8-result8] PASSED [ 52%]
tests/test_layout_resolve.py::test_multiple[18-edges9-result9] PASSED [ 52%]
tests/test_lazy.py::test_lazy PASSED [ 52%]
tests/test_line_filter.py::test_dim_apply PASSED [ 52%]
tests/test_line_split.py::test_split_string_to_lines_and_endings PASSED [ 52%]
tests/test_loading.py::test_loading_disables_and_remove_scrollbars PASSED [ 52%]
tests/test_log.py::test_process_line PASSED [ 52%]
tests/test_loop.py::test_loop_first PASSED [ 52%]
tests/test_loop.py::test_loop_last PASSED [ 52%]
tests/test_loop.py::test_loop_first_last PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[-expected_nodes0] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[# Hello-expected_nodes1] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[## Hello-expected_nodes2] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[### Hello-expected_nodes3] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[#### Hello-expected_nodes4] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[##### Hello-expected_nodes5] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[###### Hello-expected_nodes6] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[----expected_nodes7] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[Hello-expected_nodes8] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[Hello\nWorld-expected_nodes9] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[> Hello-expected_nodes10] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[- One\n-Two-expected_nodes11] PASSED [ 52%]
tests/test_markdown.py::test_markdown_nodes[1. One\n2. Two-expected_nodes12] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[ 1-expected_nodes13] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[```\n1\n```-expected_nodes14] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[```python\n1\n```-expected_nodes15] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[| One | Two |\n| :- | :- |\n| 1 | 2 |-expected_nodes16] PASSED [ 53%]
tests/test_markdown.py::test_markdown_nodes[- One\n```\nTwo\n```\n- Three\n-expected_nodes17] PASSED [ 53%]
tests/test_markdown.py::test_load_non_existing_file PASSED [ 53%]
tests/test_markdown.py::test_goto_anchor[hello-world-False] PASSED [ 53%]
tests/test_markdown.py::test_goto_anchor[hello-there-True] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_file_viewer_anchor_link[0] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_file_viewer_anchor_link[1] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_string_viewer_anchor_link[0] PASSED [ 53%]
tests/test_markdownviewer.py::test_markdown_string_viewer_anchor_link[1] PASSED [ 53%]
tests/test_message_handling.py::test_message_inheritance_namespace PASSED [ 53%]
tests/test_message_pump.py::test_dispatch_key_valid_key PASSED [ 53%]
tests/test_message_pump.py::test_dispatch_key_valid_key_alias PASSED [ 53%]
tests/test_message_pump.py::test_dispatch_key_raises_when_conflicting_handler_aliases PASSED [ 53%]
tests/test_message_pump.py::test_message_queue_size PASSED [ 53%]
tests/test_message_pump.py::test_prevent PASSED [ 53%]
tests/test_message_pump.py::test_prevent_with_call_next PASSED [ 53%]
tests/test_mount.py::test_render_only_after_mount PASSED [ 53%]
tests/test_node_list.py::test_empty_list PASSED [ 53%]
tests/test_node_list.py::test_add_one PASSED [ 53%]
tests/test_node_list.py::test_repeat_add_one PASSED [ 53%]
tests/test_node_list.py::test_insert PASSED [ 54%]
tests/test_node_list.py::test_truthy PASSED [ 54%]
tests/test_node_list.py::test_contains PASSED [ 54%]
tests/test_node_list.py::test_index PASSED [ 54%]
tests/test_node_list.py::test_remove PASSED [ 54%]
tests/test_node_list.py::test_clear PASSED [ 54%]
tests/test_node_list.py::test_listy PASSED [ 54%]
tests/test_on.py::test_on_button_pressed PASSED [ 54%]
tests/test_on.py::test_on_inheritance PASSED [ 54%]
tests/test_on.py::test_on_bad_selector PASSED [ 54%]
tests/test_on.py::test_on_no_control PASSED [ 54%]
tests/test_on.py::test_on_attribute_not_listed PASSED [ 54%]
tests/test_on.py::test_on_arbitrary_attributes PASSED [ 54%]
tests/test_on.py::test_fire_on_inherited_message PASSED [ 54%]
tests/test_on.py::test_fire_inherited_on_single_handler PASSED [ 54%]
tests/test_on.py::test_fire_inherited_on_single_handler_multi_selector PASSED [ 54%]
tests/test_on.py::test_fire_inherited_and_on_methods PASSED [ 54%]
tests/test_on.py::test_fire_on_inherited_message_plus_mixins PASSED [ 54%]
tests/test_overflow_change.py::test_overflow_change_updates_virtual_size_appropriately PASSED [ 54%]
tests/test_parser.py::test_read1 PASSED [ 54%]
tests/test_parser.py::test_read PASSED [ 54%]
tests/test_partition.py::test_partition PASSED [ 54%]
tests/test_paste.py::test_paste_app PASSED [ 54%]
tests/test_paste.py::test_empty_paste PASSED [ 54%]
tests/test_path.py::test_css_paths_of_various_types[app0-expected_css_path_attribute0] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app1-expected_css_path_attribute1] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app2-expected_css_path_attribute2] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app3-expected_css_path_attribute3] PASSED [ 55%]
tests/test_path.py::test_css_paths_of_various_types[app4-expected_css_path_attribute4] PASSED [ 55%]
tests/test_pilot.py::test_pilot_press_ascii_chars PASSED [ 55%]
tests/test_pilot.py::test_pilot_exception_catching_compose PASSED [ 55%]
tests/test_pilot.py::test_pilot_exception_catching_action PASSED [ 55%]
tests/test_pilot.py::test_pilot_click_screen PASSED [ 55%]
tests/test_pilot.py::test_pilot_hover_screen PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size0-offset0] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size1-offset1] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size2-offset2] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size3-offset3] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size4-offset4] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size5-offset5] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size6-offset6] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size7-offset7] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size8-offset8] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size9-offset9] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size10-offset10] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size11-offset11] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size12-offset12] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size13-offset13] PASSED [ 55%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size14-offset14] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[click-screen_size15-offset15] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size16-offset16] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size17-offset17] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size18-offset18] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size19-offset19] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size20-offset20] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size21-offset21] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size22-offset22] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size23-offset23] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size24-offset24] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size25-offset25] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size26-offset26] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size27-offset27] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size28-offset28] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size29-offset29] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size30-offset30] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[hover-screen_size31-offset31] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size32-offset32] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size33-offset33] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size34-offset34] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size35-offset35] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size36-offset36] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size37-offset37] PASSED [ 56%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size38-offset38] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size39-offset39] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size40-offset40] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size41-offset41] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size42-offset42] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size43-offset43] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size44-offset44] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size45-offset45] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size46-offset46] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_down-screen_size47-offset47] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size48-offset48] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size49-offset49] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size50-offset50] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size51-offset51] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size52-offset52] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size53-offset53] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size54-offset54] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size55-offset55] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size56-offset56] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size57-offset57] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size58-offset58] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size59-offset59] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size60-offset60] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size61-offset61] PASSED [ 57%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size62-offset62] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_outside_screen_errors[mouse_up-screen_size63-offset63] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset0] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset1] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset2] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset3] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset4] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset5] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset6] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset7] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[click-offset8] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset9] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset10] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset11] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset12] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset13] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset14] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset15] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset16] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[hover-offset17] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset18] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset19] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset20] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset21] PASSED [ 58%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset22] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset23] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset24] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset25] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_down-offset26] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset27] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset28] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset29] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset30] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset31] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset32] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset33] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset34] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_inside_screen_is_fine_with_correct_coordinate_system[mouse_up-offset35] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[click-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[click-#label90] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[click-Button] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[hover-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[hover-#label90] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[hover-Button] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_down-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_down-#label90] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_down-Button] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_up-#label0] PASSED [ 59%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_up-#label90] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_on_widget_that_is_not_visible_errors[mouse_up-Button] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[click] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[hover] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[mouse_down] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_widget_under_another_widget[mouse_up] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[click] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[hover] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[mouse_down] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_visible_widget[mouse_up] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset0] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset1] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset2] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[click-offset3] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset4] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset5] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset6] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[hover-offset7] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset8] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset9] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset10] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_down-offset11] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset12] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset13] PASSED [ 60%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset14] PASSED [ 61%]
tests/test_pilot.py::test_pilot_target_screen_always_true[mouse_up-offset15] PASSED [ 61%]
tests/test_placeholder.py::test_invalid_placeholder_variant PASSED [ 61%]
tests/test_placeholder.py::test_invalid_reactive_variant_change PASSED [ 61%]
tests/test_progress_bar.py::test_initial_status PASSED [ 61%]
tests/test_progress_bar.py::test_advance PASSED [ 61%]
tests/test_progress_bar.py::test_advance_backwards PASSED [ 61%]
tests/test_progress_bar.py::test_progress_overflow PASSED [ 61%]
tests/test_progress_bar.py::test_progress_underflow PASSED [ 61%]
tests/test_progress_bar.py::test_non_negative_total PASSED [ 61%]
tests/test_progress_bar.py::test_update_total PASSED [ 61%]
tests/test_progress_bar.py::test_update_progress PASSED [ 61%]
tests/test_progress_bar.py::test_update_advance PASSED [ 61%]
tests/test_progress_bar.py::test_update PASSED [ 61%]
tests/test_progress_bar.py::test_go_back_to_indeterminate PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-True-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-True-False] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-False-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[True-False-False] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-True-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-True-False] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-False-True] PASSED [ 61%]
tests/test_progress_bar.py::test_show_sub_widgets[False-False-False] PASSED [ 61%]
tests/test_query.py::test_query PASSED [ 61%]
tests/test_query.py::test_query_classes PASSED [ 62%]
tests/test_query.py::test_invalid_query PASSED [ 62%]
tests/test_query.py::test_universal_selector_doesnt_select_self PASSED [ 62%]
tests/test_query.py::test_query_set_styles_invalid_css_raises_error PASSED [ 62%]
tests/test_query.py::test_query_set_styles_kwds PASSED [ 62%]
tests/test_query.py::test_query_set_styles_css_and_kwds PASSED [ 62%]
tests/test_query.py::test_query_set_styles_css PASSED [ 62%]
tests/test_query.py::test_query_refresh[args0] PASSED [ 62%]
tests/test_query.py::test_query_refresh[args1] PASSED [ 62%]
tests/test_query.py::test_query_refresh[args2] PASSED [ 62%]
tests/test_query.py::test_query_refresh[args3] PASSED [ 62%]
tests/test_query.py::test_query_focus_blur PASSED [ 62%]
tests/test_reactive.py::test_watch PASSED [ 62%]
tests/test_reactive.py::test_watch_async_init_false PASSED [ 62%]
tests/test_reactive.py::test_watch_async_init_true PASSED [ 62%]
tests/test_reactive.py::test_watch_init_false_always_update_false PASSED [ 62%]
tests/test_reactive.py::test_watch_init_true PASSED [ 62%]
tests/test_reactive.py::test_reactive_always_update PASSED [ 62%]
tests/test_reactive.py::test_reactive_with_callable_default PASSED [ 62%]
tests/test_reactive.py::test_validate_init_true PASSED [ 62%]
tests/test_reactive.py::test_validate_init_true_set_before_dom_ready PASSED [ 62%]
tests/test_reactive.py::test_reactive_compute_first_time_set PASSED [ 62%]
tests/test_reactive.py::test_reactive_method_call_order PASSED [ 62%]
tests/test_reactive.py::test_premature_reactive_call PASSED [ 62%]
tests/test_reactive.py::test_reactive_inheritance PASSED [ 63%]
tests/test_reactive.py::test_compute PASSED [ 63%]
tests/test_reactive.py::test_watch_compute PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_watch PASSED [ 63%]
tests/test_reactive.py::test_private_validate PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_validate PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_validate_order PASSED [ 63%]
tests/test_reactive.py::test_public_and_private_compute PASSED [ 63%]
tests/test_reactive.py::test_private_compute PASSED [ 63%]
tests/test_reactive.py::test_async_reactive_watch_callbacks_go_on_the_watcher PASSED [ 63%]
tests/test_reactive.py::test_sync_reactive_watch_callbacks_go_on_the_watcher PASSED [ 63%]
tests/test_reactive.py::test_set_reactive PASSED [ 63%]
tests/test_reactive.py::test_no_duplicate_external_watchers PASSED [ 63%]
tests/test_reactive.py::test_external_watch_init_does_not_propagate PASSED [ 63%]
tests/test_reactive.py::test_external_watch_init_does_not_propagate_to_externals PASSED [ 63%]
tests/test_resolve.py::test_resolve_empty PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars0-100-0-result0] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars1-100-0-result1] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars2-100-1-result2] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars3-100-1-result3] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars4-100-0-result4] PASSED [ 63%]
tests/test_resolve.py::test_resolve[scalars5-100-1-result5] PASSED [ 63%]
tests/test_resolve.py::test_resolve_fraction_unit PASSED [ 63%]
tests/test_resolve.py::test_resolve_fraction_unit_stress_test PASSED [ 63%]
tests/test_resolve.py::test_resolve_issue_2502 PASSED [ 64%]
tests/test_rule.py::test_invalid_rule_orientation PASSED [ 64%]
tests/test_rule.py::test_invalid_rule_line_style PASSED [ 64%]
tests/test_rule.py::test_invalid_reactive_rule_orientation_change PASSED [ 64%]
tests/test_rule.py::test_invalid_reactive_rule_line_style_change PASSED [ 64%]
tests/test_screen_modes.py::test_mode_setup PASSED [ 64%]
tests/test_screen_modes.py::test_switch_mode PASSED [ 64%]
tests/test_screen_modes.py::test_switch_same_mode PASSED [ 64%]
tests/test_screen_modes.py::test_switch_unknown_mode PASSED [ 64%]
tests/test_screen_modes.py::test_remove_mode PASSED [ 64%]
tests/test_screen_modes.py::test_remove_active_mode PASSED [ 64%]
tests/test_screen_modes.py::test_add_mode PASSED [ 64%]
tests/test_screen_modes.py::test_add_mode_duplicated PASSED [ 64%]
tests/test_screen_modes.py::test_multiple_mode_callbacks PASSED [ 64%]
tests/test_screens.py::test_screen_walk_children PASSED [ 64%]
tests/test_screens.py::test_installed_screens PASSED [ 64%]
tests/test_screens.py::test_screens PASSED [ 64%]
tests/test_screens.py::test_auto_focus_on_screen_if_app_auto_focus_is_none PASSED [ 64%]
tests/test_screens.py::test_auto_focus_on_screen_if_app_auto_focus_is_disabled PASSED [ 64%]
tests/test_screens.py::test_auto_focus_inheritance PASSED [ 64%]
tests/test_screens.py::test_auto_focus_skips_non_focusable_widgets PASSED [ 64%]
tests/test_screens.py::test_dismiss_non_top_screen PASSED [ 64%]
tests/test_screens.py::test_dismiss_action PASSED [ 64%]
tests/test_screens.py::test_switch_screen_no_op PASSED [ 64%]
tests/test_screens.py::test_switch_screen_updates_results_callback_stack PASSED [ 65%]
tests/test_screens.py::test_screen_receives_mouse_move_events PASSED [ 65%]
tests/test_screens.py::test_mouse_move_event_bubbles_to_screen_from_widget PASSED [ 65%]
tests/test_screens.py::test_push_screen_wait_for_dismiss PASSED [ 65%]
tests/test_screens.py::test_push_screen_wait_for_dismiss_no_worker PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop_emoji PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop_edge PASSED [ 65%]
tests/test_segment_tools.py::test_line_crop_edge_2 PASSED [ 65%]
tests/test_segment_tools.py::test_line_trim_ascii PASSED [ 65%]
tests/test_segment_tools.py::test_line_pad PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_vertical_middle PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_top_left PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_top_right PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_perfect_fit_horizontal_left PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_perfect_fit_horizontal_center PASSED [ 65%]
tests/test_segment_tools.py::test_align_lines_perfect_fit_horizontal_right PASSED [ 65%]
tests/test_signal.py::test_signal PASSED [ 65%]
tests/test_signal.py::test_signal_errors PASSED [ 65%]
tests/test_signal.py::test_repr PASSED [ 65%]
tests/test_slug.py::test_simple_slug[test-test] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[Test-test] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[ Test -test] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[-test---test-] PASSED [ 65%]
tests/test_slug.py::test_simple_slug[!test!-test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test!!test-testtest] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test! !test-test-test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test test-test-test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test test-test--test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test test-test----------test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[--test---test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test---test--] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[--test--test-----test--test--] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test!"#$%&'()*+,-./:;<=>?@[]^_`{|}~test-test-_test] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[t\xebst-t%C3%ABst] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test\U0001f642test-testtest] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test\U0001f937test-testtest] PASSED [ 66%]
tests/test_slug.py::test_simple_slug[test\U0001f937\U0001f3fb\u200d\u2640\ufe0ftest-testtest] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test-test] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test-test-1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test-test-2] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[-test---test-] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[-test---test--1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test!"#$%&'()*+,-./:;<=>?@[]^_`{|}~test-test-_test] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[test!"#$%&'()*+,-./:;<=>?@[]^_`{|}~test-test-_test-1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[t\xebst-t%C3%ABst] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[t\xebst-t%C3%ABst-1] PASSED [ 66%]
tests/test_slug.py::test_tracked_slugs[t\xebst-t%C3%ABst-2] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test\U0001f642test-testtest] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test\U0001f937test-testtest-1] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test\U0001f937\U0001f3fb\u200d\u2640\ufe0ftest-testtest-2] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test-test-3] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[test-test-4] PASSED [ 67%]
tests/test_slug.py::test_tracked_slugs[ test -test-5] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region0-grid0] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region1-grid1] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region2-grid2] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region3-grid3] PASSED [ 67%]
tests/test_spatial_map.py::test_region_to_grid[region4-grid4] PASSED [ 67%]
tests/test_spatial_map.py::test_get_values_in_region PASSED [ 67%]
tests/test_strip.py::test_cell_length PASSED [ 67%]
tests/test_strip.py::test_repr PASSED [ 67%]
tests/test_strip.py::test_join PASSED [ 67%]
tests/test_strip.py::test_bool PASSED [ 67%]
tests/test_strip.py::test_iter PASSED [ 67%]
tests/test_strip.py::test_len PASSED [ 67%]
tests/test_strip.py::test_reversed PASSED [ 67%]
tests/test_strip.py::test_eq PASSED [ 67%]
tests/test_strip.py::test_adjust_cell_length PASSED [ 67%]
tests/test_strip.py::test_extend_cell_length PASSED [ 67%]
tests/test_strip.py::test_simplify PASSED [ 67%]
tests/test_strip.py::test_apply_filter PASSED [ 68%]
tests/test_strip.py::test_style_links PASSED [ 68%]
tests/test_strip.py::test_crop PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop0-output0] PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop1-output1] PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop2-output2] PASSED [ 68%]
tests/test_strip.py::test_crop_out_of_bounds[foo-crop3-output3] PASSED [ 68%]
tests/test_strip.py::test_divide PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[0-0] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[1-1] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[2-2] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[3-3] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[4-4] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[5-6] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[6-8] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[7-10] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[8-11] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[9-12] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[10-13] PASSED [ 68%]
tests/test_strip.py::test_index_to_cell_position[11-14] PASSED [ 68%]
tests/test_strip.py::test_index_cell_position_no_segments PASSED [ 68%]
tests/test_strip.py::test_index_cell_position_index_too_large PASSED [ 68%]
tests/test_strip.py::test_text PASSED [ 68%]
tests/test_style_importance.py::test_border_importance PASSED [ 68%]
tests/test_style_importance.py::test_outline_importance PASSED [ 69%]
tests/test_style_importance.py::test_align_importance PASSED [ 69%]
tests/test_style_importance.py::test_content_align_importance PASSED [ 69%]
tests/test_style_importance.py::test_offset_importance PASSED [ 69%]
tests/test_style_importance.py::test_overflow_importance PASSED [ 69%]
tests/test_style_importance.py::test_padding_importance PASSED [ 69%]
tests/test_style_importance.py::test_scrollbar_size_importance PASSED [ 69%]
tests/test_style_inheritance.py::test_text_style_inheritance PASSED [ 69%]
tests/test_style_properties.py::test_box_normalization PASSED [ 69%]
tests/test_style_properties.py::test_text_style_none_with_others[text_style] PASSED [ 69%]
tests/test_style_properties.py::test_text_style_none_with_others[link_style] PASSED [ 69%]
tests/test_style_properties.py::test_text_style_set_to_none[text_style] PASSED [ 69%]
tests/test_style_properties.py::test_text_style_set_to_none[link_style] PASSED [ 69%]
tests/test_styles_cache.py::test_set_dirty PASSED [ 69%]
tests/test_styles_cache.py::test_no_styles PASSED [ 69%]
tests/test_styles_cache.py::test_border PASSED [ 69%]
tests/test_styles_cache.py::test_padding PASSED [ 69%]
tests/test_styles_cache.py::test_padding_border PASSED [ 69%]
tests/test_styles_cache.py::test_outline PASSED [ 69%]
tests/test_styles_cache.py::test_crop PASSED [ 69%]
tests/test_styles_cache.py::test_dirty_cache PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[background-possible_words0-background] PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[backgroundu-possible_words1-background] PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[bkgrund-possible_words2-background] PASSED [ 69%]
tests/test_suggestions.py::test_get_suggestion[llow-possible_words3-None] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestion[llow-possible_words4-yellow] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestion[yllow-possible_words5-yellow] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[background-possible_words0-1-expected_result0] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[backgroundu-possible_words1-1-expected_result1] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[bkgrund-possible_words2-1-expected_result2] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[llow-possible_words3-1-expected_result3] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[llow-possible_words4-1-expected_result4] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[yllow-possible_words5-1-expected_result5] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[yllow-possible_words6-2-expected_result6] PASSED [ 70%]
tests/test_suggestions.py::test_get_suggestions[yllow-possible_words7-2-expected_result7] PASSED [ 70%]
tests/test_suspend.py::test_suspend_not_supported PASSED [ 70%]
tests/test_suspend.py::test_suspend_supported PASSED [ 70%]
tests/test_switch.py::test_switch_click_doesnt_bubble_up PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_switch_via_ui PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_switch_via_code PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_initial PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_messages PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_later_from_empty PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_later_from_composed PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_id PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_pane PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_badly PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_after PASSED [ 70%]
tests/test_tabbed_content.py::test_tabbed_content_add_after_pane PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_add_after_badly PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_add_before_and_after PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_removal PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_reversed_removal PASSED [ 71%]
tests/test_tabbed_content.py::test_tabbed_content_clear PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_does_not_deactivate_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_disabled_tab_cannot_be_clicked PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_via_tabbed_content PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_via_tab_pane PASSED [ 71%]
tests/test_tabbed_content.py::test_creating_disabled_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_navigation_around_disabled_tabs PASSED [ 71%]
tests/test_tabbed_content.py::test_reenabling_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_reenabling_via_tabbed_content PASSED [ 71%]
tests/test_tabbed_content.py::test_reenabling_via_tab_pane PASSED [ 71%]
tests/test_tabbed_content.py::test_disabling_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_enabling_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_hide_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_show_unknown_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_hide_show_messages PASSED [ 71%]
tests/test_tabbed_content.py::test_hide_last_tab_means_no_tab_active PASSED [ 71%]
tests/test_tabbed_content.py::test_hiding_tabs_moves_active_to_next_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_showing_tabs_does_not_change_active_tab PASSED [ 71%]
tests/test_tabbed_content.py::test_showing_first_tab_activates_tab[tab-1] PASSED [ 71%]
tests/test_tabbed_content.py::test_showing_first_tab_activates_tab[tab-2] PASSED [ 72%]
tests/test_tabbed_content.py::test_disabling_nested_tabs PASSED [ 72%]
tests/test_tabbed_content.py::test_hiding_nested_tabs PASSED [ 72%]
tests/test_tabbed_content.py::test_tabs_nested_in_tabbed_content_doesnt_crash PASSED [ 72%]
tests/test_tabbed_content.py::test_tabs_nested_doesnt_interfere_with_ancestor_tabbed_content PASSED [ 72%]
tests/test_tabs.py::test_tab_label PASSED [ 72%]
tests/test_tabs.py::test_tab_relabel PASSED [ 72%]
tests/test_tabs.py::test_compose_empty_tabs PASSED [ 72%]
tests/test_tabs.py::test_compose_tabs_from_strings PASSED [ 72%]
tests/test_tabs.py::test_compose_tabs_from_tabs PASSED [ 72%]
tests/test_tabs.py::test_add_tabs_later PASSED [ 72%]
tests/test_tabs.py::test_add_tab_before PASSED [ 72%]
tests/test_tabs.py::test_add_tab_before_badly PASSED [ 72%]
tests/test_tabs.py::test_add_tab_after PASSED [ 72%]
tests/test_tabs.py::test_add_tab_after_badly PASSED [ 72%]
tests/test_tabs.py::test_add_tab_before_and_after PASSED [ 72%]
tests/test_tabs.py::test_remove_tabs PASSED [ 72%]
tests/test_tabs.py::test_remove_tabs_reversed PASSED [ 72%]
tests/test_tabs.py::test_clear_tabs PASSED [ 72%]
tests/test_tabs.py::test_change_active_from_code PASSED [ 72%]
tests/test_tabs.py::test_navigate_tabs_with_keyboard PASSED [ 72%]
tests/test_tabs.py::test_navigate_empty_tabs_with_keyboard PASSED [ 72%]
tests/test_tabs.py::test_navigate_tabs_with_mouse PASSED [ 72%]
tests/test_tabs.py::test_startup_messages PASSED [ 72%]
tests/test_tabs.py::test_change_tab_with_code_messages PASSED [ 73%]
tests/test_tabs.py::test_remove_tabs_messages PASSED [ 73%]
tests/test_tabs.py::test_reverse_remove_tabs_messages PASSED [ 73%]
tests/test_tabs.py::test_keyboard_navigation_messages PASSED [ 73%]
tests/test_tabs.py::test_mouse_navigation_messages PASSED [ 73%]
tests/test_test_runner.py::test_run_test PASSED [ 73%]
tests/test_textlog.py::test_make_renderable_expand_tabs PASSED [ 73%]
tests/test_two_way_dict.py::test_get PASSED [ 73%]
tests/test_two_way_dict.py::test_get_key PASSED [ 73%]
tests/test_two_way_dict.py::test_set_item PASSED [ 73%]
tests/test_two_way_dict.py::test_len PASSED [ 73%]
tests/test_two_way_dict.py::test_delitem PASSED [ 73%]
tests/test_two_way_dict.py::test_contains PASSED [ 73%]
tests/test_unmount.py::test_unmount PASSED [ 73%]
tests/test_validation.py::test_ValidationResult_merge_successes PASSED [ 73%]
tests/test_validation.py::test_ValidationResult_merge_failures PASSED [ 73%]
tests/test_validation.py::test_ValidationResult_failure_descriptions PASSED [ 73%]
tests/test_validation.py::test_Failure_description_priorities_parameter_only PASSED [ 73%]
tests/test_validation.py::test_Failure_description_priorities_parameter_and_describe_failure PASSED [ 73%]
tests/test_validation.py::test_Failure_description_priorities_describe_failure_only PASSED [ 73%]
tests/test_validation.py::test_Failure_description_parameter_and_description_inside_validate PASSED [ 73%]
tests/test_validation.py::test_Failure_description_describe_and_description_inside_validate PASSED [ 73%]
tests/test_validation.py::test_Number_validate[123-None-None-True] PASSED [ 73%]
tests/test_validation.py::test_Number_validate[-123-None-None-True] PASSED [ 73%]
tests/test_validation.py::test_Number_validate[123.45-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[1.23e-4-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[abc-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[123-100-200-True] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[99-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[201-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Number_validate[1.23e4-0-50000-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\d+-123-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\d+-abc-False] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[[a-z]+-abc-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[[a-z]+-ABC-False] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\w+-abc123-True] PASSED [ 74%]
tests/test_validation.py::test_Regex_validate[\\w+-!@#-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[123-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[-123-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[123.45-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[1.23e-4-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[abc-None-None-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[123-100-200-True] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[99-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[201-100-200-False] PASSED [ 74%]
tests/test_validation.py::test_Integer_validate[1.23e4-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Length_validate[-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Length_validate[test-None-None-True] PASSED [ 74%]
tests/test_validation.py::test_Length_validate[test-5-None-False] PASSED [ 75%]
tests/test_validation.py::test_Length_validate[test-None-3-False] PASSED [ 75%]
tests/test_validation.py::test_Length_validate[test-4-4-True] PASSED [ 75%]
tests/test_validation.py::test_Length_validate[test-2-6-True] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[http://example.com-True] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[https://example.com-True] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[www.example.com-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[://example.com-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[https:///path-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[redis://username:pass[word@localhost:6379/0-False] PASSED [ 75%]
tests/test_validation.py::test_URL_validate[-False] PASSED [ 75%]
tests/test_validation.py::test_Function_validate[<lambda>-None-True] PASSED [ 75%]
tests/test_validation.py::test_Function_validate[<lambda>-failure!-False] PASSED [ 75%]
tests/test_version.py::test_version PASSED [ 75%]
tests/test_visible.py::test_visibility_changes PASSED [ 75%]
tests/test_visible.py::test_visible_is_inherited PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[True-True-visible] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[False-False-hidden] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[hidden-False-hidden] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_true[visible-True-visible] PASSED [ 75%]
tests/test_widget.py::test_widget_set_visible_invalid_string PASSED [ 75%]
tests/test_widget.py::test_widget_content_width PASSED [ 75%]
tests/test_widget.py::test_get_child_by_id_gets_first_child PASSED [ 75%]
tests/test_widget.py::test_get_child_by_id_no_matching_child PASSED [ 75%]
tests/test_widget.py::test_get_child_by_id_only_immediate_descendents PASSED [ 76%]
tests/test_widget.py::test_get_child_by_type PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_no_matching_child PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_non_immediate_descendants PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_immediate_descendants PASSED [ 76%]
tests/test_widget.py::test_get_widget_by_id_doesnt_return_self PASSED [ 76%]
tests/test_widget.py::test_get_widgets_app_delegated PASSED [ 76%]
tests/test_widget.py::test_widget_mount_ids_must_be_unique_mounting_all_in_one_go PASSED [ 76%]
tests/test_widget.py::test_widget_mount_ids_must_be_unique_mounting_multiple_calls PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_disabled PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_parent_disabled PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_hover PASSED [ 76%]
tests/test_widget.py::test_get_pseudo_class_state_focus PASSED [ 76%]
tests/test_widget.py::test_remove PASSED [ 76%]
tests/test_widget.py::test_remove_unmounted PASSED [ 76%]
tests/test_widget.py::test_render_str PASSED [ 76%]
tests/test_widget.py::test_compose_order PASSED [ 76%]
tests/test_widget.py::test_children_must_be_widgets PASSED [ 76%]
tests/test_widget.py::test_orphan_widget_has_no_siblings PASSED [ 76%]
tests/test_widget.py::test__allow_scroll_default PASSED [ 76%]
tests/test_widget.py::test__allow_scroll PASSED [ 76%]
tests/test_widget.py::test_offset_getter_setter PASSED [ 76%]
tests/test_widget.py::test_get_set_tooltip PASSED [ 76%]
tests/test_widget.py::test_loading PASSED [ 77%]
tests/test_widget.py::test_is_mounted_property PASSED [ 77%]
tests/test_widget.py::test_mount_error_not_widget PASSED [ 77%]
tests/test_widget.py::test_mount_error_bad_widget PASSED [ 77%]
tests/test_widget.py::test_render_returns_text PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_no_direction PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_both_directions PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_not_our_child PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_to_outside PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_index[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_index[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_widget[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_index_in_relation_to_itself_widget[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_index[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_index[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_widget[before] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_widget_in_relation_to_itself_widget[after] PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_past_end_of_child_list PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_before_end_of_child_list PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_before_permutations PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_after_permutations PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_after_last_child PASSED [ 77%]
tests/test_widget_child_moving.py::test_move_child_after_last_numeric_location PASSED [ 77%]
tests/test_widget_mount_point.py::test_find_dom_spot PASSED [ 77%]
tests/test_widget_mounting.py::test_mount_via_app PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8-1-10-4] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8--1-10-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[8-2--1-10-4] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[8-2-1-10-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[8-2-1-1234123512-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8-1-11-5] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[2-8-1-12-6] PASSED [ 78%]
tests/test_widget_navigation.py::test_distance[5-5-1-10-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_enabled_returns_none_on_empty[find_first_enabled] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_enabled_returns_none_on_empty[find_last_enabled] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates0-None-1-None] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates1-None--1-None] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates2-None-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates3-None-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates4-None-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates5-None-1-1] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates6-None-1-2] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates7-None--1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates8-None--1-1] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates9-None--1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates10-None--1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates11-0-1-0] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates12-1-1-1] PASSED [ 78%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates13-1--1-1] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates14-None--1-None] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates15-0-1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates16-0--1-4] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates17-1-1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates18-1--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates19-2-1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates20-2--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates21-3-1-4] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates22-3--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates23-4-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates24-4--1-3] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates25-5-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled[candidates26-5--1-4] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates0-None-1-None] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates1-None--1-None] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates2-None-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates3-None-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates4-None-1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates5-None-1-1] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates6-None-1-2] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates7-None--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates8-None--1-1] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates9-None--1-0] PASSED [ 79%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates10-None--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates11-0-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates12-1-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates13-1--1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates14-None--1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates15-0-1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates16-0--1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates17-1-1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates18-1--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates19-2-1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates20-2--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates21-3-1-4] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates22-3--1-0] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates23-4-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates24-4--1-3] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates25-5-1-None] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_enabled_no_wrap[candidates26-5--1-4] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-0-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-0--1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-0-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-0--1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-1-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-1--1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-1-1] PASSED [ 80%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-1--1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-2-1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled-2--1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-2-1] PASSED [ 81%]
tests/test_widget_navigation.py::test_find_next_with_anchor[find_next_enabled_no_wrap-2--1] PASSED [ 81%]
tests/test_widget_removing.py::test_remove_single_widget PASSED [ 81%]
tests/test_widget_removing.py::test_many_remove_all_widgets PASSED [ 81%]
tests/test_widget_removing.py::test_many_remove_some_widgets PASSED [ 81%]
tests/test_widget_removing.py::test_remove_branch PASSED [ 81%]
tests/test_widget_removing.py::test_remove_overlap PASSED [ 81%]
tests/test_widget_removing.py::test_remove_move_focus PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_order PASSED [ 81%]
tests/test_widget_removing.py::test_query_remove_order PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_container PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_star_selector PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_string_selector PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_type_selector PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_with_selector_does_not_leak PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_no_children PASSED [ 81%]
tests/test_widget_removing.py::test_widget_remove_children_no_children_match_selector PASSED [ 81%]
tests/test_win_sleep.py::test_win_sleep_timer_is_cancellable SKIPPED (We
only need to test this on Windows.) [ 81%]
tests/test_wrap.py::test_chunks[-expected_output0] PASSED [ 81%]
tests/test_wrap.py::test_chunks[ -expected_output1] PASSED [ 81%]
tests/test_wrap.py::test_chunks[\t-expected_output2] PASSED [ 81%]
tests/test_wrap.py::test_chunks[foo-expected_output3] PASSED [ 82%]
tests/test_wrap.py::test_chunks[ foo -expected_output4] PASSED [ 82%]
tests/test_wrap.py::test_chunks[foo bar-expected_output5] PASSED [ 82%]
tests/test_wrap.py::test_chunks[\tfoo bar-expected_output6] PASSED [ 82%]
tests/test_wrap.py::test_chunks[ foo bar-expected_output7] PASSED [ 82%]
tests/test_wrap.py::test_chunks[foo bar -expected_output8] PASSED [ 82%]
tests/test_wrap.py::test_chunks[foo\t bar -expected_output9] PASSED [ 82%]
tests/test_wrap.py::test_chunks[\u6728\t \u5ddd -expected_output10] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[-6-4-expected_output0] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t-6-4-expected_output1] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[ -6-4-expected_output2] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[foo bar baz-6-4-expected_output3] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfoo bar baz-6-4-expected_output4] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfo bar baz-6-4-expected_output5] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfo bar baz-6-8-expected_output6] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\tfo bar baz\t-6-8-expected_output7] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t\t\tfo bar baz\t-20-4-expected_output8] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t\t\t\t\t\t\t\tfo bar bar-19-4-expected_output9] PASSED [ 82%]
tests/test_wrap.py::test_compute_wrap_offsets[\t\t\t\t\t-19-4-expected_output10] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[2] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[3] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[4] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[5] PASSED [ 82%]
tests/test_xterm_parser.py::test_varying_parser_chunk_sizes_no_missing_data[6] PASSED [ 82%]
tests/test_xterm_parser.py::test_bracketed_paste PASSED [ 83%]
tests/test_xterm_parser.py::test_bracketed_paste_content_contains_escape_codes PASSED [ 83%]
tests/test_xterm_parser.py::test_bracketed_paste_amongst_other_codes PASSED [ 83%]
tests/test_xterm_parser.py::test_cant_match_escape_sequence_too_long PASSED [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[2] XFAIL [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[3] PASSED [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[4] XFAIL [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[5] PASSED [ 83%]
tests/test_xterm_parser.py::test_unknown_sequence_followed_by_known_sequence[6] PASSED [ 83%]
tests/test_xterm_parser.py::test_simple_key_presses_all_delivered_correct_order PASSED [ 83%]
tests/test_xterm_parser.py::test_simple_keypress_non_character_key PASSED [ 83%]
tests/test_xterm_parser.py::test_key_presses_and_escape_sequence_mixed PASSED [ 83%]
tests/test_xterm_parser.py::test_single_escape PASSED [ 83%]
tests/test_xterm_parser.py::test_double_escape PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<0;50;25M-MouseDown-False-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<4;50;25M-MouseDown-True-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<8;50;25M-MouseDown-False-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<12;50;25M-MouseDown-True-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<0;50;25m-MouseUp-False-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<4;50;25m-MouseUp-True-False] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<8;50;25m-MouseUp-False-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_click[\x1b[<12;50;25m-MouseUp-True-True] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<32;15;38M-False-False-1] PASSED [ 83%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<35;15;38M-False-False-0] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<39;15;38M-True-False-0] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_move[\x1b[<43;15;38M-False-True-0] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_up[\x1b[<64;18;25M-False-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_up[\x1b[<68;18;25M-True-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_up[\x1b[<72;18;25M-False-True] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_down[\x1b[<65;18;25M-False-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_down[\x1b[<69;18;25M-True-False] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_scroll_down[\x1b[<73;18;25M-False-True] PASSED [ 84%]
tests/test_xterm_parser.py::test_mouse_event_detected_but_info_not_parsed PASSED [ 84%]
tests/test_xterm_parser.py::test_escape_sequence_resulting_in_multiple_keypresses PASSED [ 84%]
tests/test_xterm_parser.py::test_terminal_mode_reporting_synchronized_output_supported PASSED [ 84%]
tests/test_xterm_parser.py::test_terminal_mode_reporting_synchronized_output_not_supported PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_text_start_maintain_selection_offset PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_text_start PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_empty_string PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_replace_empty_string PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location0-insert_location0-cursor_destination0] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location1-insert_location1-cursor_destination1] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location2-insert_location2-cursor_destination2] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_character_near_cursor_maintain_selection_offset[cursor_location3-insert_location3-cursor_destination3] PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_newlines_start PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_newlines_end PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_windows_newlines PASSED [ 84%]
tests/text_area/test_edit_via_api.py::test_insert_old_mac_newlines PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_non_cursor_location PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_non_cursor_location_dont_maintain_offset PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_multiline_text PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_multiline_text_maintain_offset PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_replace_multiline_text PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_replace_multiline_text_maintain_selection PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_within_line PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_within_line_dont_maintain_offset PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_multiple_lines_selection_above PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_empty_document PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_clear PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_clear_empty_document PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_top[select_from0-select_to0] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_top[select_from1-select_to1] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_bottom[select_from0-select_to0] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_insert_text_multiline_selection_bottom[select_from1-select_to1] PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_delete_fully_within_selection PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_replace_fully_within_selection PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_text_setter PASSED [ 85%]
tests/text_area/test_edit_via_api.py::test_edits_on_read_only_mode PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_single_keypress_printable_character PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_single_keypress_enter PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[-0-4] PASSED [ 85%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[x-0-4] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[x-1-4] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxx-3-4] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxxx-4-8] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxxxx-5-8] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[xxxxxx-6-8] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[\U0001f4a9-1-3] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_tab_with_spaces_goes_to_tab_stop[\U0001f4a9\U0001f4a9-2-6] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_left PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_left_start PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_left_end PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[delete-selection0] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[delete-selection1] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[backspace-selection2] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_deletion_with_non_empty_selection[backspace-selection3] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_right PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_right_end_of_line PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection0-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection1-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection2-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection3-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line[selection4-] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection0-345\n678\n9\n] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection1-345\n678\n9\n] PASSED [ 86%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection2-012\n345\n678\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection3-012\n345\n678\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection4-012\n678\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection5-012\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection6-012\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection7-012\n9\n] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_line_multiline_document[selection8-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection0-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection1-01234] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection2-012345678] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection3-0123456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection4-012345678] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection5-0123456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection6-01234] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_end_of_line[selection7-01] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection0-0123456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection1-56789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection2-9] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection3-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection4-9] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection5-] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection6-56789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_to_start_of_line[selection7-23456789] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection0- 012 345 6789-final_selection0] PASSED [ 87%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection1- 2 345 6789-final_selection1] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection2- 345 6789-final_selection2] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection3- 345 6789-final_selection3] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection4- 012 345 -final_selection4] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left[selection5- 01789-final_selection5] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection0-\t012 \t 345\t6789-final_selection0] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection1-\t \t 345\t6789-final_selection1] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection2-\t\t 345\t6789-final_selection2] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection3-\t 345\t6789-final_selection3] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection4-\t012 \t 345\t-final_selection4] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_with_tabs[selection5-\t0126789-final_selection5] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_to_start_of_line PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_left_at_line_start PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection0-012 345 6789-final_selection0] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection1- 01 345 6789-final_selection1] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection2- 012345 6789-final_selection2] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection3- 012 345 6789-final_selection3] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right[selection4- 01789-final_selection4] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right_delete_to_end_of_line PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_delete_word_right_at_end_of_line PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[enter] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[backspace] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+u] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+f] PASSED [ 88%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+w] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+k] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[ctrl+x] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[space] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[1] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_edit_read_only_mode_does_nothing[tab] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_replace_lines_with_fewer_lines[selection0] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_replace_lines_with_fewer_lines[selection1] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_paste[selection0] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_paste[selection1] PASSED [ 89%]
tests/text_area/test_edit_via_bindings.py::test_paste_read_only_does_nothing PASSED [ 89%]
tests/text_area/test_escape_binding.py::test_escape_key_when_tab_behavior_is_focus PASSED [ 89%]
tests/text_area/test_escape_binding.py::test_escape_key_when_tab_behavior_is_indent PASSED [ 89%]
tests/text_area/test_history.py::test_simple_undo_redo PASSED [ 89%]
tests/text_area/test_history.py::test_undo_selection_retained PASSED [ 89%]
tests/text_area/test_history.py::test_undo_checkpoint_created_on_cursor_move PASSED [ 89%]
tests/text_area/test_history.py::test_setting_text_property_resets_history PASSED [ 89%]
tests/text_area/test_history.py::test_edits_batched_by_time PASSED [ 89%]
tests/text_area/test_history.py::test_undo_checkpoint_character_limit_reached PASSED [ 89%]
tests/text_area/test_history.py::test_redo_with_no_undo_is_noop PASSED [ 89%]
tests/text_area/test_history.py::test_undo_with_empty_undo_stack_is_noop PASSED [ 89%]
tests/text_area/test_history.py::test_redo_stack_cleared_on_edit PASSED [ 89%]
tests/text_area/test_history.py::test_inserts_not_batched_with_deletes PASSED [ 89%]
tests/text_area/test_history.py::test_paste_is_an_isolated_batch PASSED [ 89%]
tests/text_area/test_history.py::test_focus_creates_checkpoint PASSED [ 90%]
tests/text_area/test_history.py::test_undo_redo_deletions_batched PASSED [ 90%]
tests/text_area/test_history.py::test_max_checkpoints PASSED [ 90%]
tests/text_area/test_history.py::test_redo_stack PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_builtin_language_via_constructor PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_builtin_language_via_attribute PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_language_to_none PASSED [ 90%]
tests/text_area/test_languages.py::test_setting_unknown_language PASSED [ 90%]
tests/text_area/test_messages.py::test_changed_message_edit_via_api PASSED [ 90%]
tests/text_area/test_messages.py::test_changed_message_via_typing PASSED [ 90%]
tests/text_area/test_messages.py::test_selection_changed_via_api PASSED [ 90%]
tests/text_area/test_messages.py::test_selection_changed_via_typing PASSED [ 90%]
tests/text_area/test_selection.py::test_default_selection PASSED [ 90%]
tests/text_area/test_selection.py::test_cursor_location_get PASSED [ 90%]
tests/text_area/test_selection.py::test_cursor_location_set PASSED [ 90%]
tests/text_area/test_selection.py::test_cursor_location_set_while_selecting PASSED [ 90%]
tests/text_area/test_selection.py::test_move_cursor_select PASSED [ 90%]
tests/text_area/test_selection.py::test_move_cursor_relative PASSED [ 90%]
tests/text_area/test_selection.py::test_selected_text_forward PASSED [ 90%]
tests/text_area/test_selection.py::test_selected_text_backward PASSED [ 90%]
tests/text_area/test_selection.py::test_selected_text_multibyte PASSED [ 90%]
tests/text_area/test_selection.py::test_selection_clamp PASSED [ 90%]
tests/text_area/test_selection.py::test_get_cursor_left_location[start0-end0] PASSED [ 90%]
tests/text_area/test_selection.py::test_get_cursor_left_location[start1-end1] PASSED [ 90%]
tests/text_area/test_selection.py::test_get_cursor_left_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_right_location[start3-end3] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_up_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_up_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_up_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_down_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_down_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_get_cursor_down_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start0-end0] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start1-end1] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start2-end2] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start3-end3] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start4-end4] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start5-end5] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start6-end6] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start7-end7] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start8-end8] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start9-end9] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start10-end10] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start11-end11] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start12-end12] PASSED [ 91%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start13-end13] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start14-end14] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_left_location[start15-end15] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start0-end0] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start1-end1] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start2-end2] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start3-end3] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start4-end4] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start5-end5] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start6-end6] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start7-end7] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start8-end8] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start9-end9] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start10-end10] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start11-end11] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start12-end12] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start13-end13] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start14-end14] PASSED [ 92%]
tests/text_area/test_selection.py::test_cursor_word_right_location[start15-end15] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_all[123\n456\n789-expected_selection0] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_all[123\n456\n789\n-expected_selection1] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_all[-expected_selection2] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_line[1-123\n456\n789\n-expected_selection0] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_line[2-123\n456\n789\n-expected_selection1] PASSED [ 92%]
tests/text_area/test_selection.py::test_select_line[3-123\n456\n789\n-expected_selection2] PASSED [ 93%]
tests/text_area/test_selection.py::test_select_line[1000-123\n456\n789\n-expected_selection3] PASSED [ 93%]
tests/text_area/test_selection.py::test_select_line[0--expected_selection4] PASSED [ 93%]
tests/text_area/test_selection.py::test_cursor_screen_offset_and_terminal_cursor_position_update PASSED [ 93%]
tests/text_area/test_selection.py::test_cursor_screen_offset_and_terminal_cursor_position_scrolling PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_clamp_from_right[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_clamp_from_right[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_gutter_clamp[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_mouse_click_gutter_clamp[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_movement_basic PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right_to_previous_line[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_right_to_previous_line[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left_to_previous_line[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_left_to_previous_line[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up_when_cursor_on_first_line[True] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_up_when_cursor_on_first_line[False] PASSED [ 93%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down_when_cursor_on_last_line[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_selection_down_when_cursor_on_last_line[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right_select[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_right_select[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left_select[True] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_word_left_select[False] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[True-end] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[True-ctrl+e] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[False-end] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_end[False-ctrl+e] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[True-home] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[True-ctrl+a] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[False-home] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_to_line_home_basic_behaviour[False-ctrl+a] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start0-cursor_destination0] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start1-cursor_destination1] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start2-cursor_destination2] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start3-cursor_destination3] PASSED [ 94%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start4-cursor_destination4] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[True-cursor_start5-cursor_destination5] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start0-cursor_destination0] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start1-cursor_destination1] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start2-cursor_destination2] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start3-cursor_destination3] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start4-cursor_destination4] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_line_home_smart_home[False-cursor_start5-cursor_destination5] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_down[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_down[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_up[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_page_up[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_vertical_movement_visual_alignment_snapping[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_cursor_vertical_movement_visual_alignment_snapping[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_line_binding[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_line_binding[False] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_all_binding[True] PASSED [ 95%]
tests/text_area/test_selection_bindings.py::test_select_all_binding[False] PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_default_theme PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_setting_builtin_themes PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_setting_unknown_theme_raises_exception PASSED [ 95%]
tests/text_area/test_setting_themes.py::test_registering_and_setting_theme PASSED [ 95%]
tests/toggles/test_checkbox.py::test_checkbox_initial_state PASSED [ 95%]
tests/toggles/test_checkbox.py::test_checkbox_toggle PASSED [ 95%]
tests/toggles/test_labels.py::test_change_labels PASSED [ 96%]
tests/toggles/test_radiobutton.py::test_radio_button_initial_state PASSED [ 96%]
tests/toggles/test_radiobutton.py::test_radio_button_toggle PASSED [ 96%]
tests/toggles/test_radioset.py::test_radio_sets_initial_state PASSED [ 96%]
tests/toggles/test_radioset.py::test_click_sets_focus PASSED [ 96%]
tests/toggles/test_radioset.py::test_radio_sets_toggle PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_same_button_mash PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_inner_navigation PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_inner_navigation_post_build PASSED [ 96%]
tests/toggles/test_radioset.py::test_radioset_breakout_navigation PASSED [ 96%]
tests/toggles/test_radioset.py::test_there_can_only_be_one PASSED [ 96%]
tests/toggles/test_radioset.py::test_keyboard_navigation_with_disabled_buttons PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_file_selected_message PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_directory_selected_message PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_reload_node PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_reload_other_node PASSED [ 96%]
tests/tree/test_directory_tree.py::test_directory_tree_reloading_preserves_state PASSED [ 96%]
tests/tree/test_node_refresh.py::test_initial_state PASSED [ 96%]
tests/tree/test_node_refresh.py::test_root_refresh PASSED [ 96%]
tests/tree/test_node_refresh.py::test_child_refresh PASSED [ 96%]
tests/tree/test_node_refresh.py::test_grandchild_refresh PASSED [ 96%]
tests/tree/test_tree_availability.py::test_creating_disabled_tree PASSED [ 96%]
tests/tree/test_tree_availability.py::test_creating_enabled_tree PASSED [ 96%]
tests/tree/test_tree_availability.py::test_disabled_tree_node_selected_message PASSED [ 96%]
tests/tree/test_tree_availability.py::test_enabled_tree_node_selected_message PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_simple_clear PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_reset_with_label PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_reset_with_label_and_data PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_remove_node PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_remove_node_children PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_tree_remove_children_of_root PASSED [ 97%]
tests/tree/test_tree_clearing.py::test_attempt_to_remove_root PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_expand PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_expand_all PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_collapse PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_collapse_all PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_toggle PASSED [ 97%]
tests/tree/test_tree_expand_etc.py::test_tree_node_toggle_all PASSED [ 97%]
tests/tree/test_tree_get_node_by_id.py::test_get_tree_node_by_id PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_selected_message PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_selected_message_no_auto PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_expanded_message PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_collapsed_message PASSED [ 97%]
tests/tree/test_tree_messages.py::test_tree_node_highlighted_message PASSED [ 97%]
tests/tree/test_tree_node_children.py::test_tree_node_children PASSED [ 97%]
tests/tree/test_tree_node_label.py::test_tree_node_label PASSED [ 97%]
tests/tree/test_tree_node_label.py::test_tree_node_label_via_tree PASSED [ 97%]
tests/tree/test_tree_node_parent.py::test_tree_node_parent PASSED [ 97%]
tests/workers/test_work_decorator.py::test_async_work PASSED [ 98%]
tests/workers/test_work_decorator.py::test_async_thread_work PASSED [ 98%]
tests/workers/test_work_decorator.py::test_thread_work PASSED [ 98%]
tests/workers/test_work_decorator.py::test_decorate_non_async_no_thread_argument PASSED [ 98%]
tests/workers/test_work_decorator.py::test_decorate_non_async_no_thread_is_false PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack0] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack1] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack2] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack3] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack4] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack5] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack6] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack7] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack8] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack9] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack10] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack11] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack12] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack13] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack14] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack15] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack16] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack17] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack18] PASSED [ 98%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack19] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack20] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack21] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack22] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack23] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack24] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack25] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack26] PASSED [ 99%]
tests/workers/test_work_decorator.py::test_calling_workers_from_within_workers[call_stack27] PASSED [ 99%]
tests/workers/test_worker.py::test_initialize PASSED [ 99%]
tests/workers/test_worker.py::test_run_success PASSED [ 99%]
tests/workers/test_worker.py::test_run_error PASSED [ 99%]
tests/workers/test_worker.py::test_run_cancel PASSED [ 99%]
tests/workers/test_worker.py::test_run_cancel_immediately PASSED [ 99%]
tests/workers/test_worker.py::test_get_worker PASSED [ 99%]
tests/workers/test_worker.py::test_no_active_worker PASSED [ 99%]
tests/workers/test_worker.py::test_progress_update PASSED [ 99%]
tests/workers/test_worker.py::test_double_start PASSED [ 99%]
tests/workers/test_worker.py::test_self_referential_deadlock PASSED [ 99%]
tests/workers/test_worker.py::test_wait_without_start PASSED [ 99%]
tests/workers/test_worker_manager.py::test_worker_manager_init PASSED [ 99%]
tests/workers/test_worker_manager.py::test_run_worker_async PASSED [ 99%]
tests/workers/test_worker_manager.py::test_run_worker_thread_non_async PASSED [ 99%]
tests/workers/test_worker_manager.py::test_run_worker_thread_async PASSED [100%]
=============================== warnings summary ===============================
tests/test_widget_mount_point.py::test_find_dom_spot
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_textual/build/textual/dom.py:179: RuntimeWarning: coroutine 'test_async_reactive_watch_callbacks_go_on_the_watcher.<locals>.MyApp.callback' was never awaited
self._classes.update(_classes)
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
= 2389 passed, 1 skipped, 8 deselected, 4 xfailed, 1 warning in 157.49s (0:02:37) =
create-stamp debian/debhelper-build-stamp
dh_testroot -O--buildsystem=pybuild
dh_prep -O--buildsystem=pybuild
dh_auto_install --destdir=debian/python3-textual/ -O--buildsystem=pybuild
I: pybuild plugin_pyproject:178: Copying package built for python3.13 to destdir
I: pybuild plugin_pyproject:178: Copying package built for python3.12 to destdir
dh_installdocs -O--buildsystem=pybuild
dh_installchangelogs -O--buildsystem=pybuild
dh_installexamples -O--buildsystem=pybuild
dh_python3 -O--buildsystem=pybuild
dh_installsystemduser -O--buildsystem=pybuild
dh_perl -O--buildsystem=pybuild
dh_link -O--buildsystem=pybuild
dh_strip_nondeterminism -O--buildsystem=pybuild
dh_compress -O--buildsystem=pybuild
dh_fixperms -O--buildsystem=pybuild
dh_missing -O--buildsystem=pybuild
dh_installdeb -O--buildsystem=pybuild
dh_gencontrol -O--buildsystem=pybuild
dpkg-gencontrol: warning: Recommends field of package python3-textual: substitution variable ${python3:Recommends} used, but is not defined
dpkg-gencontrol: warning: Suggests field of package python3-textual: substitution variable ${python3:Suggests} used, but is not defined
dh_md5sums -O--buildsystem=pybuild
dh_builddeb -O--buildsystem=pybuild
dpkg-deb: building package 'python3-textual' in '../python3-textual_0.52.1-1_all.deb'.
dpkg-genbuildinfo --build=binary -O../textual_0.52.1-1_arm64.buildinfo
dpkg-genchanges --build=binary -O../textual_0.52.1-1_arm64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
dpkg-source --after-build .
dpkg-source: info: using options from textual-0.52.1/debian/source/options: --extend-diff-ignore=^[^/]+.egg-info/
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2024-11-18T17:17:20Z
Finished
--------
I: Built successfully
+------------------------------------------------------------------------------+
| Changes |
+------------------------------------------------------------------------------+
textual_0.52.1-1_arm64.changes:
-------------------------------
Format: 1.8
Date: Fri, 08 Mar 2024 22:50:53 -0500
Source: textual
Binary: python3-textual
Architecture: all
Version: 0.52.1-1
Distribution: sid
Urgency: medium
Maintainer: Sandro Tosi <morph@debian.org>
Changed-By: Sandro Tosi <morph@debian.org>
Description:
python3-textual - TUI (Text User Interface) framework for Python inspired by modern
Changes:
textual (0.52.1-1) unstable; urgency=medium
.
* New upstream release
* debian/rules
- skip tests marked as 'syntax', they need tree-sitter which is not in
debian
Checksums-Sha1:
36664d63a13487ff2ecccbcffb8d74c010f427b3 380880 python3-textual_0.52.1-1_all.deb
9cc29816d7fe9a1aa524431e60a9ac18eaf98d46 7989 textual_0.52.1-1_arm64.buildinfo
Checksums-Sha256:
51a6a4d43c0e7894ebf54926495f14dfcc11286fded212db94dfc86fcc9acae2 380880 python3-textual_0.52.1-1_all.deb
fa461ee8c16ad02538f5e9a73c081dd00ed31a3f550a844fa7532e11aa7f1c07 7989 textual_0.52.1-1_arm64.buildinfo
Files:
a14702ad565c85ae7ce7c2a9e1483b65 380880 python optional python3-textual_0.52.1-1_all.deb
b7864ce697c871bedffc46ba0c7102a3 7989 python optional textual_0.52.1-1_arm64.buildinfo
+------------------------------------------------------------------------------+
| Buildinfo |
+------------------------------------------------------------------------------+
Format: 1.0
Source: textual
Binary: python3-textual
Architecture: all
Version: 0.52.1-1
Checksums-Md5:
a14702ad565c85ae7ce7c2a9e1483b65 380880 python3-textual_0.52.1-1_all.deb
Checksums-Sha1:
36664d63a13487ff2ecccbcffb8d74c010f427b3 380880 python3-textual_0.52.1-1_all.deb
Checksums-Sha256:
51a6a4d43c0e7894ebf54926495f14dfcc11286fded212db94dfc86fcc9acae2 380880 python3-textual_0.52.1-1_all.deb
Build-Origin: Debian
Build-Architecture: arm64
Build-Date: Mon, 18 Nov 2024 17:17:19 +0000
Build-Path: /<<PKGBUILDDIR>>
Build-Tainted-By:
merged-usr-via-aliased-dirs
Installed-Build-Depends:
autoconf (= 2.72-3),
automake (= 1:1.16.5-1.3),
autopoint (= 0.22.5-2),
autotools-dev (= 20220109.1),
base-files (= 13.5),
base-passwd (= 3.6.5),
bash (= 5.2.32-1+b2),
binutils (= 2.43.1-5),
binutils-aarch64-linux-gnu (= 2.43.1-5),
binutils-common (= 2.43.1-5),
bsdextrautils (= 2.40.2-11),
bsdutils (= 1:2.40.2-11),
build-essential (= 12.12),
bzip2 (= 1.0.8-6),
ca-certificates (= 20240203),
coreutils (= 9.5-1+b1),
cpp (= 4:14.2.0-1),
cpp-14 (= 14.2.0-8),
cpp-14-aarch64-linux-gnu (= 14.2.0-8),
cpp-aarch64-linux-gnu (= 4:14.2.0-1),
dash (= 0.5.12-9+b1),
debconf (= 1.5.87),
debhelper (= 13.20),
debianutils (= 5.21),
dh-autoreconf (= 20),
dh-python (= 6.20241024),
dh-strip-nondeterminism (= 1.14.0-1),
diffutils (= 1:3.10-1+b1),
dpkg (= 1.22.12~1.gbp82cafd),
dpkg-dev (= 1.22.12~1.gbp82cafd),
dwz (= 0.15-1+b1),
file (= 1:5.45-3+b1),
findutils (= 4.10.0-3),
g++ (= 4:14.2.0-1),
g++-14 (= 14.2.0-8),
g++-14-aarch64-linux-gnu (= 14.2.0-8),
g++-aarch64-linux-gnu (= 4:14.2.0-1),
gcc (= 4:14.2.0-1),
gcc-14 (= 14.2.0-8),
gcc-14-aarch64-linux-gnu (= 14.2.0-8),
gcc-14-base (= 14.2.0-8),
gcc-aarch64-linux-gnu (= 4:14.2.0-1),
gettext (= 0.22.5-2),
gettext-base (= 0.22.5-2),
grep (= 3.11-4+b1),
groff-base (= 1.23.0-5),
gzip (= 1.12-1.1+b1),
hostname (= 3.25),
init-system-helpers (= 1.67),
intltool-debian (= 0.35.0+20060710.6),
libacl1 (= 2.3.2-2+b1),
libarchive-zip-perl (= 1.68-1),
libasan8 (= 14.2.0-8),
libatomic1 (= 14.2.0-8),
libattr1 (= 1:2.5.2-2),
libaudit-common (= 1:4.0.2-2),
libaudit1 (= 1:4.0.2-2),
libbinutils (= 2.43.1-5),
libblkid1 (= 2.40.2-11),
libbz2-1.0 (= 1.0.8-6),
libc-bin (= 2.40-3),
libc-dev-bin (= 2.40-3),
libc6 (= 2.40-3),
libc6-dev (= 2.40-3),
libcap-ng0 (= 0.8.5-3+b1),
libcap2 (= 1:2.66-5+b1),
libcc1-0 (= 14.2.0-8),
libcom-err2 (= 1.47.1-1+b1),
libcrypt-dev (= 1:4.4.36-5),
libcrypt1 (= 1:4.4.36-5),
libctf-nobfd0 (= 2.43.1-5),
libctf0 (= 2.43.1-5),
libdb5.3t64 (= 5.3.28+dfsg2-9),
libdebconfclient0 (= 0.273),
libdebhelper-perl (= 13.20),
libdpkg-perl (= 1.22.12~1.gbp82cafd),
libelf1t64 (= 0.192-4),
libexpat1 (= 2.6.4-1),
libffi8 (= 3.4.6-1),
libfile-stripnondeterminism-perl (= 1.14.0-1),
libgcc-14-dev (= 14.2.0-8),
libgcc-s1 (= 14.2.0-8),
libgdbm-compat4t64 (= 1.24-2),
libgdbm6t64 (= 1.24-2),
libgmp10 (= 2:6.3.0+dfsg-2+b2),
libgomp1 (= 14.2.0-8),
libgprofng0 (= 2.43.1-5),
libgssapi-krb5-2 (= 1.21.3-3),
libhwasan0 (= 14.2.0-8),
libicu72 (= 72.1-5+b1),
libisl23 (= 0.27-1),
libitm1 (= 14.2.0-8),
libjansson4 (= 2.14-2+b3),
libk5crypto3 (= 1.21.3-3),
libkeyutils1 (= 1.6.3-4),
libkrb5-3 (= 1.21.3-3),
libkrb5support0 (= 1.21.3-3),
liblsan0 (= 14.2.0-8),
liblzma5 (= 5.6.3-1+b1),
libmagic-mgc (= 1:5.45-3+b1),
libmagic1t64 (= 1:5.45-3+b1),
libmd0 (= 1.1.0-2+b1),
libmount1 (= 2.40.2-11),
libmpc3 (= 1.3.1-1+b3),
libmpfr6 (= 4.2.1-1+b2),
libncursesw6 (= 6.5-2+b1),
libnsl2 (= 1.3.0-3+b3),
libpam-modules (= 1.5.3-7+b1),
libpam-modules-bin (= 1.5.3-7+b1),
libpam-runtime (= 1.5.3-7),
libpam0g (= 1.5.3-7+b1),
libpcre2-8-0 (= 10.44-4),
libperl5.40 (= 5.40.0-7),
libpipeline1 (= 1.5.8-1),
libpython3-stdlib (= 3.12.7-1),
libpython3.12-minimal (= 3.12.7-3),
libpython3.12-stdlib (= 3.12.7-3),
libpython3.13-minimal (= 3.13.0-2),
libpython3.13-stdlib (= 3.13.0-2),
libreadline8t64 (= 8.2-5),
libseccomp2 (= 2.5.5-1+b3),
libselinux1 (= 3.7-3+b1),
libsframe1 (= 2.43.1-5),
libsmartcols1 (= 2.40.2-11),
libsqlite3-0 (= 3.46.1-1),
libssl3t64 (= 3.3.2-2),
libstdc++-14-dev (= 14.2.0-8),
libstdc++6 (= 14.2.0-8),
libsystemd0 (= 257~rc2-3),
libtinfo6 (= 6.5-2+b1),
libtirpc-common (= 1.3.4+ds-1.3),
libtirpc3t64 (= 1.3.4+ds-1.3+b1),
libtool (= 2.4.7-8),
libtsan2 (= 14.2.0-8),
libubsan1 (= 14.2.0-8),
libuchardet0 (= 0.0.8-1+b2),
libudev1 (= 257~rc2-3),
libunistring5 (= 1.2-1+b1),
libuuid1 (= 2.40.2-11),
libxml2 (= 2.12.7+dfsg+really2.9.14-0.2+b1),
libzstd1 (= 1.5.6+dfsg-1+b1),
linux-libc-dev (= 6.11.9-1),
m4 (= 1.4.19-4),
make (= 4.3-4.1+b1),
man-db (= 2.13.0-1),
mawk (= 1.3.4.20240905-1),
media-types (= 10.1.0),
ncurses-base (= 6.5-2),
ncurses-bin (= 6.5-2+b1),
netbase (= 6.4),
openssl (= 3.3.2-2),
openssl-provider-legacy (= 3.3.2-2),
patch (= 2.7.6-7+b1),
perl (= 5.40.0-7),
perl-base (= 5.40.0-7),
perl-modules-5.40 (= 5.40.0-7),
po-debconf (= 1.0.21+nmu1),
pybuild-plugin-pyproject (= 6.20241024),
python3 (= 3.12.7-1),
python3-all (= 3.12.7-1),
python3-async-generator (= 1.10-4),
python3-autocommand (= 2.2.2-3),
python3-bcrypt (= 4.2.0-2.1),
python3-build (= 1.2.2-1),
python3-cachecontrol (= 0.14.1-1),
python3-certifi (= 2024.8.30+dfsg-1),
python3-cffi-backend (= 1.17.1-2+b1),
python3-chardet (= 5.2.0+dfsg-1),
python3-charset-normalizer (= 3.4.0-1+b1),
python3-cleo (= 2.1.0-2),
python3-click (= 8.1.7-2),
python3-colorama (= 0.4.6-4),
python3-crashtest (= 0.4.1-1),
python3-cryptography (= 43.0.0-1),
python3-distlib (= 0.3.9-1),
python3-dulwich (= 0.22.5-1+b1),
python3-fastjsonschema (= 2.20.0-1),
python3-filelock (= 3.16.1-1),
python3-idna (= 3.8-2),
python3-importlib-metadata (= 8.5.0-1),
python3-inflect (= 7.3.1-2),
python3-iniconfig (= 1.1.1-2),
python3-installer (= 0.7.0+dfsg1-3),
python3-jaraco.classes (= 3.4.0-1),
python3-jaraco.context (= 6.0.0-1),
python3-jaraco.functools (= 4.1.0-1),
python3-jaraco.text (= 4.0.0-1),
python3-jeepney (= 0.8.0-4),
python3-jinja2 (= 3.1.3-1),
python3-keyring (= 25.4.1-1),
python3-linkify-it (= 2.0.3-1),
python3-markdown-it (= 3.0.0-2),
python3-markupsafe (= 2.1.5-1+b3),
python3-mdurl (= 0.1.2-1),
python3-minimal (= 3.12.7-1),
python3-more-itertools (= 10.5.0-1),
python3-msgpack (= 1.0.3-3+b4),
python3-packaging (= 24.2-1),
python3-pexpect (= 4.9-3),
python3-pip-whl (= 24.3.1+dfsg-1),
python3-pkg-resources (= 75.2.0-1),
python3-pkginfo (= 1.11.2-1),
python3-platformdirs (= 4.3.6-1),
python3-pluggy (= 1.5.0-1),
python3-poetry (= 1.8.3+dfsg-4),
python3-poetry-core (= 1.9.0-2),
python3-poetry-plugin-export (= 1.8.0-1),
python3-ptyprocess (= 0.7.0-6),
python3-pygments (= 2.18.0+dfsg-1),
python3-pylev (= 1.4.0-1),
python3-pyproject-hooks (= 1.2.0-1),
python3-pytest (= 8.3.3-1),
python3-pytest-asyncio (= 0.24.0a1-1),
python3-requests (= 2.32.3+dfsg-1),
python3-requests-toolbelt (= 1.0.0-3),
python3-rich (= 13.7.1-1),
python3-secretstorage (= 3.3.3-3),
python3-setuptools (= 75.2.0-1),
python3-setuptools-whl (= 75.2.0-1),
python3-shellingham (= 1.5.4-1),
python3-syrupy (= 4.7.2-1),
python3-toml (= 0.10.2-1),
python3-tomlkit (= 0.13.2-1),
python3-trove-classifiers (= 2024.9.12-1),
python3-typeguard (= 4.4.1-1),
python3-typing-extensions (= 4.12.2-2),
python3-uc-micro (= 1.0.3-1),
python3-urllib3 (= 2.0.7-2),
python3-virtualenv (= 20.27.0+ds-1),
python3-wheel (= 0.45.0-1),
python3-wheel-whl (= 0.45.0-1),
python3-zipp (= 3.21.0-1),
python3.12 (= 3.12.7-3),
python3.12-minimal (= 3.12.7-3),
python3.13 (= 3.13.0-2),
python3.13-minimal (= 3.13.0-2),
readline-common (= 8.2-5),
rpcsvc-proto (= 1.4.3-1+b1),
sed (= 4.9-2+b1),
sensible-utils (= 0.0.24),
sysvinit-utils (= 3.11-1),
tar (= 1.35+dfsg-3+b1),
tzdata (= 2024b-3),
util-linux (= 2.40.2-11),
xz-utils (= 5.6.3-1+b1),
zlib1g (= 1:1.3.dfsg+really1.3.1-1+b1)
Environment:
DEB_BUILD_OPTIONS="parallel=8"
LANG="C.UTF-8"
LC_ALL="C.UTF-8"
SOURCE_DATE_EPOCH="1709956253"
+------------------------------------------------------------------------------+
| Package contents |
+------------------------------------------------------------------------------+
python3-textual_0.52.1-1_all.deb
--------------------------------
new Debian package, version 2.0.
size 380880 bytes: control archive=7292 bytes.
935 bytes, 22 lines control
21891 bytes, 245 lines md5sums
265 bytes, 12 lines * postinst #!/bin/sh
378 bytes, 12 lines * prerm #!/bin/sh
Package: python3-textual
Source: textual
Version: 0.52.1-1
Architecture: all
Maintainer: Sandro Tosi <morph@debian.org>
Installed-Size: 2213
Depends: python3-markdown-it, python3-rich (>= 10.7.0), python3-typing-extensions, python3:any
Section: python
Priority: optional
Homepage: https://github.com/willmcgugan/textual
Description: TUI (Text User Interface) framework for Python inspired by modern web development
Textual uses Rich to render rich text, so anything that Rich can render may be
used in Textual.
.
Event handling in Textual is asynchronous (using async and await keywords).
Widgets (UI components) can independently update and communicate with each
other via message passing.
.
Textual has more in common with modern web development than it does with
curses; layout is done with CSS grid and (soon) the theme may be customized
with CSS. Other techniques are borrowed from JS frameworks such as Vue and
React.
drwxr-xr-x root/root 0 2024-03-09 03:50 ./
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual-0.52.1.dist-info/
-rw-r--r-- root/root 7 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual-0.52.1.dist-info/INSTALLER
-rw-r--r-- root/root 5571 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual-0.52.1.dist-info/METADATA
-rw-r--r-- root/root 88 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual-0.52.1.dist-info/WHEEL
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/
-rw-r--r-- root/root 4594 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/__init__.py
-rw-r--r-- root/root 88 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/__main__.py
-rw-r--r-- root/root 20177 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_animator.py
-rw-r--r-- root/root 18006 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_ansi_sequences.py
-rw-r--r-- root/root 5593 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_arrange.py
-rw-r--r-- root/root 12495 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_border.py
-rw-r--r-- root/root 8159 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_box_drawing.py
-rw-r--r-- root/root 2504 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_callback.py
-rw-r--r-- root/root 1416 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_cells.py
-rw-r--r-- root/root 5757 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_color_constants.py
-rw-r--r-- root/root 2390 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_compose.py
-rw-r--r-- root/root 37913 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_compositor.py
-rw-r--r-- root/root 997 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_context.py
-rw-r--r-- root/root 5421 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_doc.py
-rw-r--r-- root/root 1255 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_duration.py
-rw-r--r-- root/root 4101 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_easing.py
-rw-r--r-- root/root 774 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_event_broker.py
-rw-r--r-- root/root 1805 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_immutable_sequence_view.py
-rw-r--r-- root/root 3609 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_import_app.py
-rw-r--r-- root/root 7257 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_layout.py
-rw-r--r-- root/root 3412 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_layout_resolve.py
-rw-r--r-- root/root 846 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_line_split.py
-rw-r--r-- root/root 436 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_log.py
-rw-r--r-- root/root 1265 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_loop.py
-rw-r--r-- root/root 4434 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_node_list.py
-rw-r--r-- root/root 3307 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_on.py
-rw-r--r-- root/root 1527 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_opacity.py
-rw-r--r-- root/root 4886 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_parser.py
-rw-r--r-- root/root 839 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_partition.py
-rw-r--r-- root/root 2062 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_path.py
-rw-r--r-- root/root 456 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_profile.py
-rw-r--r-- root/root 8886 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_resolve.py
-rw-r--r-- root/root 7590 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_segment_tools.py
-rw-r--r-- root/root 1620 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_sleep.py
-rw-r--r-- root/root 3652 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_slug.py
-rw-r--r-- root/root 3716 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_spatial_map.py
-rw-r--r-- root/root 17191 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_styles_cache.py
-rw-r--r-- root/root 2474 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_system_commands.py
-rw-r--r-- root/root 15324 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_text_area_theme.py
-rw-r--r-- root/root 1435 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_time.py
-rw-r--r-- root/root 265 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_tree_sitter.py
-rw-r--r-- root/root 1995 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_two_way_dict.py
-rw-r--r-- root/root 1928 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_types.py
-rw-r--r-- root/root 1446 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_wait.py
-rw-r--r-- root/root 6384 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_widget_navigation.py
-rw-r--r-- root/root 3773 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_win_sleep.py
-rw-r--r-- root/root 4949 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_work_decorator.py
-rw-r--r-- root/root 5484 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_worker_manager.py
-rw-r--r-- root/root 5965 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_wrap.py
-rw-r--r-- root/root 12475 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/_xterm_parser.py
-rw-r--r-- root/root 1532 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/actions.py
-rw-r--r-- root/root 121841 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/app.py
-rw-r--r-- root/root 1387 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/await_complete.py
-rw-r--r-- root/root 1019 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/await_remove.py
-rw-r--r-- root/root 5725 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/binding.py
-rw-r--r-- root/root 315 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/box_model.py
-rw-r--r-- root/root 9207 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/cache.py
-rw-r--r-- root/root 8175 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/canvas.py
-rw-r--r-- root/root 524 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/case.py
-rw-r--r-- root/root 20476 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/color.py
-rw-r--r-- root/root 38994 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/command.py
-rw-r--r-- root/root 3592 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/constants.py
-rw-r--r-- root/root 3818 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/containers.py
-rw-r--r-- root/root 1247 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/coordinate.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/
-rw-r--r-- root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/__init__.py
-rw-r--r-- root/root 743 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/_error_tools.py
-rw-r--r-- root/root 2833 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/_help_renderables.py
-rw-r--r-- root/root 27573 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/_help_text.py
-rw-r--r-- root/root 38751 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/_style_properties.py
-rw-r--r-- root/root 40383 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/_styles_builder.py
-rw-r--r-- root/root 1491 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/constants.py
-rw-r--r-- root/root 1282 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/errors.py
-rw-r--r-- root/root 2373 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/match.py
-rw-r--r-- root/root 8324 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/model.py
-rw-r--r-- root/root 16476 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/parse.py
-rw-r--r-- root/root 14822 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/query.py
-rw-r--r-- root/root 9734 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/scalar.py
-rw-r--r-- root/root 3119 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/scalar_animation.py
-rw-r--r-- root/root 40145 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/styles.py
-rw-r--r-- root/root 25363 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/stylesheet.py
-rw-r--r-- root/root 8099 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/tokenize.py
-rw-r--r-- root/root 10277 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/tokenizer.py
-rw-r--r-- root/root 417 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/transition.py
-rw-r--r-- root/root 1464 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/css/types.py
-rw-r--r-- root/root 10922 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/demo.py
-rw-r--r-- root/root 3535 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/demo.tcss
-rw-r--r-- root/root 6728 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/design.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/
-rw-r--r-- root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/__init__.py
-rw-r--r-- root/root 13827 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_document.py
-rw-r--r-- root/root 18344 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_document_navigator.py
-rw-r--r-- root/root 5481 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_edit.py
-rw-r--r-- root/root 7061 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_history.py
-rw-r--r-- root/root 191 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_languages.py
-rw-r--r-- root/root 10037 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_syntax_aware_document.py
-rw-r--r-- root/root 17714 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/document/_wrapped_document.py
-rw-r--r-- root/root 45781 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/dom.py
-rw-r--r-- root/root 5069 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/driver.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/
-rw-r--r-- root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/__init__.py
-rw-r--r-- root/root 4052 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/_byte_stream.py
-rw-r--r-- root/root 204 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/_input_reader.py
-rw-r--r-- root/root 1407 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/_input_reader_linux.py
-rw-r--r-- root/root 930 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/_input_reader_windows.py
-rw-r--r-- root/root 1710 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/_writer_thread.py
-rw-r--r-- root/root 1871 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/headless_driver.py
-rw-r--r-- root/root 13038 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/linux_driver.py
-rw-r--r-- root/root 6936 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/web_driver.py
-rw-r--r-- root/root 9523 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/win32.py
-rw-r--r-- root/root 3884 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/drivers/windows_driver.py
-rw-r--r-- root/root 534 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/errors.py
-rw-r--r-- root/root 16215 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/events.py
-rw-r--r-- root/root 3537 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/expand_tabs.py
-rw-r--r-- root/root 699 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/features.py
-rw-r--r-- root/root 1938 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/file_monitor.py
-rw-r--r-- root/root 6285 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/filter.py
-rw-r--r-- root/root 4880 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/fuzzy.py
-rw-r--r-- root/root 35255 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/geometry.py
-rw-r--r-- root/root 9032 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/keys.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/layouts/
-rw-r--r-- root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/layouts/__init__.py
-rw-r--r-- root/root 755 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/layouts/factory.py
-rw-r--r-- root/root 9108 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/layouts/grid.py
-rw-r--r-- root/root 3196 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/layouts/horizontal.py
-rw-r--r-- root/root 3021 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/layouts/vertical.py
-rw-r--r-- root/root 1959 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/lazy.py
-rw-r--r-- root/root 1181 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/logging.py
-rw-r--r-- root/root 3880 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/message.py
-rw-r--r-- root/root 29911 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/message_pump.py
-rw-r--r-- root/root 2409 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/messages.py
-rw-r--r-- root/root 3607 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/notifications.py
-rw-r--r-- root/root 2306 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/pad.py
-rw-r--r-- root/root 16500 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/pilot.py
-rw-r--r-- root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/py.typed
-rw-r--r-- root/root 14288 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/reactive.py
-rw-r--r-- root/root 1159 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/render.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/
-rw-r--r-- root/root 62 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/__init__.py
-rw-r--r-- root/root 1314 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/_blend_colors.py
-rw-r--r-- root/root 2493 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/background_screen.py
-rw-r--r-- root/root 4430 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/bar.py
-rw-r--r-- root/root 779 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/blank.py
-rw-r--r-- root/root 2534 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/digits.py
-rw-r--r-- root/root 5191 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/gradient.py
-rw-r--r-- root/root 4052 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/sparkline.py
-rw-r--r-- root/root 1960 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/styled.py
-rw-r--r-- root/root 2984 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/text_opacity.py
-rw-r--r-- root/root 2497 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/renderables/tint.py
-rw-r--r-- root/root 38354 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/screen.py
-rw-r--r-- root/root 5666 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/scroll_view.py
-rw-r--r-- root/root 12351 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/scrollbar.py
-rw-r--r-- root/root 2883 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/signal.py
-rw-r--r-- root/root 15718 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/strip.py
-rw-r--r-- root/root 4695 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/suggester.py
-rw-r--r-- root/root 1415 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/suggestions.py
-rw-r--r-- root/root 5062 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/timer.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/
-rw-r--r-- root/root 2402 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/bash.scm
-rw-r--r-- root/root 1002 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/css.scm
-rw-r--r-- root/root 1511 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/html.scm
-rw-r--r-- root/root 430 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/json.scm
-rw-r--r-- root/root 228 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/markdown.scm
-rw-r--r-- root/root 7728 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/python.scm
-rw-r--r-- root/root 583 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/regex.scm
-rw-r--r-- root/root 2172 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/sql.scm
-rw-r--r-- root/root 618 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/toml.scm
-rw-r--r-- root/root 943 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/tree-sitter/highlights/yaml.scm
-rw-r--r-- root/root 1351 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/types.py
-rw-r--r-- root/root 18238 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/validation.py
-rw-r--r-- root/root 3319 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/walk.py
-rw-r--r-- root/root 129039 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widget.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/
-rw-r--r-- root/root 3006 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/__init__.py
-rw-r--r-- root/root 1791 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/__init__.pyi
-rw-r--r-- root/root 11206 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_button.py
-rw-r--r-- root/root 788 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_checkbox.py
-rw-r--r-- root/root 7003 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_collapsible.py
-rw-r--r-- root/root 3156 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_content_switcher.py
-rw-r--r-- root/root 99392 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_data_table.py
-rw-r--r-- root/root 3126 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_digits.py
-rw-r--r-- root/root 18844 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_directory_tree.py
-rw-r--r-- root/root 4600 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_footer.py
-rw-r--r-- root/root 5288 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_header.py
-rw-r--r-- root/root 27840 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_input.py
-rw-r--r-- root/root 256 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_label.py
-rw-r--r-- root/root 1538 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_list_item.py
-rw-r--r-- root/root 9460 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_list_view.py
-rw-r--r-- root/root 2185 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_loading_indicator.py
-rw-r--r-- root/root 9716 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_log.py
-rw-r--r-- root/root 33796 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_markdown.py
-rw-r--r-- root/root 68 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_markdown_viewer.py
-rw-r--r-- root/root 38721 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_option_list.py
-rw-r--r-- root/root 5962 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_placeholder.py
-rw-r--r-- root/root 1410 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_pretty.py
-rw-r--r-- root/root 15289 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_progress_bar.py
-rw-r--r-- root/root 1022 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_radio_button.py
-rw-r--r-- root/root 9883 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_radio_set.py
-rw-r--r-- root/root 7706 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_rich_log.py
-rw-r--r-- root/root 5866 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_rule.py
-rw-r--r-- root/root 18639 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_select.py
-rw-r--r-- root/root 24396 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_selection_list.py
-rw-r--r-- root/root 3229 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_sparkline.py
-rw-r--r-- root/root 2943 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_static.py
-rw-r--r-- root/root 4920 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_switch.py
-rw-r--r-- root/root 42 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_tab.py
-rw-r--r-- root/root 60 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_tab_pane.py
-rw-r--r-- root/root 23907 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_tabbed_content.py
-rw-r--r-- root/root 25924 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_tabs.py
-rw-r--r-- root/root 83257 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_text_area.py
-rw-r--r-- root/root 5816 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_toast.py
-rw-r--r-- root/root 8268 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_toggle_button.py
-rw-r--r-- root/root 379 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_tooltip.py
-rw-r--r-- root/root 38388 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_tree.py
-rw-r--r-- root/root 1519 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/_welcome.py
-rw-r--r-- root/root 64 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/button.py
-rw-r--r-- root/root 418 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/data_table.py
-rw-r--r-- root/root 0 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/input.py
-rw-r--r-- root/root 224 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/markdown.py
-rw-r--r-- root/root 149 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/option_list.py
-rw-r--r-- root/root 197 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/rule.py
-rw-r--r-- root/root 122 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/select.py
-rw-r--r-- root/root 197 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/selection_list.py
-rw-r--r-- root/root 1060 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/text_area.py
-rw-r--r-- root/root 319 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/widgets/tree.py
-rw-r--r-- root/root 13448 2024-03-09 03:50 ./usr/lib/python3/dist-packages/textual/worker.py
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/share/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/share/doc/
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/share/doc/python3-textual/
-rw-r--r-- root/root 4079 2024-02-20 10:39 ./usr/share/doc/python3-textual/README.md
-rw-r--r-- root/root 625 2024-03-09 03:50 ./usr/share/doc/python3-textual/changelog.Debian.gz
-rw-r--r-- root/root 24046 2024-02-20 10:39 ./usr/share/doc/python3-textual/changelog.gz
-rw-r--r-- root/root 1397 2024-03-09 03:50 ./usr/share/doc/python3-textual/copyright
drwxr-xr-x root/root 0 2024-03-09 03:50 ./usr/share/doc/python3-textual/examples/
-rw-r--r-- root/root 228 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/README.md
-rw-r--r-- root/root 5789 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/calculator.py
-rw-r--r-- root/root 506 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/calculator.tcss
-rw-r--r-- root/root 2150 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/code_browser.py
-rw-r--r-- root/root 353 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/code_browser.tcss
-rw-r--r-- root/root 1696 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/color_command.py
-rw-r--r-- root/root 399 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/demo.md
-rw-r--r-- root/root 2573 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/dictionary.py
-rw-r--r-- root/root 340 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/dictionary.tcss
-rw-r--r-- root/root 5441 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/example.md
-rw-r--r-- root/root 377 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/five_by_five.md
-rw-r--r-- root/root 10044 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/five_by_five.py
-rw-r--r-- root/root 1334 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/five_by_five.tcss
-rw-r--r-- root/root 65519 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/food.json
-rw-r--r-- root/root 2808 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/json_tree.py
-rw-r--r-- root/root 1380 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/markdown.py
-rw-r--r-- root/root 4591 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/merlin.py
-rw-r--r-- root/root 469 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/pride.py
-rw-r--r-- root/root 1223 2024-02-20 10:39 ./usr/share/doc/python3-textual/examples/splash.py
lintian
-------
Setup apt archive
-----------------
Merged Build-Depends: lintian
Filtered Build-Depends: lintian
dpkg-deb: warning: root directory has unusual owner or group 998:999.
Hint: either pass --root-owner-group, see dpkg-build-api(7) or add an explicit 'Rules-Requires-Root: no' in debian/control.
dpkg-deb: warning: ignoring 1 warning about the control file(s)
dpkg-deb: building package 'sbuild-build-depends-lintian-dummy' in '/<<RESOLVERDIR>>/apt_archive/sbuild-build-depends-lintian-dummy.deb'.
Ign:1 copy:/<<RESOLVERDIR>>/apt_archive ./ InRelease
Get:2 copy:/<<RESOLVERDIR>>/apt_archive ./ Release [615 B]
Ign:3 copy:/<<RESOLVERDIR>>/apt_archive ./ Release.gpg
Get:4 copy:/<<RESOLVERDIR>>/apt_archive ./ Sources [1513 B]
Get:5 copy:/<<RESOLVERDIR>>/apt_archive ./ Packages [1487 B]
Fetched 3615 B in 0s (309 kB/s)
Reading package lists...
Get:1 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ InRelease
Ign:1 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ InRelease
Get:2 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release [606 B]
Get:2 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release [606 B]
Get:3 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release.gpg
Ign:3 file:/<<BUILDDIR>>/resolver-GV6109/apt_archive ./ Release.gpg
Reading package lists...
Reading package lists...
Install lintian build dependencies (apt-based resolver)
-------------------------------------------------------
Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed:
sbuild-build-depends-lintian-dummy
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 852 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<RESOLVERDIR>>/apt_archive ./ sbuild-build-depends-lintian-dummy 0.invalid.0 [852 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 852 B in 0s (0 B/s)
Selecting previously unselected package sbuild-build-depends-lintian-dummy.
(Reading database ... 27642 files and directories currently installed.)
Preparing to unpack .../sbuild-build-depends-lintian-dummy_0.invalid.0_arm64.deb ...
Unpacking sbuild-build-depends-lintian-dummy (0.invalid.0) ...
Setting up sbuild-build-depends-lintian-dummy (0.invalid.0) ...
Running lintian...
W: textual changes: distribution-and-changes-mismatch sid unstable
W: python3-textual: synopsis-too-long
I: Lintian run was successful.
+------------------------------------------------------------------------------+
| Post Build |
+------------------------------------------------------------------------------+
+------------------------------------------------------------------------------+
| Cleanup |
+------------------------------------------------------------------------------+
Purging /<<BUILDDIR>>
Not cleaning session: cloned chroot in use
+------------------------------------------------------------------------------+
| Summary |
+------------------------------------------------------------------------------+
Build Architecture: arm64
Build Type: binary
Build-Space: 61584
Build-Time: 333
Distribution: sid
Host Architecture: arm64
Install-Time: 63
Job: /tmp/debusine-fetch-exec-upload-rg61sto7/textual_0.52.1-1.dsc
Lintian: warn
Machine Architecture: arm64
Package: textual
Package-Time: 433
Source-Version: 0.52.1-1
Space: 61584
Status: successful
Version: 0.52.1-1
--------------------------------------------------------------------------------
Finished at 2024-11-18T17:17:20Z
Build needed 00:07:13, 61584k disk space