0s autopkgtest [15:58:47]: starting date and time: 2024-11-12 15:58:47+0000 0s autopkgtest [15:58:47]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [15:58:47]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.juw8rr5r/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python-attrs --apt-upgrade python-cattrs --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python-attrs/24.2.0-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor builder-cpu2-ram4-disk20 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@bos03-28.secgroup --name adt-plucky-amd64-python-cattrs-20241112-155847-juju-7f2275-prod-proposed-migration-environment-15-d47cfe0f-34cd-4adf-a278-1c147495c02d --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration-amd64 -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/ 77s autopkgtest [16:00:04]: testbed dpkg architecture: amd64 77s autopkgtest [16:00:04]: testbed apt version: 2.9.8 77s autopkgtest [16:00:04]: @@@@@@@@@@@@@@@@@@@@ test bed setup 78s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 78s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 78s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [861 kB] 78s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [86.7 kB] 78s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [15.3 kB] 78s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [73.8 kB] 78s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [124 kB] 78s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 78s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [270 kB] 78s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [655 kB] 78s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [37.7 kB] 78s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [13.0 kB] 78s Fetched 2251 kB in 1s (2581 kB/s) 79s Reading package lists... 81s Reading package lists... 81s Building dependency tree... 81s Reading state information... 81s Calculating upgrade... 81s The following packages will be upgraded: 81s python3-attr 81s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 81s Need to get 50.2 kB of archives. 81s After this operation, 10.2 kB of additional disk space will be used. 81s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-attr all 24.2.0-1 [50.2 kB] 82s Fetched 50.2 kB in 0s (176 kB/s) 82s (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 ... 75553 files and directories currently installed.) 82s Preparing to unpack .../python3-attr_24.2.0-1_all.deb ... 82s Unpacking python3-attr (24.2.0-1) over (23.2.0-2) ... 82s Setting up python3-attr (24.2.0-1) ... 83s Reading package lists... 83s Building dependency tree... 83s Reading state information... 83s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 83s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 83s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 84s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 84s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 84s Reading package lists... 85s Reading package lists... 85s Building dependency tree... 85s Reading state information... 85s Calculating upgrade... 85s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 85s Reading package lists... 85s Building dependency tree... 85s Reading state information... 85s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 88s autopkgtest [16:00:15]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024 88s autopkgtest [16:00:15]: @@@@@@@@@@@@@@@@@@@@ apt-source python-cattrs 90s Get:1 http://ftpmaster.internal/ubuntu plucky/universe python-cattrs 23.2.3-1 (dsc) [2250 B] 90s Get:2 http://ftpmaster.internal/ubuntu plucky/universe python-cattrs 23.2.3-1 (tar) [566 kB] 90s Get:3 http://ftpmaster.internal/ubuntu plucky/universe python-cattrs 23.2.3-1 (diff) [2856 B] 90s gpgv: Signature made Sat Mar 9 07:28:42 2024 UTC 90s gpgv: using RSA key B9FAD3192AF3E4A5309D9D39879F3C993801A94F 90s gpgv: Can't check signature: No public key 90s dpkg-source: warning: cannot verify inline signature for ./python-cattrs_23.2.3-1.dsc: no acceptable signature found 90s autopkgtest [16:00:17]: testing package python-cattrs version 23.2.3-1 90s autopkgtest [16:00:17]: build not needed 91s autopkgtest [16:00:18]: test pybuild-autopkgtest: preparing testbed 95s Reading package lists... 95s Building dependency tree... 95s Reading state information... 95s Starting pkgProblemResolver with broken count: 0 95s Starting 2 pkgProblemResolver with broken count: 0 95s Done 95s The following additional packages will be installed: 95s autoconf automake autopoint autotools-dev build-essential cpp cpp-14 95s cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu debhelper debugedit 95s dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-14 95s g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 95s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu gettext intltool-debian 95s libarchive-zip-perl libasan8 libcc1-0 libdebhelper-perl 95s libdouble-conversion3 libfile-stripnondeterminism-perl libgcc-14-dev 95s libgomp1 libhwasan0 libisl23 libitm1 liblsan0 libmpc3 libquadmath0 95s libstdc++-14-dev libtool libtsan2 libubsan1 m4 po-debconf 95s pybuild-plugin-autopkgtest pybuild-plugin-pyproject python3-all python3-bson 95s python3-build python3-cattr python3-cpuinfo python3-dateutil 95s python3-hatch-vcs python3-hatchling python3-hypothesis python3-iniconfig 95s python3-installer python3-msgpack python3-packaging python3-pathspec 95s python3-pluggy python3-pyproject-hooks python3-pytest 95s python3-pytest-benchmark python3-setuptools-scm python3-six 95s python3-sortedcontainers python3-toml python3-tomlkit 96s python3-trove-classifiers python3-ujson python3-wheel 96s Suggested packages: 96s autoconf-archive gnu-standards autoconf-doc cpp-doc gcc-14-locales 96s cpp-14-doc dh-make flit g++-multilib g++-14-multilib gcc-14-doc gcc-multilib 96s manpages-dev flex bison gdb gcc-doc gcc-14-multilib gdb-x86-64-linux-gnu 96s gettext-doc libasprintf-dev libgettextpo-dev libstdc++-14-doc libtool-doc 96s gfortran | fortran95-compiler gcj-jdk m4-doc libmail-box-perl python3-pip 96s python3-venv python-build-doc python-hypothesis-doc python-installer-doc 96s python-sortedcontainers-doc 96s Recommended packages: 96s libarchive-cpio-perl libltdl-dev libmail-sendmail-perl python3-bson-ext 96s python3-click python3-elasticsearch python3-freezegun python3-pygal 96s The following NEW packages will be installed: 96s autoconf automake autopkgtest-satdep autopoint autotools-dev build-essential 96s cpp cpp-14 cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu debhelper debugedit 96s dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-14 96s g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 96s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu gettext intltool-debian 96s libarchive-zip-perl libasan8 libcc1-0 libdebhelper-perl 96s libdouble-conversion3 libfile-stripnondeterminism-perl libgcc-14-dev 96s libgomp1 libhwasan0 libisl23 libitm1 liblsan0 libmpc3 libquadmath0 96s libstdc++-14-dev libtool libtsan2 libubsan1 m4 po-debconf 96s pybuild-plugin-autopkgtest pybuild-plugin-pyproject python3-all python3-bson 96s python3-build python3-cattr python3-cpuinfo python3-dateutil 96s python3-hatch-vcs python3-hatchling python3-hypothesis python3-iniconfig 96s python3-installer python3-msgpack python3-packaging python3-pathspec 96s python3-pluggy python3-pyproject-hooks python3-pytest 96s python3-pytest-benchmark python3-setuptools-scm python3-six 96s python3-sortedcontainers python3-toml python3-tomlkit 96s python3-trove-classifiers python3-ujson python3-wheel 96s 0 upgraded, 74 newly installed, 0 to remove and 0 not upgraded. 96s Need to get 71.5 MB/71.5 MB of archives. 96s After this operation, 242 MB of additional disk space will be used. 96s Get:1 /tmp/autopkgtest.lySU52/1-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [836 B] 97s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 m4 amd64 1.4.19-4build1 [244 kB] 97s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 autoconf all 2.72-3 [382 kB] 97s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 autotools-dev all 20220109.1 [44.9 kB] 97s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 automake all 1:1.16.5-1.3ubuntu1 [558 kB] 97s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 autopoint all 0.22.5-2 [616 kB] 97s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libisl23 amd64 0.27-1 [685 kB] 97s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libmpc3 amd64 1.3.1-1build2 [55.3 kB] 97s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14-x86-64-linux-gnu amd64 14.2.0-7ubuntu1 [11.9 MB] 97s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14 amd64 14.2.0-7ubuntu1 [1026 B] 97s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [5452 B] 97s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp amd64 4:14.1.0-2ubuntu1 [22.4 kB] 97s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libcc1-0 amd64 14.2.0-7ubuntu1 [47.6 kB] 97s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-7ubuntu1 [148 kB] 97s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libitm1 amd64 14.2.0-7ubuntu1 [29.1 kB] 97s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libasan8 amd64 14.2.0-7ubuntu1 [2998 kB] 97s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsan0 amd64 14.2.0-7ubuntu1 [1316 kB] 97s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libtsan2 amd64 14.2.0-7ubuntu1 [2733 kB] 97s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 libubsan1 amd64 14.2.0-7ubuntu1 [1177 kB] 98s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 libhwasan0 amd64 14.2.0-7ubuntu1 [1634 kB] 98s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libquadmath0 amd64 14.2.0-7ubuntu1 [153 kB] 98s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 libgcc-14-dev amd64 14.2.0-7ubuntu1 [2814 kB] 98s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14-x86-64-linux-gnu amd64 14.2.0-7ubuntu1 [23.4 MB] 98s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14 amd64 14.2.0-7ubuntu1 [526 kB] 98s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [1214 B] 98s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc amd64 4:14.1.0-2ubuntu1 [5000 B] 98s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libstdc++-14-dev amd64 14.2.0-7ubuntu1 [2503 kB] 98s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14-x86-64-linux-gnu amd64 14.2.0-7ubuntu1 [13.4 MB] 99s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14 amd64 14.2.0-7ubuntu1 [19.8 kB] 99s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [966 B] 99s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 g++ amd64 4:14.1.0-2ubuntu1 [1100 B] 99s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 99s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 libdebhelper-perl all 13.20ubuntu1 [94.2 kB] 99s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 libtool all 2.4.7-7build1 [166 kB] 99s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 dh-autoreconf all 20 [16.1 kB] 99s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libarchive-zip-perl all 1.68-1 [90.2 kB] 99s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [20.1 kB] 99s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 dh-strip-nondeterminism all 1.14.0-1 [5058 B] 99s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 debugedit amd64 1:5.1-1 [46.9 kB] 99s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 dwz amd64 0.15-1build6 [115 kB] 99s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.22.5-2 [948 kB] 99s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 99s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 po-debconf all 1.0.21+nmu1 [233 kB] 99s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 debhelper all 13.20ubuntu1 [893 kB] 99s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 dh-python all 6.20241024 [112 kB] 99s Get:46 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdouble-conversion3 amd64 3.3.0-1build1 [40.3 kB] 99s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 pybuild-plugin-autopkgtest all 6.20241024 [1746 B] 99s Get:48 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.1-1 [41.4 kB] 99s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pyproject-hooks all 1.2.0-1 [10.2 kB] 99s Get:50 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-toml all 0.10.2-1 [16.5 kB] 99s Get:51 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-wheel all 0.44.0-1 [54.2 kB] 99s Get:52 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-build all 1.2.2-1 [31.0 kB] 99s Get:53 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-installer all 0.7.0+dfsg1-3 [17.4 kB] 99s Get:54 http://ftpmaster.internal/ubuntu plucky/universe amd64 pybuild-plugin-pyproject all 6.20241024 [1728 B] 99s Get:55 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-all amd64 3.12.6-0ubuntu1 [886 B] 99s Get:56 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bson all 4.7.3-2ubuntu1 [41.1 kB] 99s Get:57 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-cattr all 23.2.3-1 [38.1 kB] 99s Get:58 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-cpuinfo all 9.0.0+git20221119-2 [21.6 kB] 99s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-six all 1.16.0-7 [13.1 kB] 99s Get:60 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB] 99s Get:61 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pathspec all 0.12.1-1 [24.5 kB] 99s Get:62 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 99s Get:63 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-trove-classifiers all 2024.9.12-1 [10.8 kB] 99s Get:64 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-hatchling all 1.25.0-1 [54.8 kB] 99s Get:65 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-setuptools-scm all 8.1.0-1 [32.2 kB] 99s Get:66 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-hatch-vcs all 0.4.0-1 [7904 B] 99s Get:67 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-sortedcontainers all 2.4.0-2 [27.6 kB] 99s Get:68 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-hypothesis all 6.116.0-1 [326 kB] 99s Get:69 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 99s Get:70 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-msgpack amd64 1.0.3-3build2 [80.1 kB] 99s Get:71 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.3-1 [251 kB] 99s Get:72 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest-benchmark all 4.0.0-4 [38.3 kB] 99s Get:73 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-tomlkit all 0.13.2-1 [37.6 kB] 99s Get:74 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ujson amd64 5.10.0-1 [25.9 kB] 100s Fetched 71.5 MB in 4s (20.2 MB/s) 100s Selecting previously unselected package m4. 100s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75553 files and directories currently installed.) 100s Preparing to unpack .../00-m4_1.4.19-4build1_amd64.deb ... 100s Unpacking m4 (1.4.19-4build1) ... 100s Selecting previously unselected package autoconf. 100s Preparing to unpack .../01-autoconf_2.72-3_all.deb ... 100s Unpacking autoconf (2.72-3) ... 100s Selecting previously unselected package autotools-dev. 100s Preparing to unpack .../02-autotools-dev_20220109.1_all.deb ... 100s Unpacking autotools-dev (20220109.1) ... 100s Selecting previously unselected package automake. 100s Preparing to unpack .../03-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 100s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 100s Selecting previously unselected package autopoint. 100s Preparing to unpack .../04-autopoint_0.22.5-2_all.deb ... 100s Unpacking autopoint (0.22.5-2) ... 100s Selecting previously unselected package libisl23:amd64. 100s Preparing to unpack .../05-libisl23_0.27-1_amd64.deb ... 100s Unpacking libisl23:amd64 (0.27-1) ... 100s Selecting previously unselected package libmpc3:amd64. 100s Preparing to unpack .../06-libmpc3_1.3.1-1build2_amd64.deb ... 100s Unpacking libmpc3:amd64 (1.3.1-1build2) ... 100s Selecting previously unselected package cpp-14-x86-64-linux-gnu. 100s Preparing to unpack .../07-cpp-14-x86-64-linux-gnu_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking cpp-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package cpp-14. 100s Preparing to unpack .../08-cpp-14_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking cpp-14 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package cpp-x86-64-linux-gnu. 100s Preparing to unpack .../09-cpp-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 100s Unpacking cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 100s Selecting previously unselected package cpp. 100s Preparing to unpack .../10-cpp_4%3a14.1.0-2ubuntu1_amd64.deb ... 100s Unpacking cpp (4:14.1.0-2ubuntu1) ... 100s Selecting previously unselected package libcc1-0:amd64. 100s Preparing to unpack .../11-libcc1-0_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libcc1-0:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libgomp1:amd64. 100s Preparing to unpack .../12-libgomp1_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libgomp1:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libitm1:amd64. 100s Preparing to unpack .../13-libitm1_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libitm1:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libasan8:amd64. 100s Preparing to unpack .../14-libasan8_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libasan8:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package liblsan0:amd64. 100s Preparing to unpack .../15-liblsan0_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking liblsan0:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libtsan2:amd64. 100s Preparing to unpack .../16-libtsan2_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libtsan2:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libubsan1:amd64. 100s Preparing to unpack .../17-libubsan1_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libubsan1:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libhwasan0:amd64. 100s Preparing to unpack .../18-libhwasan0_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libhwasan0:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libquadmath0:amd64. 100s Preparing to unpack .../19-libquadmath0_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libquadmath0:amd64 (14.2.0-7ubuntu1) ... 100s Selecting previously unselected package libgcc-14-dev:amd64. 100s Preparing to unpack .../20-libgcc-14-dev_14.2.0-7ubuntu1_amd64.deb ... 100s Unpacking libgcc-14-dev:amd64 (14.2.0-7ubuntu1) ... 101s Selecting previously unselected package gcc-14-x86-64-linux-gnu. 101s Preparing to unpack .../21-gcc-14-x86-64-linux-gnu_14.2.0-7ubuntu1_amd64.deb ... 101s Unpacking gcc-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 101s Selecting previously unselected package gcc-14. 101s Preparing to unpack .../22-gcc-14_14.2.0-7ubuntu1_amd64.deb ... 101s Unpacking gcc-14 (14.2.0-7ubuntu1) ... 101s Selecting previously unselected package gcc-x86-64-linux-gnu. 101s Preparing to unpack .../23-gcc-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 101s Unpacking gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 101s Selecting previously unselected package gcc. 101s Preparing to unpack .../24-gcc_4%3a14.1.0-2ubuntu1_amd64.deb ... 101s Unpacking gcc (4:14.1.0-2ubuntu1) ... 101s Selecting previously unselected package libstdc++-14-dev:amd64. 101s Preparing to unpack .../25-libstdc++-14-dev_14.2.0-7ubuntu1_amd64.deb ... 101s Unpacking libstdc++-14-dev:amd64 (14.2.0-7ubuntu1) ... 101s Selecting previously unselected package g++-14-x86-64-linux-gnu. 101s Preparing to unpack .../26-g++-14-x86-64-linux-gnu_14.2.0-7ubuntu1_amd64.deb ... 101s Unpacking g++-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 101s Selecting previously unselected package g++-14. 101s Preparing to unpack .../27-g++-14_14.2.0-7ubuntu1_amd64.deb ... 101s Unpacking g++-14 (14.2.0-7ubuntu1) ... 101s Selecting previously unselected package g++-x86-64-linux-gnu. 101s Preparing to unpack .../28-g++-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 101s Unpacking g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 101s Selecting previously unselected package g++. 101s Preparing to unpack .../29-g++_4%3a14.1.0-2ubuntu1_amd64.deb ... 101s Unpacking g++ (4:14.1.0-2ubuntu1) ... 101s Selecting previously unselected package build-essential. 101s Preparing to unpack .../30-build-essential_12.10ubuntu1_amd64.deb ... 101s Unpacking build-essential (12.10ubuntu1) ... 101s Selecting previously unselected package libdebhelper-perl. 101s Preparing to unpack .../31-libdebhelper-perl_13.20ubuntu1_all.deb ... 101s Unpacking libdebhelper-perl (13.20ubuntu1) ... 101s Selecting previously unselected package libtool. 101s Preparing to unpack .../32-libtool_2.4.7-7build1_all.deb ... 101s Unpacking libtool (2.4.7-7build1) ... 102s Selecting previously unselected package dh-autoreconf. 102s Preparing to unpack .../33-dh-autoreconf_20_all.deb ... 102s Unpacking dh-autoreconf (20) ... 102s Selecting previously unselected package libarchive-zip-perl. 102s Preparing to unpack .../34-libarchive-zip-perl_1.68-1_all.deb ... 102s Unpacking libarchive-zip-perl (1.68-1) ... 102s Selecting previously unselected package libfile-stripnondeterminism-perl. 102s Preparing to unpack .../35-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... 102s Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... 102s Selecting previously unselected package dh-strip-nondeterminism. 102s Preparing to unpack .../36-dh-strip-nondeterminism_1.14.0-1_all.deb ... 102s Unpacking dh-strip-nondeterminism (1.14.0-1) ... 102s Selecting previously unselected package debugedit. 102s Preparing to unpack .../37-debugedit_1%3a5.1-1_amd64.deb ... 102s Unpacking debugedit (1:5.1-1) ... 102s Selecting previously unselected package dwz. 102s Preparing to unpack .../38-dwz_0.15-1build6_amd64.deb ... 102s Unpacking dwz (0.15-1build6) ... 102s Selecting previously unselected package gettext. 102s Preparing to unpack .../39-gettext_0.22.5-2_amd64.deb ... 102s Unpacking gettext (0.22.5-2) ... 102s Selecting previously unselected package intltool-debian. 102s Preparing to unpack .../40-intltool-debian_0.35.0+20060710.6_all.deb ... 102s Unpacking intltool-debian (0.35.0+20060710.6) ... 102s Selecting previously unselected package po-debconf. 102s Preparing to unpack .../41-po-debconf_1.0.21+nmu1_all.deb ... 102s Unpacking po-debconf (1.0.21+nmu1) ... 102s Selecting previously unselected package debhelper. 102s Preparing to unpack .../42-debhelper_13.20ubuntu1_all.deb ... 102s Unpacking debhelper (13.20ubuntu1) ... 102s Selecting previously unselected package dh-python. 102s Preparing to unpack .../43-dh-python_6.20241024_all.deb ... 102s Unpacking dh-python (6.20241024) ... 102s Selecting previously unselected package libdouble-conversion3:amd64. 102s Preparing to unpack .../44-libdouble-conversion3_3.3.0-1build1_amd64.deb ... 102s Unpacking libdouble-conversion3:amd64 (3.3.0-1build1) ... 102s Selecting previously unselected package pybuild-plugin-autopkgtest. 102s Preparing to unpack .../45-pybuild-plugin-autopkgtest_6.20241024_all.deb ... 102s Unpacking pybuild-plugin-autopkgtest (6.20241024) ... 102s Selecting previously unselected package python3-packaging. 102s Preparing to unpack .../46-python3-packaging_24.1-1_all.deb ... 102s Unpacking python3-packaging (24.1-1) ... 102s Selecting previously unselected package python3-pyproject-hooks. 102s Preparing to unpack .../47-python3-pyproject-hooks_1.2.0-1_all.deb ... 102s Unpacking python3-pyproject-hooks (1.2.0-1) ... 102s Selecting previously unselected package python3-toml. 102s Preparing to unpack .../48-python3-toml_0.10.2-1_all.deb ... 102s Unpacking python3-toml (0.10.2-1) ... 102s Selecting previously unselected package python3-wheel. 102s Preparing to unpack .../49-python3-wheel_0.44.0-1_all.deb ... 102s Unpacking python3-wheel (0.44.0-1) ... 102s Selecting previously unselected package python3-build. 102s Preparing to unpack .../50-python3-build_1.2.2-1_all.deb ... 102s Unpacking python3-build (1.2.2-1) ... 102s Selecting previously unselected package python3-installer. 102s Preparing to unpack .../51-python3-installer_0.7.0+dfsg1-3_all.deb ... 102s Unpacking python3-installer (0.7.0+dfsg1-3) ... 102s Selecting previously unselected package pybuild-plugin-pyproject. 102s Preparing to unpack .../52-pybuild-plugin-pyproject_6.20241024_all.deb ... 102s Unpacking pybuild-plugin-pyproject (6.20241024) ... 102s Selecting previously unselected package python3-all. 102s Preparing to unpack .../53-python3-all_3.12.6-0ubuntu1_amd64.deb ... 102s Unpacking python3-all (3.12.6-0ubuntu1) ... 102s Selecting previously unselected package python3-bson. 102s Preparing to unpack .../54-python3-bson_4.7.3-2ubuntu1_all.deb ... 102s Unpacking python3-bson (4.7.3-2ubuntu1) ... 102s Selecting previously unselected package python3-cattr. 102s Preparing to unpack .../55-python3-cattr_23.2.3-1_all.deb ... 102s Unpacking python3-cattr (23.2.3-1) ... 102s Selecting previously unselected package python3-cpuinfo. 102s Preparing to unpack .../56-python3-cpuinfo_9.0.0+git20221119-2_all.deb ... 102s Unpacking python3-cpuinfo (9.0.0+git20221119-2) ... 102s Selecting previously unselected package python3-six. 102s Preparing to unpack .../57-python3-six_1.16.0-7_all.deb ... 102s Unpacking python3-six (1.16.0-7) ... 102s Selecting previously unselected package python3-dateutil. 102s Preparing to unpack .../58-python3-dateutil_2.9.0-2_all.deb ... 102s Unpacking python3-dateutil (2.9.0-2) ... 102s Selecting previously unselected package python3-pathspec. 102s Preparing to unpack .../59-python3-pathspec_0.12.1-1_all.deb ... 102s Unpacking python3-pathspec (0.12.1-1) ... 102s Selecting previously unselected package python3-pluggy. 102s Preparing to unpack .../60-python3-pluggy_1.5.0-1_all.deb ... 102s Unpacking python3-pluggy (1.5.0-1) ... 102s Selecting previously unselected package python3-trove-classifiers. 102s Preparing to unpack .../61-python3-trove-classifiers_2024.9.12-1_all.deb ... 102s Unpacking python3-trove-classifiers (2024.9.12-1) ... 102s Selecting previously unselected package python3-hatchling. 102s Preparing to unpack .../62-python3-hatchling_1.25.0-1_all.deb ... 102s Unpacking python3-hatchling (1.25.0-1) ... 102s Selecting previously unselected package python3-setuptools-scm. 102s Preparing to unpack .../63-python3-setuptools-scm_8.1.0-1_all.deb ... 102s Unpacking python3-setuptools-scm (8.1.0-1) ... 102s Selecting previously unselected package python3-hatch-vcs. 102s Preparing to unpack .../64-python3-hatch-vcs_0.4.0-1_all.deb ... 102s Unpacking python3-hatch-vcs (0.4.0-1) ... 102s Selecting previously unselected package python3-sortedcontainers. 102s Preparing to unpack .../65-python3-sortedcontainers_2.4.0-2_all.deb ... 102s Unpacking python3-sortedcontainers (2.4.0-2) ... 102s Selecting previously unselected package python3-hypothesis. 102s Preparing to unpack .../66-python3-hypothesis_6.116.0-1_all.deb ... 102s Unpacking python3-hypothesis (6.116.0-1) ... 102s Selecting previously unselected package python3-iniconfig. 102s Preparing to unpack .../67-python3-iniconfig_1.1.1-2_all.deb ... 102s Unpacking python3-iniconfig (1.1.1-2) ... 102s Selecting previously unselected package python3-msgpack. 102s Preparing to unpack .../68-python3-msgpack_1.0.3-3build2_amd64.deb ... 102s Unpacking python3-msgpack (1.0.3-3build2) ... 102s Selecting previously unselected package python3-pytest. 102s Preparing to unpack .../69-python3-pytest_8.3.3-1_all.deb ... 102s Unpacking python3-pytest (8.3.3-1) ... 102s Selecting previously unselected package python3-pytest-benchmark. 102s Preparing to unpack .../70-python3-pytest-benchmark_4.0.0-4_all.deb ... 102s Unpacking python3-pytest-benchmark (4.0.0-4) ... 103s Selecting previously unselected package python3-tomlkit. 103s Preparing to unpack .../71-python3-tomlkit_0.13.2-1_all.deb ... 103s Unpacking python3-tomlkit (0.13.2-1) ... 103s Selecting previously unselected package python3-ujson:amd64. 103s Preparing to unpack .../72-python3-ujson_5.10.0-1_amd64.deb ... 103s Unpacking python3-ujson:amd64 (5.10.0-1) ... 103s Selecting previously unselected package autopkgtest-satdep. 103s Preparing to unpack .../73-1-autopkgtest-satdep.deb ... 103s Unpacking autopkgtest-satdep (0) ... 103s Setting up dh-python (6.20241024) ... 103s Setting up python3-iniconfig (1.1.1-2) ... 103s Setting up libdouble-conversion3:amd64 (3.3.0-1build1) ... 103s Setting up libarchive-zip-perl (1.68-1) ... 103s Setting up libdebhelper-perl (13.20ubuntu1) ... 103s Setting up m4 (1.4.19-4build1) ... 103s Setting up python3-all (3.12.6-0ubuntu1) ... 103s Setting up python3-sortedcontainers (2.4.0-2) ... 103s Setting up libgomp1:amd64 (14.2.0-7ubuntu1) ... 103s Setting up python3-wheel (0.44.0-1) ... 103s Setting up python3-ujson:amd64 (5.10.0-1) ... 103s Setting up python3-six (1.16.0-7) ... 103s Setting up python3-bson (4.7.3-2ubuntu1) ... 103s Setting up autotools-dev (20220109.1) ... 103s Setting up python3-packaging (24.1-1) ... 103s Setting up python3-cattr (23.2.3-1) ... 103s Setting up python3-pyproject-hooks (1.2.0-1) ... 104s Setting up libquadmath0:amd64 (14.2.0-7ubuntu1) ... 104s Setting up libmpc3:amd64 (1.3.1-1build2) ... 104s Setting up autopoint (0.22.5-2) ... 104s Setting up python3-cpuinfo (9.0.0+git20221119-2) ... 104s Setting up python3-toml (0.10.2-1) ... 104s Setting up python3-installer (0.7.0+dfsg1-3) ... 104s Setting up autoconf (2.72-3) ... 104s Setting up python3-pluggy (1.5.0-1) ... 104s Setting up libubsan1:amd64 (14.2.0-7ubuntu1) ... 104s Setting up dwz (0.15-1build6) ... 104s Setting up python3-trove-classifiers (2024.9.12-1) ... 104s Setting up libhwasan0:amd64 (14.2.0-7ubuntu1) ... 104s Setting up libasan8:amd64 (14.2.0-7ubuntu1) ... 104s Setting up debugedit (1:5.1-1) ... 104s Setting up python3-dateutil (2.9.0-2) ... 104s Setting up python3-msgpack (1.0.3-3build2) ... 104s Setting up libtsan2:amd64 (14.2.0-7ubuntu1) ... 104s Setting up libisl23:amd64 (0.27-1) ... 104s Setting up python3-build (1.2.2-1) ... 104s Setting up python3-tomlkit (0.13.2-1) ... 105s Setting up python3-pathspec (0.12.1-1) ... 105s Setting up libcc1-0:amd64 (14.2.0-7ubuntu1) ... 105s Setting up liblsan0:amd64 (14.2.0-7ubuntu1) ... 105s Setting up libitm1:amd64 (14.2.0-7ubuntu1) ... 105s Setting up automake (1:1.16.5-1.3ubuntu1) ... 105s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 105s Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... 105s Setting up gettext (0.22.5-2) ... 105s Setting up pybuild-plugin-pyproject (6.20241024) ... 105s Setting up python3-pytest (8.3.3-1) ... 105s Setting up python3-hypothesis (6.116.0-1) ... 105s Setting up python3-setuptools-scm (8.1.0-1) ... 105s Setting up intltool-debian (0.35.0+20060710.6) ... 105s Setting up cpp-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 105s Setting up cpp-14 (14.2.0-7ubuntu1) ... 105s Setting up dh-strip-nondeterminism (1.14.0-1) ... 105s Setting up python3-hatchling (1.25.0-1) ... 105s Setting up libgcc-14-dev:amd64 (14.2.0-7ubuntu1) ... 105s Setting up libstdc++-14-dev:amd64 (14.2.0-7ubuntu1) ... 105s Setting up python3-hatch-vcs (0.4.0-1) ... 106s Setting up python3-pytest-benchmark (4.0.0-4) ... 106s Setting up cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 106s Setting up po-debconf (1.0.21+nmu1) ... 106s Setting up cpp (4:14.1.0-2ubuntu1) ... 106s Setting up gcc-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 106s Setting up gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 106s Setting up gcc-14 (14.2.0-7ubuntu1) ... 106s Setting up g++-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 106s Setting up g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 106s Setting up g++-14 (14.2.0-7ubuntu1) ... 106s Setting up libtool (2.4.7-7build1) ... 106s Setting up gcc (4:14.1.0-2ubuntu1) ... 106s Setting up dh-autoreconf (20) ... 106s Setting up g++ (4:14.1.0-2ubuntu1) ... 106s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 106s Setting up build-essential (12.10ubuntu1) ... 106s Setting up debhelper (13.20ubuntu1) ... 106s Setting up pybuild-plugin-autopkgtest (6.20241024) ... 106s Setting up autopkgtest-satdep (0) ... 106s Processing triggers for man-db (2.12.1-3) ... 107s Processing triggers for install-info (7.1.1-1) ... 107s Processing triggers for libc-bin (2.40-1ubuntu3) ... 109s (Reading database ... 78797 files and directories currently installed.) 109s Removing autopkgtest-satdep (0) ... 110s autopkgtest [16:00:37]: test pybuild-autopkgtest: pybuild-autopkgtest 110s autopkgtest [16:00:37]: test pybuild-autopkgtest: [----------------------- 110s pybuild-autopkgtest 111s I: pybuild base:311: cd /tmp/autopkgtest.lySU52/autopkgtest_tmp/build; python3.12 -m pytest -v --ignore tests/test_unstructure_collections.py --ignore tests/test_preconf.py -k 'not test_orjson' 111s ============================= test session starts ============================== 111s platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.12 111s cachedir: .pytest_cache 111s benchmark: 4.0.0 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=True warmup_iterations=5) 111s hypothesis profile 'tests' -> deadline=None, suppress_health_check=[HealthCheck.too_slow], database=DirectoryBasedExampleDatabase(PosixPath('/tmp/autopkgtest.lySU52/autopkgtest_tmp/build/.hypothesis/examples')) 111s rootdir: /tmp/autopkgtest.lySU52/autopkgtest_tmp/build 111s configfile: pyproject.toml 111s plugins: benchmark-4.0.0, typeguard-4.4.1, hypothesis-6.116.0 112s collecting ... collected 592 items 112s 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-_structure-_unstructure] PASSED [ 0%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-_structure-_undefined] PASSED [ 0%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-_structure-None] PASSED [ 0%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-_undefined-_unstructure] PASSED [ 0%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-_undefined-_undefined] PASSED [ 0%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-_undefined-None] PASSED [ 1%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-None-_unstructure] PASSED [ 1%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-None-_undefined] PASSED [ 1%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Structure-None-None] PASSED [ 1%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-_structure-_unstructure] PASSED [ 1%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-_structure-_undefined] PASSED [ 1%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-_structure-None] PASSED [ 2%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-_undefined-_unstructure] PASSED [ 2%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-_undefined-_undefined] PASSED [ 2%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-_undefined-None] PASSED [ 2%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-None-_unstructure] PASSED [ 2%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-None-_undefined] PASSED [ 2%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Unstructure-None-None] PASSED [ 3%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-_structure-_unstructure] PASSED [ 3%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-_structure-_undefined] PASSED [ 3%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-_structure-None] PASSED [ 3%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-_undefined-_unstructure] PASSED [ 3%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-_undefined-_undefined] PASSED [ 3%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-_undefined-None] PASSED [ 4%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-None-_unstructure] PASSED [ 4%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-None-_undefined] PASSED [ 4%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-True-Both-None-None] PASSED [ 4%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-_structure-_unstructure] PASSED [ 4%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-_structure-_undefined] PASSED [ 4%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-_structure-None] PASSED [ 5%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-_undefined-_unstructure] PASSED [ 5%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-_undefined-_undefined] PASSED [ 5%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-_undefined-None] PASSED [ 5%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-None-_unstructure] PASSED [ 5%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-None-_undefined] PASSED [ 5%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Structure-None-None] PASSED [ 6%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-_structure-_unstructure] PASSED [ 6%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-_structure-_undefined] PASSED [ 6%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-_structure-None] PASSED [ 6%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-_undefined-_unstructure] PASSED [ 6%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-_undefined-_undefined] PASSED [ 6%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-_undefined-None] PASSED [ 7%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-None-_unstructure] PASSED [ 7%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-None-_undefined] PASSED [ 7%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Unstructure-None-None] PASSED [ 7%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-_structure-_unstructure] PASSED [ 7%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-_structure-_undefined] PASSED [ 7%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-_structure-None] PASSED [ 8%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-_undefined-_unstructure] PASSED [ 8%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-_undefined-_undefined] PASSED [ 8%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-_undefined-None] PASSED [ 8%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-None-_unstructure] PASSED [ 8%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-None-_undefined] PASSED [ 8%] 112s tests/strategies/test_class_methods.py::test_not_nested[BaseConverter-False-Both-None-None] PASSED [ 9%] 112s tests/strategies/test_native_unions.py::test_only_primitives[BaseConverter-True] PASSED [ 9%] 112s tests/strategies/test_native_unions.py::test_only_primitives[BaseConverter-False] PASSED [ 9%] 112s tests/strategies/test_native_unions.py::test_literals[BaseConverter-True] PASSED [ 9%] 112s tests/strategies/test_native_unions.py::test_literals[BaseConverter-False] PASSED [ 9%] 112s tests/strategies/test_native_unions.py::test_spillover[BaseConverter-True] PASSED [ 9%] 112s tests/strategies/test_native_unions.py::test_spillover[BaseConverter-False] PASSED [ 10%] 112s tests/strategies/test_native_unions.py::test_multiple_spillover[BaseConverter-True] PASSED [ 10%] 112s tests/strategies/test_native_unions.py::test_multiple_spillover[BaseConverter-False] PASSED [ 10%] 112s tests/strategies/test_tagged_unions.py::test_defaults[BaseConverter-True] PASSED [ 10%] 112s tests/strategies/test_tagged_unions.py::test_defaults[BaseConverter-False] PASSED [ 10%] 112s tests/strategies/test_tagged_unions.py::test_tag_name[BaseConverter-True] PASSED [ 10%] 112s tests/strategies/test_tagged_unions.py::test_tag_name[BaseConverter-False] PASSED [ 11%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator[BaseConverter-True] PASSED [ 11%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator[BaseConverter-False] PASSED [ 11%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator_dict[BaseConverter-True] PASSED [ 11%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator_dict[BaseConverter-False] PASSED [ 11%] 112s tests/strategies/test_tagged_unions.py::test_default_member[BaseConverter-True] PASSED [ 11%] 112s tests/strategies/test_tagged_unions.py::test_default_member[BaseConverter-False] PASSED [ 12%] 112s tests/strategies/test_tagged_unions.py::test_default_member_validation[BaseConverter-True] PASSED [ 12%] 112s tests/strategies/test_tagged_unions.py::test_default_member_validation[BaseConverter-False] PASSED [ 12%] 112s tests/test_any.py::test_unstructuring_dict_of_any[BaseConverter-True] PASSED [ 12%] 112s tests/test_any.py::test_unstructuring_dict_of_any[BaseConverter-False] PASSED [ 12%] 112s tests/test_converter.py::test_unstructure_fallbacks[BaseConverter] PASSED [ 13%] 112s tests/test_converter.py::test_structure_fallbacks[BaseConverter] PASSED [ 13%] 112s tests/test_converter.py::test_fallback_chaining[BaseConverter] PASSED [ 13%] 112s tests/test_converter_inheritance.py::test_inheritance[BaseConverter-True] PASSED [ 13%] 112s tests/test_converter_inheritance.py::test_inheritance[BaseConverter-False] PASSED [ 13%] 112s tests/test_converter_inheritance.py::test_gen_hook_priority[BaseConverter-True] PASSED [ 13%] 112s tests/test_converter_inheritance.py::test_gen_hook_priority[BaseConverter-False] PASSED [ 14%] 112s tests/test_converter_inheritance.py::test_inherit_typing[BaseConverter-True-Hashable] PASSED [ 14%] 112s tests/test_converter_inheritance.py::test_inherit_typing[BaseConverter-True-Iterable] PASSED [ 14%] 112s tests/test_converter_inheritance.py::test_inherit_typing[BaseConverter-True-Reversible] PASSED [ 14%] 112s tests/test_converter_inheritance.py::test_inherit_typing[BaseConverter-False-Hashable] PASSED [ 14%] 112s tests/test_converter_inheritance.py::test_inherit_typing[BaseConverter-False-Iterable] PASSED [ 14%] 112s tests/test_converter_inheritance.py::test_inherit_typing[BaseConverter-False-Reversible] PASSED [ 15%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[BaseConverter-True-Hashable] PASSED [ 15%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[BaseConverter-True-Iterable] PASSED [ 15%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[BaseConverter-True-Reversible] PASSED [ 15%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[BaseConverter-False-Hashable] PASSED [ 15%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[BaseConverter-False-Iterable] PASSED [ 15%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[BaseConverter-False-Reversible] PASSED [ 16%] 112s tests/test_copy.py::test_deepcopy[BaseConverter] PASSED [ 16%] 112s tests/test_copy.py::test_copy[BaseConverter] PASSED [ 16%] 112s tests/test_copy.py::test_copy_hooks[BaseConverter] PASSED [ 16%] 112s tests/test_copy.py::test_copy_func_hooks[BaseConverter] PASSED [ 16%] 112s tests/test_dataclasses.py::test_dataclasses_in_attrs[BaseConverter-True] PASSED [ 16%] 112s tests/test_dataclasses.py::test_dataclasses_in_attrs[BaseConverter-False] PASSED [ 17%] 112s tests/test_dataclasses.py::test_dataclasses_in_container[BaseConverter-True] PASSED [ 17%] 112s tests/test_dataclasses.py::test_dataclasses_in_container[BaseConverter-False] PASSED [ 17%] 112s tests/test_dataclasses.py::test_dataclasses[BaseConverter-True] PASSED [ 17%] 112s tests/test_dataclasses.py::test_dataclasses[BaseConverter-False] PASSED [ 17%] 112s tests/test_disambiguators.py::test_converter_no_literals[BaseConverter-True] PASSED [ 17%] 112s tests/test_disambiguators.py::test_converter_no_literals[BaseConverter-False] PASSED [ 18%] 112s tests/test_factory_hooks.py::test_snake_to_camel[BaseConverter] PASSED [ 18%] 112s tests/test_gen_dict.py::test_omitting[BaseConverter-True] PASSED [ 18%] 112s tests/test_gen_dict.py::test_omitting[BaseConverter-False] PASSED [ 18%] 112s tests/test_gen_dict.py::test_omitting_none[BaseConverter-True] PASSED [ 18%] 112s tests/test_gen_dict.py::test_omitting_none[BaseConverter-False] PASSED [ 18%] 112s tests/test_gen_dict.py::test_overriding_struct_hook[BaseConverter-True] PASSED [ 19%] 112s tests/test_gen_dict.py::test_overriding_struct_hook[BaseConverter-False] PASSED [ 19%] 112s tests/test_gen_dict.py::test_overriding_unstruct_hook[BaseConverter-True] PASSED [ 19%] 112s tests/test_gen_dict.py::test_overriding_unstruct_hook[BaseConverter-False] PASSED [ 19%] 112s tests/test_gen_dict.py::test_alias_keys[BaseConverter-True] PASSED [ 19%] 112s tests/test_gen_dict.py::test_alias_keys[BaseConverter-False] PASSED [ 19%] 112s tests/test_gen_dict.py::test_init_false[BaseConverter-True] PASSED [ 20%] 112s tests/test_gen_dict.py::test_init_false[BaseConverter-False] PASSED [ 20%] 112s tests/test_gen_dict.py::test_init_false_overridden[BaseConverter-True] PASSED [ 20%] 112s tests/test_gen_dict.py::test_init_false_overridden[BaseConverter-False] PASSED [ 20%] 112s tests/test_gen_dict.py::test_init_false_field_override[BaseConverter-True] PASSED [ 20%] 112s tests/test_gen_dict.py::test_init_false_field_override[BaseConverter-False] PASSED [ 20%] 112s tests/test_gen_dict.py::test_detailed_validation_from_converter[BaseConverter-True] PASSED [ 21%] 112s tests/test_gen_dict.py::test_detailed_validation_from_converter[BaseConverter-False] PASSED [ 21%] 112s tests/test_generics.py::test_able_to_structure_generics[BaseConverter-True-int-str-result0] PASSED [ 21%] 112s tests/test_generics.py::test_able_to_structure_generics[BaseConverter-True-str-str-result1] PASSED [ 21%] 112s tests/test_generics.py::test_able_to_structure_generics[BaseConverter-True-List-str-result2] PASSED [ 21%] 112s tests/test_generics.py::test_able_to_structure_generics[BaseConverter-False-int-str-result0] PASSED [ 21%] 112s tests/test_generics.py::test_able_to_structure_generics[BaseConverter-False-str-str-result1] PASSED [ 22%] 112s tests/test_generics.py::test_able_to_structure_generics[BaseConverter-False-List-str-result2] PASSED [ 22%] 112s tests/test_generics.py::test_structure_nested_generics[BaseConverter-True-TClass-str-result0] PASSED [ 22%] 112s tests/test_generics.py::test_structure_nested_generics[BaseConverter-True-List-str-result1] PASSED [ 22%] 112s tests/test_generics.py::test_structure_nested_generics[BaseConverter-False-TClass-str-result0] PASSED [ 22%] 112s tests/test_generics.py::test_structure_nested_generics[BaseConverter-False-List-str-result1] PASSED [ 22%] 112s tests/test_generics.py::test_able_to_structure_deeply_nested_generics_gen[BaseConverter-True] PASSED [ 23%] 112s tests/test_generics.py::test_able_to_structure_deeply_nested_generics_gen[BaseConverter-False] PASSED [ 23%] 112s tests/test_generics.py::test_structure_unions_of_generics[BaseConverter-True] PASSED [ 23%] 112s tests/test_generics.py::test_structure_unions_of_generics[BaseConverter-False] PASSED [ 23%] 112s tests/test_generics.py::test_structure_list_of_generic_unions[BaseConverter-True] PASSED [ 23%] 112s tests/test_generics.py::test_structure_list_of_generic_unions[BaseConverter-False] PASSED [ 23%] 112s tests/test_generics.py::test_structure_deque_of_generic_unions[BaseConverter-True] PASSED [ 24%] 112s tests/test_generics.py::test_structure_deque_of_generic_unions[BaseConverter-False] PASSED [ 24%] 112s tests/test_generics.py::test_raises_if_no_generic_params_supplied[BaseConverter-True] PASSED [ 24%] 112s tests/test_generics.py::test_raises_if_no_generic_params_supplied[BaseConverter-False] PASSED [ 24%] 112s tests/test_generics.py::test_nongeneric_protocols[BaseConverter-True] PASSED [ 24%] 112s tests/test_generics.py::test_nongeneric_protocols[BaseConverter-False] PASSED [ 25%] 112s tests/test_optionals.py::test_optional_any[BaseConverter-True] PASSED [ 25%] 112s tests/test_optionals.py::test_optional_any[BaseConverter-False] PASSED [ 25%] 112s tests/test_typeddicts.py::test_detailed_validation_from_converter[BaseConverter-True] PASSED [ 25%] 112s tests/test_typeddicts.py::test_detailed_validation_from_converter[BaseConverter-False] PASSED [ 25%] 112s tests/test_unstructure.py::test_unstructure_hook_func[BaseConverter-True] PASSED [ 25%] 112s tests/test_unstructure.py::test_unstructure_hook_func[BaseConverter-False] PASSED [ 26%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-_structure-_unstructure] PASSED [ 26%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-_structure-_undefined] PASSED [ 26%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-_structure-None] PASSED [ 26%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-_undefined-_unstructure] PASSED [ 26%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-_undefined-_undefined] PASSED [ 26%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-_undefined-None] PASSED [ 27%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-None-_unstructure] PASSED [ 27%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-None-_undefined] PASSED [ 27%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Structure-None-None] PASSED [ 27%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-_structure-_unstructure] PASSED [ 27%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-_structure-_undefined] PASSED [ 27%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-_structure-None] PASSED [ 28%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-_undefined-_unstructure] PASSED [ 28%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-_undefined-_undefined] PASSED [ 28%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-_undefined-None] PASSED [ 28%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-None-_unstructure] PASSED [ 28%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-None-_undefined] PASSED [ 28%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Unstructure-None-None] PASSED [ 29%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-_structure-_unstructure] PASSED [ 29%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-_structure-_undefined] PASSED [ 29%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-_structure-None] PASSED [ 29%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-_undefined-_unstructure] PASSED [ 29%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-_undefined-_undefined] PASSED [ 29%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-_undefined-None] PASSED [ 30%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-None-_unstructure] PASSED [ 30%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-None-_undefined] PASSED [ 30%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-True-Both-None-None] PASSED [ 30%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-_structure-_unstructure] PASSED [ 30%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-_structure-_undefined] PASSED [ 30%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-_structure-None] PASSED [ 31%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-_undefined-_unstructure] PASSED [ 31%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-_undefined-_undefined] PASSED [ 31%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-_undefined-None] PASSED [ 31%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-None-_unstructure] PASSED [ 31%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-None-_undefined] PASSED [ 31%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Structure-None-None] PASSED [ 32%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-_structure-_unstructure] PASSED [ 32%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-_structure-_undefined] PASSED [ 32%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-_structure-None] PASSED [ 32%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-_undefined-_unstructure] PASSED [ 32%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-_undefined-_undefined] PASSED [ 32%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-_undefined-None] PASSED [ 33%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-None-_unstructure] PASSED [ 33%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-None-_undefined] PASSED [ 33%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Unstructure-None-None] PASSED [ 33%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-_structure-_unstructure] PASSED [ 33%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-_structure-_undefined] PASSED [ 33%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-_structure-None] PASSED [ 34%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-_undefined-_unstructure] PASSED [ 34%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-_undefined-_undefined] PASSED [ 34%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-_undefined-None] PASSED [ 34%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-None-_unstructure] PASSED [ 34%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-None-_undefined] PASSED [ 34%] 112s tests/strategies/test_class_methods.py::test_not_nested[Converter-False-Both-None-None] PASSED [ 35%] 112s tests/strategies/test_native_unions.py::test_only_primitives[Converter-True] PASSED [ 35%] 112s tests/strategies/test_native_unions.py::test_only_primitives[Converter-False] PASSED [ 35%] 112s tests/strategies/test_native_unions.py::test_literals[Converter-True] PASSED [ 35%] 112s tests/strategies/test_native_unions.py::test_literals[Converter-False] PASSED [ 35%] 112s tests/strategies/test_native_unions.py::test_spillover[Converter-True] PASSED [ 35%] 112s tests/strategies/test_native_unions.py::test_spillover[Converter-False] PASSED [ 36%] 112s tests/strategies/test_native_unions.py::test_multiple_spillover[Converter-True] PASSED [ 36%] 112s tests/strategies/test_native_unions.py::test_multiple_spillover[Converter-False] PASSED [ 36%] 112s tests/strategies/test_tagged_unions.py::test_defaults[Converter-True] PASSED [ 36%] 112s tests/strategies/test_tagged_unions.py::test_defaults[Converter-False] PASSED [ 36%] 112s tests/strategies/test_tagged_unions.py::test_tag_name[Converter-True] PASSED [ 36%] 112s tests/strategies/test_tagged_unions.py::test_tag_name[Converter-False] PASSED [ 37%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator[Converter-True] PASSED [ 37%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator[Converter-False] PASSED [ 37%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator_dict[Converter-True] PASSED [ 37%] 112s tests/strategies/test_tagged_unions.py::test_tag_generator_dict[Converter-False] PASSED [ 37%] 112s tests/strategies/test_tagged_unions.py::test_default_member[Converter-True] PASSED [ 38%] 112s tests/strategies/test_tagged_unions.py::test_default_member[Converter-False] PASSED [ 38%] 112s tests/strategies/test_tagged_unions.py::test_default_member_validation[Converter-True] PASSED [ 38%] 112s tests/strategies/test_tagged_unions.py::test_default_member_validation[Converter-False] PASSED [ 38%] 112s tests/test_any.py::test_unstructuring_dict_of_any[Converter-True] PASSED [ 38%] 112s tests/test_any.py::test_unstructuring_dict_of_any[Converter-False] PASSED [ 38%] 112s tests/test_converter.py::test_unstructure_fallbacks[Converter] PASSED [ 39%] 112s tests/test_converter.py::test_structure_fallbacks[Converter] PASSED [ 39%] 112s tests/test_converter.py::test_fallback_chaining[Converter] PASSED [ 39%] 112s tests/test_converter_inheritance.py::test_inheritance[Converter-True] PASSED [ 39%] 112s tests/test_converter_inheritance.py::test_inheritance[Converter-False] PASSED [ 39%] 112s tests/test_converter_inheritance.py::test_gen_hook_priority[Converter-True] PASSED [ 39%] 112s tests/test_converter_inheritance.py::test_gen_hook_priority[Converter-False] PASSED [ 40%] 112s tests/test_converter_inheritance.py::test_inherit_typing[Converter-True-Hashable] PASSED [ 40%] 112s tests/test_converter_inheritance.py::test_inherit_typing[Converter-True-Iterable] PASSED [ 40%] 112s tests/test_converter_inheritance.py::test_inherit_typing[Converter-True-Reversible] PASSED [ 40%] 112s tests/test_converter_inheritance.py::test_inherit_typing[Converter-False-Hashable] PASSED [ 40%] 112s tests/test_converter_inheritance.py::test_inherit_typing[Converter-False-Iterable] PASSED [ 40%] 112s tests/test_converter_inheritance.py::test_inherit_typing[Converter-False-Reversible] PASSED [ 41%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[Converter-True-Hashable] PASSED [ 41%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[Converter-True-Iterable] PASSED [ 41%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[Converter-True-Reversible] PASSED [ 41%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[Converter-False-Hashable] PASSED [ 41%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[Converter-False-Iterable] PASSED [ 41%] 112s tests/test_converter_inheritance.py::test_inherit_collections_abc[Converter-False-Reversible] PASSED [ 42%] 112s tests/test_copy.py::test_deepcopy[Converter] PASSED [ 42%] 112s tests/test_copy.py::test_copy[Converter] PASSED [ 42%] 112s tests/test_copy.py::test_copy_hooks[Converter] PASSED [ 42%] 112s tests/test_copy.py::test_copy_func_hooks[Converter] PASSED [ 42%] 112s tests/test_dataclasses.py::test_dataclasses_in_attrs[Converter-True] PASSED [ 42%] 112s tests/test_dataclasses.py::test_dataclasses_in_attrs[Converter-False] PASSED [ 43%] 112s tests/test_dataclasses.py::test_dataclasses_in_container[Converter-True] PASSED [ 43%] 112s tests/test_dataclasses.py::test_dataclasses_in_container[Converter-False] PASSED [ 43%] 112s tests/test_dataclasses.py::test_dataclasses[Converter-True] PASSED [ 43%] 112s tests/test_dataclasses.py::test_dataclasses[Converter-False] PASSED [ 43%] 112s tests/test_disambiguators.py::test_converter_no_literals[Converter-True] PASSED [ 43%] 112s tests/test_disambiguators.py::test_converter_no_literals[Converter-False] PASSED [ 44%] 112s tests/test_factory_hooks.py::test_snake_to_camel[Converter] PASSED [ 44%] 112s tests/test_gen_dict.py::test_omitting[Converter-True] PASSED [ 44%] 112s tests/test_gen_dict.py::test_omitting[Converter-False] PASSED [ 44%] 112s tests/test_gen_dict.py::test_omitting_none[Converter-True] PASSED [ 44%] 112s tests/test_gen_dict.py::test_omitting_none[Converter-False] PASSED [ 44%] 112s tests/test_gen_dict.py::test_overriding_struct_hook[Converter-True] PASSED [ 45%] 112s tests/test_gen_dict.py::test_overriding_struct_hook[Converter-False] PASSED [ 45%] 112s tests/test_gen_dict.py::test_overriding_unstruct_hook[Converter-True] PASSED [ 45%] 112s tests/test_gen_dict.py::test_overriding_unstruct_hook[Converter-False] PASSED [ 45%] 112s tests/test_gen_dict.py::test_alias_keys[Converter-True] PASSED [ 45%] 112s tests/test_gen_dict.py::test_alias_keys[Converter-False] PASSED [ 45%] 112s tests/test_gen_dict.py::test_init_false[Converter-True] PASSED [ 46%] 112s tests/test_gen_dict.py::test_init_false[Converter-False] PASSED [ 46%] 112s tests/test_gen_dict.py::test_init_false_overridden[Converter-True] PASSED [ 46%] 112s tests/test_gen_dict.py::test_init_false_overridden[Converter-False] PASSED [ 46%] 112s tests/test_gen_dict.py::test_init_false_field_override[Converter-True] PASSED [ 46%] 112s tests/test_gen_dict.py::test_init_false_field_override[Converter-False] PASSED [ 46%] 112s tests/test_gen_dict.py::test_detailed_validation_from_converter[Converter-True] PASSED [ 47%] 112s tests/test_gen_dict.py::test_detailed_validation_from_converter[Converter-False] PASSED [ 47%] 112s tests/test_generics.py::test_able_to_structure_generics[Converter-True-int-str-result0] PASSED [ 47%] 112s tests/test_generics.py::test_able_to_structure_generics[Converter-True-str-str-result1] PASSED [ 47%] 112s tests/test_generics.py::test_able_to_structure_generics[Converter-True-List-str-result2] PASSED [ 47%] 112s tests/test_generics.py::test_able_to_structure_generics[Converter-False-int-str-result0] PASSED [ 47%] 112s tests/test_generics.py::test_able_to_structure_generics[Converter-False-str-str-result1] PASSED [ 48%] 112s tests/test_generics.py::test_able_to_structure_generics[Converter-False-List-str-result2] PASSED [ 48%] 112s tests/test_generics.py::test_structure_nested_generics[Converter-True-TClass-str-result0] PASSED [ 48%] 112s tests/test_generics.py::test_structure_nested_generics[Converter-True-List-str-result1] PASSED [ 48%] 112s tests/test_generics.py::test_structure_nested_generics[Converter-False-TClass-str-result0] PASSED [ 48%] 112s tests/test_generics.py::test_structure_nested_generics[Converter-False-List-str-result1] PASSED [ 48%] 112s tests/test_generics.py::test_able_to_structure_deeply_nested_generics_gen[Converter-True] PASSED [ 49%] 112s tests/test_generics.py::test_able_to_structure_deeply_nested_generics_gen[Converter-False] PASSED [ 49%] 112s tests/test_generics.py::test_structure_unions_of_generics[Converter-True] PASSED [ 49%] 112s tests/test_generics.py::test_structure_unions_of_generics[Converter-False] PASSED [ 49%] 112s tests/test_generics.py::test_structure_list_of_generic_unions[Converter-True] PASSED [ 49%] 112s tests/test_generics.py::test_structure_list_of_generic_unions[Converter-False] PASSED [ 50%] 112s tests/test_generics.py::test_structure_deque_of_generic_unions[Converter-True] PASSED [ 50%] 112s tests/test_generics.py::test_structure_deque_of_generic_unions[Converter-False] PASSED [ 50%] 112s tests/test_generics.py::test_raises_if_no_generic_params_supplied[Converter-True] PASSED [ 50%] 112s tests/test_generics.py::test_raises_if_no_generic_params_supplied[Converter-False] PASSED [ 50%] 112s tests/test_generics.py::test_nongeneric_protocols[Converter-True] PASSED [ 50%] 112s tests/test_generics.py::test_nongeneric_protocols[Converter-False] PASSED [ 51%] 112s tests/test_optionals.py::test_optional_any[Converter-True] PASSED [ 51%] 112s tests/test_optionals.py::test_optional_any[Converter-False] PASSED [ 51%] 112s tests/test_typeddicts.py::test_detailed_validation_from_converter[Converter-True] PASSED [ 51%] 112s tests/test_typeddicts.py::test_detailed_validation_from_converter[Converter-False] PASSED [ 51%] 112s tests/test_unstructure.py::test_unstructure_hook_func[Converter-True] PASSED [ 51%] 112s tests/test_unstructure.py::test_unstructure_hook_func[Converter-False] PASSED [ 52%] 112s tests/strategies/test_class_methods.py::test_nested_roundtrip PASSED [ 52%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-parent-only] PASSED [ 52%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-child1-only] PASSED [ 52%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-child2-only] PASSED [ 52%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-grandchild-only] PASSED [ 52%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-union-compose-parent] PASSED [ 53%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-union-compose-child] PASSED [ 53%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-union-compose-grandchild] PASSED [ 53%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-non-union-compose-parent] PASSED [ 53%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-non-union-compose-child] PASSED [ 53%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-non-union-compose-grandchild] PASSED [ 53%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-union-container] PASSED [ 54%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-non-union-container] PASSED [ 54%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-parent-only] PASSED [ 54%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-child1-only] PASSED [ 54%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-child2-only] PASSED [ 54%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-grandchild-only] PASSED [ 54%] 112s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-union-compose-parent] PASSED [ 55%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-union-compose-child] PASSED [ 55%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-union-compose-grandchild] PASSED [ 55%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-non-union-compose-parent] PASSED [ 55%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-non-union-compose-child] PASSED [ 55%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-non-union-compose-grandchild] PASSED [ 55%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-union-container] PASSED [ 56%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[with-subclasses-and-tagged-union-non-union-container] PASSED [ 56%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-parent-only] PASSED [ 56%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-child1-only] XFAIL [ 56%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-child2-only] XFAIL [ 56%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-grandchild-only] XFAIL [ 56%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-union-compose-parent] PASSED [ 57%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-union-compose-child] PASSED [ 57%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-union-compose-grandchild] PASSED [ 57%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-non-union-compose-parent] XFAIL [ 57%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-non-union-compose-child] XFAIL [ 57%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-non-union-compose-grandchild] XFAIL [ 57%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-union-container] PASSED [ 58%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_inheritance[wo-subclasses-non-union-container] XFAIL [ 58%] 113s tests/strategies/test_include_subclasses.py::test_structure_as_union PASSED [ 58%] 113s tests/strategies/test_include_subclasses.py::test_circular_reference[with-subclasses] PASSED [ 58%] 113s tests/strategies/test_include_subclasses.py::test_circular_reference[with-subclasses-and-tagged-union] PASSED [ 58%] 113s tests/strategies/test_include_subclasses.py::test_circular_reference[wo-subclasses] XFAIL [ 58%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-parent-only] PASSED [ 59%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-child1-only] PASSED [ 59%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-child2-only] PASSED [ 59%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-grandchild-only] PASSED [ 59%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-union-compose-parent] PASSED [ 59%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-union-compose-child] PASSED [ 59%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-union-compose-grandchild] PASSED [ 60%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-non-union-compose-parent] PASSED [ 60%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-non-union-compose-child] PASSED [ 60%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-non-union-compose-grandchild] PASSED [ 60%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-union-container] PASSED [ 60%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-non-union-container] PASSED [ 60%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-parent-only] PASSED [ 61%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-child1-only] PASSED [ 61%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-child2-only] PASSED [ 61%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-grandchild-only] PASSED [ 61%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-union-compose-parent] PASSED [ 61%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-union-compose-child] PASSED [ 61%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-union-compose-grandchild] PASSED [ 62%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-non-union-compose-parent] PASSED [ 62%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-non-union-compose-child] PASSED [ 62%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-non-union-compose-grandchild] PASSED [ 62%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-union-container] PASSED [ 62%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[with-subclasses-and-tagged-union-non-union-container] PASSED [ 63%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-parent-only] PASSED [ 63%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-child1-only] XFAIL [ 63%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-child2-only] XFAIL [ 63%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-grandchild-only] XFAIL [ 63%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-union-compose-parent] PASSED [ 63%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-union-compose-child] PASSED [ 64%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-union-compose-grandchild] PASSED [ 64%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-non-union-compose-parent] XFAIL [ 64%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-non-union-compose-child] XFAIL [ 64%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-non-union-compose-grandchild] XFAIL [ 64%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-union-container] PASSED [ 64%] 113s tests/strategies/test_include_subclasses.py::test_unstructuring_with_inheritance[wo-subclasses-non-union-container] XFAIL [ 65%] 113s tests/strategies/test_include_subclasses.py::test_structuring_unstructuring_unknown_subclass PASSED [ 65%] 113s tests/strategies/test_include_subclasses.py::test_structuring_with_subclasses_argument PASSED [ 65%] 113s tests/strategies/test_include_subclasses.py::test_overrides[with-union-strategy-parent-only] PASSED [ 65%] 113s tests/strategies/test_include_subclasses.py::test_overrides[with-union-strategy-child1-only] PASSED [ 65%] 113s tests/strategies/test_include_subclasses.py::test_overrides[with-union-strategy-child2-only] PASSED [ 65%] 113s tests/strategies/test_include_subclasses.py::test_overrides[with-union-strategy-grandchild-only] PASSED [ 66%] 113s tests/strategies/test_include_subclasses.py::test_overrides[wo-union-strategy-parent-only] PASSED [ 66%] 114s tests/strategies/test_include_subclasses.py::test_overrides[wo-union-strategy-child1-only] PASSED [ 66%] 114s tests/strategies/test_include_subclasses.py::test_overrides[wo-union-strategy-child2-only] PASSED [ 66%] 114s tests/strategies/test_include_subclasses.py::test_overrides[wo-union-strategy-grandchild-only] PASSED [ 66%] 114s tests/strategies/test_native_unions.py::test_skip_optionals PASSED [ 66%] 114s tests/strategies/test_tagged_unions.py::test_forbid_extra_keys PASSED [ 67%] 114s tests/strategies/test_tagged_unions.py::test_forbid_extra_keys_default PASSED [ 67%] 114s tests/strategies/test_tagged_unions.py::test_nested_sequence_union PASSED [ 67%] 117s tests/test_baseconverter.py::test_simple_roundtrip PASSED [ 67%] 117s tests/test_baseconverter.py::test_simple_roundtrip_defaults PASSED [ 67%] 423s tests/test_baseconverter.py::test_nested_roundtrip FAILED [ 67%] 725s tests/test_baseconverter.py::test_nested_roundtrip_tuple FAILED [ 68%] 762s tests/test_baseconverter.py::test_union_field_roundtrip FAILED [ 68%] 779s tests/test_baseconverter.py::test_310_union_field_roundtrip FAILED [ 68%] 779s tests/test_baseconverter.py::test_optional_field_roundtrip PASSED [ 68%] 782s tests/test_baseconverter.py::test_310_optional_field_roundtrip FAILED [ 68%] 783s tests/test_converter.py::test_simple_roundtrip PASSED [ 68%] 785s tests/test_converter.py::test_simple_roundtrip_tuple FAILED [ 69%] 786s tests/test_converter.py::test_simple_roundtrip_defaults PASSED [ 69%] 786s tests/test_converter.py::test_simple_roundtrip_defaults_tuple PASSED [ 69%] 787s tests/test_converter.py::test_simple_roundtrip_with_extra_keys_forbidden PASSED [ 69%] 789s tests/test_converter.py::test_forbid_extra_keys PASSED [ 69%] 789s tests/test_converter.py::test_forbid_extra_keys_defaults PASSED [ 69%] 789s tests/test_converter.py::test_forbid_extra_keys_nested_override PASSED [ 70%] 868s tests/test_converter.py::test_nested_roundtrip FAILED [ 70%] 1015s tests/test_converter.py::test_nested_roundtrip_tuple FAILED [ 70%] 1127s tests/test_converter.py::test_union_field_roundtrip FAILED [ 70%] 1172s tests/test_converter.py::test_310_union_field_roundtrip FAILED [ 70%] 1176s tests/test_converter.py::test_optional_field_roundtrip FAILED [ 70%] 1178s tests/test_converter.py::test_310_optional_field_roundtrip FAILED [ 71%] 1180s tests/test_converter.py::test_omit_default_roundtrip PASSED [ 71%] 1180s tests/test_converter.py::test_dict_roundtrip_with_alias PASSED [ 71%] 1181s tests/test_converter.py::test_type_overrides PASSED [ 71%] 1181s tests/test_converter.py::test_calling_back PASSED [ 71%] 1181s tests/test_converter.py::test_overriding_generated_unstructure PASSED [ 71%] 1181s tests/test_converter.py::test_overriding_generated_unstructure_hook_func PASSED [ 72%] 1181s tests/test_converter.py::test_overriding_generated_structure PASSED [ 72%] 1181s tests/test_converter.py::test_overriding_generated_structure_hook_func PASSED [ 72%] 1185s tests/test_converter.py::test_seq_of_simple_classes_unstructure PASSED [ 72%] 1185s tests/test_converter.py::test_seq_of_bare_classes_structure PASSED [ 72%] 1185s tests/test_converter.py::test_annotated_attrs PASSED [ 72%] 1185s tests/test_converter.py::test_annotated_with_typing_extensions_attrs PASSED [ 73%] 1185s tests/test_copy.py::test_copy_converter PASSED [ 73%] 1185s tests/test_copy.py::test_detailed_validation PASSED [ 73%] 1185s tests/test_copy.py::test_col_overrides PASSED [ 73%] 1185s tests/test_disambiguators.py::test_edge_errors PASSED [ 73%] 1185s tests/test_disambiguators.py::test_fallback PASSED [ 73%] 1199s tests/test_disambiguators.py::test_disambiguation PASSED [ 74%] 1199s tests/test_disambiguators.py::test_disambiguate_from_discriminated_enum PASSED [ 74%] 1199s tests/test_disambiguators.py::test_default_no_literals PASSED [ 74%] 1199s tests/test_final.py::test_unstructure_final[True] PASSED [ 74%] 1199s tests/test_final.py::test_unstructure_final[False] PASSED [ 74%] 1199s tests/test_final.py::test_structure_final[True] PASSED [ 75%] 1199s tests/test_final.py::test_structure_final[False] PASSED [ 75%] 1199s tests/test_final.py::test_unstructure_bare_final[True] PASSED [ 75%] 1199s tests/test_final.py::test_unstructure_bare_final[False] PASSED [ 75%] 1199s tests/test_final.py::test_structure_bare_final[True] PASSED [ 75%] 1199s tests/test_final.py::test_structure_bare_final[False] PASSED [ 75%] 1199s tests/test_function_dispatch.py::test_function_dispatch PASSED [ 76%] 1199s tests/test_function_dispatch.py::test_function_clears_cache_after_function_added PASSED [ 76%] 1199s tests/test_gen.py::test_structure_linecache PASSED [ 76%] 1199s tests/test_gen.py::test_unstructure_linecache PASSED [ 76%] 1199s tests/test_gen.py::test_no_linecache PASSED [ 76%] 1199s tests/test_gen.py::test_linecache_dedup PASSED [ 76%] 1201s tests/test_gen_dict.py::test_unmodified_generated_unstructuring PASSED [ 77%] 1204s tests/test_gen_dict.py::test_nodefs_generated_unstructuring PASSED [ 77%] 1207s tests/test_gen_dict.py::test_nodefs_generated_unstructuring_cl PASSED [ 77%] 1209s tests/test_gen_dict.py::test_individual_overrides PASSED [ 77%] 1212s tests/test_gen_dict.py::test_unmodified_generated_structuring PASSED [ 77%] 1225s tests/test_gen_dict.py::test_renaming FAILED [ 77%] 1225s tests/test_gen_dict.py::test_renaming_forbid_extra_keys PASSED [ 78%] 1225s tests/test_gen_dict.py::test_omitting_structure[True] PASSED [ 78%] 1225s tests/test_gen_dict.py::test_omitting_structure[False] PASSED [ 78%] 1225s tests/test_gen_dict.py::test_type_names_with_quotes PASSED [ 78%] 1225s tests/test_gen_dict.py::test_forbid_extra_keys_from_converter PASSED [ 78%] 1225s tests/test_gen_dict.py::test_forbid_extra_keys_from_baseconverter PASSED [ 78%] 1225s tests/test_gen_dict_563.py::test_roundtrip PASSED [ 79%] 1225s tests/test_gen_dict_563.py::test_roundtrip_dc PASSED [ 79%] 1225s tests/test_generics.py::test_deep_copy PASSED [ 79%] 1225s tests/test_generics.py::test_structure_generics_with_cols[True-int-result0] PASSED [ 79%] 1225s tests/test_generics.py::test_structure_generics_with_cols[True-str-result1] PASSED [ 79%] 1225s tests/test_generics.py::test_structure_generics_with_cols[False-int-result0] PASSED [ 79%] 1225s tests/test_generics.py::test_structure_generics_with_cols[False-str-result1] PASSED [ 80%] 1225s tests/test_generics.py::test_39_structure_generics_with_cols[int-result0] PASSED [ 80%] 1225s tests/test_generics.py::test_39_structure_generics_with_cols[str-result1] PASSED [ 80%] 1225s tests/test_generics.py::test_structure_nested_generics_with_cols[int-result0] PASSED [ 80%] 1225s tests/test_generics.py::test_structure_nested_generics_with_cols[int-result1] PASSED [ 80%] 1225s tests/test_generics.py::test_unstructure_generic_attrs[True] PASSED [ 80%] 1225s tests/test_generics.py::test_unstructure_generic_attrs[False] PASSED [ 81%] 1225s tests/test_generics.py::test_unstructure_optional[True] PASSED [ 81%] 1225s tests/test_generics.py::test_unstructure_optional[False] PASSED [ 81%] 1225s tests/test_generics.py::test_unstructure_deeply_nested_generics[True] PASSED [ 81%] 1225s tests/test_generics.py::test_unstructure_deeply_nested_generics[False] PASSED [ 81%] 1225s tests/test_generics.py::test_unstructure_deeply_nested_generics_list[True] PASSED [ 81%] 1225s tests/test_generics.py::test_unstructure_deeply_nested_generics_list[False] PASSED [ 82%] 1225s tests/test_generics.py::test_unstructure_protocol[True] PASSED [ 82%] 1225s tests/test_generics.py::test_unstructure_protocol[False] PASSED [ 82%] 1225s tests/test_generics.py::test_roundtrip_generic_with_union PASSED [ 82%] 1225s tests/test_generics.py::test_generate_typeddict_mapping PASSED [ 82%] 1225s tests/test_generics_604.py::test_unstructure_optional[True] PASSED [ 82%] 1225s tests/test_generics_604.py::test_unstructure_optional[False] PASSED [ 83%] 1225s tests/test_multistrategy_dispatch.py::test_multistrategy_dispatch_register_cls PASSED [ 83%] 1225s tests/test_multistrategy_dispatch.py::test_multistrategy_dispatch_register_func PASSED [ 83%] 1225s tests/test_multistrategy_dispatch.py::test_multistrategy_dispatch_conflict_class_wins PASSED [ 83%] 1225s tests/test_newtypes.py::test_newtype_structure_hooks[True] PASSED [ 83%] 1225s tests/test_newtypes.py::test_newtype_structure_hooks[False] PASSED [ 83%] 1225s tests/test_newtypes.py::test_newtype_unstructure_hooks[True] PASSED [ 84%] 1225s tests/test_newtypes.py::test_newtype_unstructure_hooks[False] PASSED [ 84%] 1225s tests/test_optionals.py::test_newtype_optionals[True] PASSED [ 84%] 1225s tests/test_optionals.py::test_newtype_optionals[False] PASSED [ 84%] 1225s tests/test_optionals.py::test_newtype_modern_optionals[True] PASSED [ 84%] 1225s tests/test_optionals.py::test_newtype_modern_optionals[False] PASSED [ 84%] 1225s tests/test_recursive.py::test_simple_recursive PASSED [ 85%] 1225s tests/test_structure.py::test_structuring_primitives PASSED [ 85%] 1226s tests/test_structure.py::test_structuring_seqs PASSED [ 85%] 1226s tests/test_structure.py::test_structuring_seqs_to_deque PASSED [ 85%] 1226s tests/test_structure.py::test_structuring_sets PASSED [ 85%] 1227s tests/test_structure.py::test_stringifying_sets PASSED [ 85%] 1227s tests/test_structure.py::test_structuring_hetero_tuples PASSED [ 86%] 1227s tests/test_structure.py::test_stringifying_tuples PASSED [ 86%] 1228s tests/test_structure.py::test_structuring_dicts PASSED [ 86%] 1229s tests/test_structure.py::test_structuring_dicts_opts PASSED [ 86%] 1229s tests/test_structure.py::test_stringifying_dicts PASSED [ 86%] 1229s tests/test_structure.py::test_structuring_optional_primitives PASSED [ 86%] 1230s tests/test_structure.py::test_structuring_lists_of_opt PASSED [ 87%] 1230s tests/test_structure.py::test_stringifying_lists_of_opt PASSED [ 87%] 1230s tests/test_structure.py::test_structuring_primitive_union_hook PASSED [ 87%] 1230s tests/test_structure.py::test_structure_hook_func PASSED [ 87%] 1231s tests/test_structure.py::test_structuring_enums PASSED [ 87%] 1231s tests/test_structure.py::test_structuring_unsupported PASSED [ 88%] 1231s tests/test_structure.py::test_subclass_registration_is_honored PASSED [ 88%] 1231s tests/test_structure.py::test_structure_union_edge_case PASSED [ 88%] 1232s tests/test_structure_attrs.py::test_structure_simple_from_dict PASSED [ 88%] 1233s tests/test_structure_attrs.py::test_structure_simple_from_dict_default PASSED [ 88%] 1234s tests/test_structure_attrs.py::test_roundtrip PASSED [ 88%] 1235s tests/test_structure_attrs.py::test_structure_tuple PASSED [ 89%] 1237s tests/test_structure_attrs.py::test_structure_union PASSED [ 89%] 1239s tests/test_structure_attrs.py::test_structure_union_none PASSED [ 89%] 1240s tests/test_structure_attrs.py::test_structure_union_explicit PASSED [ 89%] 1240s tests/test_structure_attrs.py::test_structure_literal[BaseConverter] PASSED [ 89%] 1240s tests/test_structure_attrs.py::test_structure_literal[Converter] PASSED [ 89%] 1240s tests/test_structure_attrs.py::test_structure_literal_enum[BaseConverter] PASSED [ 90%] 1240s tests/test_structure_attrs.py::test_structure_literal_enum[Converter] PASSED [ 90%] 1240s tests/test_structure_attrs.py::test_structure_literal_multiple[BaseConverter] PASSED [ 90%] 1240s tests/test_structure_attrs.py::test_structure_literal_multiple[Converter] PASSED [ 90%] 1240s tests/test_structure_attrs.py::test_structure_literal_error[BaseConverter] PASSED [ 90%] 1240s tests/test_structure_attrs.py::test_structure_literal_error[Converter] PASSED [ 90%] 1240s tests/test_structure_attrs.py::test_structure_literal_multiple_error[BaseConverter] PASSED [ 91%] 1240s tests/test_structure_attrs.py::test_structure_literal_multiple_error[Converter] PASSED [ 91%] 1240s tests/test_structure_attrs.py::test_structure_fallback_to_attrib_converters[BaseConverter] PASSED [ 91%] 1240s tests/test_structure_attrs.py::test_structure_fallback_to_attrib_converters[Converter] PASSED [ 91%] 1240s tests/test_structure_attrs.py::test_structure_prefers_attrib_converters[BaseConverter] PASSED [ 91%] 1240s tests/test_structure_attrs.py::test_structure_prefers_attrib_converters[Converter] PASSED [ 91%] 1240s tests/test_structure_attrs.py::test_structure_multitier_discriminator_union[BaseConverter] PASSED [ 92%] 1240s tests/test_structure_attrs.py::test_structure_multitier_discriminator_union[Converter] PASSED [ 92%] 1241s tests/test_typeddicts.py::test_simple_roundtrip PASSED [ 92%] 1242s tests/test_typeddicts.py::test_simple_nontotal PASSED [ 92%] 1243s tests/test_typeddicts.py::test_int_override PASSED [ 92%] 1244s tests/test_typeddicts.py::test_extra_keys PASSED [ 92%] 1245s tests/test_typeddicts.py::test_generics PASSED [ 93%] 1245s tests/test_typeddicts.py::test_not_required PASSED [ 93%] 1246s tests/test_typeddicts.py::test_required PASSED [ 93%] 1247s tests/test_typeddicts.py::test_omit PASSED [ 93%] 1248s tests/test_typeddicts.py::test_rename PASSED [ 93%] 1248s tests/test_typeddicts.py::test_forbid_extra_keys PASSED [ 93%] 1248s tests/test_typeddicts.py::test_recursive_generation PASSED [ 94%] 1248s tests/test_typeddicts.py::test_forwardref[True] PASSED [ 94%] 1248s tests/test_typeddicts.py::test_forwardref[False] PASSED [ 94%] 1248s tests/test_typeddicts.py::test_forbid_extra_keys_from_converter PASSED [ 94%] 1249s tests/test_typeddicts.py::test_forbid_extra_keys_from_baseconverter PASSED [ 94%] 1249s tests/test_unions.py::test_custom_union_toplevel_roundtrip[BaseConverter] PASSED [ 94%] 1249s tests/test_unions.py::test_custom_union_toplevel_roundtrip[Converter] PASSED [ 95%] 1249s tests/test_unions.py::test_310_custom_union_toplevel_roundtrip[BaseConverter] PASSED [ 95%] 1249s tests/test_unions.py::test_310_custom_union_toplevel_roundtrip[Converter] PASSED [ 95%] 1249s tests/test_unions.py::test_custom_union_clsfield_roundtrip[BaseConverter] PASSED [ 95%] 1249s tests/test_unions.py::test_custom_union_clsfield_roundtrip[Converter] PASSED [ 95%] 1249s tests/test_unstructure.py::test_seq_unstructure PASSED [ 95%] 1249s tests/test_unstructure.py::test_set_unstructure PASSED [ 96%] 1249s tests/test_unstructure.py::test_mapping_unstructure PASSED [ 96%] 1251s tests/test_unstructure.py::test_enum_unstructure PASSED [ 96%] 1254s tests/test_unstructure.py::test_attrs_asdict_unstructure PASSED [ 96%] 1257s tests/test_unstructure.py::test_attrs_astuple_unstructure PASSED [ 96%] 1258s tests/test_unstructure.py::test_unstructure_hooks PASSED [ 96%] 1263s tests/test_unstructure.py::test_seq_of_simple_classes_unstructure PASSED [ 97%] 1263s tests/test_v.py::test_attribute_errors PASSED [ 97%] 1263s tests/test_v.py::test_class_errors PASSED [ 97%] 1263s tests/test_v.py::test_sequence_errors PASSED [ 97%] 1263s tests/test_v.py::test_mapping_errors PASSED [ 97%] 1263s tests/test_v.py::test_custom_error_fn PASSED [ 97%] 1263s tests/test_v.py::test_custom_error_fn_nested PASSED [ 98%] 1263s tests/test_v.py::test_typeddict_attribute_errors PASSED [ 98%] 1263s tests/test_validation.py::test_class_validation PASSED [ 98%] 1263s tests/test_validation.py::test_external_class_validation PASSED [ 98%] 1263s tests/test_validation.py::test_list_validation PASSED [ 98%] 1263s tests/test_validation.py::test_mapping_validation PASSED [ 98%] 1263s tests/test_validation.py::test_counter_validation PASSED [ 99%] 1263s tests/test_validation.py::test_set_validation PASSED [ 99%] 1263s tests/test_validation.py::test_frozenset_validation PASSED [ 99%] 1263s tests/test_validation.py::test_homo_tuple_validation PASSED [ 99%] 1263s tests/test_validation.py::test_hetero_tuple_validation PASSED [ 99%] 1263s tests/test_validation.py::test_notes_pickling PASSED [100%] 1263s 1263s =================================== FAILURES =================================== 1263s ____________________________ test_nested_roundtrip _____________________________ 1263s 1263s @given(nested_typed_classes(newtypes=False)) 1263s > def test_nested_roundtrip(cls_and_vals): 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca7547f100> 1263s 1263s tests/test_baseconverter.py:46: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cls_and_vals = (, (nan,), {}) 1263s 1263s @given(nested_typed_classes(newtypes=False)) 1263s def test_nested_roundtrip(cls_and_vals): 1263s """ 1263s Nested classes with metadata can be unstructured and restructured. 1263s """ 1263s converter = BaseConverter() 1263s cl, vals, kwargs = cls_and_vals 1263s # Vals are a tuple, convert into a dictionary. 1263s inst = cl(*vals, **kwargs) 1263s > assert inst == converter.structure(converter.unstructure(inst), cl) 1263s E AssertionError: assert HypClass(a=nan) == HypClass(a=nan) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: nan != nan 1263s E Falsifying example: test_nested_roundtrip( 1263s E cls_and_vals=(tests.typed.HypClass, (nan,), {}), 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s cl = 1263s cls_and_vals = (, (nan,), {}) 1263s converter = 1263s inst = HypClass(a=nan) 1263s kwargs = {} 1263s vals = (nan,) 1263s 1263s tests/test_baseconverter.py:54: AssertionError 1263s _________________________ test_nested_roundtrip_tuple __________________________ 1263s 1263s @given(nested_typed_classes(kw_only=False, newtypes=False)) 1263s > def test_nested_roundtrip_tuple(cls_and_vals): 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca7547f560> 1263s 1263s tests/test_baseconverter.py:58: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cls_and_vals = (, (nan, [HypClass()]), {}) 1263s 1263s @given(nested_typed_classes(kw_only=False, newtypes=False)) 1263s def test_nested_roundtrip_tuple(cls_and_vals): 1263s """ 1263s Nested classes with metadata can be unstructured and restructured. 1263s """ 1263s converter = BaseConverter(unstruct_strat=UnstructureStrategy.AS_TUPLE) 1263s cl, vals, kwargs = cls_and_vals 1263s assert not kwargs 1263s # Vals are a tuple, convert into a dictionary. 1263s inst = cl(*vals) 1263s > assert inst == converter.structure(converter.unstructure(inst), cl) 1263s E AssertionError: assert HypClass(a=na...=[HypClass()]) == HypClass(a=na...=[HypClass()]) 1263s E 1263s E Omitting 1 identical items, use -vv to show 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: nan != nan 1263s E Falsifying example: test_nested_roundtrip_tuple( 1263s E cls_and_vals=(tests.typed.HypClass, (nan, [HypClass()]), {}), 1263s E ) 1263s 1263s cl = 1263s cls_and_vals = (, (nan, [HypClass()]), {}) 1263s converter = 1263s inst = HypClass(a=nan, _b=[HypClass()]) 1263s kwargs = {} 1263s vals = (nan, [HypClass()]) 1263s 1263s tests/test_baseconverter.py:67: AssertionError 1263s __________________________ test_union_field_roundtrip __________________________ 1263s 1263s @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s > @given( 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s unstructure_strats, 1263s ) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca7547fb00> 1263s 1263s tests/test_baseconverter.py:71: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals_a = (, (('', '', ''), nan, frozenset(), ('', '', '')), {'g': 0, 'i': '', 'j': {}}) 1263s cl_and_vals_b = (, (None,), {}) 1263s strat = 1263s 1263s @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s @given( 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s unstructure_strats, 1263s ) 1263s def test_union_field_roundtrip(cl_and_vals_a, cl_and_vals_b, strat): 1263s """ 1263s Classes with union fields can be unstructured and structured. 1263s """ 1263s converter = BaseConverter(unstruct_strat=strat) 1263s cl_a, vals_a, kwargs_a = cl_and_vals_a 1263s assume(strat is UnstructureStrategy.AS_DICT or not kwargs_a) 1263s cl_b, vals_b, _ = cl_and_vals_b 1263s a_field_names = {a.name for a in fields(cl_a)} 1263s b_field_names = {a.name for a in fields(cl_b)} 1263s assume(a_field_names) 1263s assume(b_field_names) 1263s 1263s common_names = a_field_names & b_field_names 1263s assume(len(a_field_names) > len(common_names)) 1263s 1263s @define 1263s class C: 1263s a: Union[cl_a, cl_b] 1263s 1263s inst = C(a=cl_a(*vals_a, **kwargs_a)) 1263s 1263s if strat is UnstructureStrategy.AS_DICT: 1263s > assert inst == converter.structure(converter.unstructure(inst), C) 1263s E AssertionError: assert C(a=HypAttrsC..._h='', _j={})) == C(a=HypAttrsC..._h='', _j={})) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a=('', '', ''), _b=nan, _d=frozenset(), e=('', '', ''), g=0, _h='', _j={}) != HypAttrsClass(a=('', '', ''), _b=nan, _d=frozenset(), e=('', '', ''), g=0, _h='', _j={}) 1263s E ... 1263s E 1263s E ...Full output truncated (6 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_b': _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='c', metadata={}), '_d': _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'e': _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_f', metadata={}), 'g': _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_h': _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='i', metadata={}), '_j': _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_union_field_roundtrip( 1263s E # The test always failed when commented parts were varied together. 1263s E cl_and_vals_a=(tests.typed.HypAttrsClass, 1263s E (('', '', ''), 1263s E struct.unpack('d', struct.pack('Q', 0x7ff8000000000001))[0], 1263s E frozenset(), 1263s E ('', '', '')), 1263s E {'g': 0, 'i': '', 'j': {}}), 1263s E cl_and_vals_b=(tests.typed.HypAttrsClass, 1263s E (None,), 1263s E {}), # or any other generated value 1263s E strat=UnstructureStrategy.AS_DICT, # or any other generated value 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s C = .C'> 1263s _ = {} 1263s a_field_names = {'_b', '_d', '_h', '_j', 'a', 'e', ...} 1263s b_field_names = {'a'} 1263s cl_a = 1263s cl_and_vals_a = (, (('', '', ''), nan, frozenset(), ('', '', '')), {'g': 0, 'i': '', 'j': {}}) 1263s cl_and_vals_b = (, (None,), {}) 1263s cl_b = 1263s common_names = {'a'} 1263s converter = 1263s inst = C(a=HypAttrsClass(a=('', '', ''), _b=nan, _d=frozenset(), e=('', '', ''), g=0, _h='', _j={})) 1263s kwargs_a = {'g': 0, 'i': '', 'j': {}} 1263s strat = 1263s vals_a = (('', '', ''), nan, frozenset(), ('', '', '')) 1263s vals_b = (None,) 1263s 1263s tests/test_baseconverter.py:99: AssertionError 1263s ________________________ test_310_union_field_roundtrip ________________________ 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s > @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca7547f9c0> 1263s 1263s tests/test_baseconverter.py:113: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals_a = (, (0, [], nan, frozenset(), frozenset()), {'_l': 0, 'i': 0, 'j': 0}) 1263s cl_and_vals_b = (, (None,), {}) 1263s strat = 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s @given( 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s unstructure_strats, 1263s ) 1263s def test_310_union_field_roundtrip(cl_and_vals_a, cl_and_vals_b, strat): 1263s """ 1263s Classes with union fields can be unstructured and structured. 1263s """ 1263s converter = BaseConverter(unstruct_strat=strat) 1263s cl_a, vals_a, kwargs_a = cl_and_vals_a 1263s cl_b, vals_b, _ = cl_and_vals_b 1263s assume(strat is UnstructureStrategy.AS_DICT or not kwargs_a) 1263s a_field_names = {a.name for a in fields(cl_a)} 1263s b_field_names = {a.name for a in fields(cl_b)} 1263s assume(a_field_names) 1263s assume(b_field_names) 1263s 1263s common_names = a_field_names & b_field_names 1263s assume(len(a_field_names) > len(common_names)) 1263s 1263s @define 1263s class C: 1263s a: cl_a | cl_b 1263s 1263s inst = C(a=cl_a(*vals_a, **kwargs_a)) 1263s 1263s if strat is UnstructureStrategy.AS_DICT: 1263s > assert inst == converter.structure(converter.unstructure(inst), C) 1263s E AssertionError: assert C(a=HypAttrsC...0, _j=0, k=0)) == C(a=HypAttrsC...0, _j=0, k=0)) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a=0, _b=[], _d=nan, e=frozenset(), g=frozenset(), _h=0, _j=0, k=0) != HypAttrsClass(a=0, _b=[], _d=nan, e=frozenset(), g=frozenset(), _h=0, _j=0, k=0) 1263s E ... 1263s E 1263s E ...Full output truncated (6 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=7, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_b': _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='c', metadata={}), '_d': _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'e': _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_f', metadata={}), 'g': _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_h': _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='i', metadata={}), '_j': _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'k': _CountingAttr(counter=7, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_l', metadata={})} 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_310_union_field_roundtrip( 1263s E # The test always failed when commented parts were varied together. 1263s E cl_and_vals_a=(tests.typed.HypAttrsClass, 1263s E (0, 1263s E [], 1263s E struct.unpack('d', struct.pack('Q', 0x7ff8000000000001))[0], 1263s E frozenset(), 1263s E frozenset()), 1263s E {'i': 0, 'j': 0, '_l': 0}), 1263s E cl_and_vals_b=(tests.typed.HypAttrsClass, 1263s E (None,), 1263s E {}), # or any other generated value 1263s E strat=UnstructureStrategy.AS_DICT, # or any other generated value 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s C = .C'> 1263s _ = {} 1263s a_field_names = {'_b', '_d', '_h', '_j', 'a', 'e', ...} 1263s b_field_names = {'a'} 1263s cl_a = 1263s cl_and_vals_a = (, (0, [], nan, frozenset(), frozenset()), {'_l': 0, 'i': 0, 'j': 0}) 1263s cl_and_vals_b = (, (None,), {}) 1263s cl_b = 1263s common_names = {'a'} 1263s converter = 1263s inst = C(a=HypAttrsClass(a=0, _b=[], _d=nan, e=frozenset(), g=frozenset(), _h=0, _j=0, k=0)) 1263s kwargs_a = {'_l': 0, 'i': 0, 'j': 0} 1263s strat = 1263s vals_a = (0, [], nan, frozenset(), frozenset()) 1263s vals_b = (None,) 1263s 1263s tests/test_baseconverter.py:142: AssertionError 1263s ______________________ test_310_optional_field_roundtrip _______________________ 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s > @given(simple_typed_classes(defaults=False, newtypes=False)) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75490540> 1263s 1263s tests/test_baseconverter.py:177: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals = (, ({}, nan), {}) 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s @given(simple_typed_classes(defaults=False, newtypes=False)) 1263s def test_310_optional_field_roundtrip(cl_and_vals): 1263s """ 1263s Classes with optional fields can be unstructured and structured. 1263s """ 1263s converter = BaseConverter() 1263s cl, vals, kwargs = cl_and_vals 1263s 1263s @define 1263s class C: 1263s a: cl | None 1263s 1263s inst = C(a=cl(*vals, **kwargs)) 1263s > assert inst == converter.structure(converter.unstructure(inst), C) 1263s E AssertionError: assert C(a=HypAttrsC...a={}, _b=nan)) == C(a=HypAttrsC...a={}, _b=nan)) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a={}, _b=nan) != HypAttrsClass(a={}, _b=nan) 1263s E ... 1263s E 1263s E ...Full output truncated (6 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_b': _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='c', metadata={})} 1263s E Falsifying example: test_310_optional_field_roundtrip( 1263s E cl_and_vals=(tests.typed.HypAttrsClass, 1263s E ({}, struct.unpack('d', struct.pack('Q', 0x7ff8000000000001))[0]), 1263s E {}), 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s C = .C'> 1263s cl = 1263s cl_and_vals = (, ({}, nan), {}) 1263s converter = 1263s inst = C(a=HypAttrsClass(a={}, _b=nan)) 1263s kwargs = {} 1263s vals = ({}, nan) 1263s 1263s tests/test_baseconverter.py:190: AssertionError 1263s _________________________ test_simple_roundtrip_tuple __________________________ 1263s 1263s @given( 1263s > simple_typed_classes(kw_only=False, newtypes=False) 1263s | simple_typed_dataclasses(newtypes=False), 1263s booleans(), 1263s ) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75492020> 1263s 1263s tests/test_converter.py:54: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cls_and_vals = (, (nan,), {}), dv = False 1263s 1263s @given( 1263s simple_typed_classes(kw_only=False, newtypes=False) 1263s | simple_typed_dataclasses(newtypes=False), 1263s booleans(), 1263s ) 1263s def test_simple_roundtrip_tuple(cls_and_vals, dv: bool): 1263s """ 1263s Simple classes with metadata can be unstructured and restructured. 1263s """ 1263s converter = Converter( 1263s unstruct_strat=UnstructureStrategy.AS_TUPLE, detailed_validation=dv 1263s ) 1263s cl, vals, _ = cls_and_vals 1263s inst = cl(*vals) 1263s unstructured = converter.unstructure(inst) 1263s assert "Hyp" not in repr(unstructured) 1263s > assert inst == converter.structure(unstructured, cl) 1263s E AssertionError: assert HypAttrsClass(a=nan) == HypAttrsClass(a=nan) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: nan != nan 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_simple_roundtrip_tuple( 1263s E cls_and_vals=(tests.typed.HypAttrsClass, (nan,), {}), 1263s E dv=False, # or any other generated value 1263s E ) 1263s 1263s _ = {} 1263s cl = 1263s cls_and_vals = (, (nan,), {}) 1263s converter = 1263s dv = False 1263s inst = HypAttrsClass(a=nan) 1263s unstructured = (nan,) 1263s vals = (nan,) 1263s 1263s tests/test_converter.py:69: AssertionError 1263s ____________________________ test_nested_roundtrip _____________________________ 1263s 1263s @given(nested_typed_classes(defaults=True, min_attrs=1), booleans()) 1263s > def test_nested_roundtrip(cls_and_vals, omit_if_default): 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75493240> 1263s 1263s tests/test_converter.py:203: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cls_and_vals = (, ('', nan, [HypClass(a=None)]), {}) 1263s omit_if_default = False 1263s 1263s @given(nested_typed_classes(defaults=True, min_attrs=1), booleans()) 1263s def test_nested_roundtrip(cls_and_vals, omit_if_default): 1263s """ 1263s Nested classes with metadata can be unstructured and restructured. 1263s """ 1263s converter = Converter(omit_if_default=omit_if_default) 1263s cl, vals, kwargs = cls_and_vals 1263s # Vals are a tuple, convert into a dictionary. 1263s inst = cl(*vals, **kwargs) 1263s unstructured = converter.unstructure(inst) 1263s > assert inst == converter.structure(unstructured, cl) 1263s E AssertionError: assert HypClass(a=''...lass(a=None)]) == HypClass(a=''...lass(a=None)]) 1263s E 1263s E Omitting 2 identical items, use -vv to show 1263s E Differing attributes: 1263s E ['_b'] 1263s E 1263s E Drill down into differing attribute _b: 1263s E _b: nan != nan 1263s E Falsifying example: test_nested_roundtrip( 1263s E cls_and_vals=(tests.typed.HypClass, ('', nan, [HypClass(a=None)]), {}), 1263s E omit_if_default=False, # or any other generated value 1263s E ) 1263s 1263s cl = 1263s cls_and_vals = (, ('', nan, [HypClass(a=None)]), {}) 1263s converter = 1263s inst = HypClass(a='', _b=nan, c=[HypClass(a=None)]) 1263s kwargs = {} 1263s omit_if_default = False 1263s unstructured = {'_b': nan, 'a': '', 'c': [{'a': None}]} 1263s vals = ('', nan, [HypClass(a=None)]) 1263s 1263s tests/test_converter.py:212: AssertionError 1263s _________________________ test_nested_roundtrip_tuple __________________________ 1263s 1263s @given( 1263s > nested_typed_classes(defaults=True, min_attrs=1, kw_only=False, newtypes=False), 1263s booleans(), 1263s ) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca754936a0> 1263s 1263s tests/test_converter.py:216: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cls_and_vals = (, (nan, [HypClass(a=None)]), {}) 1263s omit_if_default = False 1263s 1263s @given( 1263s nested_typed_classes(defaults=True, min_attrs=1, kw_only=False, newtypes=False), 1263s booleans(), 1263s ) 1263s def test_nested_roundtrip_tuple(cls_and_vals, omit_if_default: bool): 1263s """ 1263s Nested classes with metadata can be unstructured and restructured. 1263s """ 1263s converter = Converter( 1263s unstruct_strat=UnstructureStrategy.AS_TUPLE, omit_if_default=omit_if_default 1263s ) 1263s cl, vals, _ = cls_and_vals 1263s # Vals are a tuple, convert into a dictionary. 1263s inst = cl(*vals) 1263s unstructured = converter.unstructure(inst) 1263s > assert inst == converter.structure(unstructured, cl) 1263s E AssertionError: assert HypClass(a=na...lass(a=None)]) == HypClass(a=na...lass(a=None)]) 1263s E 1263s E Omitting 1 identical items, use -vv to show 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: nan != nan 1263s E Falsifying example: test_nested_roundtrip_tuple( 1263s E cls_and_vals=(tests.typed.HypClass, (nan, [HypClass(a=None)]), {}), 1263s E omit_if_default=False, # or any other generated value 1263s E ) 1263s 1263s _ = {} 1263s cl = 1263s cls_and_vals = (, (nan, [HypClass(a=None)]), {}) 1263s converter = 1263s inst = HypClass(a=nan, _b=[HypClass(a=None)]) 1263s omit_if_default = False 1263s unstructured = (nan, [(None,)]) 1263s vals = (nan, [HypClass(a=None)]) 1263s 1263s tests/test_converter.py:230: AssertionError 1263s __________________________ test_union_field_roundtrip __________________________ 1263s 1263s @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s > @given( 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s unstructure_strats, 1263s ) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75493ba0> 1263s 1263s tests/test_converter.py:234: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals_a = (, (0, 0, 0, 0, 0, 0, ...), {'ad': 0, 'ae': 0, 'ag': 0, 'ah': 0, ...}) 1263s cl_and_vals_b = (, (None,), {}) 1263s strat = 1263s 1263s @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s @given( 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s unstructure_strats, 1263s ) 1263s def test_union_field_roundtrip(cl_and_vals_a, cl_and_vals_b, strat): 1263s """ 1263s Classes with union fields can be unstructured and structured. 1263s """ 1263s converter = Converter(unstruct_strat=strat) 1263s cl_a, vals_a, kwargs_a = cl_and_vals_a 1263s cl_b, _, _ = cl_and_vals_b 1263s assume(strat is UnstructureStrategy.AS_DICT or not kwargs_a) 1263s a_field_names = {a.name for a in fields(cl_a)} 1263s b_field_names = {a.name for a in fields(cl_b)} 1263s assume(a_field_names) 1263s assume(b_field_names) 1263s 1263s common_names = a_field_names & b_field_names 1263s assume(len(a_field_names) > len(common_names)) 1263s 1263s @define 1263s class C: 1263s a: Union[cl_a, cl_b] 1263s 1263s inst = C(a=cl_a(*vals_a, **kwargs_a)) 1263s 1263s if strat is UnstructureStrategy.AS_DICT: 1263s unstructured = converter.unstructure(inst) 1263s > assert inst == converter.structure(converter.unstructure(unstructured), C) 1263s E AssertionError: assert C(a=HypAttrsC...aq=[], ar=[])) == C(a=HypAttrsC...aq=[], ar=[])) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a=0, _b=0, _d=0, e=0, g=0, _h=0, _j='', k='', m='', _n='', _p=frozenset(), q=('', '', ''), s=nan, _t=0, _v=0, w=('', '', ''), y={}, _z={}, ab={}, ac=0, ae=0, af=0, ah=0, ai='', ak='', al='', an=frozenset(), ao=[], aq=[], ar=[]) != HypAttrsClass(a=0, _b=0, _d=0, e=0, g=0, _h=0, _j='', k='', m='', _n='', _p=frozenset(), q=('', '', ''), s=nan, _t=0, _v=0, w=('', '', ''), y={}, _z={}, ab={}, ac=0, ae=0, af=0, ah=0, ai='', ak='', al='', an=frozenset(), ao=[], aq=[], ar=[]) 1263s E ... 1263s E 1263s E ...Full output truncated (6 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=7, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=8, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=9, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=10, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=11, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=12, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=13, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=14, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=15, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=16, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=17, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=18, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=19, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=20, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=21, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=22, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=23, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=24, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=25, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=26, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=27, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=28, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=29, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_b': _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='c', metadata={}), '_d': _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'e': _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_f', metadata={}), 'g': _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_h': _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='i', metadata={}), '_j': _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'k': _CountingAttr(counter=7, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_l', metadata={}), 'm': _CountingAttr(counter=8, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_n': _CountingAttr(counter=9, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='o', metadata={}), '_p': _CountingAttr(counter=10, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'q': _CountingAttr(counter=11, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_r', metadata={}), 's': _CountingAttr(counter=12, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_t': _CountingAttr(counter=13, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='u', metadata={}), '_v': _CountingAttr(counter=14, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'w': _CountingAttr(counter=15, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_x', metadata={}), 'y': _CountingAttr(counter=16, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_z': _CountingAttr(counter=17, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='aa', metadata={}), 'ab': _CountingAttr(counter=18, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'ac': _CountingAttr(counter=19, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='ad', metadata={}), 'ae': _CountingAttr(counter=20, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'af': _CountingAttr(counter=21, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='ag', metadata={}), 'ah': _CountingAttr(counter=22, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'ai': _CountingAttr(counter=23, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='aj', metadata={}), 'ak': _CountingAttr(counter=24, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'al': _CountingAttr(counter=25, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='am', metadata={}), 'an': _CountingAttr(counter=26, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'ao': _CountingAttr(counter=27, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='ap', metadata={}), 'aq': _CountingAttr(counter=28, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'ar': _CountingAttr(counter=29, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='at', metadata={})} 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_union_field_roundtrip( 1263s E cl_and_vals_a=(tests.typed.HypAttrsClass, 1263s E (0, 1263s E 0, 1263s E 0, 1263s E 0, 1263s E 0, 1263s E 0, 1263s E '', 1263s E '', 1263s E '', 1263s E '', 1263s E frozenset(), 1263s E ('', '', ''), 1263s E struct.unpack('d', struct.pack('Q', 0x7ff8000000000001))[0], 1263s E 0, 1263s E 0, 1263s E ('', '', ''), 1263s E {}, 1263s E {}, 1263s E {}), 1263s E {'ad': 0, 1263s E 'ae': 0, 1263s E 'ag': 0, 1263s E 'ah': 0, 1263s E 'aj': '', 1263s E 'ak': '', 1263s E 'am': '', 1263s E 'an': frozenset(), 1263s E 'ap': [], 1263s E 'aq': [], 1263s E 'at': []}), 1263s E cl_and_vals_b=(tests.typed.HypAttrsClass, (None,), {}), 1263s E strat=UnstructureStrategy.AS_DICT, 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s C = .C'> 1263s _ = {} 1263s a_field_names = {'_b', '_d', '_h', '_j', '_n', '_p', ...} 1263s b_field_names = {'a'} 1263s cl_a = 1263s cl_and_vals_a = (, (0, 0, 0, 0, 0, 0, ...), {'ad': 0, 'ae': 0, 'ag': 0, 'ah': 0, ...}) 1263s cl_and_vals_b = (, (None,), {}) 1263s cl_b = 1263s common_names = {'a'} 1263s converter = 1263s inst = C(a=HypAttrsClass(a=0, _b=0, _d=0, e=0, g=0, _h=0, _j='', k='', m='', _n='', _p=frozenset(), q=('', '', ''), s=nan, _t... w=('', '', ''), y={}, _z={}, ab={}, ac=0, ae=0, af=0, ah=0, ai='', ak='', al='', an=frozenset(), ao=[], aq=[], ar=[])) 1263s kwargs_a = {'ad': 0, 'ae': 0, 'ag': 0, 'ah': 0, ...} 1263s strat = 1263s unstructured = {'a': {'_b': 0, '_d': 0, '_h': 0, '_j': '', ...}} 1263s vals_a = (0, 0, 0, 0, 0, 0, ...) 1263s 1263s tests/test_converter.py:263: AssertionError 1263s ________________________ test_310_union_field_roundtrip ________________________ 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s > @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75493a60> 1263s 1263s tests/test_converter.py:278: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals_a = (, (0, 0, frozenset(), frozenset(), nan, {}, ...), {'_l': 0, 'm': 0, 'o': {}, 'p': {}}) 1263s cl_and_vals_b = (, (None,), {}) 1263s strat = 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s @settings(suppress_health_check=[HealthCheck.filter_too_much, HealthCheck.too_slow]) 1263s @given( 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s simple_typed_classes(defaults=False, newtypes=False), 1263s unstructure_strats, 1263s ) 1263s def test_310_union_field_roundtrip(cl_and_vals_a, cl_and_vals_b, strat): 1263s """ 1263s Classes with union fields can be unstructured and structured. 1263s """ 1263s converter = Converter(unstruct_strat=strat) 1263s cl_a, vals_a, kwargs_a = cl_and_vals_a 1263s cl_b, _, _ = cl_and_vals_b 1263s assume(strat is UnstructureStrategy.AS_DICT or not kwargs_a) 1263s a_field_names = {a.name for a in fields(cl_a)} 1263s b_field_names = {a.name for a in fields(cl_b)} 1263s assume(a_field_names) 1263s assume(b_field_names) 1263s 1263s common_names = a_field_names & b_field_names 1263s assume(len(a_field_names) > len(common_names)) 1263s 1263s @define 1263s class C: 1263s a: cl_a | cl_b 1263s 1263s inst = C(a=cl_a(*vals_a, **kwargs_a)) 1263s 1263s if strat is UnstructureStrategy.AS_DICT: 1263s unstructured = converter.unstructure(inst) 1263s > assert inst == converter.structure(converter.unstructure(unstructured), C) 1263s E AssertionError: assert C(a=HypAttrsC..._n={}, _p={})) == C(a=HypAttrsC..._n={}, _p={})) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a=0, _b=0, _d=frozenset(), e=frozenset(), g=nan, _h={}, _j=0, k=0, m=0, _n={}, _p={}) != HypAttrsClass(a=0, _b=0, _d=frozenset(), e=frozenset(), g=nan, _h={}, _j=0, k=0, m=0, _n={}, _p={}) 1263s E ... 1263s E 1263s E ...Full output truncated (6 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=7, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=8, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=9, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=10, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_b': _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='c', metadata={}), '_d': _CountingAttr(counter=2, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'e': _CountingAttr(counter=3, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_f', metadata={}), 'g': _CountingAttr(counter=4, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_h': _CountingAttr(counter=5, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='i', metadata={}), '_j': _CountingAttr(counter=6, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), 'k': _CountingAttr(counter=7, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='_l', metadata={}), 'm': _CountingAttr(counter=8, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_n': _CountingAttr(counter=9, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='o', metadata={}), '_p': _CountingAttr(counter=10, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_310_union_field_roundtrip( 1263s E # The test always failed when commented parts were varied together. 1263s E cl_and_vals_a=(tests.typed.HypAttrsClass, 1263s E (0, 0, frozenset(), frozenset(), nan, {}, 0), 1263s E {'_l': 0, 'm': 0, 'o': {}, 'p': {}}), 1263s E cl_and_vals_b=(tests.typed.HypAttrsClass, 1263s E (None,), 1263s E {}), # or any other generated value 1263s E strat=UnstructureStrategy.AS_DICT, # or any other generated value 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s C = .C'> 1263s _ = {} 1263s a_field_names = {'_b', '_d', '_h', '_j', '_n', '_p', ...} 1263s b_field_names = {'a'} 1263s cl_a = 1263s cl_and_vals_a = (, (0, 0, frozenset(), frozenset(), nan, {}, ...), {'_l': 0, 'm': 0, 'o': {}, 'p': {}}) 1263s cl_and_vals_b = (, (None,), {}) 1263s cl_b = 1263s common_names = {'a'} 1263s converter = 1263s inst = C(a=HypAttrsClass(a=0, _b=0, _d=frozenset(), e=frozenset(), g=nan, _h={}, _j=0, k=0, m=0, _n={}, _p={})) 1263s kwargs_a = {'_l': 0, 'm': 0, 'o': {}, 'p': {}} 1263s strat = 1263s unstructured = {'a': {'_b': 0, '_d': frozenset(), '_h': {}, '_j': 0, ...}} 1263s vals_a = (0, 0, frozenset(), frozenset(), nan, {}, ...) 1263s 1263s tests/test_converter.py:308: AssertionError 1263s ________________________ test_optional_field_roundtrip _________________________ 1263s 1263s @given(simple_typed_classes(defaults=False)) 1263s > def test_optional_field_roundtrip(cl_and_vals): 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca754d2a20> 1263s 1263s tests/test_converter.py:323: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals = (, (nan,), {}) 1263s 1263s @given(simple_typed_classes(defaults=False)) 1263s def test_optional_field_roundtrip(cl_and_vals): 1263s """ 1263s Classes with optional fields can be unstructured and structured. 1263s """ 1263s converter = Converter() 1263s cl, vals, kwargs = cl_and_vals 1263s 1263s @define 1263s class C: 1263s a: Optional[cl] 1263s 1263s inst = C(a=cl(*vals, **kwargs)) 1263s > assert inst == converter.structure(converter.unstructure(inst), C) 1263s E AssertionError: assert C(a=HypAttrsClass(a=nan)) == C(a=HypAttrsClass(a=nan)) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a=nan) != HypAttrsClass(a=nan) 1263s E ... 1263s E 1263s E ...Full output truncated (5 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_optional_field_roundtrip( 1263s E cl_and_vals=(tests.typed.HypAttrsClass, (nan,), {}), 1263s E ) 1263s 1263s C = .C'> 1263s cl = 1263s cl_and_vals = (, (nan,), {}) 1263s converter = 1263s inst = C(a=HypAttrsClass(a=nan)) 1263s kwargs = {} 1263s vals = (nan,) 1263s 1263s tests/test_converter.py:335: AssertionError 1263s ______________________ test_310_optional_field_roundtrip _______________________ 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s > @given(simple_typed_classes(defaults=False)) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75544400> 1263s 1263s tests/test_converter.py:344: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals = (, (nan,), {}) 1263s 1263s @pytest.mark.skipif(not is_py310_plus, reason="3.10+ union syntax") 1263s @given(simple_typed_classes(defaults=False)) 1263s def test_310_optional_field_roundtrip(cl_and_vals): 1263s """ 1263s Classes with optional fields can be unstructured and structured. 1263s """ 1263s converter = Converter() 1263s cl, vals, kwargs = cl_and_vals 1263s 1263s @define 1263s class C: 1263s a: cl | None 1263s 1263s inst = C(a=cl(*vals, **kwargs)) 1263s > assert inst == converter.structure(converter.unstructure(inst), C) 1263s E AssertionError: assert C(a=HypAttrsClass(a=nan)) == C(a=HypAttrsClass(a=nan)) 1263s E 1263s E Differing attributes: 1263s E ['a'] 1263s E 1263s E Drill down into differing attribute a: 1263s E a: HypAttrsClass(a=nan) != HypAttrsClass(a=nan) 1263s E ... 1263s E 1263s E ...Full output truncated (5 lines hidden), use '-vv' to show 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})} 1263s E Falsifying example: test_310_optional_field_roundtrip( 1263s E cl_and_vals=(tests.typed.HypAttrsClass, (nan,), {}), 1263s E ) 1263s E Explanation: 1263s E These lines were always and only run by failing examples: 1263s E /usr/lib/python3/dist-packages/_pytest/_io/terminalwriter.py:250 1263s 1263s C = .C'> 1263s cl = 1263s cl_and_vals = (, (nan,), {}) 1263s converter = 1263s inst = C(a=HypAttrsClass(a=nan)) 1263s kwargs = {} 1263s vals = (nan,) 1263s 1263s tests/test_converter.py:357: AssertionError 1263s ________________________________ test_renaming _________________________________ 1263s 1263s @given( 1263s > simple_typed_classes(min_attrs=1) | simple_typed_dataclasses(min_attrs=1), data() 1263s ) 1263s 1263s f = .run_test_as_given..wrapped_test at 0x74ca75187600> 1263s 1263s tests/test_gen_dict.py:190: 1263s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1263s 1263s cl_and_vals = (, ('', nan), {}) 1263s data = data(...) 1263s 1263s @given( 1263s simple_typed_classes(min_attrs=1) | simple_typed_dataclasses(min_attrs=1), data() 1263s ) 1263s def test_renaming(cl_and_vals, data): 1263s converter = Converter() 1263s cl, vals, kwargs = cl_and_vals 1263s attrs = fields(cl) 1263s 1263s to_replace = data.draw(sampled_from(attrs)) 1263s 1263s u_fn = make_dict_unstructure_fn( 1263s cl, converter, **{to_replace.name: override(rename="class")} 1263s ) 1263s s_fn = make_dict_structure_fn( 1263s cl, converter, **{to_replace.name: override(rename="class")} 1263s ) 1263s 1263s converter.register_structure_hook(cl, s_fn) 1263s converter.register_unstructure_hook(cl, u_fn) 1263s 1263s inst = cl(*vals, **kwargs) 1263s 1263s raw = converter.unstructure(inst) 1263s 1263s assert "class" in raw 1263s 1263s new_inst = converter.structure(raw, cl) 1263s 1263s > assert inst == new_inst 1263s E AssertionError: assert HypAttrsClass(a='', _b=nan) == HypAttrsClass(a='', _b=nan) 1263s E 1263s E Omitting 1 identical items, use -vv to show 1263s E Differing attributes: 1263s E ['_b'] 1263s E 1263s E Drill down into differing attribute _b: 1263s E _b: nan != nan 1263s E Class fields: [_CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={})] 1263s E Attributes: {'a': _CountingAttr(counter=0, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias=None, metadata={}), '_b': _CountingAttr(counter=1, _default=NOTHING, repr=True, eq=True, order=True, hash=None, init=True, on_setattr=None, alias='c', metadata={})} 1263s E Falsifying example: test_renaming( 1263s E cl_and_vals=(tests.typed.HypAttrsClass, 1263s E ('', struct.unpack('d', struct.pack('Q', 0x7ff8000000000001))[0]), 1263s E {}), 1263s E data=data(...), 1263s E ) 1263s E Draw 1: Attribute(name='a', default=NOTHING, validator=None, repr=True, eq=True, eq_key=None, order=True, order_key=None, hash=None, init=True, metadata=mappingproxy({}), type=, converter=None, kw_only=False, inherited=False, on_setattr=None, alias='a') 1263s 1263s attrs = (Attribute(name='a', default=NOTHING, validator=None, repr=True, eq=True, eq_key=None, order=True, order_key=None, has...ta=mappingproxy({}), type=, converter=None, kw_only=False, inherited=False, on_setattr=None, alias='c')) 1263s cl = 1263s cl_and_vals = (, ('', nan), {}) 1263s converter = 1263s data = data(...) 1263s inst = HypAttrsClass(a='', _b=nan) 1263s kwargs = {} 1263s new_inst = HypAttrsClass(a='', _b=nan) 1263s raw = {'_b': nan, 'class': ''} 1263s s_fn = 1263s to_replace = Attribute(name='a', default=NOTHING, validator=None, repr=True, eq=True, eq_key=None, order=True, order_key=None, hash...adata=mappingproxy({}), type=, converter=None, kw_only=False, inherited=False, on_setattr=None, alias='a') 1263s u_fn = 1263s vals = ('', nan) 1263s 1263s tests/test_gen_dict.py:217: AssertionError 1263s =============================== warnings summary =============================== 1263s tests/typed.py:417 1263s /tmp/autopkgtest.lySU52/autopkgtest_tmp/build/tests/typed.py:417: HypothesisWarning: Return-type annotation is `st.SearchStrategy[typing.Tuple[attr._make._CountingAttr, st.SearchStrategy]]`, but the decorated function should return a value (not a strategy) 1263s @composite 1263s 1263s tests/typed.py:826 1263s /tmp/autopkgtest.lySU52/autopkgtest_tmp/build/tests/typed.py:826: HypothesisWarning: Return-type annotation is `st.SearchStrategy[typing.Tuple[typing.Type, st.SearchStrategy[typing.Tuple[typing.Any]], st.SearchStrategy[typing.Dict[str, typing.Any]]]]`, but the decorated function should return a value (not a strategy) 1263s @composite 1263s 1263s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1263s =========================== short test summary info ============================ 1263s FAILED tests/test_baseconverter.py::test_nested_roundtrip - AssertionError: a... 1263s FAILED tests/test_baseconverter.py::test_nested_roundtrip_tuple - AssertionEr... 1263s FAILED tests/test_baseconverter.py::test_union_field_roundtrip - AssertionErr... 1263s FAILED tests/test_baseconverter.py::test_310_union_field_roundtrip - Assertio... 1263s FAILED tests/test_baseconverter.py::test_310_optional_field_roundtrip - Asser... 1263s FAILED tests/test_converter.py::test_simple_roundtrip_tuple - AssertionError:... 1263s FAILED tests/test_converter.py::test_nested_roundtrip - AssertionError: asser... 1263s FAILED tests/test_converter.py::test_nested_roundtrip_tuple - AssertionError:... 1263s FAILED tests/test_converter.py::test_union_field_roundtrip - AssertionError: ... 1263s FAILED tests/test_converter.py::test_310_union_field_roundtrip - AssertionErr... 1263s FAILED tests/test_converter.py::test_optional_field_roundtrip - AssertionErro... 1263s FAILED tests/test_converter.py::test_310_optional_field_roundtrip - Assertion... 1263s FAILED tests/test_gen_dict.py::test_renaming - AssertionError: assert HypAttr... 1263s ===== 13 failed, 564 passed, 15 xfailed, 2 warnings in 1151.78s (0:19:11) ====== 1263s E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /tmp/autopkgtest.lySU52/autopkgtest_tmp/build; python3.12 -m pytest -v --ignore tests/test_unstructure_collections.py --ignore tests/test_preconf.py -k 'not test_orjson' 1263s pybuild-autopkgtest: error: pybuild --autopkgtest --test-pytest -i python{version} -p 3.12 returned exit code 13 1263s make: *** [/tmp/G8exq6S20E/run:4: pybuild-autopkgtest] Error 25 1263s pybuild-autopkgtest: error: /tmp/G8exq6S20E/run pybuild-autopkgtest returned exit code 2 1263s autopkgtest [16:19:50]: test pybuild-autopkgtest: -----------------------] 1264s pybuild-autopkgtest FAIL non-zero exit status 25 1264s autopkgtest [16:19:51]: test pybuild-autopkgtest: - - - - - - - - - - results - - - - - - - - - - 1264s autopkgtest [16:19:51]: @@@@@@@@@@@@@@@@@@@@ summary 1264s pybuild-autopkgtest FAIL non-zero exit status 25 1276s nova [W] Skipping flock for amd64 1276s Creating nova instance adt-plucky-amd64-python-cattrs-20241112-155847-juju-7f2275-prod-proposed-migration-environment-15-d47cfe0f-34cd-4adf-a278-1c147495c02d from image adt/ubuntu-plucky-amd64-server-20241112.img (UUID ffe5c62a-46f4-4ffb-a07e-3a95d5bf45c0)...