0s autopkgtest [16:26:39]: starting date and time: 2024-11-09 16:26:39+0000 0s autopkgtest [16:26:39]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [16:26:39]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.15cj9lta/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:wtforms --apt-upgrade wtforms-components --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=wtforms/3.2.1-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@lcy02-9.secgroup --name adt-plucky-amd64-wtforms-components-20241109-160801-juju-7f2275-prod-proposed-migration-environment-15-ee57b551-b354-41bf-8008-683662b09124 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 44s autopkgtest [16:27:23]: testbed dpkg architecture: amd64 44s autopkgtest [16:27:23]: testbed apt version: 2.9.8 44s autopkgtest [16:27:23]: @@@@@@@@@@@@@@@@@@@@ test bed setup 44s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 45s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [998 kB] 45s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 45s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [15.3 kB] 45s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [104 kB] 45s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [106 kB] 45s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [156 kB] 45s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 45s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [327 kB] 45s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [748 kB] 45s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [37.7 kB] 45s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [13.0 kB] 45s Fetched 2618 kB in 0s (5710 kB/s) 45s Reading package lists... 47s Reading package lists... 47s Building dependency tree... 47s Reading state information... 47s Calculating upgrade... 47s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 47s Reading package lists... 48s Building dependency tree... 48s Reading state information... 48s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 48s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 48s Get:2 http://ftpmaster.internal/ubuntu plucky InRelease [213 kB] 48s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 48s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 48s Get:5 http://ftpmaster.internal/ubuntu plucky/multiverse Sources [298 kB] 48s Get:6 http://ftpmaster.internal/ubuntu plucky/main Sources [1374 kB] 48s Get:7 http://ftpmaster.internal/ubuntu plucky/universe Sources [20.7 MB] 49s Get:8 http://ftpmaster.internal/ubuntu plucky/main i386 Packages [1068 kB] 49s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 Packages [1429 kB] 49s Get:10 http://ftpmaster.internal/ubuntu plucky/universe amd64 Packages [15.8 MB] 49s Get:11 http://ftpmaster.internal/ubuntu plucky/universe i386 Packages [8334 kB] 49s Get:12 http://ftpmaster.internal/ubuntu plucky/multiverse i386 Packages [122 kB] 49s Get:13 http://ftpmaster.internal/ubuntu plucky/multiverse amd64 Packages [253 kB] 52s Fetched 49.6 MB in 4s (13.0 MB/s) 53s Reading package lists... 53s Reading package lists... 53s Building dependency tree... 53s Reading state information... 54s Calculating upgrade... 54s The following NEW packages will be installed: 54s systemd-cryptsetup 54s The following packages will be upgraded: 54s base-passwd bash-completion libattr1 libbpf1 libbsd0 libbytesize-common 54s libbytesize1 libdrm-common libdrm2 libjson-glib-1.0-0 54s libjson-glib-1.0-common libmaxminddb0 libmnl0 libnghttp2-14 libnspr4 54s libnss-systemd libpam-systemd libpython3.12-minimal libpython3.12-stdlib 54s libpython3.12t64 libsystemd-shared libsystemd0 libudev1 libudisks2-0 54s liburcu8t64 linux-firmware openssh-client openssh-server openssh-sftp-server 54s pci.ids python3-gi python3-idna python3-jsonpatch python3-lazr.restfulclient 54s python3-urllib3 python3-wadllib python3.12 python3.12-gdbm 54s python3.12-minimal systemd systemd-resolved systemd-sysv systemd-timesyncd 54s tzdata udev udisks2 usbutils 54s 47 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 54s Need to get 558 MB of archives. 54s After this operation, 29.4 MB of additional disk space will be used. 54s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 base-passwd amd64 3.6.5 [53.4 kB] 54s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.12t64 amd64 3.12.7-2 [2372 kB] 54s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12 amd64 3.12.7-2 [661 kB] 54s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.12-stdlib amd64 3.12.7-2 [2079 kB] 54s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12-minimal amd64 3.12.7-2 [2345 kB] 54s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.12-minimal amd64 3.12.7-2 [836 kB] 54s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 tzdata all 2024b-1ubuntu2 [274 kB] 54s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libnss-systemd amd64 256.5-2ubuntu4 [191 kB] 54s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 systemd-timesyncd amd64 256.5-2ubuntu4 [40.8 kB] 54s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 systemd-resolved amd64 256.5-2ubuntu4 [339 kB] 54s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libsystemd-shared amd64 256.5-2ubuntu4 [2289 kB] 54s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libsystemd0 amd64 256.5-2ubuntu4 [511 kB] 54s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 systemd-sysv amd64 256.5-2ubuntu4 [11.9 kB] 54s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libpam-systemd amd64 256.5-2ubuntu4 [288 kB] 54s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 systemd amd64 256.5-2ubuntu4 [3587 kB] 54s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 udev amd64 256.5-2ubuntu4 [2081 kB] 54s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libudev1 amd64 256.5-2ubuntu4 [209 kB] 54s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 openssh-sftp-server amd64 1:9.7p1-7ubuntu5 [40.8 kB] 54s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 openssh-server amd64 1:9.7p1-7ubuntu5 [583 kB] 54s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 openssh-client amd64 1:9.7p1-7ubuntu5 [1027 kB] 54s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libattr1 amd64 1:2.5.2-2 [12.1 kB] 54s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 libbsd0 amd64 0.12.2-2 [49.9 kB] 54s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libbpf1 amd64 1:1.4.6-1 [184 kB] 54s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libmnl0 amd64 1.0.5-3 [12.6 kB] 54s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-gi amd64 3.50.0-3 [250 kB] 54s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 bash-completion all 1:2.14.0-2 [210 kB] 54s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libdrm-common all 2.4.123-1 [8436 B] 54s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 libdrm2 amd64 2.4.123-1 [43.7 kB] 54s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 libmaxminddb0 amd64 1.11.0-1 [19.9 kB] 54s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 libnghttp2-14 amd64 1.64.0-1 [80.7 kB] 54s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 liburcu8t64 amd64 0.14.1-1 [68.6 kB] 54s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 pci.ids all 0.0~2024.10.24-1 [279 kB] 54s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12-gdbm amd64 3.12.7-2 [30.4 kB] 54s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 usbutils amd64 1:018-1 [84.5 kB] 54s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 libbytesize1 amd64 2.11-1ubuntu1 [14.0 kB] 54s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libbytesize-common all 2.11-1ubuntu1 [3584 B] 54s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 libjson-glib-1.0-common all 1.10.0+ds-2 [5502 B] 54s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 libjson-glib-1.0-0 amd64 1.10.0+ds-2 [72.8 kB] 54s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 libnspr4 amd64 2:4.35-1.1ubuntu2 [118 kB] 54s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 udisks2 amd64 2.10.1-11ubuntu1 [326 kB] 54s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 libudisks2-0 amd64 2.10.1-11ubuntu1 [176 kB] 54s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-firmware amd64 20241108.git3bbb13a7-0ubuntu1 [536 MB] 58s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-idna all 3.8-2 [47.0 kB] 58s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jsonpatch all 1.32-4 [12.2 kB] 58s Get:45 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-wadllib all 2.0.0-1 [36.7 kB] 58s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lazr.restfulclient all 0.14.6-2 [50.9 kB] 58s Get:47 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-urllib3 all 2.0.7-2ubuntu0.1 [93.1 kB] 58s Get:48 http://ftpmaster.internal/ubuntu plucky/main amd64 systemd-cryptsetup amd64 256.5-2ubuntu4 [120 kB] 58s Preconfiguring packages ... 59s Fetched 558 MB in 4s (131 MB/s) 59s (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 ... 75313 files and directories currently installed.) 59s Preparing to unpack .../base-passwd_3.6.5_amd64.deb ... 59s Unpacking base-passwd (3.6.5) over (3.6.4) ... 59s Setting up base-passwd (3.6.5) ... 59s (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 ... 75314 files and directories currently installed.) 59s Preparing to unpack .../00-libpython3.12t64_3.12.7-2_amd64.deb ... 59s Unpacking libpython3.12t64:amd64 (3.12.7-2) over (3.12.7-1) ... 59s Preparing to unpack .../01-python3.12_3.12.7-2_amd64.deb ... 59s Unpacking python3.12 (3.12.7-2) over (3.12.7-1) ... 59s Preparing to unpack .../02-libpython3.12-stdlib_3.12.7-2_amd64.deb ... 59s Unpacking libpython3.12-stdlib:amd64 (3.12.7-2) over (3.12.7-1) ... 59s Preparing to unpack .../03-python3.12-minimal_3.12.7-2_amd64.deb ... 59s Unpacking python3.12-minimal (3.12.7-2) over (3.12.7-1) ... 59s Preparing to unpack .../04-libpython3.12-minimal_3.12.7-2_amd64.deb ... 60s Unpacking libpython3.12-minimal:amd64 (3.12.7-2) over (3.12.7-1) ... 60s Preparing to unpack .../05-tzdata_2024b-1ubuntu2_all.deb ... 60s Unpacking tzdata (2024b-1ubuntu2) over (2024a-4ubuntu1) ... 60s Preparing to unpack .../06-libnss-systemd_256.5-2ubuntu4_amd64.deb ... 60s Unpacking libnss-systemd:amd64 (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../07-systemd-timesyncd_256.5-2ubuntu4_amd64.deb ... 60s Unpacking systemd-timesyncd (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../08-systemd-resolved_256.5-2ubuntu4_amd64.deb ... 60s Unpacking systemd-resolved (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../09-libsystemd-shared_256.5-2ubuntu4_amd64.deb ... 60s Unpacking libsystemd-shared:amd64 (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../10-libsystemd0_256.5-2ubuntu4_amd64.deb ... 60s Unpacking libsystemd0:amd64 (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Setting up libsystemd0:amd64 (256.5-2ubuntu4) ... 60s (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 ... 75313 files and directories currently installed.) 60s Preparing to unpack .../systemd-sysv_256.5-2ubuntu4_amd64.deb ... 60s Unpacking systemd-sysv (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../libpam-systemd_256.5-2ubuntu4_amd64.deb ... 60s Unpacking libpam-systemd:amd64 (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../systemd_256.5-2ubuntu4_amd64.deb ... 60s Unpacking systemd (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 60s Preparing to unpack .../udev_256.5-2ubuntu4_amd64.deb ... 60s Unpacking udev (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 61s Preparing to unpack .../libudev1_256.5-2ubuntu4_amd64.deb ... 61s Unpacking libudev1:amd64 (256.5-2ubuntu4) over (256.5-2ubuntu3) ... 61s Setting up libudev1:amd64 (256.5-2ubuntu4) ... 61s (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 ... 75313 files and directories currently installed.) 61s Preparing to unpack .../openssh-sftp-server_1%3a9.7p1-7ubuntu5_amd64.deb ... 61s Unpacking openssh-sftp-server (1:9.7p1-7ubuntu5) over (1:9.7p1-7ubuntu4) ... 61s Preparing to unpack .../openssh-server_1%3a9.7p1-7ubuntu5_amd64.deb ... 61s Unpacking openssh-server (1:9.7p1-7ubuntu5) over (1:9.7p1-7ubuntu4) ... 61s Preparing to unpack .../openssh-client_1%3a9.7p1-7ubuntu5_amd64.deb ... 61s Unpacking openssh-client (1:9.7p1-7ubuntu5) over (1:9.7p1-7ubuntu4) ... 61s Preparing to unpack .../libattr1_1%3a2.5.2-2_amd64.deb ... 61s Unpacking libattr1:amd64 (1:2.5.2-2) over (1:2.5.2-1build2) ... 61s Setting up libattr1:amd64 (1:2.5.2-2) ... 61s (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 ... 75313 files and directories currently installed.) 61s Preparing to unpack .../libbsd0_0.12.2-2_amd64.deb ... 61s Unpacking libbsd0:amd64 (0.12.2-2) over (0.12.2-1) ... 61s Setting up libbsd0:amd64 (0.12.2-2) ... 61s (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 ... 75313 files and directories currently installed.) 61s Preparing to unpack .../00-libbpf1_1%3a1.4.6-1_amd64.deb ... 61s Unpacking libbpf1:amd64 (1:1.4.6-1) over (1:1.4.5-1) ... 61s Preparing to unpack .../01-libmnl0_1.0.5-3_amd64.deb ... 61s Unpacking libmnl0:amd64 (1.0.5-3) over (1.0.5-2build1) ... 61s Preparing to unpack .../02-python3-gi_3.50.0-3_amd64.deb ... 61s Unpacking python3-gi (3.50.0-3) over (3.48.2-1) ... 62s Preparing to unpack .../03-bash-completion_1%3a2.14.0-2_all.deb ... 62s Unpacking bash-completion (1:2.14.0-2) over (1:2.14.0-1) ... 62s Preparing to unpack .../04-libdrm-common_2.4.123-1_all.deb ... 62s Unpacking libdrm-common (2.4.123-1) over (2.4.122-1) ... 62s Preparing to unpack .../05-libdrm2_2.4.123-1_amd64.deb ... 62s Unpacking libdrm2:amd64 (2.4.123-1) over (2.4.122-1) ... 62s Preparing to unpack .../06-libmaxminddb0_1.11.0-1_amd64.deb ... 62s Unpacking libmaxminddb0:amd64 (1.11.0-1) over (1.10.0-1) ... 62s Preparing to unpack .../07-libnghttp2-14_1.64.0-1_amd64.deb ... 62s Unpacking libnghttp2-14:amd64 (1.64.0-1) over (1.62.1-2) ... 62s Preparing to unpack .../08-liburcu8t64_0.14.1-1_amd64.deb ... 62s Unpacking liburcu8t64:amd64 (0.14.1-1) over (0.14.0-4) ... 62s Preparing to unpack .../09-pci.ids_0.0~2024.10.24-1_all.deb ... 62s Unpacking pci.ids (0.0~2024.10.24-1) over (0.0~2024.09.12-1) ... 62s Preparing to unpack .../10-python3.12-gdbm_3.12.7-2_amd64.deb ... 62s Unpacking python3.12-gdbm (3.12.7-2) over (3.12.7-1) ... 62s Preparing to unpack .../11-usbutils_1%3a018-1_amd64.deb ... 62s Unpacking usbutils (1:018-1) over (1:017-3build1) ... 62s Preparing to unpack .../12-libbytesize1_2.11-1ubuntu1_amd64.deb ... 62s Unpacking libbytesize1:amd64 (2.11-1ubuntu1) over (2.10-1ubuntu2) ... 62s Preparing to unpack .../13-libbytesize-common_2.11-1ubuntu1_all.deb ... 62s Unpacking libbytesize-common (2.11-1ubuntu1) over (2.10-1ubuntu2) ... 62s Preparing to unpack .../14-libjson-glib-1.0-common_1.10.0+ds-2_all.deb ... 62s Unpacking libjson-glib-1.0-common (1.10.0+ds-2) over (1.8.0-2build2) ... 62s Preparing to unpack .../15-libjson-glib-1.0-0_1.10.0+ds-2_amd64.deb ... 62s Unpacking libjson-glib-1.0-0:amd64 (1.10.0+ds-2) over (1.8.0-2build2) ... 62s Preparing to unpack .../16-libnspr4_2%3a4.35-1.1ubuntu2_amd64.deb ... 62s Unpacking libnspr4:amd64 (2:4.35-1.1ubuntu2) over (2:4.35-1.1ubuntu1) ... 62s Preparing to unpack .../17-udisks2_2.10.1-11ubuntu1_amd64.deb ... 62s Unpacking udisks2 (2.10.1-11ubuntu1) over (2.10.1-9ubuntu2) ... 62s Preparing to unpack .../18-libudisks2-0_2.10.1-11ubuntu1_amd64.deb ... 62s Unpacking libudisks2-0:amd64 (2.10.1-11ubuntu1) over (2.10.1-9ubuntu2) ... 62s Preparing to unpack .../19-linux-firmware_20241108.git3bbb13a7-0ubuntu1_amd64.deb ... 62s Unpacking linux-firmware (20241108.git3bbb13a7-0ubuntu1) over (20240913.gita34e7a5f-0ubuntu2) ... 65s Preparing to unpack .../20-python3-idna_3.8-2_all.deb ... 65s Unpacking python3-idna (3.8-2) over (3.6-2.1) ... 65s Preparing to unpack .../21-python3-jsonpatch_1.32-4_all.deb ... 65s Unpacking python3-jsonpatch (1.32-4) over (1.32-3) ... 65s Preparing to unpack .../22-python3-wadllib_2.0.0-1_all.deb ... 65s Unpacking python3-wadllib (2.0.0-1) over (1.3.6-5) ... 65s Preparing to unpack .../23-python3-lazr.restfulclient_0.14.6-2_all.deb ... 66s Unpacking python3-lazr.restfulclient (0.14.6-2) over (0.14.6-1) ... 66s Preparing to unpack .../24-python3-urllib3_2.0.7-2ubuntu0.1_all.deb ... 66s Unpacking python3-urllib3 (2.0.7-2ubuntu0.1) over (2.0.7-2) ... 66s Selecting previously unselected package systemd-cryptsetup. 66s Preparing to unpack .../25-systemd-cryptsetup_256.5-2ubuntu4_amd64.deb ... 66s Unpacking systemd-cryptsetup (256.5-2ubuntu4) ... 66s Setting up liburcu8t64:amd64 (0.14.1-1) ... 66s Setting up pci.ids (0.0~2024.10.24-1) ... 66s Setting up linux-firmware (20241108.git3bbb13a7-0ubuntu1) ... 66s Setting up openssh-client (1:9.7p1-7ubuntu5) ... 66s Setting up libmaxminddb0:amd64 (1.11.0-1) ... 66s Setting up python3.12-gdbm (3.12.7-2) ... 66s Setting up python3-jsonpatch (1.32-4) ... 66s Setting up libpython3.12-minimal:amd64 (3.12.7-2) ... 66s Setting up libnghttp2-14:amd64 (1.64.0-1) ... 66s Setting up usbutils (1:018-1) ... 66s Setting up tzdata (2024b-1ubuntu2) ... 66s 66s Current default time zone: 'Etc/UTC' 66s Local time is now: Sat Nov 9 16:27:45 UTC 2024. 66s Universal Time is now: Sat Nov 9 16:27:45 UTC 2024. 66s Run 'dpkg-reconfigure tzdata' if you wish to change it. 66s 66s Setting up libnspr4:amd64 (2:4.35-1.1ubuntu2) ... 66s Setting up bash-completion (1:2.14.0-2) ... 66s Setting up python3-wadllib (2.0.0-1) ... 66s Setting up python3-gi (3.50.0-3) ... 66s Setting up libbytesize-common (2.11-1ubuntu1) ... 66s Setting up libmnl0:amd64 (1.0.5-3) ... 66s Setting up python3-idna (3.8-2) ... 67s Setting up libsystemd-shared:amd64 (256.5-2ubuntu4) ... 67s Setting up python3-urllib3 (2.0.7-2ubuntu0.1) ... 67s Setting up libjson-glib-1.0-common (1.10.0+ds-2) ... 67s Setting up libbytesize1:amd64 (2.11-1ubuntu1) ... 67s Setting up python3-lazr.restfulclient (0.14.6-2) ... 67s Setting up libdrm-common (2.4.123-1) ... 67s Setting up libbpf1:amd64 (1:1.4.6-1) ... 67s Setting up libudisks2-0:amd64 (2.10.1-11ubuntu1) ... 67s Setting up python3.12-minimal (3.12.7-2) ... 68s Setting up openssh-sftp-server (1:9.7p1-7ubuntu5) ... 68s Setting up libpython3.12-stdlib:amd64 (3.12.7-2) ... 68s Setting up openssh-server (1:9.7p1-7ubuntu5) ... 69s Setting up python3.12 (3.12.7-2) ... 70s Setting up systemd (256.5-2ubuntu4) ... 70s /usr/lib/tmpfiles.d/legacy.conf:13: Duplicate line for path "/run/lock", ignoring. 70s Created symlink '/run/systemd/system/tmp.mount' → '/dev/null'. 70s /usr/lib/tmpfiles.d/legacy.conf:13: Duplicate line for path "/run/lock", ignoring. 71s Setting up libjson-glib-1.0-0:amd64 (1.10.0+ds-2) ... 71s Setting up libpython3.12t64:amd64 (3.12.7-2) ... 71s Setting up systemd-cryptsetup (256.5-2ubuntu4) ... 71s Setting up systemd-timesyncd (256.5-2ubuntu4) ... 71s systemd-time-wait-sync.service is a disabled or a static unit not running, not starting it. 71s Setting up udev (256.5-2ubuntu4) ... 72s Setting up libdrm2:amd64 (2.4.123-1) ... 72s Setting up systemd-resolved (256.5-2ubuntu4) ... 73s Setting up udisks2 (2.10.1-11ubuntu1) ... 73s Setting up systemd-sysv (256.5-2ubuntu4) ... 73s Setting up libnss-systemd:amd64 (256.5-2ubuntu4) ... 73s Setting up libpam-systemd:amd64 (256.5-2ubuntu4) ... 73s Processing triggers for libc-bin (2.40-1ubuntu3) ... 73s Processing triggers for ufw (0.36.2-8) ... 73s Processing triggers for man-db (2.12.1-3) ... 75s Processing triggers for dbus (1.14.10-4ubuntu5) ... 75s Processing triggers for shared-mime-info (2.4-5) ... 75s Processing triggers for initramfs-tools (0.142ubuntu34) ... 75s update-initramfs: Generating /boot/initrd.img-6.11.0-8-generic 75s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 85s Reading package lists... 85s Building dependency tree... 85s Reading state information... 86s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 86s autopkgtest [16:28:05]: rebooting testbed after setup commands that affected boot 89s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 108s autopkgtest [16:28:27]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024 109s autopkgtest [16:28:28]: @@@@@@@@@@@@@@@@@@@@ apt-source wtforms-components 110s Get:1 http://ftpmaster.internal/ubuntu plucky/universe wtforms-components 0.10.5-5 (dsc) [2563 B] 110s Get:2 http://ftpmaster.internal/ubuntu plucky/universe wtforms-components 0.10.5-5 (tar) [24.2 kB] 110s Get:3 http://ftpmaster.internal/ubuntu plucky/universe wtforms-components 0.10.5-5 (diff) [2920 B] 110s gpgv: Signature made Mon Jul 1 13:54:17 2024 UTC 110s gpgv: using RSA key 8F6DE104377F3B11E741748731F3144544A1741A 110s gpgv: issuer "tchet@debian.org" 110s gpgv: Can't check signature: No public key 110s dpkg-source: warning: cannot verify inline signature for ./wtforms-components_0.10.5-5.dsc: no acceptable signature found 110s autopkgtest [16:28:29]: testing package wtforms-components version 0.10.5-5 110s autopkgtest [16:28:29]: build not needed 110s autopkgtest [16:28:29]: test upstream: preparing testbed 111s Reading package lists... 111s Building dependency tree... 111s Reading state information... 111s Starting pkgProblemResolver with broken count: 0 111s Starting 2 pkgProblemResolver with broken count: 0 111s Done 111s The following additional packages will be installed: 111s libjs-jquery libjs-sphinxdoc libjs-underscore python3-all python3-colour 111s python3-decorator python3-dnspython python3-email-validator python3-flexmock 111s python3-infinity python3-iniconfig python3-intervals python3-packaging 111s python3-pluggy python3-pytest python3-six python3-validators python3-wtforms 111s python3-wtforms-components python3-wtforms-test 111s Suggested packages: 111s python3-trio python3-aioquic python3-h2 python3-httpx python3-httpcore 111s python3-django python3-django-localflavor python3-sqlalchemy 111s Recommended packages: 111s javascript-common 112s The following NEW packages will be installed: 112s autopkgtest-satdep libjs-jquery libjs-sphinxdoc libjs-underscore python3-all 112s python3-colour python3-decorator python3-dnspython python3-email-validator 112s python3-flexmock python3-infinity python3-iniconfig python3-intervals 112s python3-packaging python3-pluggy python3-pytest python3-six 112s python3-validators python3-wtforms python3-wtforms-components 112s python3-wtforms-test 112s 0 upgraded, 21 newly installed, 0 to remove and 0 not upgraded. 112s Need to get 1314 kB/1315 kB of archives. 112s After this operation, 5368 kB of additional disk space will be used. 112s Get:1 /tmp/autopkgtest.k9RLRg/1-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [760 B] 112s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 112s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 112s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libjs-sphinxdoc all 7.4.7-3 [157 kB] 112s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-all amd64 3.12.6-0ubuntu1 [886 B] 112s Get:6 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-colour all 0.1.5-4 [22.8 kB] 112s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-decorator all 5.1.1-5 [10.1 kB] 112s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 112s Get:9 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-email-validator all 2.2.0-1 [28.5 kB] 112s Get:10 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-flexmock all 0.12.1-1 [20.6 kB] 112s Get:11 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-infinity all 1.5-3 [3988 B] 112s Get:12 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 112s Get:13 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-intervals all 0.9.2-2 [11.6 kB] 112s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.1-1 [41.4 kB] 112s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 112s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.2-1 [251 kB] 112s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-six all 1.16.0-7 [13.1 kB] 112s Get:18 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-validators all 0.20.0-2 [15.2 kB] 112s Get:19 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 python3-wtforms all 3.2.1-1 [64.0 kB] 112s Get:20 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-wtforms-components all 0.10.5-5 [23.7 kB] 112s Get:21 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-wtforms-test all 0.1.1-3 [13.6 kB] 112s Fetched 1314 kB in 0s (16.9 MB/s) 112s Selecting previously unselected package libjs-jquery. 112s (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 ... 75551 files and directories currently installed.) 112s Preparing to unpack .../00-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 112s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 112s Selecting previously unselected package libjs-underscore. 112s Preparing to unpack .../01-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 112s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 112s Selecting previously unselected package libjs-sphinxdoc. 112s Preparing to unpack .../02-libjs-sphinxdoc_7.4.7-3_all.deb ... 112s Unpacking libjs-sphinxdoc (7.4.7-3) ... 112s Selecting previously unselected package python3-all. 112s Preparing to unpack .../03-python3-all_3.12.6-0ubuntu1_amd64.deb ... 112s Unpacking python3-all (3.12.6-0ubuntu1) ... 112s Selecting previously unselected package python3-colour. 112s Preparing to unpack .../04-python3-colour_0.1.5-4_all.deb ... 112s Unpacking python3-colour (0.1.5-4) ... 112s Selecting previously unselected package python3-decorator. 112s Preparing to unpack .../05-python3-decorator_5.1.1-5_all.deb ... 112s Unpacking python3-decorator (5.1.1-5) ... 112s Selecting previously unselected package python3-dnspython. 112s Preparing to unpack .../06-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 112s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 112s Selecting previously unselected package python3-email-validator. 112s Preparing to unpack .../07-python3-email-validator_2.2.0-1_all.deb ... 112s Unpacking python3-email-validator (2.2.0-1) ... 112s Selecting previously unselected package python3-flexmock. 112s Preparing to unpack .../08-python3-flexmock_0.12.1-1_all.deb ... 112s Unpacking python3-flexmock (0.12.1-1) ... 112s Selecting previously unselected package python3-infinity. 112s Preparing to unpack .../09-python3-infinity_1.5-3_all.deb ... 112s Unpacking python3-infinity (1.5-3) ... 112s Selecting previously unselected package python3-iniconfig. 112s Preparing to unpack .../10-python3-iniconfig_1.1.1-2_all.deb ... 112s Unpacking python3-iniconfig (1.1.1-2) ... 113s Selecting previously unselected package python3-intervals. 113s Preparing to unpack .../11-python3-intervals_0.9.2-2_all.deb ... 113s Unpacking python3-intervals (0.9.2-2) ... 113s Selecting previously unselected package python3-packaging. 113s Preparing to unpack .../12-python3-packaging_24.1-1_all.deb ... 113s Unpacking python3-packaging (24.1-1) ... 113s Selecting previously unselected package python3-pluggy. 113s Preparing to unpack .../13-python3-pluggy_1.5.0-1_all.deb ... 113s Unpacking python3-pluggy (1.5.0-1) ... 113s Selecting previously unselected package python3-pytest. 113s Preparing to unpack .../14-python3-pytest_8.3.2-1_all.deb ... 113s Unpacking python3-pytest (8.3.2-1) ... 113s Selecting previously unselected package python3-six. 113s Preparing to unpack .../15-python3-six_1.16.0-7_all.deb ... 113s Unpacking python3-six (1.16.0-7) ... 113s Selecting previously unselected package python3-validators. 113s Preparing to unpack .../16-python3-validators_0.20.0-2_all.deb ... 113s Unpacking python3-validators (0.20.0-2) ... 113s Selecting previously unselected package python3-wtforms. 113s Preparing to unpack .../17-python3-wtforms_3.2.1-1_all.deb ... 113s Unpacking python3-wtforms (3.2.1-1) ... 113s Selecting previously unselected package python3-wtforms-components. 113s Preparing to unpack .../18-python3-wtforms-components_0.10.5-5_all.deb ... 113s Unpacking python3-wtforms-components (0.10.5-5) ... 113s Selecting previously unselected package python3-wtforms-test. 113s Preparing to unpack .../19-python3-wtforms-test_0.1.1-3_all.deb ... 113s Unpacking python3-wtforms-test (0.1.1-3) ... 113s Selecting previously unselected package autopkgtest-satdep. 113s Preparing to unpack .../20-1-autopkgtest-satdep.deb ... 113s Unpacking autopkgtest-satdep (0) ... 113s Setting up python3-iniconfig (1.1.1-2) ... 113s Setting up python3-wtforms (3.2.1-1) ... 113s Setting up python3-all (3.12.6-0ubuntu1) ... 113s Setting up python3-six (1.16.0-7) ... 113s Setting up python3-decorator (5.1.1-5) ... 113s Setting up python3-packaging (24.1-1) ... 113s Setting up python3-colour (0.1.5-4) ... 114s Setting up python3-pluggy (1.5.0-1) ... 114s Setting up python3-infinity (1.5-3) ... 114s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 114s Setting up python3-email-validator (2.2.0-1) ... 114s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 114s Setting up python3-flexmock (0.12.1-1) ... 114s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 114s Setting up python3-intervals (0.9.2-2) ... 114s Setting up python3-validators (0.20.0-2) ... 114s Setting up python3-pytest (8.3.2-1) ... 115s Setting up libjs-sphinxdoc (7.4.7-3) ... 115s Setting up python3-wtforms-components (0.10.5-5) ... 115s Setting up python3-wtforms-test (0.1.1-3) ... 115s Setting up autopkgtest-satdep (0) ... 115s Processing triggers for man-db (2.12.1-3) ... 117s (Reading database ... 76301 files and directories currently installed.) 117s Removing autopkgtest-satdep (0) ... 118s autopkgtest [16:28:37]: test upstream: [----------------------- 118s -=-=-=-=-=-=-=- running tests for python3.12 -=-=-=-=-=-=-=-=- 118s $ python3.12 -m pytest tests 118s ============================= test session starts ============================== 118s platform linux -- Python 3.12.7+, pytest-8.3.2, pluggy-1.5.0 118s rootdir: /tmp/autopkgtest.k9RLRg/autopkgtest_tmp 118s plugins: flexmock-0.12.1, typeguard-4.4.1 118s collected 135 items 118s 118s tests/fields/test_color_field.py ..F. [ 2%] 118s tests/fields/test_date_field.py FFFFFF [ 7%] 118s tests/fields/test_date_time_field.py FFFFFF [ 11%] 119s tests/fields/test_date_time_local_field.py FFFFFF [ 16%] 119s tests/fields/test_decimal_field.py FFFFFFF [ 21%] 119s tests/fields/test_int_interval_field.py ..F...F. [ 27%] 119s tests/fields/test_integer_field.py FFFFFF [ 31%] 119s tests/fields/test_json_field.py .. [ 33%] 119s tests/fields/test_passive_hidden_field.py . [ 34%] 119s tests/fields/test_read_only_fields.py . [ 34%] 119s tests/fields/test_search_field.py FFFFF [ 38%] 119s tests/fields/test_select_field.py ...FFFF. [ 44%] 119s tests/fields/test_select_multiple_field.py .F [ 45%] 119s tests/fields/test_split_date_time_field.py FFFF...... [ 53%] 119s tests/fields/test_string_field.py FFFFF [ 57%] 120s tests/fields/test_time_field.py FFFFF..FFFFFFF..FF [ 70%] 120s tests/test_chain_validator.py . [ 71%] 120s tests/test_date_range_validator.py ... [ 73%] 120s tests/test_email_validator.py ......................... [ 91%] 120s tests/test_if_validator.py ... [ 94%] 120s tests/test_read_only_function.py ... [ 96%] 120s tests/test_time_range_validator.py ... [ 98%] 120s tests/test_widgets.py .. [100%] 120s 120s =================================== FAILURES =================================== 120s __________ TestColorField.test_field_rendering_when_validation_fails ___________ 120s 120s self = 120s 120s def test_field_rendering_when_validation_fails(self): 120s form_class = self.init_form() 120s form = form_class(MultiDict(color='invalid')) 120s form.validate() 120s > assert 'value="invalid"' in str(form.color) 120s 120s tests/fields/test_color_field.py:44: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'color', 'type': 'color', 'value': 'invalid'} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'ColorInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ______________ TestDateField.test_assigns_required_from_validator ______________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestDateField.test_renders_autofocus _____________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestDateField.test_renders_required ______________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestDateField.test_renders_disabled ______________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestDateField.test_renders_readonly ______________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestDateField.test_assigns_min_and_max ____________________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form( 120s validators=[DateRange( 120s min=datetime(2000, 1, 1), 120s max=datetime(2000, 10, 10) 120s )] 120s ) 120s form = form_class(MultiDict(test_field='2000-2-2')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_date_field.py:18: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': '2000-10-10', 'min': '2000-01-01', 'type': 'date', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________ TestDateTimeField.test_assigns_required_from_validator ____________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'datetime', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ___________________ TestDateTimeField.test_renders_autofocus ___________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'datetime', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ___________________ TestDateTimeField.test_renders_required ____________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'datetime', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ___________________ TestDateTimeField.test_renders_disabled ____________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'datetime', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ___________________ TestDateTimeField.test_renders_readonly ____________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'datetime', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s __________________ TestDateTimeField.test_assigns_min_and_max __________________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form( 120s validators=[DateRange( 120s min=datetime(2000, 1, 1), 120s max=datetime(2000, 10, 10) 120s )] 120s ) 120s form = form_class(MultiDict(test_field='2000-2-2')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_date_time_field.py:18: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': '2000-10-10T00:00:00Z', 'min': '2000-01-01T00:00:00Z', 'type': 'datetime', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _________ TestDateTimeLocalField.test_assigns_required_from_validator __________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'datetime-local', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeLocalInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________________ TestDateTimeLocalField.test_renders_autofocus _________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'datetime-local', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeLocalInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _________________ TestDateTimeLocalField.test_renders_required _________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'datetime-local', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeLocalInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _________________ TestDateTimeLocalField.test_renders_disabled _________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'datetime-local', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeLocalInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _________________ TestDateTimeLocalField.test_renders_readonly _________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'datetime-local', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeLocalInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _______________ TestDateTimeLocalField.test_assigns_min_and_max ________________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form( 120s validators=[DateRange( 120s min=datetime(2000, 1, 1), 120s max=datetime(2000, 10, 10) 120s )] 120s ) 120s form = form_class(MultiDict(test_field='2000-2-2')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_date_time_local_field.py:18: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': '2000-10-10T00:00:00', 'min': '2000-01-01T00:00:00', 'type': 'datetime-local', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateTimeLocalInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________ TestDecimalField.test_assigns_required_from_validator _____________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'step': 'any', 'type': 'number', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ___________________ TestDecimalField.test_renders_autofocus ____________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestDecimalField.test_renders_required ____________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestDecimalField.test_renders_disabled ____________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestDecimalField.test_renders_readonly ____________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s __________________ TestDecimalField.test_assigns_min_and_max ___________________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form( 120s validators=[NumberRange(min=2, max=10)] 120s ) 120s form = form_class(MultiDict(test_field=3)) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_decimal_field.py:16: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': 10, 'min': 2, 'step': 'any', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ______________________ TestDecimalField.test_assigns_step ______________________ 120s 120s self = 120s 120s def test_assigns_step(self): 120s form_class = self.init_form( 120s widget=NumberInput(step='0.1') 120s ) 120s form = form_class(MultiDict(test_field=3)) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_decimal_field.py:26: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'step': '0.1', 'type': 'number', 'value': 3} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _______ TestIntIntervalField.test_field_rendering_when_validation_fails ________ 120s 120s self = 120s 120s def test_field_rendering_when_validation_fails(self): 120s form_class = self.init_form() 120s form = form_class(MultiDict(interval='invalid')) 120s form.validate() 120s > assert 'value="invalid"' in str(form.interval) 120s 120s tests/fields/test_int_interval_field.py:34: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'interval', 'type': 'text', 'value': 'invalid'} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ______ TestFloatIntervalField.test_field_rendering_when_validation_fails _______ 120s 120s self = 120s 120s def test_field_rendering_when_validation_fails(self): 120s form_class = self.init_form() 120s form = form_class(MultiDict(interval='invalid')) 120s form.validate() 120s > assert 'value="invalid"' in str(form.interval) 120s 120s tests/fields/test_int_interval_field.py:34: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'interval', 'type': 'text', 'value': 'invalid'} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________ TestIntegerField.test_assigns_required_from_validator _____________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'step': '1', 'type': 'number', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ___________________ TestIntegerField.test_renders_autofocus ____________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestIntegerField.test_renders_required ____________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestIntegerField.test_renders_disabled ____________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestIntegerField.test_renders_readonly ____________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'number', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s __________________ TestIntegerField.test_assigns_min_and_max ___________________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form(validators=[NumberRange(min=2, max=10)]) 120s form = form_class(MultiDict(test_field=3)) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_integer_field.py:13: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': 10, 'min': 2, 'step': '1', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'NumberInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________ TestSearchField.test_assigns_required_from_validator _____________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'search', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'SearchInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestSearchField.test_renders_autofocus ____________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'search', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'SearchInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestSearchField.test_renders_required _____________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'search', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'SearchInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestSearchField.test_renders_disabled _____________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'search', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'SearchInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestSearchField.test_renders_readonly _____________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'search', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'SearchInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestSelectField.test_option_selected _____________________ 120s 120s self = 120s 120s def test_option_selected(self): 120s form_class = self.init_form(choices=self.choices) 120s 120s obj = Dummy() 120s obj.fruit = 'peach' 120s form = form_class( 120s obj=obj 120s ) 120s > assert ( 120s '' in 120s str(form.fruit) 120s ) 120s 120s tests/fields/test_select_field.py:74: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'fruit'}, flags = , k = '__weakref__' 120s select_params = 'id="fruit" name="fruit"' 120s html = ['"] 120s if field.has_groups(): 120s for group, choices in field.iter_groups(): 120s optgroup_params = html_params(label=group) 120s html.append(f"") 120s for choice in choices: 120s val, label, selected, render_kw = choice 120s html.append(self.render_option(val, label, selected, **render_kw)) 120s html.append("") 120s else: 120s for choice in field.iter_choices(): 120s > val, label, selected, render_kw = choice 120s E ValueError: not enough values to unpack (expected 4, got 3) 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:374: ValueError 120s ______ TestSelectField.test_nested_option_selected_by_field_default_value ______ 120s 120s self = 120s 120s def test_nested_option_selected_by_field_default_value(self): 120s form_class = self.init_form( 120s choices=self.choices, default='pear' 120s ) 120s form = form_class() 120s > assert ( 120s '' in 120s str(form.fruit) 120s ) 120s 120s tests/fields/test_select_field.py:84: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'fruit'}, flags = , k = '__weakref__' 120s select_params = 'id="fruit" name="fruit"' 120s html = ['"] 120s if field.has_groups(): 120s for group, choices in field.iter_groups(): 120s optgroup_params = html_params(label=group) 120s html.append(f"") 120s for choice in choices: 120s val, label, selected, render_kw = choice 120s html.append(self.render_option(val, label, selected, **render_kw)) 120s html.append("") 120s else: 120s for choice in field.iter_choices(): 120s > val, label, selected, render_kw = choice 120s E ValueError: not enough values to unpack (expected 4, got 3) 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:374: ValueError 120s _________ TestSelectField.test_option_selected_by_field_default_value __________ 120s 120s self = 120s 120s def test_option_selected_by_field_default_value(self): 120s choices = [ 120s ('apple', 'Apple'), 120s ('peach', 'Peach'), 120s ('pear', 'Pear') 120s ] 120s form_class = self.init_form( 120s choices=choices, default='pear' 120s ) 120s form = form_class() 120s > assert ( 120s '' in 120s str(form.fruit) 120s ) 120s 120s tests/fields/test_select_field.py:99: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'fruit'}, flags = , k = '__weakref__' 120s select_params = 'id="fruit" name="fruit"' 120s html = ['"] 120s if field.has_groups(): 120s for group, choices in field.iter_groups(): 120s optgroup_params = html_params(label=group) 120s html.append(f"") 120s for choice in choices: 120s val, label, selected, render_kw = choice 120s html.append(self.render_option(val, label, selected, **render_kw)) 120s html.append("") 120s else: 120s for choice in field.iter_choices(): 120s > val, label, selected, render_kw = choice 120s E ValueError: not enough values to unpack (expected 4, got 3) 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:374: ValueError 120s _____ TestSelectField.test_callable_option_selected_by_field_default_value _____ 120s 120s self = 120s 120s def test_callable_option_selected_by_field_default_value(self): 120s def choices(): 120s return [ 120s ('apple', 'Apple'), 120s ('peach', 'Peach'), 120s ('pear', 'Pear') 120s ] 120s form_class = self.init_form( 120s choices=choices, default='pear' 120s ) 120s form = form_class() 120s > assert ( 120s '' in 120s str(form.fruit) 120s ) 120s 120s tests/fields/test_select_field.py:115: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'fruit'}, flags = , k = '__weakref__' 120s select_params = 'id="fruit" name="fruit"' 120s html = ['"] 120s if field.has_groups(): 120s for group, choices in field.iter_groups(): 120s optgroup_params = html_params(label=group) 120s html.append(f"") 120s for choice in choices: 120s val, label, selected, render_kw = choice 120s html.append(self.render_option(val, label, selected, **render_kw)) 120s html.append("") 120s else: 120s for choice in field.iter_choices(): 120s > val, label, selected, render_kw = choice 120s E ValueError: not enough values to unpack (expected 4, got 3) 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:374: ValueError 120s _________________ TestSelectMultipleField.test_option_selected _________________ 120s 120s self = 120s 120s def test_option_selected(self): 120s form_class = self.init_form(choices=self.choices) 120s 120s obj = Dummy() 120s obj.fruits = ['peach'] 120s form = form_class( 120s obj=obj 120s ) 120s > assert ( 120s '' in 120s str(form.fruits) 120s ) 120s 120s tests/fields/test_select_multiple_field.py:55: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'fruits', 'multiple': True}, flags = 120s k = '__weakref__', select_params = 'id="fruits" multiple name="fruits"' 120s html = ['"] 120s if field.has_groups(): 120s for group, choices in field.iter_groups(): 120s optgroup_params = html_params(label=group) 120s html.append(f"") 120s for choice in choices: 120s val, label, selected, render_kw = choice 120s html.append(self.render_option(val, label, selected, **render_kw)) 120s html.append("") 120s else: 120s for choice in field.iter_choices(): 120s > val, label, selected, render_kw = choice 120s E ValueError: not enough values to unpack (expected 4, got 3) 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:374: ValueError 120s _____________ TestSplitDateTimeField.test_assigns_required_to_date _____________ 120s 120s self = 120s 120s def test_assigns_required_to_date(self): 120s form_class = self.init_form(datetime_form={ 120s 'date': {'validators': [DataRequired()]} 120s }) 120s form = form_class() 120s > assert str(form.test_field.date) == ( 120s '' 120s ) 120s 120s tests/fields/test_split_date_time_field.py:22: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field-date', 'required': True, 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________________ TestSplitDateTimeField.test_renders_date_field ________________ 120s 120s self = 120s 120s def test_renders_date_field(self): 120s form_class = self.init_form() 120s form = form_class() 120s > assert str(form.test_field.date) == ( 120s '' 120s ) 120s 120s tests/fields/test_split_date_time_field.py:30: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field-date', 'type': 'date', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'DateInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________ TestSplitDateTimeField.test_assigns_required_to_time _____________ 120s 120s self = 120s 120s def test_assigns_required_to_time(self): 120s form_class = self.init_form(datetime_form={ 120s 'time': {'validators': [DataRequired()]} 120s }) 120s form = form_class() 120s > assert str(form.test_field.time) == ( 120s '' 120s ) 120s 120s tests/fields/test_split_date_time_field.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field-time', 'required': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________________ TestSplitDateTimeField.test_renders_time_field ________________ 120s 120s self = 120s 120s def test_renders_time_field(self): 120s form_class = self.init_form() 120s form = form_class() 120s > assert str(form.test_field.time) == ( 120s '' 120s ) 120s 120s tests/fields/test_split_date_time_field.py:48: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field-time', 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________ TestStringField.test_assigns_required_from_validator _____________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'text', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestStringField.test_renders_autofocus ____________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'text', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestStringField.test_renders_required _____________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'text', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestStringField.test_renders_disabled _____________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'text', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestStringField.test_renders_readonly _____________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'text', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TextInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ______________ TestTimeField.test_assigns_required_from_validator ______________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestTimeField.test_renders_autofocus _____________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestTimeField.test_renders_required ______________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestTimeField.test_renders_disabled ______________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _____________________ TestTimeField.test_renders_readonly ______________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ____________________ TestTimeField.test_assigns_min_and_max ____________________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form( 120s validators=[TimeRange( 120s min=time(12, 12), 120s max=time(13, 30) 120s )] 120s ) 120s form = form_class(MultiDict(test_field='13:20')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_time_field.py:44: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': '13:30:00', 'min': '12:12:00', 'type': 'time', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ______________ TestTimeField.test_renders_input_time_at_midnight _______________ 120s 120s self = 120s 120s def test_renders_input_time_at_midnight(self): 120s form_class = self.init_form() 120s form = form_class(MultiDict(test_field='00:00')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_time_field.py:52: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'type': 'time', 'value': '00:00'} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________ TestTimeFieldWithSeconds.test_assigns_required_from_validator _________ 120s 120s self = 120s 120s def test_assigns_required_from_validator(self): 120s form_class = self.init_form( 120s validators=[DataRequired()] 120s ) 120s form = form_class() 120s assert ( 120s ' ) in str(form.test_field) 120s 120s tests/__init__.py:31: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _______________ TestTimeFieldWithSeconds.test_renders_autofocus ________________ 120s 120s self = 120s 120s def test_renders_autofocus(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s autofocus=True 120s ) 120s ) 120s form = form_class() 120s > assert 'autofocus' in str(form.test_field) 120s 120s tests/__init__.py:40: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'autofocus': True, 'id': 'test_field', 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________________ TestTimeFieldWithSeconds.test_renders_required ________________ 120s 120s self = 120s 120s def test_renders_required(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s required=True 120s ) 120s ) 120s form = form_class() 120s > assert 'required' in str(form.test_field) 120s 120s tests/__init__.py:49: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'required': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________________ TestTimeFieldWithSeconds.test_renders_disabled ________________ 120s 120s self = 120s 120s def test_renders_disabled(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s disabled=True 120s ) 120s ) 120s form = form_class() 120s > assert 'disabled' in str(form.test_field) 120s 120s tests/__init__.py:58: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'disabled': True, 'id': 'test_field', 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ________________ TestTimeFieldWithSeconds.test_renders_readonly ________________ 120s 120s self = 120s 120s def test_renders_readonly(self): 120s form_class = self.init_form( 120s widget=self.field_class.widget.__class__( 120s readonly=True 120s ) 120s ) 120s form = form_class() 120s > assert 'readonly' in str(form.test_field) 120s 120s tests/__init__.py:67: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'readonly': True, 'type': 'time', 'value': ''} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s ______________ TestTimeFieldWithSeconds.test_assigns_min_and_max _______________ 120s 120s self = 120s 120s def test_assigns_min_and_max(self): 120s form_class = self.init_form( 120s validators=[TimeRange( 120s min=time(12, 12), 120s max=time(13, 30) 120s )] 120s ) 120s form = form_class(MultiDict(test_field='13:20')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_time_field.py:44: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'max': '13:30:00', 'min': '12:12:00', 'type': 'time', ...} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s _________ TestTimeFieldWithSeconds.test_renders_input_time_at_midnight _________ 120s 120s self = 120s 120s def test_renders_input_time_at_midnight(self): 120s form_class = self.init_form() 120s form = form_class(MultiDict(test_field='00:00')) 120s > assert str(form.test_field) == ( 120s '' 120s ) 120s 120s tests/fields/test_time_field.py:52: 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:141: in __str__ 120s return self() 120s /usr/lib/python3/dist-packages/wtforms/fields/core.py:164: in __call__ 120s return self.meta.render_field(self, kwargs) 120s /usr/lib/python3/dist-packages/wtforms/meta.py:64: in render_field 120s return field.widget(field, **render_kw) 120s /usr/lib/python3/dist-packages/wtforms_components/widgets.py:81: in __call__ 120s return super(HTML5Input, self).__call__(field, **options_copy) 120s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 120s 120s self = 120s field = 120s kwargs = {'id': 'test_field', 'type': 'time', 'value': '00:00'} 120s flags = , k = '__class__' 120s 120s def __call__(self, field, **kwargs): 120s kwargs.setdefault("id", field.id) 120s kwargs.setdefault("type", self.input_type) 120s if "value" not in kwargs: 120s kwargs["value"] = field._value() 120s flags = getattr(field, "flags", {}) 120s for k in dir(flags): 120s > if k in self.validation_attrs and k not in kwargs: 120s E AttributeError: 'TimeInput' object has no attribute 'validation_attrs' 120s 120s /usr/lib/python3/dist-packages/wtforms/widgets/core.py:176: AttributeError 120s =========================== short test summary info ============================ 120s FAILED tests/fields/test_color_field.py::TestColorField::test_field_rendering_when_validation_fails 120s FAILED tests/fields/test_date_field.py::TestDateField::test_assigns_required_from_validator 120s FAILED tests/fields/test_date_field.py::TestDateField::test_renders_autofocus 120s FAILED tests/fields/test_date_field.py::TestDateField::test_renders_required 120s FAILED tests/fields/test_date_field.py::TestDateField::test_renders_disabled 120s FAILED tests/fields/test_date_field.py::TestDateField::test_renders_readonly 120s FAILED tests/fields/test_date_field.py::TestDateField::test_assigns_min_and_max 120s FAILED tests/fields/test_date_time_field.py::TestDateTimeField::test_assigns_required_from_validator 120s FAILED tests/fields/test_date_time_field.py::TestDateTimeField::test_renders_autofocus 120s FAILED tests/fields/test_date_time_field.py::TestDateTimeField::test_renders_required 120s FAILED tests/fields/test_date_time_field.py::TestDateTimeField::test_renders_disabled 120s FAILED tests/fields/test_date_time_field.py::TestDateTimeField::test_renders_readonly 120s FAILED tests/fields/test_date_time_field.py::TestDateTimeField::test_assigns_min_and_max 120s FAILED tests/fields/test_date_time_local_field.py::TestDateTimeLocalField::test_assigns_required_from_validator 120s FAILED tests/fields/test_date_time_local_field.py::TestDateTimeLocalField::test_renders_autofocus 120s FAILED tests/fields/test_date_time_local_field.py::TestDateTimeLocalField::test_renders_required 120s FAILED tests/fields/test_date_time_local_field.py::TestDateTimeLocalField::test_renders_disabled 120s FAILED tests/fields/test_date_time_local_field.py::TestDateTimeLocalField::test_renders_readonly 120s FAILED tests/fields/test_date_time_local_field.py::TestDateTimeLocalField::test_assigns_min_and_max 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_assigns_required_from_validator 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_renders_autofocus 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_renders_required 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_renders_disabled 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_renders_readonly 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_assigns_min_and_max 120s FAILED tests/fields/test_decimal_field.py::TestDecimalField::test_assigns_step 120s FAILED tests/fields/test_int_interval_field.py::TestIntIntervalField::test_field_rendering_when_validation_fails 120s FAILED tests/fields/test_int_interval_field.py::TestFloatIntervalField::test_field_rendering_when_validation_fails 120s FAILED tests/fields/test_integer_field.py::TestIntegerField::test_assigns_required_from_validator 120s FAILED tests/fields/test_integer_field.py::TestIntegerField::test_renders_autofocus 120s FAILED tests/fields/test_integer_field.py::TestIntegerField::test_renders_required 120s FAILED tests/fields/test_integer_field.py::TestIntegerField::test_renders_disabled 120s FAILED tests/fields/test_integer_field.py::TestIntegerField::test_renders_readonly 120s FAILED tests/fields/test_integer_field.py::TestIntegerField::test_assigns_min_and_max 120s FAILED tests/fields/test_search_field.py::TestSearchField::test_assigns_required_from_validator 120s FAILED tests/fields/test_search_field.py::TestSearchField::test_renders_autofocus 120s FAILED tests/fields/test_search_field.py::TestSearchField::test_renders_required 120s FAILED tests/fields/test_search_field.py::TestSearchField::test_renders_disabled 120s FAILED tests/fields/test_search_field.py::TestSearchField::test_renders_readonly 120s FAILED tests/fields/test_select_field.py::TestSelectField::test_option_selected 120s FAILED tests/fields/test_select_field.py::TestSelectField::test_nested_option_selected_by_field_default_value 120s FAILED tests/fields/test_select_field.py::TestSelectField::test_option_selected_by_field_default_value 120s FAILED tests/fields/test_select_field.py::TestSelectField::test_callable_option_selected_by_field_default_value 120s FAILED tests/fields/test_select_multiple_field.py::TestSelectMultipleField::test_option_selected 120s FAILED tests/fields/test_split_date_time_field.py::TestSplitDateTimeField::test_assigns_required_to_date 120s FAILED tests/fields/test_split_date_time_field.py::TestSplitDateTimeField::test_renders_date_field 120s FAILED tests/fields/test_split_date_time_field.py::TestSplitDateTimeField::test_assigns_required_to_time 120s FAILED tests/fields/test_split_date_time_field.py::TestSplitDateTimeField::test_renders_time_field 120s FAILED tests/fields/test_string_field.py::TestStringField::test_assigns_required_from_validator 120s FAILED tests/fields/test_string_field.py::TestStringField::test_renders_autofocus 120s FAILED tests/fields/test_string_field.py::TestStringField::test_renders_required 120s FAILED tests/fields/test_string_field.py::TestStringField::test_renders_disabled 120s FAILED tests/fields/test_string_field.py::TestStringField::test_renders_readonly 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_assigns_required_from_validator 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_renders_autofocus 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_renders_required 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_renders_disabled 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_renders_readonly 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_assigns_min_and_max 120s FAILED tests/fields/test_time_field.py::TestTimeField::test_renders_input_time_at_midnight 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_assigns_required_from_validator 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_renders_autofocus 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_renders_required 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_renders_disabled 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_renders_readonly 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_assigns_min_and_max 120s FAILED tests/fields/test_time_field.py::TestTimeFieldWithSeconds::test_renders_input_time_at_midnight 120s ======================== 67 failed, 68 passed in 1.64s ========================= 120s autopkgtest [16:28:39]: test upstream: -----------------------] 120s upstream FAIL non-zero exit status 1 120s autopkgtest [16:28:39]: test upstream: - - - - - - - - - - results - - - - - - - - - - 120s autopkgtest [16:28:39]: @@@@@@@@@@@@@@@@@@@@ summary 120s upstream FAIL non-zero exit status 1 130s nova [W] Skipping flock for amd64 130s Creating nova instance adt-plucky-amd64-wtforms-components-20241109-160801-juju-7f2275-prod-proposed-migration-environment-15-ee57b551-b354-41bf-8008-683662b09124 from image adt/ubuntu-plucky-amd64-server-20241108.img (UUID d7271780-c6e5-4d6d-9ebd-c59692e4bf7a)...