0s autopkgtest [20:40:04]: starting date and time: 2026-01-22 20:40:04+0000 0s autopkgtest [20:40:04]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [20:40:04]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.984_vaqs/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults --apt-upgrade python-djantic --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python3-defaults/3.14.2-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-ppc64el --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@sto01-ppc64el-6.secgroup --name adt-resolute-ppc64el-python-djantic-20260122-204004-juju-7f2275-prod-proposed-migration-environment-20-a1df189a-f1ea-4e19-9c2d-556d4b7c6b75 --image adt/ubuntu-resolute-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-autopkgtest-workers-ppc64el -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 4s Creating nova instance adt-resolute-ppc64el-python-djantic-20260122-204004-juju-7f2275-prod-proposed-migration-environment-20-a1df189a-f1ea-4e19-9c2d-556d4b7c6b75 from image adt/ubuntu-resolute-ppc64el-server-20260122.img (UUID 987e5803-394f-43eb-a969-151b6b75a57a)... 104s autopkgtest [20:41:48]: testbed dpkg architecture: ppc64el 104s autopkgtest [20:41:48]: testbed apt version: 3.1.12 104s autopkgtest [20:41:48]: @@@@@@@@@@@@@@@@@@@@ test bed setup 104s autopkgtest [20:41:48]: testbed release detected to be: None 105s autopkgtest [20:41:49]: updating testbed package index (apt update) 105s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 105s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 105s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 105s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 105s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [2820 B] 105s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.2 kB] 106s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [81.6 kB] 106s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [1011 kB] 107s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [100 kB] 107s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [703 kB] 108s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [5552 B] 108s Fetched 2050 kB in 3s (718 kB/s) 109s Reading package lists... 109s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 110s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 110s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 110s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 110s Reading package lists... 110s Reading package lists... 111s Building dependency tree... 111s Reading state information... 111s Calculating upgrade... 111s The following packages were automatically installed and are no longer required: 111s python3.13 python3.13-minimal 111s Use 'sudo apt autoremove' to remove them. 111s The following NEW packages will be installed: 111s libpython3.14-minimal libpython3.14-stdlib python3.14 python3.14-minimal 111s The following packages will be upgraded: 111s libplymouth5 libpython3-stdlib plymouth plymouth-theme-ubuntu-text python3 111s python3-gdbm python3-minimal 111s 7 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. 111s Need to get 7312 kB of archives. 111s After this operation, 27.7 MB of additional disk space will be used. 111s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libpython3.14-minimal ppc64el 3.14.2-1 [921 kB] 112s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3.14-minimal ppc64el 3.14.2-1 [2712 kB] 115s Get:3 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el python3-gdbm ppc64el 3.14.2-1 [11.1 kB] 115s Get:4 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el python3-minimal ppc64el 3.14.2-1 [28.2 kB] 115s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el python3 ppc64el 3.14.2-1 [22.9 kB] 115s Get:6 http://ftpmaster.internal/ubuntu resolute/main ppc64el libpython3.14-stdlib ppc64el 3.14.2-1 [2444 kB] 119s Get:7 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3.14 ppc64el 3.14.2-1 [816 kB] 120s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el libpython3-stdlib ppc64el 3.14.2-1 [10.9 kB] 120s Get:9 http://ftpmaster.internal/ubuntu resolute/main ppc64el libplymouth5 ppc64el 24.004.60+git20250831.4a3c171d-0ubuntu4 [174 kB] 120s Get:10 http://ftpmaster.internal/ubuntu resolute/main ppc64el plymouth-theme-ubuntu-text ppc64el 24.004.60+git20250831.4a3c171d-0ubuntu4 [11.2 kB] 120s Get:11 http://ftpmaster.internal/ubuntu resolute/main ppc64el plymouth ppc64el 24.004.60+git20250831.4a3c171d-0ubuntu4 [160 kB] 120s dpkg-preconfigure: unable to re-open stdin: No such file or directory 120s Fetched 7312 kB in 9s (827 kB/s) 120s Selecting previously unselected package libpython3.14-minimal:ppc64el. 120s (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 ... 120824 files and directories currently installed.) 120s Preparing to unpack .../libpython3.14-minimal_3.14.2-1_ppc64el.deb ... 120s Unpacking libpython3.14-minimal:ppc64el (3.14.2-1) ... 120s Selecting previously unselected package python3.14-minimal. 120s Preparing to unpack .../python3.14-minimal_3.14.2-1_ppc64el.deb ... 121s Unpacking python3.14-minimal (3.14.2-1) ... 121s Preparing to unpack .../python3-gdbm_3.14.2-1_ppc64el.deb ... 121s Unpacking python3-gdbm (3.14.2-1) over (3.13.9-1) ... 121s Setting up libpython3.14-minimal:ppc64el (3.14.2-1) ... 121s Setting up python3.14-minimal (3.14.2-1) ... 122s (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 ... 121166 files and directories currently installed.) 122s Preparing to unpack .../python3-minimal_3.14.2-1_ppc64el.deb ... 122s Unpacking python3-minimal (3.14.2-1) over (3.13.7-1) ... 122s Setting up python3-minimal (3.14.2-1) ... 122s (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 ... 121166 files and directories currently installed.) 122s Preparing to unpack .../0-python3_3.14.2-1_ppc64el.deb ... 122s running python pre-rtupdate hooks for python3.14... 122s Unpacking python3 (3.14.2-1) over (3.13.7-1) ... 123s Selecting previously unselected package libpython3.14-stdlib:ppc64el. 123s Preparing to unpack .../1-libpython3.14-stdlib_3.14.2-1_ppc64el.deb ... 123s Unpacking libpython3.14-stdlib:ppc64el (3.14.2-1) ... 123s Selecting previously unselected package python3.14. 123s Preparing to unpack .../2-python3.14_3.14.2-1_ppc64el.deb ... 123s Unpacking python3.14 (3.14.2-1) ... 123s Preparing to unpack .../3-libpython3-stdlib_3.14.2-1_ppc64el.deb ... 123s Unpacking libpython3-stdlib:ppc64el (3.14.2-1) over (3.13.7-1) ... 123s Preparing to unpack .../4-libplymouth5_24.004.60+git20250831.4a3c171d-0ubuntu4_ppc64el.deb ... 123s Unpacking libplymouth5:ppc64el (24.004.60+git20250831.4a3c171d-0ubuntu4) over (24.004.60+git20250831.4a3c171d-0ubuntu3) ... 123s Preparing to unpack .../5-plymouth-theme-ubuntu-text_24.004.60+git20250831.4a3c171d-0ubuntu4_ppc64el.deb ... 123s Unpacking plymouth-theme-ubuntu-text (24.004.60+git20250831.4a3c171d-0ubuntu4) over (24.004.60+git20250831.4a3c171d-0ubuntu3) ... 123s Preparing to unpack .../6-plymouth_24.004.60+git20250831.4a3c171d-0ubuntu4_ppc64el.deb ... 123s Unpacking plymouth (24.004.60+git20250831.4a3c171d-0ubuntu4) over (24.004.60+git20250831.4a3c171d-0ubuntu3) ... 123s Setting up libpython3.14-stdlib:ppc64el (3.14.2-1) ... 123s Setting up libplymouth5:ppc64el (24.004.60+git20250831.4a3c171d-0ubuntu4) ... 123s Setting up python3.14 (3.14.2-1) ... 125s Setting up libpython3-stdlib:ppc64el (3.14.2-1) ... 125s Setting up python3-gdbm (3.14.2-1) ... 125s Setting up plymouth (24.004.60+git20250831.4a3c171d-0ubuntu4) ... 125s update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults 125s update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults 125s Setting up python3 (3.14.2-1) ... 125s running python rtupdate hooks for python3.14... 125s running python post-rtupdate hooks for python3.14... 125s Processing triggers for libc-bin (2.42-2ubuntu4) ... 125s Processing triggers for systemd (259-1ubuntu2) ... 125s Processing triggers for man-db (2.13.1-1) ... 127s Processing triggers for initramfs-tools (0.150ubuntu7) ... 127s update-initramfs: Generating /boot/initrd.img-6.18.0-9-generic 134s Setting up plymouth-theme-ubuntu-text (24.004.60+git20250831.4a3c171d-0ubuntu4) ... 134s Processing triggers for initramfs-tools (0.150ubuntu7) ... 134s update-initramfs: Generating /boot/initrd.img-6.18.0-9-generic 140s autopkgtest [20:42:24]: upgrading testbed (apt dist-upgrade and autopurge) 140s Reading package lists... 140s Building dependency tree... 140s Reading state information... 140s Calculating upgrade... 140s The following packages were automatically installed and are no longer required: 140s python3.13 python3.13-minimal 140s Use 'sudo apt autoremove' to remove them. 140s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 140s Reading package lists... 140s Building dependency tree... 140s Reading state information... 141s Solving dependencies... 141s The following packages will be REMOVED: 141s python3.13* python3.13-minimal* 141s 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded. 141s After this operation, 9077 kB disk space will be freed. 141s (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 ... 121596 files and directories currently installed.) 141s Removing python3.13 (3.13.11-1) ... 141s Removing python3.13-minimal (3.13.11-1) ... 142s Processing triggers for man-db (2.13.1-1) ... 143s Processing triggers for systemd (259-1ubuntu2) ... 143s (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 ... 121569 files and directories currently installed.) 143s Purging configuration files for python3.13-minimal (3.13.11-1) ... 143s autopkgtest [20:42:27]: rebooting testbed after setup commands that affected boot 184s autopkgtest [20:43:08]: testbed running kernel: Linux 6.18.0-9-generic #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Jan 12 16:45:54 UTC 2026 186s autopkgtest [20:43:10]: @@@@@@@@@@@@@@@@@@@@ apt-source python-djantic 188s Get:1 http://ftpmaster.internal/ubuntu resolute/universe python-djantic 0.7.0-6 (dsc) [2588 B] 188s Get:2 http://ftpmaster.internal/ubuntu resolute/universe python-djantic 0.7.0-6 (tar) [54.6 kB] 188s Get:3 http://ftpmaster.internal/ubuntu resolute/universe python-djantic 0.7.0-6 (diff) [4336 B] 188s gpgv: Signature made Thu Feb 20 07:32:29 2025 UTC 188s gpgv: using RSA key 8F6DE104377F3B11E741748731F3144544A1741A 188s gpgv: issuer "tchet@debian.org" 188s gpgv: Can't check signature: No public key 188s dpkg-source: warning: cannot verify inline signature for ./python-djantic_0.7.0-6.dsc: no acceptable signature found 188s autopkgtest [20:43:12]: testing package python-djantic version 0.7.0-6 188s autopkgtest [20:43:12]: build not needed 189s autopkgtest [20:43:13]: test upstream: preparing testbed 189s Reading package lists... 189s Building dependency tree... 189s Reading state information... 189s Solving dependencies... 189s The following NEW packages will be installed: 189s libdeflate0 libgomp1 libgraphite2-3 libharfbuzz0b libimagequant0 libjbig0 189s libjpeg-turbo8 libjpeg8 liblcms2-2 liblerc4 libopenjp2-7 libpq5 libraqm0 189s libsharpyuv0 libtiff6 libwebp7 libwebpdemux2 libwebpmux3 python-djantic-doc 189s python3-all python3-annotated-types python3-asgiref python3-django 189s python3-djantic python3-dnspython python3-email-validator 189s python3-factory-boy python3-fake-factory python3-iniconfig python3-pil 189s python3-pluggy python3-psycopg2 python3-pydantic python3-pydantic-core 189s python3-pytest python3-pytest-django python3-sqlparse 189s python3-typing-inspection python3.13 python3.13-minimal 189s 0 upgraded, 40 newly installed, 0 to remove and 0 not upgraded. 189s Need to get 15.5 MB of archives. 189s After this operation, 79.5 MB of additional disk space will be used. 189s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3.13-minimal ppc64el 3.13.11-1 [2571 kB] 192s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3.13 ppc64el 3.13.11-1 [758 kB] 193s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el libdeflate0 ppc64el 1.23-2 [63.3 kB] 193s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgomp1 ppc64el 15.2.0-11ubuntu1 [169 kB] 193s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el libgraphite2-3 ppc64el 1.3.14-11ubuntu1 [85.3 kB] 193s Get:6 http://ftpmaster.internal/ubuntu resolute/main ppc64el libharfbuzz0b ppc64el 12.3.0-4 [674 kB] 194s Get:7 http://ftpmaster.internal/ubuntu resolute/main ppc64el libimagequant0 ppc64el 2.18.0-1build1 [43.2 kB] 194s Get:8 http://ftpmaster.internal/ubuntu resolute/main ppc64el libjpeg-turbo8 ppc64el 2.1.5-4ubuntu2 [215 kB] 194s Get:9 http://ftpmaster.internal/ubuntu resolute/main ppc64el libjpeg8 ppc64el 8c-2ubuntu11 [2148 B] 194s Get:10 http://ftpmaster.internal/ubuntu resolute/main ppc64el liblcms2-2 ppc64el 2.17-1 [246 kB] 194s Get:11 http://ftpmaster.internal/ubuntu resolute/main ppc64el liblerc4 ppc64el 4.0.0+ds-5ubuntu2 [315 kB] 194s Get:12 http://ftpmaster.internal/ubuntu resolute/main ppc64el libpq5 ppc64el 18.1-2 [198 kB] 194s Get:13 http://ftpmaster.internal/ubuntu resolute/main ppc64el libraqm0 ppc64el 0.10.3-1 [19.6 kB] 194s Get:14 http://ftpmaster.internal/ubuntu resolute/main ppc64el libsharpyuv0 ppc64el 1.5.0-0.1build1 [24.7 kB] 194s Get:15 http://ftpmaster.internal/ubuntu resolute/main ppc64el libjbig0 ppc64el 2.1-6.1ubuntu3 [37.1 kB] 194s Get:16 http://ftpmaster.internal/ubuntu resolute/main ppc64el libwebp7 ppc64el 1.5.0-0.1build1 [330 kB] 194s Get:17 http://ftpmaster.internal/ubuntu resolute/main ppc64el libtiff6 ppc64el 4.7.0-3ubuntu3 [307 kB] 194s Get:18 http://ftpmaster.internal/ubuntu resolute/main ppc64el libwebpdemux2 ppc64el 1.5.0-0.1build1 [14.8 kB] 194s Get:19 http://ftpmaster.internal/ubuntu resolute/main ppc64el libwebpmux3 ppc64el 1.5.0-0.1build1 [31.3 kB] 194s Get:20 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python-djantic-doc all 0.7.0-6 [492 kB] 195s Get:21 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el python3-all ppc64el 3.14.2-1 [890 B] 195s Get:22 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-annotated-types all 0.7.0-1 [19.4 kB] 195s Get:23 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3-asgiref all 3.11.0-1 [25.2 kB] 195s Get:24 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3-sqlparse all 0.5.4-1 [34.3 kB] 195s Get:25 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3-django all 3:5.2.9-0ubuntu2 [3038 kB] 196s Get:26 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-pydantic-core ppc64el 2.41.5-2 [2313 kB] 198s Get:27 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-typing-inspection all 0.4.2-1 [13.1 kB] 198s Get:28 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3-dnspython all 2.7.0-1ubuntu2 [167 kB] 198s Get:29 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-email-validator all 2.2.0-1 [28.5 kB] 198s Get:30 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-pydantic ppc64el 2.12.5-2 [312 kB] 198s Get:31 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-djantic all 0.7.0-6 [9454 B] 198s Get:32 http://ftpmaster.internal/ubuntu resolute/main ppc64el libopenjp2-7 ppc64el 2.5.4-1 [251 kB] 198s Get:33 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3-pil ppc64el 12.0.0-1ubuntu1 [645 kB] 198s Get:34 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-fake-factory all 39.0.0-1 [1455 kB] 199s Get:35 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-factory-boy all 3.3.3-1build1 [35.9 kB] 199s Get:36 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-iniconfig all 2.1.0-2 [6962 B] 199s Get:37 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-pluggy all 1.6.0-2 [21.1 kB] 199s Get:38 http://ftpmaster.internal/ubuntu resolute/main ppc64el python3-psycopg2 ppc64el 2.9.11-1 [189 kB] 199s Get:39 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-pytest all 9.0.2-2 [277 kB] 199s Get:40 http://ftpmaster.internal/ubuntu resolute/universe ppc64el python3-pytest-django all 4.11.1-2 [21.8 kB] 199s Fetched 15.5 MB in 10s (1603 kB/s) 199s Selecting previously unselected package python3.13-minimal. 200s (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 ... 121571 files and directories currently installed.) 200s Preparing to unpack .../00-python3.13-minimal_3.13.11-1_ppc64el.deb ... 200s Unpacking python3.13-minimal (3.13.11-1) ... 200s Selecting previously unselected package python3.13. 200s Preparing to unpack .../01-python3.13_3.13.11-1_ppc64el.deb ... 200s Unpacking python3.13 (3.13.11-1) ... 200s Selecting previously unselected package libdeflate0:ppc64el. 200s Preparing to unpack .../02-libdeflate0_1.23-2_ppc64el.deb ... 200s Unpacking libdeflate0:ppc64el (1.23-2) ... 200s Selecting previously unselected package libgomp1:ppc64el. 200s Preparing to unpack .../03-libgomp1_15.2.0-11ubuntu1_ppc64el.deb ... 200s Unpacking libgomp1:ppc64el (15.2.0-11ubuntu1) ... 200s Selecting previously unselected package libgraphite2-3:ppc64el. 200s Preparing to unpack .../04-libgraphite2-3_1.3.14-11ubuntu1_ppc64el.deb ... 200s Unpacking libgraphite2-3:ppc64el (1.3.14-11ubuntu1) ... 200s Selecting previously unselected package libharfbuzz0b:ppc64el. 200s Preparing to unpack .../05-libharfbuzz0b_12.3.0-4_ppc64el.deb ... 200s Unpacking libharfbuzz0b:ppc64el (12.3.0-4) ... 200s Selecting previously unselected package libimagequant0:ppc64el. 200s Preparing to unpack .../06-libimagequant0_2.18.0-1build1_ppc64el.deb ... 200s Unpacking libimagequant0:ppc64el (2.18.0-1build1) ... 200s Selecting previously unselected package libjpeg-turbo8:ppc64el. 200s Preparing to unpack .../07-libjpeg-turbo8_2.1.5-4ubuntu2_ppc64el.deb ... 200s Unpacking libjpeg-turbo8:ppc64el (2.1.5-4ubuntu2) ... 200s Selecting previously unselected package libjpeg8:ppc64el. 200s Preparing to unpack .../08-libjpeg8_8c-2ubuntu11_ppc64el.deb ... 200s Unpacking libjpeg8:ppc64el (8c-2ubuntu11) ... 200s Selecting previously unselected package liblcms2-2:ppc64el. 200s Preparing to unpack .../09-liblcms2-2_2.17-1_ppc64el.deb ... 200s Unpacking liblcms2-2:ppc64el (2.17-1) ... 200s Selecting previously unselected package liblerc4:ppc64el. 200s Preparing to unpack .../10-liblerc4_4.0.0+ds-5ubuntu2_ppc64el.deb ... 200s Unpacking liblerc4:ppc64el (4.0.0+ds-5ubuntu2) ... 200s Selecting previously unselected package libpq5:ppc64el. 200s Preparing to unpack .../11-libpq5_18.1-2_ppc64el.deb ... 200s Unpacking libpq5:ppc64el (18.1-2) ... 200s Selecting previously unselected package libraqm0:ppc64el. 200s Preparing to unpack .../12-libraqm0_0.10.3-1_ppc64el.deb ... 200s Unpacking libraqm0:ppc64el (0.10.3-1) ... 200s Selecting previously unselected package libsharpyuv0:ppc64el. 200s Preparing to unpack .../13-libsharpyuv0_1.5.0-0.1build1_ppc64el.deb ... 200s Unpacking libsharpyuv0:ppc64el (1.5.0-0.1build1) ... 200s Selecting previously unselected package libjbig0:ppc64el. 200s Preparing to unpack .../14-libjbig0_2.1-6.1ubuntu3_ppc64el.deb ... 200s Unpacking libjbig0:ppc64el (2.1-6.1ubuntu3) ... 200s Selecting previously unselected package libwebp7:ppc64el. 200s Preparing to unpack .../15-libwebp7_1.5.0-0.1build1_ppc64el.deb ... 200s Unpacking libwebp7:ppc64el (1.5.0-0.1build1) ... 200s Selecting previously unselected package libtiff6:ppc64el. 200s Preparing to unpack .../16-libtiff6_4.7.0-3ubuntu3_ppc64el.deb ... 200s Unpacking libtiff6:ppc64el (4.7.0-3ubuntu3) ... 200s Selecting previously unselected package libwebpdemux2:ppc64el. 200s Preparing to unpack .../17-libwebpdemux2_1.5.0-0.1build1_ppc64el.deb ... 200s Unpacking libwebpdemux2:ppc64el (1.5.0-0.1build1) ... 200s Selecting previously unselected package libwebpmux3:ppc64el. 200s Preparing to unpack .../18-libwebpmux3_1.5.0-0.1build1_ppc64el.deb ... 200s Unpacking libwebpmux3:ppc64el (1.5.0-0.1build1) ... 200s Selecting previously unselected package python-djantic-doc. 200s Preparing to unpack .../19-python-djantic-doc_0.7.0-6_all.deb ... 200s Unpacking python-djantic-doc (0.7.0-6) ... 200s Selecting previously unselected package python3-all. 200s Preparing to unpack .../20-python3-all_3.14.2-1_ppc64el.deb ... 200s Unpacking python3-all (3.14.2-1) ... 200s Selecting previously unselected package python3-annotated-types. 200s Preparing to unpack .../21-python3-annotated-types_0.7.0-1_all.deb ... 200s Unpacking python3-annotated-types (0.7.0-1) ... 200s Selecting previously unselected package python3-asgiref. 200s Preparing to unpack .../22-python3-asgiref_3.11.0-1_all.deb ... 200s Unpacking python3-asgiref (3.11.0-1) ... 200s Selecting previously unselected package python3-sqlparse. 200s Preparing to unpack .../23-python3-sqlparse_0.5.4-1_all.deb ... 200s Unpacking python3-sqlparse (0.5.4-1) ... 200s Selecting previously unselected package python3-django. 200s Preparing to unpack .../24-python3-django_3%3a5.2.9-0ubuntu2_all.deb ... 200s Unpacking python3-django (3:5.2.9-0ubuntu2) ... 201s Selecting previously unselected package python3-pydantic-core. 201s Preparing to unpack .../25-python3-pydantic-core_2.41.5-2_ppc64el.deb ... 201s Unpacking python3-pydantic-core (2.41.5-2) ... 201s Selecting previously unselected package python3-typing-inspection. 201s Preparing to unpack .../26-python3-typing-inspection_0.4.2-1_all.deb ... 201s Unpacking python3-typing-inspection (0.4.2-1) ... 201s Selecting previously unselected package python3-dnspython. 201s Preparing to unpack .../27-python3-dnspython_2.7.0-1ubuntu2_all.deb ... 201s Unpacking python3-dnspython (2.7.0-1ubuntu2) ... 201s Selecting previously unselected package python3-email-validator. 201s Preparing to unpack .../28-python3-email-validator_2.2.0-1_all.deb ... 201s Unpacking python3-email-validator (2.2.0-1) ... 201s Selecting previously unselected package python3-pydantic. 201s Preparing to unpack .../29-python3-pydantic_2.12.5-2_ppc64el.deb ... 201s Unpacking python3-pydantic (2.12.5-2) ... 201s Selecting previously unselected package python3-djantic. 201s Preparing to unpack .../30-python3-djantic_0.7.0-6_all.deb ... 201s Unpacking python3-djantic (0.7.0-6) ... 201s Selecting previously unselected package libopenjp2-7:ppc64el. 201s Preparing to unpack .../31-libopenjp2-7_2.5.4-1_ppc64el.deb ... 201s Unpacking libopenjp2-7:ppc64el (2.5.4-1) ... 201s Selecting previously unselected package python3-pil:ppc64el. 201s Preparing to unpack .../32-python3-pil_12.0.0-1ubuntu1_ppc64el.deb ... 201s Unpacking python3-pil:ppc64el (12.0.0-1ubuntu1) ... 201s Selecting previously unselected package python3-fake-factory. 201s Preparing to unpack .../33-python3-fake-factory_39.0.0-1_all.deb ... 201s Unpacking python3-fake-factory (39.0.0-1) ... 201s Selecting previously unselected package python3-factory-boy. 201s Preparing to unpack .../34-python3-factory-boy_3.3.3-1build1_all.deb ... 201s Unpacking python3-factory-boy (3.3.3-1build1) ... 201s Selecting previously unselected package python3-iniconfig. 201s Preparing to unpack .../35-python3-iniconfig_2.1.0-2_all.deb ... 201s Unpacking python3-iniconfig (2.1.0-2) ... 201s Selecting previously unselected package python3-pluggy. 201s Preparing to unpack .../36-python3-pluggy_1.6.0-2_all.deb ... 201s Unpacking python3-pluggy (1.6.0-2) ... 201s Selecting previously unselected package python3-psycopg2. 201s Preparing to unpack .../37-python3-psycopg2_2.9.11-1_ppc64el.deb ... 201s Unpacking python3-psycopg2 (2.9.11-1) ... 201s Selecting previously unselected package python3-pytest. 201s Preparing to unpack .../38-python3-pytest_9.0.2-2_all.deb ... 201s Unpacking python3-pytest (9.0.2-2) ... 201s Selecting previously unselected package python3-pytest-django. 201s Preparing to unpack .../39-python3-pytest-django_4.11.1-2_all.deb ... 201s Unpacking python3-pytest-django (4.11.1-2) ... 201s Setting up libgraphite2-3:ppc64el (1.3.14-11ubuntu1) ... 201s Setting up liblcms2-2:ppc64el (2.17-1) ... 201s Setting up python3-iniconfig (2.1.0-2) ... 201s Setting up libsharpyuv0:ppc64el (1.5.0-0.1build1) ... 201s Setting up python3-pydantic-core (2.41.5-2) ... 202s Setting up liblerc4:ppc64el (4.0.0+ds-5ubuntu2) ... 202s Setting up python3-typing-inspection (0.4.2-1) ... 202s Setting up python-djantic-doc (0.7.0-6) ... 202s Setting up libpq5:ppc64el (18.1-2) ... 202s Setting up libdeflate0:ppc64el (1.23-2) ... 202s Setting up libgomp1:ppc64el (15.2.0-11ubuntu1) ... 202s Setting up libjbig0:ppc64el (2.1-6.1ubuntu3) ... 202s Setting up python3-annotated-types (0.7.0-1) ... 202s Setting up python3-sqlparse (0.5.4-1) ... 202s Setting up libimagequant0:ppc64el (2.18.0-1build1) ... 202s Setting up python3-psycopg2 (2.9.11-1) ... 203s Setting up libjpeg-turbo8:ppc64el (2.1.5-4ubuntu2) ... 203s Setting up python3-pluggy (1.6.0-2) ... 203s Setting up libwebp7:ppc64el (1.5.0-0.1build1) ... 203s Setting up python3-dnspython (2.7.0-1ubuntu2) ... 203s Setting up libopenjp2-7:ppc64el (2.5.4-1) ... 203s Setting up python3.13-minimal (3.13.11-1) ... 204s Setting up libharfbuzz0b:ppc64el (12.3.0-4) ... 204s Setting up python3-email-validator (2.2.0-1) ... 205s Setting up libwebpmux3:ppc64el (1.5.0-0.1build1) ... 205s Setting up python3-asgiref (3.11.0-1) ... 205s Setting up libjpeg8:ppc64el (8c-2ubuntu11) ... 205s Setting up python3-django (3:5.2.9-0ubuntu2) ... 207s Setting up python3.13 (3.13.11-1) ... 208s Setting up python3-pytest (9.0.2-2) ... 209s Setting up libwebpdemux2:ppc64el (1.5.0-0.1build1) ... 209s Setting up python3-all (3.14.2-1) ... 209s Setting up python3-pytest-django (4.11.1-2) ... 209s Setting up python3-pydantic (2.12.5-2) ... 210s Setting up libraqm0:ppc64el (0.10.3-1) ... 210s Setting up libtiff6:ppc64el (4.7.0-3ubuntu3) ... 210s Setting up python3-djantic (0.7.0-6) ... 210s Setting up python3-pil:ppc64el (12.0.0-1ubuntu1) ... 211s Setting up python3-fake-factory (39.0.0-1) ... 214s Setting up python3-factory-boy (3.3.3-1build1) ... 214s Processing triggers for systemd (259-1ubuntu2) ... 214s Processing triggers for man-db (2.13.1-1) ... 214s Processing triggers for libc-bin (2.42-2ubuntu4) ... 216s autopkgtest [20:43:40]: test upstream: [----------------------- 216s ============================= test session starts ============================== 216s platform linux -- Python 3.13.11, pytest-9.0.2, pluggy-1.6.0 -- /usr/bin/python3.13 216s cachedir: .pytest_cache 216s django: version: 5.2.9, settings: tests.testapp.settings (from ini) 216s rootdir: /tmp/autopkgtest.FzhyfE/autopkgtest_tmp 216s configfile: setup.cfg 216s plugins: Faker-39.0.0, django-4.11.1, typeguard-4.4.4 217s collecting ... collected 32 items / 4 deselected / 28 selected 217s 217s tests/test_fields.py::test_unhandled_field_type Creating test database for alias 'default'... 217s is currently unhandled, defaulting to str. 217s PASSED 217s tests/test_fields.py::test_custom_field PASSED 217s tests/test_fields.py::test_postgres_json_field PASSED 217s tests/test_fields.py::test_lazy_choice_field PASSED 217s tests/test_fields.py::test_enum_choices PASSED 217s tests/test_fields.py::test_enum_choices_generates_unique_enums PASSED 217s tests/test_fields.py::test_listing PASSED 217s tests/test_files.py::test_image_field_schema PASSED 217s tests/test_main.py::test_config_errors PASSED 217s tests/test_main.py::test_get_field_names PASSED 217s tests/test_queries.py::test_get_instance PASSED 217s tests/test_queries.py::test_get_instance_with_generic_foreign_key PASSED 217s tests/test_queries.py::test_get_queryset_with_reverse_one_to_one PASSED 217s tests/test_queries.py::test_get_queryset_with_foreign_key PASSED 217s tests/test_queries.py::test_get_queryset_with_reverse_foreign_key PASSED 217s tests/test_queries.py::test_get_queryset_with_generic_foreign_key PASSED 217s tests/test_relations.py::test_m2m PASSED 217s tests/test_relations.py::test_foreign_key PASSED 217s tests/test_relations.py::test_one_to_one PASSED 217s tests/test_relations.py::test_one_to_one_reverse PASSED 217s tests/test_relations.py::test_generic_relation PASSED 217s tests/test_relations.py::test_m2m_reverse PASSED 217s tests/test_schemas.py::test_description PASSED 217s tests/test_schemas.py::test_cache PASSED 217s tests/test_schemas.py::test_include_exclude PASSED 217s tests/test_schemas.py::test_json PASSED 217s tests/test_schemas.py::test_include_from_annotations PASSED 217s tests/test_schemas.py::test_by_alias_generator Destroying test database for alias 'default'... 217s PASSED 217s 217s ============================= slowest 10 durations ============================= 217s 0.28s setup tests/test_fields.py::test_unhandled_field_type 217s 0.01s call tests/test_relations.py::test_m2m_reverse 217s 0.01s call tests/test_queries.py::test_get_queryset_with_reverse_foreign_key 217s 0.01s call tests/test_queries.py::test_get_queryset_with_reverse_one_to_one 217s 0.01s call tests/test_schemas.py::test_include_exclude 217s 0.01s call tests/test_relations.py::test_m2m 217s 0.01s call tests/test_relations.py::test_generic_relation 217s 0.01s call tests/test_schemas.py::test_description 217s 0.01s call tests/test_queries.py::test_get_instance_with_generic_foreign_key 217s 0.01s call tests/test_relations.py::test_one_to_one_reverse 217s ======================= 28 passed, 4 deselected in 0.75s ======================= 218s ============================= test session starts ============================== 218s platform linux -- Python 3.14.2, pytest-9.0.2, pluggy-1.6.0 -- /usr/bin/python3.14 218s cachedir: .pytest_cache 218s django: version: 5.2.9, settings: tests.testapp.settings (from ini) 218s rootdir: /tmp/autopkgtest.FzhyfE/autopkgtest_tmp 218s configfile: setup.cfg 218s plugins: Faker-39.0.0, django-4.11.1, typeguard-4.4.4 218s collecting ... collected 32 items / 4 deselected / 28 selected 218s 218s tests/test_fields.py::test_unhandled_field_type Creating test database for alias 'default'... 219s is currently unhandled, defaulting to str. 219s PASSED 219s tests/test_fields.py::test_custom_field PASSED 219s tests/test_fields.py::test_postgres_json_field PASSED 219s tests/test_fields.py::test_lazy_choice_field PASSED 219s tests/test_fields.py::test_enum_choices PASSED 219s tests/test_fields.py::test_enum_choices_generates_unique_enums PASSED 219s tests/test_fields.py::test_listing PASSED 219s tests/test_files.py::test_image_field_schema PASSED 219s tests/test_main.py::test_config_errors PASSED 219s tests/test_main.py::test_get_field_names PASSED 219s tests/test_queries.py::test_get_instance PASSED 219s tests/test_queries.py::test_get_instance_with_generic_foreign_key FAILED 219s tests/test_queries.py::test_get_queryset_with_reverse_one_to_one FAILED 219s tests/test_queries.py::test_get_queryset_with_foreign_key FAILED 219s tests/test_queries.py::test_get_queryset_with_reverse_foreign_key FAILED 219s tests/test_queries.py::test_get_queryset_with_generic_foreign_key PASSED 219s tests/test_relations.py::test_m2m FAILED 219s tests/test_relations.py::test_foreign_key FAILED 219s tests/test_relations.py::test_one_to_one FAILED 219s tests/test_relations.py::test_one_to_one_reverse FAILED 219s tests/test_relations.py::test_generic_relation FAILED 219s tests/test_relations.py::test_m2m_reverse FAILED 219s tests/test_schemas.py::test_description PASSED 219s tests/test_schemas.py::test_cache PASSED 219s tests/test_schemas.py::test_include_exclude PASSED 219s tests/test_schemas.py::test_json PASSED 219s tests/test_schemas.py::test_include_from_annotations FAILED 219s tests/test_schemas.py::test_by_alias_generator Destroying test database for alias 'default'... 219s PASSED 219s 219s =================================== FAILURES =================================== 219s __________________ test_get_instance_with_generic_foreign_key __________________ 219s 219s @pytest.mark.django_db 219s def test_get_instance_with_generic_foreign_key(): 219s 219s bookmark = Bookmark.objects.create(url="https://www.djangoproject.com/") 219s Tagged.objects.create(content_object=bookmark, slug="django") 219s 219s class TaggedSchema(ModelSchema): 219s class Config: 219s model = Tagged 219s 219s class BookmarkWithTaggedSchema(ModelSchema): 219s 219s tags: List[TaggedSchema] 219s 219s class Config: 219s model = Bookmark 219s 219s bookmark_with_tagged_schema = BookmarkWithTaggedSchema.from_django(bookmark) 219s 219s > assert bookmark_with_tagged_schema.dict() == { 219s "id": 1, 219s "tags": [ 219s { 219s 'content_object': 1, 219s "content_type": 20, 219s "id": 1, 219s "object_id": 1, 219s "slug": "django", 219s } 219s ], 219s "url": "https://www.djangoproject.com/", 219s } 219s E AssertionError: assert {'id': 1, 'ta...project.com/'} == {'id': 1, 'ta...project.com/'} 219s E 219s E Omitting 2 identical items, use -vv to show 219s E Differing items: 219s E {'tags': [{'id': 1}]} != {'tags': [{'content_object': 1, 'content_type': 20, 'id': 1, 'object_id': 1, ...}]} 219s E 219s E Full diff: 219s E {... 219s E 219s E ...Full output truncated (12 lines hidden), use '-vv' to show 219s 219s tests/test_queries.py:46: AssertionError 219s __________________ test_get_queryset_with_reverse_one_to_one ___________________ 219s 219s @pytest.mark.django_db 219s def test_get_queryset_with_reverse_one_to_one(): 219s """ 219s Test retrieving a Django queryset with reverse one-to-one relationships. 219s """ 219s user_data = [ 219s {"first_name": "Jordan", "email": "jordan@eremieff.com"}, 219s {"first_name": "Sara", "email": "sara@example.com"}, 219s ] 219s for kwargs in user_data: 219s user = User.objects.create(**kwargs) 219s Profile.objects.create(user=user, location="Australia") 219s 219s class UserSchema(ModelSchema): 219s class Config: 219s model = User 219s include = ["id", "email", "first_name", "profile"] 219s 219s users = User.objects.all() 219s user_schema_qs = UserSchema.from_django(users, many=True) 219s assert user_schema_qs == [ 219s { 219s "email": "jordan@eremieff.com", 219s "first_name": "Jordan", 219s "id": 1, 219s "profile": 1, 219s }, 219s {"email": "sara@example.com", "first_name": "Sara", "id": 2, "profile": 2}, 219s ] 219s 219s # Test when using a declared sub-model 219s class ProfileSchema(ModelSchema): 219s class Config: 219s model = Profile 219s include = ["id", "location"] 219s 219s class UserWithProfileSchema(ModelSchema): 219s 219s profile: ProfileSchema 219s 219s class Config: 219s model = User 219s exclude = ["created_at", "updated_at", "last_name"] 219s 219s users = User.objects.all() 219s 219s user_with_profile_schema_qs = UserWithProfileSchema.from_django(users, many=True) 219s > assert user_with_profile_schema_qs == [ 219s { 219s "email": "jordan@eremieff.com", 219s "first_name": "Jordan", 219s "id": 1, 219s "profile": {"id": 1, "location": "Australia"}, 219s }, 219s { 219s "email": "sara@example.com", 219s "first_name": "Sara", 219s "id": 2, 219s "profile": {"id": 2, "location": "Australia"}, 219s }, 219s ] 219s E AssertionError: assert [UserWithProf...example.com')] == [{'email': 'j...'Australia'}}] 219s E 219s E At index 0 diff: UserWithProfileSchema(profile=1, id=1, first_name='Jordan', email='jordan@eremieff.com') != {'email': 'jordan@eremieff.com', 'first_name': 'Jordan', 'id': 1, 'profile': {'id': 1, 'location': 'Australia'}} 219s E 219s E Full diff: 219s E [ 219s E + UserWithProfileSchema(profile=1, id=1, first_name='Jordan', email='jordan@eremieff.com'), 219s E + UserWithProfileSchema(profile=2, id=2, first_name='Sara', email='sara@example.com'),... 219s E 219s E ...Full output truncated (19 lines hidden), use '-vv' to show 219s 219s tests/test_queries.py:108: AssertionError 219s ______________________ test_get_queryset_with_foreign_key ______________________ 219s 219s @pytest.mark.django_db 219s def test_get_queryset_with_foreign_key(): 219s """ 219s Test retrieving a Django queryset with foreign-key relationships. 219s """ 219s 219s thread = Thread.objects.create(title="My thread topic") 219s thread2 = Thread.objects.create(title="Another topic") 219s for content in ("I agree.", "I disagree!", "lol"): 219s message_one = Message.objects.create(content=content, thread=thread) 219s Message.objects.create(content=content, thread=thread2) 219s 219s class MessageSchema(ModelSchema): 219s class Config: 219s model = Message 219s exclude = ["created_at"] 219s 219s schema = MessageSchema.from_django(message_one) 219s assert schema.dict() == {"id": 5, "content": "lol", "thread": 1} 219s 219s class ThreadSchema(ModelSchema): 219s class Config: 219s model = Thread 219s exclude = ["created_at"] 219s 219s class MessageWithThreadSchema(ModelSchema): 219s thread: ThreadSchema 219s 219s class Config: 219s model = Message 219s exclude = ["created_at"] 219s 219s schema = MessageWithThreadSchema.from_django(message_one) 219s > assert schema.dict() == { 219s "id": 5, 219s "content": "lol", 219s "thread": { 219s "messages": [{"id": 1}, {"id": 3}, {"id": 5}], 219s "id": 1, 219s "title": "My thread topic", 219s }, 219s } 219s E AssertionError: assert {'content': '..., 'thread': 1} == {'content': '...hread topic'}} 219s E 219s E Omitting 2 identical items, use -vv to show 219s E Differing items: 219s E {'thread': 1} != {'thread': {'id': 1, 'messages': [{'id': 1}, {'id': 3}, {'id': 5}], 'title': 'My thread topic'}} 219s E 219s E Full diff: 219s E {... 219s E 219s E ...Full output truncated (21 lines hidden), use '-vv' to show 219s 219s tests/test_queries.py:157: AssertionError 219s __________________ test_get_queryset_with_reverse_foreign_key __________________ 219s 219s @pytest.mark.django_db 219s def test_get_queryset_with_reverse_foreign_key(): 219s """ 219s Test retrieving a Django queryset with reverse foreign-key relationships. 219s """ 219s 219s thread = Thread.objects.create(title="My thread topic") 219s thread2 = Thread.objects.create(title="Another topic") 219s for content in ("I agree.", "I disagree!", "lol"): 219s Message.objects.create(content=content, thread=thread) 219s Message.objects.create(content=content, thread=thread2) 219s 219s threads = Thread.objects.all() 219s 219s class MessageSchema(ModelSchema): 219s class Config: 219s model = Message 219s include = ["id", "content"] 219s 219s class ThreadSchema(ModelSchema): 219s class Config: 219s model = Thread 219s 219s thread_schema_qs = ThreadSchema.from_django(threads, many=True) 219s thread_schemas = [t.dict() for t in thread_schema_qs] 219s assert thread_schemas == [ 219s { 219s "messages": [{"id": 2}, {"id": 4}, {"id": 6}], 219s "id": 2, 219s "title": "Another topic", 219s }, 219s { 219s "messages": [{"id": 1}, {"id": 3}, {"id": 5}], 219s "id": 1, 219s "title": "My thread topic", 219s }, 219s ] 219s 219s # Test when using a declared sub-model 219s class ThreadWithMessageListSchema(ModelSchema): 219s messages: List[MessageSchema] 219s 219s class Config: 219s model = Thread 219s exclude = ["created_at", "updated_at"] 219s 219s thread_with_message_list_schema_qs = ThreadWithMessageListSchema.from_django( 219s threads, many=True 219s ) 219s 219s > assert thread_with_message_list_schema_qs == [ 219s { 219s "messages": [ 219s {"id": 2, "content": "I agree."}, 219s {"id": 4, "content": "I disagree!"}, 219s {"id": 6, "content": "lol"}, 219s ], 219s "id": 2, 219s "title": "Another topic", 219s }, 219s { 219s "messages": [ 219s {"id": 1, "content": "I agree."}, 219s {"id": 3, "content": "I disagree!"}, 219s {"id": 5, "content": "lol"}, 219s ], 219s "id": 1, 219s "title": "My thread topic", 219s }, 219s ] 219s E AssertionError: assert [ThreadWithMe...hread topic')] == [{'id': 2, 'm...hread topic'}] 219s E 219s E At index 0 diff: ThreadWithMessageListSchema(messages=[{'id': 2}, {'id': 4}, {'id': 6}], id=2, title='Another topic') != {'messages': [{'id': 2, 'content': 'I agree.'}, {'id': 4, 'content': 'I disagree!'}, {'id': 6, 'content': 'lol'}], 'id': 2, 'title': 'Another topic'} 219s E 219s E Full diff: 219s E [ 219s E + ThreadWithMessageListSchema(messages=[{'id': 2}, {'id': 4}, {'id': 6}], id=2, title='Another topic'), 219s E + ThreadWithMessageListSchema(messages=[{'id': 1}, {'id': 3}, {'id': 5}], id=1, title='My thread topic'),... 219s E 219s E ...Full output truncated (37 lines hidden), use '-vv' to show 219s 219s tests/test_queries.py:218: AssertionError 219s ___________________________________ test_m2m ___________________________________ 219s 219s @pytest.mark.django_db 219s def test_m2m(): 219s """ 219s Test forward m2m relationships. 219s """ 219s 219s class ArticleSchema(ModelSchema): 219s class Config: 219s model = Article 219s 219s assert ArticleSchema.schema() == { 219s "title": "ArticleSchema", 219s "description": "A news article.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "headline": { 219s "title": "Headline", 219s "description": "headline", 219s "maxLength": 100, 219s "type": "string", 219s }, 219s "pub_date": { 219s "title": "Pub Date", 219s "description": "pub_date", 219s "type": "string", 219s "format": "date", 219s }, 219s "publications": { 219s "title": "Publications", 219s "description": "id", 219s "type": "array", 219s "items": { 219s "type": "object", 219s "additionalProperties": {"type": "integer"}, 219s }, 219s }, 219s }, 219s "required": ["headline", "pub_date", "publications"], 219s } 219s 219s class PublicationSchema(ModelSchema): 219s class Config: 219s model = Publication 219s 219s class ArticleWithPublicationListSchema(ModelSchema): 219s publications: List[PublicationSchema] 219s 219s class Config: 219s model = Article 219s 219s > assert ArticleWithPublicationListSchema.schema() == { 219s "title": "ArticleWithPublicationListSchema", 219s "description": "A news article.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "headline": { 219s "title": "Headline", 219s "description": "headline", 219s "maxLength": 100, 219s "type": "string", 219s }, 219s "pub_date": { 219s "title": "Pub Date", 219s "description": "pub_date", 219s "type": "string", 219s "format": "date", 219s }, 219s "publications": { 219s "title": "Publications", 219s "type": "array", 219s "items": {"$ref": "#/definitions/PublicationSchema"}, 219s }, 219s }, 219s "required": ["headline", "pub_date", "publications"], 219s "definitions": { 219s "PublicationSchema": { 219s "title": "PublicationSchema", 219s "description": "A news publication.", 219s "type": "object", 219s "properties": { 219s "article_set": { 219s "title": "Article Set", 219s "description": "id", 219s "type": "array", 219s "items": { 219s "type": "object", 219s "additionalProperties": {"type": "integer"}, 219s }, 219s }, 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "title": { 219s "title": "Title", 219s "description": "title", 219s "maxLength": 30, 219s "type": "string", 219s }, 219s }, 219s "required": ["title"], 219s } 219s }, 219s } 219s E AssertionError: assert {'description...tSchema', ...} == {'definitions...ations'], ...} 219s E 219s E Omitting 4 identical items, use -vv to show 219s E Differing items: 219s E {'properties': {'headline': {'description': 'headline', 'maxLength': 100, 'title': 'Headline', 'type': 'string'}, 'id'..., 'items': {'additionalProperties': {'type': 'integer'}, 'type': 'object'}, 'title': 'Publications', 'type': 'array'}}} != {'properties': {'headline': {'description': 'headline', 'maxLength': 100, 'title': 'Headline', 'type': 'string'}, 'id'...g'}, 'publications': {'items': {'$ref': '#/definitions/PublicationSchema'}, 'title': 'Publications', 'type': 'array'}}} 219s E Right contains 1 more item: 219s E {'defi... 219s E 219s E ...Full output truncated (94 lines hidden), use '-vv' to show 219s 219s tests/test_relations.py:74: AssertionError 219s _______________________________ test_foreign_key _______________________________ 219s 219s @pytest.mark.django_db 219s def test_foreign_key(): 219s """ 219s Test forward foreign-key relationships. 219s """ 219s 219s class ThreadSchema(ModelSchema): 219s class Config: 219s model = Thread 219s 219s class MessageSchema(ModelSchema): 219s class Config: 219s model = Message 219s 219s assert MessageSchema.schema() == { 219s "title": "MessageSchema", 219s "description": "A message posted in a thread.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "content": {"title": "Content", "description": "content", "type": "string"}, 219s "created_at": { 219s "title": "Created At", 219s "description": "created_at", 219s "type": "string", 219s "format": "date-time", 219s }, 219s "thread": {"title": "Thread", "description": "id", "type": "integer"}, 219s }, 219s "required": ["content", "created_at", "thread"], 219s } 219s 219s class MessageWithThreadSchema(ModelSchema): 219s 219s thread: ThreadSchema 219s 219s class Config: 219s model = Message 219s 219s > assert MessageWithThreadSchema.schema() == { 219s "title": "MessageWithThreadSchema", 219s "description": "A message posted in a thread.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "content": {"title": "Content", "description": "content", "type": "string"}, 219s "created_at": { 219s "title": "Created At", 219s "description": "created_at", 219s "type": "string", 219s "format": "date-time", 219s }, 219s "thread": {"$ref": "#/definitions/ThreadSchema"}, 219s }, 219s "required": ["content", "created_at", "thread"], 219s "definitions": { 219s "ThreadSchema": { 219s "title": "ThreadSchema", 219s "description": "A thread of messages.", 219s "type": "object", 219s "properties": { 219s "messages": { 219s "title": "Messages", 219s "description": "id", 219s "type": "array", 219s "items": { 219s "type": "object", 219s "additionalProperties": {"type": "integer"}, 219s }, 219s }, 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "title": { 219s "title": "Title", 219s "description": "title", 219s "maxLength": 30, 219s "type": "string", 219s }, 219s }, 219s "required": ["title"], 219s } 219s }, 219s } 219s E AssertionError: assert {'description...dSchema', ...} == {'definitions...thread'], ...} 219s E 219s E Omitting 4 identical items, use -vv to show 219s E Differing items: 219s E {'properties': {'content': {'description': 'content', 'title': 'Content', 'type': 'string'}, 'created_at': {'descripti...tion': 'id', 'title': 'Id', 'type': 'integer'}, 'thread': {'description': 'id', 'title': 'Thread', 'type': 'integer'}}} != {'properties': {'content': {'description': 'content', 'title': 'Content', 'type': 'string'}, 'created_at': {'descripti...ng'}, 'id': {'description': 'id', 'title': 'Id', 'type': 'integer'}, 'thread': {'$ref': '#/definitions/ThreadSchema'}}} 219s E Right contains 1 more item: 219s E {'defi... 219s E 219s E ...Full output truncated (86 lines hidden), use '-vv' to show 219s 219s tests/test_relations.py:181: AssertionError 219s _______________________________ test_one_to_one ________________________________ 219s 219s @pytest.mark.django_db 219s def test_one_to_one(): 219s """ 219s Test forward one-to-one relationships. 219s """ 219s 219s class UserSchema(ModelSchema): 219s class Config: 219s model = User 219s 219s class ProfileSchema(ModelSchema): 219s class Config: 219s model = Profile 219s 219s assert ProfileSchema.schema() == { 219s "title": "ProfileSchema", 219s "description": "A user's profile.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "user": {"title": "User", "description": "id", "type": "integer"}, 219s "website": { 219s "title": "Website", 219s "description": "website", 219s "default": "", 219s "maxLength": 200, 219s "type": "string", 219s }, 219s "location": { 219s "title": "Location", 219s "description": "location", 219s "default": "", 219s "maxLength": 100, 219s "type": "string", 219s }, 219s }, 219s "required": ["user"], 219s } 219s 219s class ProfileWithUserSchema(ModelSchema): 219s user: UserSchema 219s 219s class Config: 219s model = Profile 219s 219s > assert ProfileWithUserSchema.schema() == { 219s "title": "ProfileWithUserSchema", 219s "description": "A user's profile.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "user": {"$ref": "#/definitions/UserSchema"}, 219s "website": { 219s "title": "Website", 219s "description": "website", 219s "default": "", 219s "maxLength": 200, 219s "type": "string", 219s }, 219s "location": { 219s "title": "Location", 219s "description": "location", 219s "default": "", 219s "maxLength": 100, 219s "type": "string", 219s }, 219s }, 219s "required": ["user"], 219s "definitions": { 219s "UserSchema": { 219s "title": "UserSchema", 219s "description": "A user of the application.", 219s "type": "object", 219s "properties": { 219s "profile": { 219s "title": "Profile", 219s "description": "id", 219s "type": "integer", 219s }, 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "first_name": { 219s "title": "First Name", 219s "description": "first_name", 219s "maxLength": 50, 219s "type": "string", 219s }, 219s "last_name": { 219s "title": "Last Name", 219s "description": "last_name", 219s "maxLength": 50, 219s "type": "string", 219s }, 219s "email": { 219s "title": "Email", 219s "description": "email", 219s "maxLength": 254, 219s "type": "string", 219s }, 219s "created_at": { 219s "title": "Created At", 219s "description": "created_at", 219s "type": "string", 219s "format": "date-time", 219s }, 219s "updated_at": { 219s "title": "Updated At", 219s "description": "updated_at", 219s "type": "string", 219s "format": "date-time", 219s }, 219s }, 219s "required": ["first_name", "email", "created_at", "updated_at"], 219s } 219s }, 219s } 219s E AssertionError: assert {'description...rSchema', ...} == {'definitions...['user'], ...} 219s E 219s E Omitting 4 identical items, use -vv to show 219s E Differing items: 219s E {'properties': {'id': {'description': 'id', 'title': 'Id', 'type': 'integer'}, 'location': {'default': '', 'descriptio..., 'type': 'integer'}, 'website': {'default': '', 'description': 'website', 'maxLength': 200, 'title': 'Website', ...}}} != {'properties': {'id': {'description': 'id', 'title': 'Id', 'type': 'integer'}, 'location': {'default': '', 'descriptio...nitions/UserSchema'}, 'website': {'default': '', 'description': 'website', 'maxLength': 200, 'title': 'Website', ...}}} 219s E Right contains 1 more item: 219s E {'defi... 219s E 219s E ...Full output truncated (129 lines hidden), use '-vv' to show 219s 219s tests/test_relations.py:325: AssertionError 219s ___________________________ test_one_to_one_reverse ____________________________ 219s 219s @pytest.mark.django_db 219s def test_one_to_one_reverse(): 219s """ 219s Test reverse one-to-one relationships. 219s """ 219s 219s class ProfileSchema(ModelSchema): 219s class Config: 219s model = Profile 219s 219s class UserSchema(ModelSchema): 219s class Config: 219s model = User 219s 219s assert ProfileSchema.schema() == { 219s "title": "ProfileSchema", 219s "description": "A user's profile.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "user": {"title": "User", "description": "id", "type": "integer"}, 219s "website": { 219s "title": "Website", 219s "description": "website", 219s "default": "", 219s "maxLength": 200, 219s "type": "string", 219s }, 219s "location": { 219s "title": "Location", 219s "description": "location", 219s "default": "", 219s "maxLength": 100, 219s "type": "string", 219s }, 219s }, 219s "required": ["user"], 219s } 219s 219s class UserWithProfileSchema(ModelSchema): 219s profile: ProfileSchema 219s 219s class Config: 219s model = User 219s 219s > assert UserWithProfileSchema.schema() == { 219s "title": "UserWithProfileSchema", 219s "description": "A user of the application.", 219s "type": "object", 219s "properties": { 219s "profile": {"$ref": "#/definitions/ProfileSchema"}, 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "first_name": { 219s "title": "First Name", 219s "description": "first_name", 219s "maxLength": 50, 219s "type": "string", 219s }, 219s "last_name": { 219s "title": "Last Name", 219s "description": "last_name", 219s "maxLength": 50, 219s "type": "string", 219s }, 219s "email": { 219s "title": "Email", 219s "description": "email", 219s "maxLength": 254, 219s "type": "string", 219s }, 219s "created_at": { 219s "title": "Created At", 219s "description": "created_at", 219s "type": "string", 219s "format": "date-time", 219s }, 219s "updated_at": { 219s "title": "Updated At", 219s "description": "updated_at", 219s "type": "string", 219s "format": "date-time", 219s }, 219s }, 219s "required": ["profile", "first_name", "email", "created_at", "updated_at"], 219s "definitions": { 219s "ProfileSchema": { 219s "title": "ProfileSchema", 219s "description": "A user's profile.", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "user": {"title": "User", "description": "id", "type": "integer"}, 219s "website": { 219s "title": "Website", 219s "description": "website", 219s "default": "", 219s "maxLength": 200, 219s "type": "string", 219s }, 219s "location": { 219s "title": "Location", 219s "description": "location", 219s "default": "", 219s "maxLength": 100, 219s "type": "string", 219s }, 219s }, 219s "required": ["user"], 219s } 219s }, 219s } 219s E AssertionError: assert {'description...eSchema', ...} == {'definitions...ted_at'], ...} 219s E 219s E Omitting 3 identical items, use -vv to show 219s E Differing items: 219s E {'required': ['first_name', 'email', 'created_at', 'updated_at']} != {'required': ['profile', 'first_name', 'email', 'created_at', 'updated_at']} 219s E {'properties': {'created_at': {'description': 'created_at', 'format': 'date-time', 'title': 'Created At', 'type': 'str...th': 50, 'title': 'First Name', 'type': 'string'}, 'id': {'description': 'id', 'title': 'Id', 'type': 'integer'}, ...}} != {'properties': {'created_at': {'description': 'created_at', 'format': 'date-time', 'title': 'Created At', 'type': 'str...th': 50... 219s E 219s E ...Full output truncated (115 lines hidden), use '-vv' to show 219s 219s tests/test_relations.py:442: AssertionError 219s ____________________________ test_generic_relation _____________________________ 219s 219s @pytest.mark.django_db 219s def test_generic_relation(): 219s """ 219s Test generic foreign-key relationships. 219s """ 219s 219s class TaggedSchema(ModelSchema): 219s class Config: 219s model = Tagged 219s 219s assert TaggedSchema.schema() == { 219s "title": "TaggedSchema", 219s "description": "Tagged(id, slug, content_type, object_id)", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "slug": { 219s "title": "Slug", 219s "description": "slug", 219s "maxLength": 50, 219s "type": "string", 219s }, 219s "content_type": { 219s "title": "Content Type", 219s "description": "id", 219s "type": "integer", 219s }, 219s "object_id": { 219s "title": "Object Id", 219s "description": "object_id", 219s "type": "integer", 219s }, 219s "content_object": { 219s "title": "Content Object", 219s "description": "content_object", 219s "type": "integer", 219s }, 219s }, 219s "required": ["slug", "content_type", "object_id", "content_object"], 219s } 219s 219s > class BookmarkSchema(ModelSchema): 219s 219s tests/test_relations.py:551: 219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 219s /usr/lib/python3/dist-packages/djantic/main.py:45: in __new__ 219s cls = super().__new__(mcs, name, bases, namespace) 219s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 219s /usr/lib/python3/dist-packages/pydantic/v1/main.py:221: in __new__ 219s inferred = ModelField.infer( 219s /usr/lib/python3/dist-packages/pydantic/v1/fields.py:504: in infer 219s return cls( 219s /usr/lib/python3/dist-packages/pydantic/v1/fields.py:434: in __init__ 219s self.prepare() 219s /usr/lib/python3/dist-packages/pydantic/v1/fields.py:544: in prepare 219s self._set_default_and_type() 219s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 219s 219s self = ModelField(name='tags', type=UndefinedType, required=False, default=None) 219s 219s def _set_default_and_type(self) -> None: 219s """ 219s Set the default value, infer the type if needed and check if `None` value is valid. 219s """ 219s if self.default_factory is not None: 219s if self.type_ is Undefined: 219s raise errors_.ConfigError( 219s f'you need to set the type of field {self.name!r} when using `default_factory`' 219s ) 219s return 219s 219s default_value = self.get_default() 219s 219s if default_value is not None and self.type_ is Undefined: 219s self.type_ = default_value.__class__ 219s self.outer_type_ = self.type_ 219s self.annotation = self.type_ 219s 219s if self.type_ is Undefined: 219s > raise errors_.ConfigError(f'unable to infer type for attribute "{self.name}"') 219s E pydantic.v1.errors.ConfigError: unable to infer type for attribute "tags" 219s 219s /usr/lib/python3/dist-packages/pydantic/v1/fields.py:576: ConfigError 219s _______________________________ test_m2m_reverse _______________________________ 219s 219s @pytest.mark.django_db 219s def test_m2m_reverse(): 219s class ExpertSchema(ModelSchema): 219s class Config: 219s model = Expert 219s 219s class CaseSchema(ModelSchema): 219s class Config: 219s model = Case 219s 219s assert ExpertSchema.schema() == { 219s "title": "ExpertSchema", 219s "description": "Expert(id, name)", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "name": { 219s "title": "Name", 219s "description": "name", 219s "maxLength": 128, 219s "type": "string", 219s }, 219s "cases": { 219s "title": "Cases", 219s "description": "id", 219s "type": "array", 219s "items": { 219s "type": "object", 219s "additionalProperties": {"type": "integer"}, 219s }, 219s }, 219s }, 219s "required": ["name", "cases"], 219s } 219s 219s assert CaseSchema.schema() == { 219s "title": "CaseSchema", 219s "description": "Case(id, name, details)", 219s "type": "object", 219s "properties": { 219s "related_experts": { 219s "title": "Related Experts", 219s "description": "id", 219s "type": "array", 219s "items": { 219s "type": "object", 219s "additionalProperties": {"type": "integer"}, 219s }, 219s }, 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "name": { 219s "title": "Name", 219s "description": "name", 219s "maxLength": 128, 219s "type": "string", 219s }, 219s "details": {"title": "Details", "description": "details", "type": "string"}, 219s }, 219s "required": ["name", "details"], 219s } 219s case = Case.objects.create(name="My Case", details="Some text data.") 219s expert = Expert.objects.create(name="My Expert") 219s case_schema = CaseSchema.from_django(case) 219s expert_schema = ExpertSchema.from_django(expert) 219s assert case_schema.dict() == { 219s "related_experts": [], 219s "id": 1, 219s "name": "My Case", 219s "details": "Some text data.", 219s } 219s assert expert_schema.dict() == {"id": 1, "name": "My Expert", "cases": []} 219s 219s expert.cases.add(case) 219s case_schema = CaseSchema.from_django(case) 219s expert_schema = ExpertSchema.from_django(expert) 219s assert case_schema.dict() == { 219s "related_experts": [{"id": 1}], 219s "id": 1, 219s "name": "My Case", 219s "details": "Some text data.", 219s } 219s assert expert_schema.dict() == {"id": 1, "name": "My Expert", "cases": [{"id": 1}]} 219s 219s class CustomExpertSchema(ModelSchema): 219s """Custom schema""" 219s 219s name: Optional[str] 219s 219s class Config: 219s model = Expert 219s 219s class CaseSchema(ModelSchema): 219s related_experts: List[CustomExpertSchema] 219s 219s class Config: 219s model = Case 219s 219s > assert CaseSchema.schema() == { 219s "title": "CaseSchema", 219s "description": "Case(id, name, details)", 219s "type": "object", 219s "properties": { 219s "related_experts": { 219s "title": "Related Experts", 219s "type": "array", 219s "items": {"$ref": "#/definitions/CustomExpertSchema"}, 219s }, 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "name": { 219s "title": "Name", 219s "description": "name", 219s "maxLength": 128, 219s "type": "string", 219s }, 219s "details": {"title": "Details", "description": "details", "type": "string"}, 219s }, 219s "required": ["related_experts", "name", "details"], 219s "definitions": { 219s "CustomExpertSchema": { 219s "title": "CustomExpertSchema", 219s "description": "Custom schema", 219s "type": "object", 219s "properties": { 219s "id": {"title": "Id", "description": "id", "type": "integer"}, 219s "name": {"title": "Name", "type": "string"}, 219s "cases": { 219s "title": "Cases", 219s "description": "id", 219s "type": "array", 219s "items": { 219s "type": "object", 219s "additionalProperties": {"type": "integer"}, 219s }, 219s }, 219s }, 219s "required": ["cases"], 219s } 219s }, 219s } 219s E AssertionError: assert {'description...eSchema', ...} == {'definitions...etails'], ...} 219s E 219s E Omitting 3 identical items, use -vv to show 219s E Differing items: 219s E {'required': ['name', 'details']} != {'required': ['related_experts', 'name', 'details']} 219s E {'properties': {'details': {'description': 'details', 'title': 'Details', 'type': 'string'}, 'id': {'description': 'id...items': {'additionalProperties': {'type': 'integer'}, 'type': 'object'}, 'title': 'Related Experts', 'type': 'array'}}} != {'properties': {'details': {'description': 'details', 'title': 'Details', 'type': 'string'}, 'id': {'description': 'id...elated_experts': {'items': {'$ref': '#/definitions/CustomExpert... 219s E 219s E ...Full output truncated (90 lines hidden), use '-vv' to show 219s 219s tests/test_relations.py:807: AssertionError 219s ________________________ test_include_from_annotations _________________________ 219s 219s @pytest.mark.django_db 219s def test_include_from_annotations(): 219s """ 219s Test include="__annotations__" config. 219s """ 219s 219s class ProfileSchema(ModelSchema): 219s website: str 219s 219s class Config: 219s model = Profile 219s include = "__annotations__" 219s 219s > assert ProfileSchema.schema() == { 219s "title": "ProfileSchema", 219s "description": "A user's profile.", 219s "type": "object", 219s "properties": { 219s "website": { 219s "title": "Website", 219s "type": "string" 219s } 219s }, 219s "required": [ 219s "website" 219s ] 219s } 219s E AssertionError: assert {'description...eSchema', ...} == {'description...eSchema', ...} 219s E 219s E Omitting 3 identical items, use -vv to show 219s E Differing items: 219s E {'required': ['user']} != {'required': ['website']} 219s E {'properties': {'id': {'description': 'id', 'title': 'Id', 'type': 'integer'}, 'location': {'default': '', 'descriptio..., 'type': 'integer'}, 'website': {'default': '', 'description': 'website', 'maxLength': 200, 'title': 'Website', ...}}} != {'properties': {'website': {'title': 'Website', 'type': 'string'}}} 219s E 219s E Full diff:... 219s E 219s E ...Full output truncated (35 lines hidden), use '-vv' to show 219s 219s tests/test_schemas.py:398: AssertionError 219s =============================== warnings summary =============================== 219s ../../../usr/lib/python3/dist-packages/djantic/main.py:12 219s /usr/lib/python3/dist-packages/djantic/main.py:12: UserWarning: Core Pydantic V1 functionality isn't compatible with Python 3.14 or greater. 219s from pydantic.v1 import BaseModel, ConfigError, create_model 219s 219s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 219s ============================= slowest 10 durations ============================= 219s 0.29s setup tests/test_fields.py::test_unhandled_field_type 219s 0.01s call tests/test_relations.py::test_m2m_reverse 219s 0.01s call tests/test_queries.py::test_get_queryset_with_reverse_foreign_key 219s 0.01s call tests/test_relations.py::test_one_to_one_reverse 219s 0.01s call tests/test_queries.py::test_get_queryset_with_reverse_one_to_one 219s 0.01s call tests/test_relations.py::test_m2m 219s 0.01s call tests/test_relations.py::test_one_to_one 219s 0.01s call tests/test_schemas.py::test_include_exclude 219s 0.01s call tests/test_queries.py::test_get_queryset_with_foreign_key 219s 0.01s call tests/test_schemas.py::test_description 219s =========================== short test summary info ============================ 219s FAILED tests/test_queries.py::test_get_instance_with_generic_foreign_key - As... 219s FAILED tests/test_queries.py::test_get_queryset_with_reverse_one_to_one - Ass... 219s FAILED tests/test_queries.py::test_get_queryset_with_foreign_key - AssertionE... 219s FAILED tests/test_queries.py::test_get_queryset_with_reverse_foreign_key - As... 219s FAILED tests/test_relations.py::test_m2m - AssertionError: assert {'descripti... 219s FAILED tests/test_relations.py::test_foreign_key - AssertionError: assert {'d... 219s FAILED tests/test_relations.py::test_one_to_one - AssertionError: assert {'de... 219s FAILED tests/test_relations.py::test_one_to_one_reverse - AssertionError: ass... 219s FAILED tests/test_relations.py::test_generic_relation - pydantic.v1.errors.Co... 219s FAILED tests/test_relations.py::test_m2m_reverse - AssertionError: assert {'d... 219s FAILED tests/test_schemas.py::test_include_from_annotations - AssertionError:... 219s ============ 11 failed, 17 passed, 4 deselected, 1 warning in 0.94s ============ 220s autopkgtest [20:43:44]: test upstream: -----------------------] 220s upstream FAIL non-zero exit status 1 220s autopkgtest [20:43:44]: test upstream: - - - - - - - - - - results - - - - - - - - - - 220s autopkgtest [20:43:44]: @@@@@@@@@@@@@@@@@@@@ summary 220s upstream FAIL non-zero exit status 1