0s autopkgtest [23:26:27]: starting date and time: 2025-01-03 23:26:27+0000 0s autopkgtest [23:26:27]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [23:26:27]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.1wthb2ah/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults --apt-upgrade pyjwt --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=python3-defaults/3.13.1-1~exp2' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-ppc64el --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@bos03-ppc64el-7.secgroup --name adt-plucky-ppc64el-pyjwt-20250103-232627-juju-7f2275-prod-proposed-migration-environment-20-12dc8523-503b-49c9-a7ab-bf4549803b2b --image adt/ubuntu-plucky-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-proposed-migration-ppc64el -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,radosgw.ps5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 89s autopkgtest [23:27:56]: testbed dpkg architecture: ppc64el 89s autopkgtest [23:27:56]: testbed apt version: 2.9.18 90s autopkgtest [23:27:57]: @@@@@@@@@@@@@@@@@@@@ test bed setup 90s autopkgtest [23:27:57]: testbed release detected to be: None 90s autopkgtest [23:27:57]: updating testbed package index (apt update) 91s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 91s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 91s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 91s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 91s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [12.3 kB] 91s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 91s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [78.5 kB] 91s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [804 kB] 91s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el Packages [87.2 kB] 91s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted ppc64el Packages [756 B] 91s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe ppc64el Packages [693 kB] 91s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse ppc64el Packages [4084 B] 92s Fetched 1763 kB in 1s (1835 kB/s) 93s Reading package lists... 93s Reading package lists... 93s Building dependency tree... 93s Reading state information... 93s Calculating upgrade... 94s The following packages will be upgraded: 94s binutils binutils-common binutils-powerpc64le-linux-gnu libbinutils 94s libctf-nobfd0 libctf0 libsframe1 94s 7 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 94s Need to get 3752 kB of archives. 94s After this operation, 0 B of additional disk space will be used. 94s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el libctf0 ppc64el 2.43.50.20241230-1ubuntu1 [114 kB] 94s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libctf-nobfd0 ppc64el 2.43.50.20241230-1ubuntu1 [117 kB] 94s Get:3 http://ftpmaster.internal/ubuntu plucky/main ppc64el binutils-powerpc64le-linux-gnu ppc64el 2.43.50.20241230-1ubuntu1 [2569 kB] 94s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el libbinutils ppc64el 2.43.50.20241230-1ubuntu1 [711 kB] 94s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el binutils ppc64el 2.43.50.20241230-1ubuntu1 [3096 B] 94s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el binutils-common ppc64el 2.43.50.20241230-1ubuntu1 [222 kB] 94s Get:7 http://ftpmaster.internal/ubuntu plucky/main ppc64el libsframe1 ppc64el 2.43.50.20241230-1ubuntu1 [15.9 kB] 95s Fetched 3752 kB in 1s (5108 kB/s) 95s (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 ... 74025 files and directories currently installed.) 95s Preparing to unpack .../0-libctf0_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking libctf0:ppc64el (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Preparing to unpack .../1-libctf-nobfd0_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking libctf-nobfd0:ppc64el (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Preparing to unpack .../2-binutils-powerpc64le-linux-gnu_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking binutils-powerpc64le-linux-gnu (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Preparing to unpack .../3-libbinutils_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking libbinutils:ppc64el (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Preparing to unpack .../4-binutils_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking binutils (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Preparing to unpack .../5-binutils-common_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking binutils-common:ppc64el (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Preparing to unpack .../6-libsframe1_2.43.50.20241230-1ubuntu1_ppc64el.deb ... 95s Unpacking libsframe1:ppc64el (2.43.50.20241230-1ubuntu1) over (2.43.50.20241221-1ubuntu1) ... 95s Setting up binutils-common:ppc64el (2.43.50.20241230-1ubuntu1) ... 95s Setting up libctf-nobfd0:ppc64el (2.43.50.20241230-1ubuntu1) ... 95s Setting up libsframe1:ppc64el (2.43.50.20241230-1ubuntu1) ... 95s Setting up libbinutils:ppc64el (2.43.50.20241230-1ubuntu1) ... 95s Setting up libctf0:ppc64el (2.43.50.20241230-1ubuntu1) ... 95s Setting up binutils-powerpc64le-linux-gnu (2.43.50.20241230-1ubuntu1) ... 95s Setting up binutils (2.43.50.20241230-1ubuntu1) ... 95s Processing triggers for libc-bin (2.40-4ubuntu1) ... 95s Processing triggers for man-db (2.13.0-1) ... 96s Reading package lists... 96s Building dependency tree... 96s Reading state information... 96s 0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded. 96s autopkgtest [23:28:03]: upgrading testbed (apt dist-upgrade and autopurge) 97s Reading package lists... 97s Building dependency tree... 97s Reading state information... 97s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 97s Starting 2 pkgProblemResolver with broken count: 0 97s Done 97s Entering ResolveByKeep 98s 98s The following packages were automatically installed and are no longer required: 98s python3.12 python3.12-minimal 98s Use 'sudo apt autoremove' to remove them. 98s The following NEW packages will be installed: 98s libpython3.13-minimal libpython3.13-stdlib python3.13 python3.13-minimal 98s The following packages will be upgraded: 98s libpython3-stdlib python3 python3-minimal 98s 3 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. 98s Need to get 6300 kB of archives. 98s After this operation, 26.2 MB of additional disk space will be used. 98s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-minimal ppc64el 3.13.1-2 [883 kB] 98s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13-minimal ppc64el 3.13.1-2 [2496 kB] 98s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el python3-minimal ppc64el 3.13.1-1~exp2 [27.6 kB] 98s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el python3 ppc64el 3.13.1-1~exp2 [24.0 kB] 98s Get:5 http://ftpmaster.internal/ubuntu plucky/main ppc64el libpython3.13-stdlib ppc64el 3.13.1-2 [2131 kB] 99s Get:6 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.13 ppc64el 3.13.1-2 [729 kB] 99s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el libpython3-stdlib ppc64el 3.13.1-1~exp2 [10.2 kB] 99s Fetched 6300 kB in 1s (7683 kB/s) 99s Selecting previously unselected package libpython3.13-minimal:ppc64el. 99s (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 ... 74025 files and directories currently installed.) 99s Preparing to unpack .../libpython3.13-minimal_3.13.1-2_ppc64el.deb ... 99s Unpacking libpython3.13-minimal:ppc64el (3.13.1-2) ... 99s Selecting previously unselected package python3.13-minimal. 99s Preparing to unpack .../python3.13-minimal_3.13.1-2_ppc64el.deb ... 99s Unpacking python3.13-minimal (3.13.1-2) ... 99s Setting up libpython3.13-minimal:ppc64el (3.13.1-2) ... 99s Setting up python3.13-minimal (3.13.1-2) ... 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 ... 74345 files and directories currently installed.) 100s Preparing to unpack .../python3-minimal_3.13.1-1~exp2_ppc64el.deb ... 100s Unpacking python3-minimal (3.13.1-1~exp2) over (3.12.8-1) ... 100s Setting up python3-minimal (3.13.1-1~exp2) ... 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 ... 74345 files and directories currently installed.) 100s Preparing to unpack .../python3_3.13.1-1~exp2_ppc64el.deb ... 100s Unpacking python3 (3.13.1-1~exp2) over (3.12.8-1) ... 100s Selecting previously unselected package libpython3.13-stdlib:ppc64el. 100s Preparing to unpack .../libpython3.13-stdlib_3.13.1-2_ppc64el.deb ... 100s Unpacking libpython3.13-stdlib:ppc64el (3.13.1-2) ... 100s Selecting previously unselected package python3.13. 100s Preparing to unpack .../python3.13_3.13.1-2_ppc64el.deb ... 100s Unpacking python3.13 (3.13.1-2) ... 100s Preparing to unpack .../libpython3-stdlib_3.13.1-1~exp2_ppc64el.deb ... 100s Unpacking libpython3-stdlib:ppc64el (3.13.1-1~exp2) over (3.12.8-1) ... 100s Setting up libpython3.13-stdlib:ppc64el (3.13.1-2) ... 100s Setting up libpython3-stdlib:ppc64el (3.13.1-1~exp2) ... 100s Setting up python3.13 (3.13.1-2) ... 101s Setting up python3 (3.13.1-1~exp2) ... 101s /usr/bin/py3clean:101: DeprecationWarning: glob.glob1 is deprecated and will be removed in Python 3.15. Use glob.glob and pass a directory to its root_dir argument instead. 101s for fn in glob1(directory, "%s.*" % fname): 102s Processing triggers for man-db (2.13.0-1) ... 102s Processing triggers for systemd (257-2ubuntu1) ... 102s Reading package lists... 102s Building dependency tree... 102s Reading state information... 103s Starting pkgProblemResolver with broken count: 0 103s Starting 2 pkgProblemResolver with broken count: 0 103s Done 103s The following packages will be REMOVED: 103s python3.12* python3.12-minimal* 103s 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded. 103s After this operation, 9889 kB disk space will be freed. 103s (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 ... 74762 files and directories currently installed.) 103s Removing python3.12 (3.12.8-3) ... 103s Removing python3.12-minimal (3.12.8-3) ... 103s /usr/bin/py3clean:125: DeprecationWarning: glob.glob1 is deprecated and will be removed in Python 3.15. Use glob.glob and pass a directory to its root_dir argument instead. 103s for fn in glob1(directory, "%s.%s.py[co]" % (fname, magic_tag)): 104s Processing triggers for man-db (2.13.0-1) ... 104s Processing triggers for systemd (257-2ubuntu1) ... 104s (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 ... 74734 files and directories currently installed.) 104s Purging configuration files for python3.12-minimal (3.12.8-3) ... 107s autopkgtest [23:28:14]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP Mon Sep 16 13:49:23 UTC 2024 107s autopkgtest [23:28:14]: @@@@@@@@@@@@@@@@@@@@ apt-source pyjwt 108s Get:1 http://ftpmaster.internal/ubuntu plucky/main pyjwt 2.7.0-1 (dsc) [2280 B] 108s Get:2 http://ftpmaster.internal/ubuntu plucky/main pyjwt 2.7.0-1 (tar) [77.9 kB] 108s Get:3 http://ftpmaster.internal/ubuntu plucky/main pyjwt 2.7.0-1 (diff) [4540 B] 109s gpgv: Signature made Thu Jun 15 03:10:18 2023 UTC 109s gpgv: using RSA key C65AEF9FE5BF8CCBD6EDB0198BAF522C0D6CCEDD 109s gpgv: issuer "eriol@debian.org" 109s gpgv: Can't check signature: No public key 109s dpkg-source: warning: cannot verify inline signature for ./pyjwt_2.7.0-1.dsc: no acceptable signature found 109s autopkgtest [23:28:16]: testing package pyjwt version 2.7.0-1 109s autopkgtest [23:28:16]: build not needed 109s autopkgtest [23:28:16]: test python3-jwt: preparing testbed 109s Reading package lists... 110s Building dependency tree... 110s Reading state information... 110s Starting pkgProblemResolver with broken count: 0 110s Starting 2 pkgProblemResolver with broken count: 0 110s Done 110s The following NEW packages will be installed: 110s libjs-jquery libjs-jquery-hotkeys libjs-jquery-isonscreen 110s libjs-jquery-metadata libjs-jquery-tablesorter 110s libjs-jquery-throttle-debounce python3-all python3-coverage 110s python3-exceptiongroup python3-iniconfig python3-packaging python3-pluggy 110s python3-pytest python3-pytest-cov python3-pytest-runner python3-tomli 110s python3.12 python3.12-minimal 110s 0 upgraded, 18 newly installed, 0 to remove and 0 not upgraded. 110s Need to get 4230 kB of archives. 110s After this operation, 14.9 MB of additional disk space will be used. 110s Get:1 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.12-minimal ppc64el 3.12.8-3 [2465 kB] 111s Get:2 http://ftpmaster.internal/ubuntu plucky/main ppc64el libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 111s Get:3 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-hotkeys all 0~20130707+git2d51e3a9+dfsg-2.1 [11.5 kB] 111s Get:4 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3.12 ppc64el 3.12.8-3 [667 kB] 111s Get:5 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-metadata all 12-4 [6582 B] 111s Get:6 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-tablesorter all 1:2.31.3+dfsg1-4 [192 kB] 111s Get:7 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-throttle-debounce all 1.1+dfsg.1-2 [12.5 kB] 111s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main ppc64el python3-all ppc64el 3.13.1-1~exp2 [896 B] 111s Get:9 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-coverage ppc64el 7.4.4+dfsg1-0ubuntu3 [151 kB] 111s Get:10 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-exceptiongroup all 1.2.2-1 [17.8 kB] 111s Get:11 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-iniconfig all 1.1.1-2 [6024 B] 111s Get:12 http://ftpmaster.internal/ubuntu plucky/main ppc64el python3-packaging all 24.2-1 [51.5 kB] 111s Get:13 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pluggy all 1.5.0-1 [21.0 kB] 111s Get:14 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-tomli all 2.0.1-2 [16.5 kB] 111s Get:15 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pytest all 8.3.3-1 [251 kB] 111s Get:16 http://ftpmaster.internal/ubuntu plucky/universe ppc64el libjs-jquery-isonscreen all 1.2.0-1.1 [3244 B] 111s Get:17 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pytest-cov all 5.0.0-1 [21.3 kB] 111s Get:18 http://ftpmaster.internal/ubuntu plucky/universe ppc64el python3-pytest-runner all 2.11.1-4 [7450 B] 111s Fetched 4230 kB in 1s (5180 kB/s) 111s Selecting previously unselected package python3.12-minimal. 111s (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 ... 74734 files and directories currently installed.) 111s Preparing to unpack .../00-python3.12-minimal_3.12.8-3_ppc64el.deb ... 111s Unpacking python3.12-minimal (3.12.8-3) ... 111s Selecting previously unselected package libjs-jquery. 111s Preparing to unpack .../01-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 111s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 111s Selecting previously unselected package libjs-jquery-hotkeys. 111s Preparing to unpack .../02-libjs-jquery-hotkeys_0~20130707+git2d51e3a9+dfsg-2.1_all.deb ... 111s Unpacking libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2.1) ... 111s Selecting previously unselected package python3.12. 111s Preparing to unpack .../03-python3.12_3.12.8-3_ppc64el.deb ... 111s Unpacking python3.12 (3.12.8-3) ... 111s Selecting previously unselected package libjs-jquery-metadata. 111s Preparing to unpack .../04-libjs-jquery-metadata_12-4_all.deb ... 111s Unpacking libjs-jquery-metadata (12-4) ... 111s Selecting previously unselected package libjs-jquery-tablesorter. 111s Preparing to unpack .../05-libjs-jquery-tablesorter_1%3a2.31.3+dfsg1-4_all.deb ... 111s Unpacking libjs-jquery-tablesorter (1:2.31.3+dfsg1-4) ... 111s Selecting previously unselected package libjs-jquery-throttle-debounce. 111s Preparing to unpack .../06-libjs-jquery-throttle-debounce_1.1+dfsg.1-2_all.deb ... 111s Unpacking libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 111s Selecting previously unselected package python3-all. 111s Preparing to unpack .../07-python3-all_3.13.1-1~exp2_ppc64el.deb ... 111s Unpacking python3-all (3.13.1-1~exp2) ... 111s Selecting previously unselected package python3-coverage. 111s Preparing to unpack .../08-python3-coverage_7.4.4+dfsg1-0ubuntu3_ppc64el.deb ... 111s Unpacking python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 111s Selecting previously unselected package python3-exceptiongroup. 111s Preparing to unpack .../09-python3-exceptiongroup_1.2.2-1_all.deb ... 111s Unpacking python3-exceptiongroup (1.2.2-1) ... 111s Selecting previously unselected package python3-iniconfig. 111s Preparing to unpack .../10-python3-iniconfig_1.1.1-2_all.deb ... 111s Unpacking python3-iniconfig (1.1.1-2) ... 111s Selecting previously unselected package python3-packaging. 111s Preparing to unpack .../11-python3-packaging_24.2-1_all.deb ... 111s Unpacking python3-packaging (24.2-1) ... 111s Selecting previously unselected package python3-pluggy. 111s Preparing to unpack .../12-python3-pluggy_1.5.0-1_all.deb ... 111s Unpacking python3-pluggy (1.5.0-1) ... 111s Selecting previously unselected package python3-tomli. 111s Preparing to unpack .../13-python3-tomli_2.0.1-2_all.deb ... 111s Unpacking python3-tomli (2.0.1-2) ... 112s Selecting previously unselected package python3-pytest. 112s Preparing to unpack .../14-python3-pytest_8.3.3-1_all.deb ... 112s Unpacking python3-pytest (8.3.3-1) ... 112s Selecting previously unselected package libjs-jquery-isonscreen. 112s Preparing to unpack .../15-libjs-jquery-isonscreen_1.2.0-1.1_all.deb ... 112s Unpacking libjs-jquery-isonscreen (1.2.0-1.1) ... 112s Selecting previously unselected package python3-pytest-cov. 112s Preparing to unpack .../16-python3-pytest-cov_5.0.0-1_all.deb ... 112s Unpacking python3-pytest-cov (5.0.0-1) ... 112s Selecting previously unselected package python3-pytest-runner. 112s Preparing to unpack .../17-python3-pytest-runner_2.11.1-4_all.deb ... 112s Unpacking python3-pytest-runner (2.11.1-4) ... 112s Setting up python3-iniconfig (1.1.1-2) ... 112s Setting up python3.12-minimal (3.12.8-3) ... 113s Setting up python3-tomli (2.0.1-2) ... 113s Setting up python3.12 (3.12.8-3) ... 114s Setting up python3-all (3.13.1-1~exp2) ... 114s Setting up python3-coverage (7.4.4+dfsg1-0ubuntu3) ... 115s Setting up libjs-jquery-throttle-debounce (1.1+dfsg.1-2) ... 115s Setting up python3-packaging (24.2-1) ... 115s Setting up python3-pluggy (1.5.0-1) ... 115s Setting up python3-exceptiongroup (1.2.2-1) ... 115s Setting up python3-pytest-runner (2.11.1-4) ... 115s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 115s Setting up libjs-jquery-hotkeys (0~20130707+git2d51e3a9+dfsg-2.1) ... 115s Setting up python3-pytest (8.3.3-1) ... 116s Setting up libjs-jquery-metadata (12-4) ... 116s Setting up libjs-jquery-isonscreen (1.2.0-1.1) ... 116s Setting up libjs-jquery-tablesorter (1:2.31.3+dfsg1-4) ... 116s Setting up python3-pytest-cov (5.0.0-1) ... 116s Processing triggers for man-db (2.13.0-1) ... 117s Processing triggers for systemd (257-2ubuntu1) ... 117s autopkgtest [23:28:24]: test python3-jwt: [----------------------- 118s ============================= test session starts ============================== 118s platform linux -- Python 3.12.8, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.12 118s cachedir: .pytest_cache 118s rootdir: /tmp/autopkgtest.vwdcLq/build.U5s/src 118s configfile: tox.ini 118s testpaths: tests 118s plugins: typeguard-4.4.1, cov-5.0.0 118s collecting ... collected 256 items 118s 118s tests/test_advisory.py::TestAdvisory::test_ghsa_ffqj_6fqr_9h24 PASSED [ 0%] 118s tests/test_algorithms.py::TestAlgorithms::test_none_algorithm_should_throw_exception_if_key_is_not_none PASSED [ 0%] 118s tests/test_algorithms.py::TestAlgorithms::test_none_algorithm_should_throw_exception_on_to_jwk PASSED [ 1%] 118s tests/test_algorithms.py::TestAlgorithms::test_none_algorithm_should_throw_exception_on_from_jwk PASSED [ 1%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_reject_nonstring_key PASSED [ 1%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_accept_unicode_key PASSED [ 2%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey2_rsa.pub.pem0] PASSED [ 2%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey2_rsa.pub.pem1] PASSED [ 3%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey_pkcs1.pub.pem] PASSED [ 3%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey_rsa.cer] PASSED [ 3%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey_rsa.pub] PASSED [ 4%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_jwk_should_parse_and_verify PASSED [ 4%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_to_jwk_returns_correct_values[False] PASSED [ 5%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_to_jwk_returns_correct_values[True] PASSED [ 5%] 118s tests/test_algorithms.py::TestAlgorithms::test_hmac_from_jwk_should_raise_exception_if_not_hmac_key PASSED [ 5%] 118s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_parse_pem_public_key PASSED [ 6%] 118s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_accept_pem_private_key_bytes PASSED [ 6%] 118s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_accept_unicode_key PASSED [ 7%] 118s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_reject_non_string_key PASSED [ 7%] 118s tests/test_algorithms.py::TestAlgorithms::test_rsa_verify_should_return_false_if_signature_invalid PASSED [ 7%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_jwk_public_and_private_keys_should_parse_and_verify PASSED [ 8%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_jwk_fails_on_invalid_json PASSED [ 8%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_private_key_to_jwk_works_with_from_jwk PASSED [ 8%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_public_key_to_jwk_works_with_from_jwk PASSED [ 9%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_public_key[False] PASSED [ 9%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_public_key[True] PASSED [ 10%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_private_key[False] PASSED [ 10%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_private_key[True] PASSED [ 10%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_raises_exception_on_invalid_key PASSED [ 11%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_with_valid_curves[False] PASSED [ 11%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_with_valid_curves[True] PASSED [ 12%] 118s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_with_invalid_curve PASSED [ 12%] 118s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_public_and_private_keys_should_parse_and_verify PASSED [ 12%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_private_key_to_jwk_works_with_from_jwk PASSED [ 13%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_public_key_to_jwk_works_with_from_jwk PASSED [ 13%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_with_other_primes_is_invalid PASSED [ 14%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_with_missing_values_is_invalid PASSED [ 14%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_can_recover_prime_factors PASSED [ 14%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_with_missing_required_values_is_invalid PASSED [ 15%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_raises_exception_if_not_a_valid_key PASSED [ 15%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_public_key[False] PASSED [ 16%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_public_key[True] PASSED [ 16%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_private_key[False] PASSED [ 16%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_private_key[True] PASSED [ 17%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_raises_exception_on_invalid_key PASSED [ 17%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_from_jwk_raises_exception_on_invalid_key PASSED [ 17%] 119s tests/test_algorithms.py::TestAlgorithms::test_ec_should_reject_non_string_key PASSED [ 18%] 119s tests/test_algorithms.py::TestAlgorithms::test_ec_should_accept_pem_private_key_bytes PASSED [ 18%] 119s tests/test_algorithms.py::TestAlgorithms::test_ec_should_accept_ssh_public_key_bytes PASSED [ 19%] 119s tests/test_algorithms.py::TestAlgorithms::test_ec_verify_should_return_false_if_signature_invalid PASSED [ 19%] 119s tests/test_algorithms.py::TestAlgorithms::test_ec_verify_should_return_false_if_signature_wrong_length PASSED [ 19%] 119s tests/test_algorithms.py::TestAlgorithms::test_ec_should_throw_exception_on_wrong_key PASSED [ 20%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_pss_sign_then_verify_should_return_true PASSED [ 20%] 119s tests/test_algorithms.py::TestAlgorithms::test_rsa_pss_verify_should_return_false_if_signature_invalid PASSED [ 21%] 119s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_hmac_verify_should_return_true_for_test_vector PASSED [ 21%] 119s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_rsa_verify_should_return_true_for_test_vector PASSED [ 21%] 119s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_rsapss_verify_should_return_true_for_test_vector PASSED [ 22%] 119s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_ec_verify_should_return_true_for_test_vector PASSED [ 22%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_should_reject_non_string_key PASSED [ 23%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_sign_should_generate_correct_signature_value PASSED [ 23%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_verify_should_return_false_if_signature_invalid PASSED [ 23%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_verify_should_return_true_if_signature_valid PASSED [ 24%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_prepare_key_should_be_idempotent PASSED [ 24%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_private_key_should_parse_and_verify PASSED [ 25%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_private_key_should_parse_and_verify_with_private_key_as_is PASSED [ 25%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_public_key_should_parse_and_verify PASSED [ 25%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_fails_on_invalid_json PASSED [ 26%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_to_jwk_works_with_from_jwk[False] PASSED [ 26%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_to_jwk_works_with_from_jwk[True] PASSED [ 26%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_to_jwk_raises_exception_on_invalid_key PASSED [ 27%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_private_key_should_parse_and_verify PASSED [ 27%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_private_key_should_parse_and_verify_with_private_key_as_is PASSED [ 28%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_public_key_should_parse_and_verify PASSED [ 28%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_fails_on_invalid_json PASSED [ 28%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_to_jwk_works_with_from_jwk[False] PASSED [ 29%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_to_jwk_works_with_from_jwk[True] PASSED [ 29%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_rsa_can_compute_digest PASSED [ 30%] 119s tests/test_algorithms.py::TestOKPAlgorithms::test_hmac_can_compute_digest PASSED [ 30%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_from_jwk_data_dict PASSED [ 30%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_from_jwk_data_json_string PASSED [ 31%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_without_alg_from_dict PASSED [ 31%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_from_dict_with_algorithm PASSED [ 32%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_p256_from_dict PASSED [ 32%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_p384_from_dict PASSED [ 32%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_p521_from_dict PASSED [ 33%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_secp256k1_from_dict PASSED [ 33%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_hmac_from_dict PASSED [ 33%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_hmac_without_alg_from_dict PASSED [ 34%] 119s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_okp_without_alg_from_dict PASSED [ 34%] 119s tests/test_api_jwk.py::TestPyJWK::test_from_dict_should_throw_exception_if_arg_is_invalid PASSED [ 35%] 119s tests/test_api_jwk.py::TestPyJWK::test_missing_crypto_library_good_error_message SKIPPED [ 35%] 119s tests/test_api_jwk.py::TestPyJWKSet::test_should_load_keys_from_jwk_data_dict PASSED [ 35%] 119s tests/test_api_jwk.py::TestPyJWKSet::test_should_load_keys_from_jwk_data_json_string PASSED [ 36%] 119s tests/test_api_jwk.py::TestPyJWKSet::test_keyset_should_index_by_kid PASSED [ 36%] 119s tests/test_api_jwk.py::TestPyJWKSet::test_keyset_with_unknown_alg PASSED [ 37%] 119s tests/test_api_jwk.py::TestPyJWKSet::test_invalid_keys_list PASSED [ 37%] 119s tests/test_api_jwk.py::TestPyJWKSet::test_empty_keys_list PASSED [ 37%] 119s tests/test_api_jws.py::TestJWS::test_register_algo_does_not_allow_duplicate_registration PASSED [ 38%] 119s tests/test_api_jws.py::TestJWS::test_register_algo_rejects_non_algorithm_obj PASSED [ 38%] 119s tests/test_api_jws.py::TestJWS::test_unregister_algo_removes_algorithm PASSED [ 39%] 119s tests/test_api_jws.py::TestJWS::test_unregister_algo_throws_error_if_not_registered PASSED [ 39%] 119s tests/test_api_jws.py::TestJWS::test_algo_parameter_removes_alg_from_algorithms_list PASSED [ 39%] 119s tests/test_api_jws.py::TestJWS::test_override_options PASSED [ 40%] 119s tests/test_api_jws.py::TestJWS::test_non_object_options_dont_persist PASSED [ 40%] 119s tests/test_api_jws.py::TestJWS::test_options_must_be_dict PASSED [ 41%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode PASSED [ 41%] 119s tests/test_api_jws.py::TestJWS::test_decode_fails_when_alg_is_not_on_method_algorithms_param PASSED [ 41%] 119s tests/test_api_jws.py::TestJWS::test_decode_works_with_unicode_token PASSED [ 42%] 119s tests/test_api_jws.py::TestJWS::test_decode_missing_segments_throws_exception PASSED [ 42%] 119s tests/test_api_jws.py::TestJWS::test_decode_invalid_token_type_is_none PASSED [ 42%] 119s tests/test_api_jws.py::TestJWS::test_decode_invalid_token_type_is_int PASSED [ 43%] 119s tests/test_api_jws.py::TestJWS::test_decode_with_non_mapping_header_throws_exception PASSED [ 43%] 119s tests/test_api_jws.py::TestJWS::test_encode_algorithm_param_should_be_case_sensitive PASSED [ 44%] 119s tests/test_api_jws.py::TestJWS::test_encode_with_headers_alg_none PASSED [ 44%] 119s tests/test_api_jws.py::TestJWS::test_encode_with_headers_alg_es256 PASSED [ 44%] 119s tests/test_api_jws.py::TestJWS::test_encode_with_alg_hs256_and_headers_alg_es256 PASSED [ 45%] 119s tests/test_api_jws.py::TestJWS::test_decode_algorithm_param_should_be_case_sensitive PASSED [ 45%] 119s tests/test_api_jws.py::TestJWS::test_bad_secret PASSED [ 46%] 119s tests/test_api_jws.py::TestJWS::test_decodes_valid_jws PASSED [ 46%] 119s tests/test_api_jws.py::TestJWS::test_decodes_complete_valid_jws PASSED [ 46%] 119s tests/test_api_jws.py::TestJWS::test_decodes_valid_es384_jws PASSED [ 47%] 119s tests/test_api_jws.py::TestJWS::test_decodes_valid_rs384_jws PASSED [ 47%] 119s tests/test_api_jws.py::TestJWS::test_load_verify_valid_jws PASSED [ 48%] 119s tests/test_api_jws.py::TestJWS::test_allow_skip_verification PASSED [ 48%] 119s tests/test_api_jws.py::TestJWS::test_decode_with_optional_algorithms PASSED [ 48%] 119s tests/test_api_jws.py::TestJWS::test_decode_no_algorithms_verify_signature_false PASSED [ 49%] 119s tests/test_api_jws.py::TestJWS::test_load_no_verification PASSED [ 49%] 119s tests/test_api_jws.py::TestJWS::test_no_secret PASSED [ 50%] 119s tests/test_api_jws.py::TestJWS::test_verify_signature_with_no_secret PASSED [ 50%] 119s tests/test_api_jws.py::TestJWS::test_verify_signature_with_no_algo_header_throws_exception PASSED [ 50%] 119s tests/test_api_jws.py::TestJWS::test_invalid_crypto_alg PASSED [ 51%] 119s tests/test_api_jws.py::TestJWS::test_missing_crypto_library_better_error_messages SKIPPED [ 51%] 119s tests/test_api_jws.py::TestJWS::test_unicode_secret PASSED [ 51%] 119s tests/test_api_jws.py::TestJWS::test_nonascii_secret PASSED [ 52%] 119s tests/test_api_jws.py::TestJWS::test_bytes_secret PASSED [ 52%] 119s tests/test_api_jws.py::TestJWS::test_sorting_of_headers[False] PASSED [ 53%] 119s tests/test_api_jws.py::TestJWS::test_sorting_of_headers[True] PASSED [ 53%] 119s tests/test_api_jws.py::TestJWS::test_decode_invalid_header_padding PASSED [ 53%] 119s tests/test_api_jws.py::TestJWS::test_decode_invalid_header_string PASSED [ 54%] 119s tests/test_api_jws.py::TestJWS::test_decode_invalid_payload_padding PASSED [ 54%] 119s tests/test_api_jws.py::TestJWS::test_decode_invalid_crypto_padding PASSED [ 55%] 119s tests/test_api_jws.py::TestJWS::test_decode_with_algo_none_should_fail PASSED [ 55%] 119s tests/test_api_jws.py::TestJWS::test_decode_with_algo_none_and_verify_false_should_pass PASSED [ 55%] 119s tests/test_api_jws.py::TestJWS::test_get_unverified_header_returns_header_values PASSED [ 56%] 119s tests/test_api_jws.py::TestJWS::test_get_unverified_header_fails_on_bad_header_types PASSED [ 56%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_rsa_related_algorithms[RS256] PASSED [ 57%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_rsa_related_algorithms[RS384] PASSED [ 57%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_rsa_related_algorithms[RS512] PASSED [ 57%] 119s tests/test_api_jws.py::TestJWS::test_rsa_related_algorithms PASSED [ 58%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES256] PASSED [ 58%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES256K] PASSED [ 58%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES384] PASSED [ 59%] 119s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES512] PASSED [ 59%] 119s tests/test_api_jws.py::TestJWS::test_ecdsa_related_algorithms PASSED [ 60%] 119s tests/test_api_jws.py::TestJWS::test_skip_check_signature PASSED [ 60%] 119s tests/test_api_jws.py::TestJWS::test_decode_options_must_be_dict PASSED [ 60%] 119s tests/test_api_jws.py::TestJWS::test_custom_json_encoder PASSED [ 61%] 119s tests/test_api_jws.py::TestJWS::test_encode_headers_parameter_adds_headers PASSED [ 61%] 119s tests/test_api_jws.py::TestJWS::test_encode_with_typ PASSED [ 62%] 119s tests/test_api_jws.py::TestJWS::test_encode_with_typ_empty_string PASSED [ 62%] 120s tests/test_api_jws.py::TestJWS::test_encode_with_typ_none PASSED [ 62%] 120s tests/test_api_jws.py::TestJWS::test_encode_with_typ_without_keywords PASSED [ 63%] 120s tests/test_api_jws.py::TestJWS::test_encode_fails_on_invalid_kid_types PASSED [ 63%] 120s tests/test_api_jws.py::TestJWS::test_encode_decode_with_detached_content PASSED [ 64%] 120s tests/test_api_jws.py::TestJWS::test_encode_detached_content_with_b64_header PASSED [ 64%] 120s tests/test_api_jws.py::TestJWS::test_decode_detached_content_without_proper_argument PASSED [ 64%] 120s tests/test_api_jws.py::TestJWS::test_decode_warns_on_unsupported_kwarg PASSED [ 65%] 120s tests/test_api_jws.py::TestJWS::test_decode_complete_warns_on_unuspported_kwarg PASSED [ 65%] 120s tests/test_api_jwt.py::TestJWT::test_decodes_valid_jwt PASSED [ 66%] 120s tests/test_api_jwt.py::TestJWT::test_decodes_complete_valid_jwt PASSED [ 66%] 120s tests/test_api_jwt.py::TestJWT::test_load_verify_valid_jwt PASSED [ 66%] 120s tests/test_api_jwt.py::TestJWT::test_decode_invalid_payload_string PASSED [ 67%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_non_mapping_payload_throws_exception PASSED [ 67%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_invalid_audience_param_throws_exception PASSED [ 67%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_nonlist_aud_claim_throws_exception PASSED [ 68%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_invalid_aud_list_member_throws_exception PASSED [ 68%] 120s tests/test_api_jwt.py::TestJWT::test_encode_bad_type PASSED [ 69%] 120s tests/test_api_jwt.py::TestJWT::test_encode_with_typ PASSED [ 69%] 120s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_exp_is_not_int PASSED [ 69%] 120s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_iat_is_not_int PASSED [ 70%] 120s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_iat_is_greater_than_now PASSED [ 70%] 120s tests/test_api_jwt.py::TestJWT::test_decode_works_if_iat_is_str_of_a_number PASSED [ 71%] 120s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_nbf_is_not_int PASSED [ 71%] 120s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_aud_is_none PASSED [ 71%] 120s tests/test_api_jwt.py::TestJWT::test_encode_datetime PASSED [ 72%] 120s tests/test_api_jwt.py::TestJWT::test_decodes_valid_es256_jwt PASSED [ 72%] 120s tests/test_api_jwt.py::TestJWT::test_decodes_valid_rs384_jwt PASSED [ 73%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_expiration PASSED [ 73%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_notbefore PASSED [ 73%] 120s tests/test_api_jwt.py::TestJWT::test_decode_skip_expiration_verification PASSED [ 74%] 120s tests/test_api_jwt.py::TestJWT::test_decode_skip_notbefore_verification PASSED [ 74%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_expiration_with_leeway PASSED [ 75%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_notbefore_with_leeway PASSED [ 75%] 120s tests/test_api_jwt.py::TestJWT::test_check_audience_when_valid PASSED [ 75%] 120s tests/test_api_jwt.py::TestJWT::test_check_audience_list_when_valid PASSED [ 76%] 120s tests/test_api_jwt.py::TestJWT::test_check_audience_none_specified PASSED [ 76%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_audience_list PASSED [ 76%] 120s tests/test_api_jwt.py::TestJWT::test_check_audience_in_array_when_valid PASSED [ 77%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_audience PASSED [ 77%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_audience_as_bytes PASSED [ 78%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_audience_in_array PASSED [ 78%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_token_without_issuer PASSED [ 78%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_token_without_audience PASSED [ 79%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_token_with_aud_none_and_without_audience PASSED [ 79%] 120s tests/test_api_jwt.py::TestJWT::test_check_issuer_when_valid PASSED [ 80%] 120s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_issuer PASSED [ 80%] 120s tests/test_api_jwt.py::TestJWT::test_skip_check_audience PASSED [ 80%] 120s tests/test_api_jwt.py::TestJWT::test_skip_check_exp PASSED [ 81%] 120s tests/test_api_jwt.py::TestJWT::test_decode_should_raise_error_if_exp_required_but_not_present PASSED [ 81%] 120s tests/test_api_jwt.py::TestJWT::test_decode_should_raise_error_if_iat_required_but_not_present PASSED [ 82%] 120s tests/test_api_jwt.py::TestJWT::test_decode_should_raise_error_if_nbf_required_but_not_present PASSED [ 82%] 120s tests/test_api_jwt.py::TestJWT::test_skip_check_signature PASSED [ 82%] 120s tests/test_api_jwt.py::TestJWT::test_skip_check_iat PASSED [ 83%] 120s tests/test_api_jwt.py::TestJWT::test_skip_check_nbf PASSED [ 83%] 120s tests/test_api_jwt.py::TestJWT::test_custom_json_encoder PASSED [ 83%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_verify_exp_option PASSED [ 84%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_verify_exp_option_and_signature_off PASSED [ 84%] 120s tests/test_api_jwt.py::TestJWT::test_decode_with_optional_algorithms PASSED [ 85%] 120s tests/test_api_jwt.py::TestJWT::test_decode_no_algorithms_verify_signature_false PASSED [ 85%] 120s tests/test_api_jwt.py::TestJWT::test_decode_legacy_verify_warning PASSED [ 85%] 120s tests/test_api_jwt.py::TestJWT::test_decode_no_options_mutation PASSED [ 86%] 120s tests/test_api_jwt.py::TestJWT::test_decode_warns_on_unsupported_kwarg PASSED [ 86%] 120s tests/test_api_jwt.py::TestJWT::test_decode_complete_warns_on_unsupported_kwarg PASSED [ 87%] 120s tests/test_compressed_jwt.py::test_decodes_complete_valid_jwt_with_compressed_payload PASSED [ 87%] 120s tests/test_exceptions.py::test_missing_required_claim_error_has_proper_str PASSED [ 87%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_fetch_data_forwards_headers_to_correct_url PASSED [ 88%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwk_set PASSED [ 88%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_keys PASSED [ 89%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_keys_if_no_use_provided PASSED [ 89%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_keys_raises_if_none_found PASSED [ 89%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key PASSED [ 90%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key_caches_result PASSED [ 90%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key_does_not_cache_opt_out PASSED [ 91%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key_from_jwt PASSED [ 91%] 120s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwk_set_caches_result PASSED [ 91%] 122s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_cache_expired_result PASSED [ 92%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_cache_disabled PASSED [ 92%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_failed_request_should_clear_cache PASSED [ 92%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_failed_request_should_raise_connection_error PASSED [ 93%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_refresh_cache PASSED [ 93%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_no_matching_kid_after_second_attempt PASSED [ 94%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_invalid_lifespan PASSED [ 94%] 124s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_timeout PASSED [ 94%] 124s tests/test_jwt.py::test_encode_decode PASSED [ 95%] 124s tests/test_utils.py::test_to_base64url_uint[0-AA] PASSED [ 95%] 124s tests/test_utils.py::test_to_base64url_uint[1-AQ] PASSED [ 96%] 124s tests/test_utils.py::test_to_base64url_uint[255-_w] PASSED [ 96%] 124s tests/test_utils.py::test_to_base64url_uint[65537-AQAB] PASSED [ 96%] 124s tests/test_utils.py::test_to_base64url_uint[123456789-B1vNFQ] PASSED [ 97%] 124s tests/test_utils.py::test_to_base64url_uint[-1-] XFAIL [ 97%] 124s tests/test_utils.py::test_from_base64url_uint[AA-0] PASSED [ 98%] 124s tests/test_utils.py::test_from_base64url_uint[AQ-1] PASSED [ 98%] 124s tests/test_utils.py::test_from_base64url_uint[_w-255] PASSED [ 98%] 124s tests/test_utils.py::test_from_base64url_uint[AQAB-65537] PASSED [ 99%] 124s tests/test_utils.py::test_from_base64url_uint[B1vNFQ-123456789] PASSED [ 99%] 124s tests/test_utils.py::test_force_bytes_raises_error_on_invalid_object PASSED [100%] 124s 124s =========================== short test summary info ============================ 124s SKIPPED [1] tests/test_api_jwk.py:200: Requires cryptography library not installed 124s SKIPPED [1] tests/test_api_jws.py:387: Requires cryptography library not installed 124s ================== 253 passed, 2 skipped, 1 xfailed in 5.82s =================== 124s ============================= test session starts ============================== 124s platform linux -- Python 3.13.1, pytest-8.3.3, pluggy-1.5.0 -- /usr/bin/python3.13 124s cachedir: .pytest_cache 124s rootdir: /tmp/autopkgtest.vwdcLq/build.U5s/src 124s configfile: tox.ini 124s testpaths: tests 124s plugins: typeguard-4.4.1, cov-5.0.0 124s collecting ... collected 256 items 124s 124s tests/test_advisory.py::TestAdvisory::test_ghsa_ffqj_6fqr_9h24 PASSED [ 0%] 124s tests/test_algorithms.py::TestAlgorithms::test_none_algorithm_should_throw_exception_if_key_is_not_none PASSED [ 0%] 124s tests/test_algorithms.py::TestAlgorithms::test_none_algorithm_should_throw_exception_on_to_jwk PASSED [ 1%] 124s tests/test_algorithms.py::TestAlgorithms::test_none_algorithm_should_throw_exception_on_from_jwk PASSED [ 1%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_reject_nonstring_key PASSED [ 1%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_accept_unicode_key PASSED [ 2%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey2_rsa.pub.pem0] PASSED [ 2%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey2_rsa.pub.pem1] PASSED [ 3%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey_pkcs1.pub.pem] PASSED [ 3%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey_rsa.cer] PASSED [ 3%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_should_throw_exception[testkey_rsa.pub] PASSED [ 4%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_jwk_should_parse_and_verify PASSED [ 4%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_to_jwk_returns_correct_values[False] PASSED [ 5%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_to_jwk_returns_correct_values[True] PASSED [ 5%] 124s tests/test_algorithms.py::TestAlgorithms::test_hmac_from_jwk_should_raise_exception_if_not_hmac_key PASSED [ 5%] 124s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_parse_pem_public_key PASSED [ 6%] 124s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_accept_pem_private_key_bytes PASSED [ 6%] 124s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_accept_unicode_key PASSED [ 7%] 124s tests/test_algorithms.py::TestAlgorithms::test_rsa_should_reject_non_string_key PASSED [ 7%] 124s tests/test_algorithms.py::TestAlgorithms::test_rsa_verify_should_return_false_if_signature_invalid PASSED [ 7%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_jwk_public_and_private_keys_should_parse_and_verify PASSED [ 8%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_jwk_fails_on_invalid_json PASSED [ 8%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_private_key_to_jwk_works_with_from_jwk PASSED [ 8%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_public_key_to_jwk_works_with_from_jwk PASSED [ 9%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_public_key[False] PASSED [ 9%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_public_key[True] PASSED [ 10%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_private_key[False] PASSED [ 10%] 124s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_returns_correct_values_for_private_key[True] PASSED [ 10%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_raises_exception_on_invalid_key PASSED [ 11%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_with_valid_curves[False] PASSED [ 11%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_with_valid_curves[True] PASSED [ 12%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_to_jwk_with_invalid_curve PASSED [ 12%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_public_and_private_keys_should_parse_and_verify PASSED [ 12%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_private_key_to_jwk_works_with_from_jwk PASSED [ 13%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_public_key_to_jwk_works_with_from_jwk PASSED [ 13%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_with_other_primes_is_invalid PASSED [ 14%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_with_missing_values_is_invalid PASSED [ 14%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_can_recover_prime_factors PASSED [ 14%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_private_key_with_missing_required_values_is_invalid PASSED [ 15%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_jwk_raises_exception_if_not_a_valid_key PASSED [ 15%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_public_key[False] PASSED [ 16%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_public_key[True] PASSED [ 16%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_private_key[False] PASSED [ 16%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_returns_correct_values_for_private_key[True] PASSED [ 17%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_to_jwk_raises_exception_on_invalid_key PASSED [ 17%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_from_jwk_raises_exception_on_invalid_key PASSED [ 17%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_should_reject_non_string_key PASSED [ 18%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_should_accept_pem_private_key_bytes PASSED [ 18%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_should_accept_ssh_public_key_bytes PASSED [ 19%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_verify_should_return_false_if_signature_invalid PASSED [ 19%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_verify_should_return_false_if_signature_wrong_length PASSED [ 19%] 125s tests/test_algorithms.py::TestAlgorithms::test_ec_should_throw_exception_on_wrong_key PASSED [ 20%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_pss_sign_then_verify_should_return_true PASSED [ 20%] 125s tests/test_algorithms.py::TestAlgorithms::test_rsa_pss_verify_should_return_false_if_signature_invalid PASSED [ 21%] 125s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_hmac_verify_should_return_true_for_test_vector PASSED [ 21%] 125s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_rsa_verify_should_return_true_for_test_vector PASSED [ 21%] 125s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_rsapss_verify_should_return_true_for_test_vector PASSED [ 22%] 125s tests/test_algorithms.py::TestAlgorithmsRFC7520::test_ec_verify_should_return_true_for_test_vector PASSED [ 22%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_should_reject_non_string_key PASSED [ 23%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_sign_should_generate_correct_signature_value PASSED [ 23%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_verify_should_return_false_if_signature_invalid PASSED [ 23%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_verify_should_return_true_if_signature_valid PASSED [ 24%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_prepare_key_should_be_idempotent PASSED [ 24%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_private_key_should_parse_and_verify PASSED [ 25%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_private_key_should_parse_and_verify_with_private_key_as_is PASSED [ 25%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_public_key_should_parse_and_verify PASSED [ 25%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_jwk_fails_on_invalid_json PASSED [ 26%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_to_jwk_works_with_from_jwk[False] PASSED [ 26%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed25519_to_jwk_works_with_from_jwk[True] PASSED [ 26%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_to_jwk_raises_exception_on_invalid_key PASSED [ 27%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_private_key_should_parse_and_verify PASSED [ 27%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_private_key_should_parse_and_verify_with_private_key_as_is PASSED [ 28%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_public_key_should_parse_and_verify PASSED [ 28%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_jwk_fails_on_invalid_json PASSED [ 28%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_to_jwk_works_with_from_jwk[False] PASSED [ 29%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_okp_ed448_to_jwk_works_with_from_jwk[True] PASSED [ 29%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_rsa_can_compute_digest PASSED [ 30%] 125s tests/test_algorithms.py::TestOKPAlgorithms::test_hmac_can_compute_digest PASSED [ 30%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_from_jwk_data_dict PASSED [ 30%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_from_jwk_data_json_string PASSED [ 31%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_without_alg_from_dict PASSED [ 31%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_from_dict_with_algorithm PASSED [ 32%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_p256_from_dict PASSED [ 32%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_p384_from_dict PASSED [ 32%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_p521_from_dict PASSED [ 33%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_ec_secp256k1_from_dict PASSED [ 33%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_hmac_from_dict PASSED [ 33%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_hmac_without_alg_from_dict PASSED [ 34%] 125s tests/test_api_jwk.py::TestPyJWK::test_should_load_key_okp_without_alg_from_dict PASSED [ 34%] 125s tests/test_api_jwk.py::TestPyJWK::test_from_dict_should_throw_exception_if_arg_is_invalid PASSED [ 35%] 125s tests/test_api_jwk.py::TestPyJWK::test_missing_crypto_library_good_error_message SKIPPED [ 35%] 125s tests/test_api_jwk.py::TestPyJWKSet::test_should_load_keys_from_jwk_data_dict PASSED [ 35%] 125s tests/test_api_jwk.py::TestPyJWKSet::test_should_load_keys_from_jwk_data_json_string PASSED [ 36%] 125s tests/test_api_jwk.py::TestPyJWKSet::test_keyset_should_index_by_kid PASSED [ 36%] 125s tests/test_api_jwk.py::TestPyJWKSet::test_keyset_with_unknown_alg PASSED [ 37%] 125s tests/test_api_jwk.py::TestPyJWKSet::test_invalid_keys_list PASSED [ 37%] 125s tests/test_api_jwk.py::TestPyJWKSet::test_empty_keys_list PASSED [ 37%] 125s tests/test_api_jws.py::TestJWS::test_register_algo_does_not_allow_duplicate_registration PASSED [ 38%] 125s tests/test_api_jws.py::TestJWS::test_register_algo_rejects_non_algorithm_obj PASSED [ 38%] 125s tests/test_api_jws.py::TestJWS::test_unregister_algo_removes_algorithm PASSED [ 39%] 125s tests/test_api_jws.py::TestJWS::test_unregister_algo_throws_error_if_not_registered PASSED [ 39%] 125s tests/test_api_jws.py::TestJWS::test_algo_parameter_removes_alg_from_algorithms_list PASSED [ 39%] 125s tests/test_api_jws.py::TestJWS::test_override_options PASSED [ 40%] 125s tests/test_api_jws.py::TestJWS::test_non_object_options_dont_persist PASSED [ 40%] 125s tests/test_api_jws.py::TestJWS::test_options_must_be_dict PASSED [ 41%] 125s tests/test_api_jws.py::TestJWS::test_encode_decode PASSED [ 41%] 125s tests/test_api_jws.py::TestJWS::test_decode_fails_when_alg_is_not_on_method_algorithms_param PASSED [ 41%] 125s tests/test_api_jws.py::TestJWS::test_decode_works_with_unicode_token PASSED [ 42%] 125s tests/test_api_jws.py::TestJWS::test_decode_missing_segments_throws_exception PASSED [ 42%] 125s tests/test_api_jws.py::TestJWS::test_decode_invalid_token_type_is_none PASSED [ 42%] 125s tests/test_api_jws.py::TestJWS::test_decode_invalid_token_type_is_int PASSED [ 43%] 125s tests/test_api_jws.py::TestJWS::test_decode_with_non_mapping_header_throws_exception PASSED [ 43%] 125s tests/test_api_jws.py::TestJWS::test_encode_algorithm_param_should_be_case_sensitive PASSED [ 44%] 125s tests/test_api_jws.py::TestJWS::test_encode_with_headers_alg_none PASSED [ 44%] 125s tests/test_api_jws.py::TestJWS::test_encode_with_headers_alg_es256 PASSED [ 44%] 125s tests/test_api_jws.py::TestJWS::test_encode_with_alg_hs256_and_headers_alg_es256 PASSED [ 45%] 125s tests/test_api_jws.py::TestJWS::test_decode_algorithm_param_should_be_case_sensitive PASSED [ 45%] 125s tests/test_api_jws.py::TestJWS::test_bad_secret PASSED [ 46%] 125s tests/test_api_jws.py::TestJWS::test_decodes_valid_jws PASSED [ 46%] 125s tests/test_api_jws.py::TestJWS::test_decodes_complete_valid_jws PASSED [ 46%] 125s tests/test_api_jws.py::TestJWS::test_decodes_valid_es384_jws PASSED [ 47%] 125s tests/test_api_jws.py::TestJWS::test_decodes_valid_rs384_jws PASSED [ 47%] 125s tests/test_api_jws.py::TestJWS::test_load_verify_valid_jws PASSED [ 48%] 125s tests/test_api_jws.py::TestJWS::test_allow_skip_verification PASSED [ 48%] 125s tests/test_api_jws.py::TestJWS::test_decode_with_optional_algorithms PASSED [ 48%] 125s tests/test_api_jws.py::TestJWS::test_decode_no_algorithms_verify_signature_false PASSED [ 49%] 125s tests/test_api_jws.py::TestJWS::test_load_no_verification PASSED [ 49%] 125s tests/test_api_jws.py::TestJWS::test_no_secret PASSED [ 50%] 125s tests/test_api_jws.py::TestJWS::test_verify_signature_with_no_secret PASSED [ 50%] 125s tests/test_api_jws.py::TestJWS::test_verify_signature_with_no_algo_header_throws_exception PASSED [ 50%] 125s tests/test_api_jws.py::TestJWS::test_invalid_crypto_alg PASSED [ 51%] 125s tests/test_api_jws.py::TestJWS::test_missing_crypto_library_better_error_messages SKIPPED [ 51%] 125s tests/test_api_jws.py::TestJWS::test_unicode_secret PASSED [ 51%] 125s tests/test_api_jws.py::TestJWS::test_nonascii_secret PASSED [ 52%] 125s tests/test_api_jws.py::TestJWS::test_bytes_secret PASSED [ 52%] 125s tests/test_api_jws.py::TestJWS::test_sorting_of_headers[False] PASSED [ 53%] 125s tests/test_api_jws.py::TestJWS::test_sorting_of_headers[True] PASSED [ 53%] 125s tests/test_api_jws.py::TestJWS::test_decode_invalid_header_padding PASSED [ 53%] 125s tests/test_api_jws.py::TestJWS::test_decode_invalid_header_string PASSED [ 54%] 125s tests/test_api_jws.py::TestJWS::test_decode_invalid_payload_padding PASSED [ 54%] 125s tests/test_api_jws.py::TestJWS::test_decode_invalid_crypto_padding PASSED [ 55%] 125s tests/test_api_jws.py::TestJWS::test_decode_with_algo_none_should_fail PASSED [ 55%] 125s tests/test_api_jws.py::TestJWS::test_decode_with_algo_none_and_verify_false_should_pass PASSED [ 55%] 125s tests/test_api_jws.py::TestJWS::test_get_unverified_header_returns_header_values PASSED [ 56%] 125s tests/test_api_jws.py::TestJWS::test_get_unverified_header_fails_on_bad_header_types PASSED [ 56%] 125s tests/test_api_jws.py::TestJWS::test_encode_decode_rsa_related_algorithms[RS256] PASSED [ 57%] 125s tests/test_api_jws.py::TestJWS::test_encode_decode_rsa_related_algorithms[RS384] PASSED [ 57%] 126s tests/test_api_jws.py::TestJWS::test_encode_decode_rsa_related_algorithms[RS512] PASSED [ 57%] 126s tests/test_api_jws.py::TestJWS::test_rsa_related_algorithms PASSED [ 58%] 126s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES256] PASSED [ 58%] 126s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES256K] PASSED [ 58%] 126s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES384] PASSED [ 59%] 126s tests/test_api_jws.py::TestJWS::test_encode_decode_ecdsa_related_algorithms[ES512] PASSED [ 59%] 126s tests/test_api_jws.py::TestJWS::test_ecdsa_related_algorithms PASSED [ 60%] 126s tests/test_api_jws.py::TestJWS::test_skip_check_signature PASSED [ 60%] 126s tests/test_api_jws.py::TestJWS::test_decode_options_must_be_dict PASSED [ 60%] 126s tests/test_api_jws.py::TestJWS::test_custom_json_encoder PASSED [ 61%] 126s tests/test_api_jws.py::TestJWS::test_encode_headers_parameter_adds_headers PASSED [ 61%] 126s tests/test_api_jws.py::TestJWS::test_encode_with_typ PASSED [ 62%] 126s tests/test_api_jws.py::TestJWS::test_encode_with_typ_empty_string PASSED [ 62%] 126s tests/test_api_jws.py::TestJWS::test_encode_with_typ_none PASSED [ 62%] 126s tests/test_api_jws.py::TestJWS::test_encode_with_typ_without_keywords PASSED [ 63%] 126s tests/test_api_jws.py::TestJWS::test_encode_fails_on_invalid_kid_types PASSED [ 63%] 126s tests/test_api_jws.py::TestJWS::test_encode_decode_with_detached_content PASSED [ 64%] 126s tests/test_api_jws.py::TestJWS::test_encode_detached_content_with_b64_header PASSED [ 64%] 126s tests/test_api_jws.py::TestJWS::test_decode_detached_content_without_proper_argument PASSED [ 64%] 126s tests/test_api_jws.py::TestJWS::test_decode_warns_on_unsupported_kwarg PASSED [ 65%] 126s tests/test_api_jws.py::TestJWS::test_decode_complete_warns_on_unuspported_kwarg PASSED [ 65%] 126s tests/test_api_jwt.py::TestJWT::test_decodes_valid_jwt PASSED [ 66%] 126s tests/test_api_jwt.py::TestJWT::test_decodes_complete_valid_jwt PASSED [ 66%] 126s tests/test_api_jwt.py::TestJWT::test_load_verify_valid_jwt PASSED [ 66%] 126s tests/test_api_jwt.py::TestJWT::test_decode_invalid_payload_string PASSED [ 67%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_non_mapping_payload_throws_exception PASSED [ 67%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_invalid_audience_param_throws_exception PASSED [ 67%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_nonlist_aud_claim_throws_exception PASSED [ 68%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_invalid_aud_list_member_throws_exception PASSED [ 68%] 126s tests/test_api_jwt.py::TestJWT::test_encode_bad_type PASSED [ 69%] 126s tests/test_api_jwt.py::TestJWT::test_encode_with_typ PASSED [ 69%] 126s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_exp_is_not_int PASSED [ 69%] 126s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_iat_is_not_int PASSED [ 70%] 126s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_iat_is_greater_than_now PASSED [ 70%] 126s tests/test_api_jwt.py::TestJWT::test_decode_works_if_iat_is_str_of_a_number PASSED [ 71%] 126s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_nbf_is_not_int PASSED [ 71%] 126s tests/test_api_jwt.py::TestJWT::test_decode_raises_exception_if_aud_is_none PASSED [ 71%] 126s tests/test_api_jwt.py::TestJWT::test_encode_datetime PASSED [ 72%] 126s tests/test_api_jwt.py::TestJWT::test_decodes_valid_es256_jwt PASSED [ 72%] 126s tests/test_api_jwt.py::TestJWT::test_decodes_valid_rs384_jwt PASSED [ 73%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_expiration PASSED [ 73%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_notbefore PASSED [ 73%] 126s tests/test_api_jwt.py::TestJWT::test_decode_skip_expiration_verification PASSED [ 74%] 126s tests/test_api_jwt.py::TestJWT::test_decode_skip_notbefore_verification PASSED [ 74%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_expiration_with_leeway PASSED [ 75%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_notbefore_with_leeway PASSED [ 75%] 126s tests/test_api_jwt.py::TestJWT::test_check_audience_when_valid PASSED [ 75%] 126s tests/test_api_jwt.py::TestJWT::test_check_audience_list_when_valid PASSED [ 76%] 126s tests/test_api_jwt.py::TestJWT::test_check_audience_none_specified PASSED [ 76%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_audience_list PASSED [ 76%] 126s tests/test_api_jwt.py::TestJWT::test_check_audience_in_array_when_valid PASSED [ 77%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_audience PASSED [ 77%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_audience_as_bytes PASSED [ 78%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_audience_in_array PASSED [ 78%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_token_without_issuer PASSED [ 78%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_token_without_audience PASSED [ 79%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_token_with_aud_none_and_without_audience PASSED [ 79%] 126s tests/test_api_jwt.py::TestJWT::test_check_issuer_when_valid PASSED [ 80%] 126s tests/test_api_jwt.py::TestJWT::test_raise_exception_invalid_issuer PASSED [ 80%] 126s tests/test_api_jwt.py::TestJWT::test_skip_check_audience PASSED [ 80%] 126s tests/test_api_jwt.py::TestJWT::test_skip_check_exp PASSED [ 81%] 126s tests/test_api_jwt.py::TestJWT::test_decode_should_raise_error_if_exp_required_but_not_present PASSED [ 81%] 126s tests/test_api_jwt.py::TestJWT::test_decode_should_raise_error_if_iat_required_but_not_present PASSED [ 82%] 126s tests/test_api_jwt.py::TestJWT::test_decode_should_raise_error_if_nbf_required_but_not_present PASSED [ 82%] 126s tests/test_api_jwt.py::TestJWT::test_skip_check_signature PASSED [ 82%] 126s tests/test_api_jwt.py::TestJWT::test_skip_check_iat PASSED [ 83%] 126s tests/test_api_jwt.py::TestJWT::test_skip_check_nbf PASSED [ 83%] 126s tests/test_api_jwt.py::TestJWT::test_custom_json_encoder PASSED [ 83%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_verify_exp_option PASSED [ 84%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_verify_exp_option_and_signature_off PASSED [ 84%] 126s tests/test_api_jwt.py::TestJWT::test_decode_with_optional_algorithms PASSED [ 85%] 126s tests/test_api_jwt.py::TestJWT::test_decode_no_algorithms_verify_signature_false PASSED [ 85%] 126s tests/test_api_jwt.py::TestJWT::test_decode_legacy_verify_warning PASSED [ 85%] 126s tests/test_api_jwt.py::TestJWT::test_decode_no_options_mutation PASSED [ 86%] 126s tests/test_api_jwt.py::TestJWT::test_decode_warns_on_unsupported_kwarg PASSED [ 86%] 126s tests/test_api_jwt.py::TestJWT::test_decode_complete_warns_on_unsupported_kwarg PASSED [ 87%] 126s tests/test_compressed_jwt.py::test_decodes_complete_valid_jwt_with_compressed_payload PASSED [ 87%] 126s tests/test_exceptions.py::test_missing_required_claim_error_has_proper_str PASSED [ 87%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_fetch_data_forwards_headers_to_correct_url PASSED [ 88%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwk_set PASSED [ 88%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_keys PASSED [ 89%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_keys_if_no_use_provided PASSED [ 89%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_keys_raises_if_none_found PASSED [ 89%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key PASSED [ 90%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key_caches_result PASSED [ 90%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key_does_not_cache_opt_out PASSED [ 91%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_signing_key_from_jwt PASSED [ 91%] 126s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwk_set_caches_result PASSED [ 91%] 128s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_cache_expired_result PASSED [ 92%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_cache_disabled PASSED [ 92%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_failed_request_should_clear_cache PASSED [ 92%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_failed_request_should_raise_connection_error PASSED [ 93%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_refresh_cache PASSED [ 93%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_no_matching_kid_after_second_attempt PASSED [ 94%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_invalid_lifespan PASSED [ 94%] 130s tests/test_jwks_client.py::TestPyJWKClient::test_get_jwt_set_timeout PASSED [ 94%] 130s tests/test_jwt.py::test_encode_decode PASSED [ 95%] 130s tests/test_utils.py::test_to_base64url_uint[0-AA] PASSED [ 95%] 130s tests/test_utils.py::test_to_base64url_uint[1-AQ] PASSED [ 96%] 130s tests/test_utils.py::test_to_base64url_uint[255-_w] PASSED [ 96%] 130s tests/test_utils.py::test_to_base64url_uint[65537-AQAB] PASSED [ 96%] 130s tests/test_utils.py::test_to_base64url_uint[123456789-B1vNFQ] PASSED [ 97%] 130s tests/test_utils.py::test_to_base64url_uint[-1-] XFAIL [ 97%] 130s tests/test_utils.py::test_from_base64url_uint[AA-0] PASSED [ 98%] 130s tests/test_utils.py::test_from_base64url_uint[AQ-1] PASSED [ 98%] 130s tests/test_utils.py::test_from_base64url_uint[_w-255] PASSED [ 98%] 130s tests/test_utils.py::test_from_base64url_uint[AQAB-65537] PASSED [ 99%] 130s tests/test_utils.py::test_from_base64url_uint[B1vNFQ-123456789] PASSED [ 99%] 130s tests/test_utils.py::test_force_bytes_raises_error_on_invalid_object PASSED [100%] 130s 130s =========================== short test summary info ============================ 130s SKIPPED [1] tests/test_api_jwk.py:200: Requires cryptography library not installed 130s SKIPPED [1] tests/test_api_jws.py:387: Requires cryptography library not installed 130s ================== 253 passed, 2 skipped, 1 xfailed in 5.71s =================== 130s autopkgtest [23:28:37]: test python3-jwt: -----------------------] 131s autopkgtest [23:28:38]: test python3-jwt: - - - - - - - - - - results - - - - - - - - - - 131s python3-jwt PASS 131s autopkgtest [23:28:38]: @@@@@@@@@@@@@@@@@@@@ summary 131s python3-jwt PASS 135s nova [W] Using flock in prodstack6-ppc64el 135s Creating nova instance adt-plucky-ppc64el-pyjwt-20250103-232627-juju-7f2275-prod-proposed-migration-environment-20-12dc8523-503b-49c9-a7ab-bf4549803b2b from image adt/ubuntu-plucky-ppc64el-server-20250103.img (UUID f20efbba-1df4-424c-8de8-0f24e2643aa4)... 135s nova [W] Timed out waiting for caa33333-55f1-45a8-a3c8-69b12c715610 to get deleted.