0s autopkgtest [03:42:56]: starting date and time: 2025-10-31 03:42:56+0000 0s autopkgtest [03:42:56]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [03:42:56]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.8t8w7_4e/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:adsys --apt-upgrade adsys --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=adsys/0.16.3~24.04.2' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@bos03-arm64-6.secgroup --name adt-noble-arm64-adsys-20251031-034256-juju-7f2275-prod-proposed-migration-environment-20-a0d631ef-9d22-4e70-b86f-9870034abaed --image adt/ubuntu-noble-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-proposed-migration -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 3s Creating nova instance adt-noble-arm64-adsys-20251031-034256-juju-7f2275-prod-proposed-migration-environment-20-a0d631ef-9d22-4e70-b86f-9870034abaed from image adt/ubuntu-noble-arm64-server-20251030.img (UUID 5e3a3377-a3ee-4970-abd3-d2a016f0154b)... 65s autopkgtest [03:44:01]: testbed dpkg architecture: arm64 66s autopkgtest [03:44:02]: testbed apt version: 2.8.3 66s autopkgtest [03:44:02]: @@@@@@@@@@@@@@@@@@@@ test bed setup 66s autopkgtest [03:44:02]: testbed release detected to be: None 67s autopkgtest [03:44:03]: updating testbed package index (apt update) 68s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [265 kB] 68s Hit:2 http://ftpmaster.internal/ubuntu noble InRelease 68s Hit:3 http://ftpmaster.internal/ubuntu noble-updates InRelease 68s Hit:4 http://ftpmaster.internal/ubuntu noble-security InRelease 68s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [42.6 kB] 68s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [82.4 kB] 68s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [9148 B] 68s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [44.4 kB] 68s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 Packages [481 kB] 68s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 c-n-f Metadata [1964 B] 68s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/restricted arm64 Packages [1390 kB] 68s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/restricted arm64 c-n-f Metadata [432 B] 68s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 Packages [135 kB] 68s Get:14 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 c-n-f Metadata [1920 B] 68s Get:15 http://ftpmaster.internal/ubuntu noble-proposed/multiverse arm64 Packages [16.0 kB] 68s Get:16 http://ftpmaster.internal/ubuntu noble-proposed/multiverse arm64 c-n-f Metadata [284 B] 70s Fetched 2471 kB in 1s (2086 kB/s) 72s Reading package lists... 73s Hit:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease 73s Hit:2 http://ftpmaster.internal/ubuntu noble InRelease 73s Hit:3 http://ftpmaster.internal/ubuntu noble-updates InRelease 73s Hit:4 http://ftpmaster.internal/ubuntu noble-security InRelease 75s Reading package lists... 75s Reading package lists... 76s Building dependency tree... 76s Reading state information... 77s Calculating upgrade... 78s The following packages will be upgraded: 78s libxml2 78s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 78s Need to get 736 kB of archives. 78s After this operation, 0 B of additional disk space will be used. 78s Get:1 http://ftpmaster.internal/ubuntu noble-security/main arm64 libxml2 arm64 2.9.14+dfsg-1.3ubuntu3.6 [736 kB] 79s debconf: unable to initialize frontend: Dialog 79s debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) 79s debconf: falling back to frontend: Readline 79s debconf: unable to initialize frontend: Readline 79s debconf: (This frontend requires a controlling tty.) 79s debconf: falling back to frontend: Teletype 79s dpkg-preconfigure: unable to re-open stdin: 79s Fetched 736 kB in 1s (1019 kB/s) 79s (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 ... 113353 files and directories currently installed.) 79s Preparing to unpack .../libxml2_2.9.14+dfsg-1.3ubuntu3.6_arm64.deb ... 80s Unpacking libxml2:arm64 (2.9.14+dfsg-1.3ubuntu3.6) over (2.9.14+dfsg-1.3ubuntu3.5) ... 80s Setting up libxml2:arm64 (2.9.14+dfsg-1.3ubuntu3.6) ... 80s Processing triggers for libc-bin (2.39-0ubuntu8.6) ... 80s autopkgtest [03:44:16]: upgrading testbed (apt dist-upgrade and autopurge) 80s Reading package lists... 81s Building dependency tree... 81s Reading state information... 82s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 83s Starting 2 pkgProblemResolver with broken count: 0 83s Done 84s Entering ResolveByKeep 85s 86s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 86s Reading package lists... 87s Building dependency tree... 87s Reading state information... 87s Starting pkgProblemResolver with broken count: 0 88s Starting 2 pkgProblemResolver with broken count: 0 88s Done 89s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 92s autopkgtest [03:44:28]: testbed running kernel: Linux 6.8.0-87-generic #88-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 09:16:38 UTC 2025 92s autopkgtest [03:44:28]: @@@@@@@@@@@@@@@@@@@@ apt-source adsys 96s Get:1 http://ftpmaster.internal/ubuntu noble-proposed/main adsys 0.16.3~24.04.2 (dsc) [2175 B] 96s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main adsys 0.16.3~24.04.2 (tar) [7409 kB] 97s gpgv: Signature made Fri Oct 24 14:31:01 2025 UTC 97s gpgv: using RSA key 3BE11453128B12B520E77C1312BEDA39A1E77042 97s gpgv: issuer "dgadomski@ubuntu.com" 97s gpgv: Can't check signature: No public key 97s dpkg-source: warning: cannot verify inline signature for ./adsys_0.16.3~24.04.2.dsc: no acceptable signature found 98s autopkgtest [03:44:34]: testing package adsys version 0.16.3~24.04.2 98s autopkgtest [03:44:34]: build not needed 106s autopkgtest [03:44:42]: test command1: preparing testbed 107s Reading package lists... 108s Building dependency tree... 108s Reading state information... 108s Starting pkgProblemResolver with broken count: 0 109s Starting 2 pkgProblemResolver with broken count: 0 109s Done 111s The following NEW packages will be installed: 111s autoconf automake autopoint autotools-dev build-essential comerr-dev cpp 111s cpp-13 cpp-13-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper debugedit 111s dh-apport dh-autoreconf dh-golang dh-strip-nondeterminism dwz g++ g++-13 111s g++-13-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-13 111s gcc-13-aarch64-linux-gnu gcc-13-base gcc-aarch64-linux-gnu gettext 111s golang-1.23-go golang-1.23-src intltool-debian krb5-multidev 111s libarchive-zip-perl libasan8 libatomic1 libavahi-client3 111s libavahi-common-data libavahi-common3 libblkid-dev libcc1-0 libcups2t64 111s libdbus-1-dev libdebhelper-perl libffi-dev libfile-stripnondeterminism-perl 111s libgcc-13-dev libgirepository-2.0-0 libglib2.0-bin libglib2.0-dev 111s libglib2.0-dev-bin libgomp1 libgssrpc4t64 libhwasan0 libisl23 libitm1 111s libkadm5clnt-mit12 libkadm5srv-mit12 libkdb5-10t64 libkrb5-dev libldb2 111s liblsan0 libmount-dev libmpc3 libpam0g-dev libpcre2-16-0 libpcre2-32-0 111s libpcre2-dev libpcre2-posix3 libpkgconf3 libselinux1-dev libsepol-dev 111s libsmbclient-dev libsmbclient0 libstdc++-13-dev libsub-override-perl 111s libtalloc2 libtdb1 libtevent0t64 libtool libtsan2 libubsan1 libwbclient-dev 111s libwbclient0 m4 pkgconf pkgconf-bin po-debconf python3-dnspython python3-ldb 111s python3-markdown python3-packaging python3-samba python3-talloc python3-tdb 111s samba samba-common samba-common-bin samba-dsdb-modules samba-libs sgml-base 111s tdb-tools uuid-dev xml-core zlib1g-dev 111s 0 upgraded, 103 newly installed, 0 to remove and 0 not upgraded. 111s Need to get 123 MB of archives. 111s After this operation, 540 MB of additional disk space will be used. 111s Get:1 http://ftpmaster.internal/ubuntu noble/main arm64 python3-dnspython all 2.6.1-1ubuntu1 [163 kB] 111s Get:2 http://ftpmaster.internal/ubuntu noble/main arm64 libtalloc2 arm64 2.4.2-1build2 [26.7 kB] 111s Get:3 http://ftpmaster.internal/ubuntu noble/main arm64 libtdb1 arm64 1.4.10-1build1 [48.5 kB] 111s Get:4 http://ftpmaster.internal/ubuntu noble/main arm64 libtevent0t64 arm64 0.16.1-2build1 [42.3 kB] 111s Get:5 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libldb2 arm64 2:2.8.0+samba4.19.5+dfsg-4ubuntu9.4 [189 kB] 111s Get:6 http://ftpmaster.internal/ubuntu noble-updates/main arm64 python3-ldb arm64 2:2.8.0+samba4.19.5+dfsg-4ubuntu9.4 [42.4 kB] 111s Get:7 http://ftpmaster.internal/ubuntu noble/main arm64 python3-tdb arm64 1.4.10-1build1 [15.1 kB] 111s Get:8 http://ftpmaster.internal/ubuntu noble/main arm64 python3-markdown all 3.5.2-1 [72.0 kB] 111s Get:9 http://ftpmaster.internal/ubuntu noble/main arm64 libavahi-common-data arm64 0.8-13ubuntu6 [29.6 kB] 111s Get:10 http://ftpmaster.internal/ubuntu noble/main arm64 libavahi-common3 arm64 0.8-13ubuntu6 [23.3 kB] 111s Get:11 http://ftpmaster.internal/ubuntu noble/main arm64 libavahi-client3 arm64 0.8-13ubuntu6 [27.2 kB] 111s Get:12 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libwbclient0 arm64 2:4.19.5+dfsg-4ubuntu9.4 [72.4 kB] 111s Get:13 http://ftpmaster.internal/ubuntu noble-updates/main arm64 samba-libs arm64 2:4.19.5+dfsg-4ubuntu9.4 [6061 kB] 113s Get:14 http://ftpmaster.internal/ubuntu noble/main arm64 python3-talloc arm64 2.4.2-1build2 [12.9 kB] 113s Get:15 http://ftpmaster.internal/ubuntu noble-updates/main arm64 python3-samba arm64 2:4.19.5+dfsg-4ubuntu9.4 [2804 kB] 113s Get:16 http://ftpmaster.internal/ubuntu noble-updates/main arm64 samba-common all 2:4.19.5+dfsg-4ubuntu9.4 [65.2 kB] 113s Get:17 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libcups2t64 arm64 2.4.7-1.2ubuntu7.4 [275 kB] 113s Get:18 http://ftpmaster.internal/ubuntu noble-updates/main arm64 samba-common-bin arm64 2:4.19.5+dfsg-4ubuntu9.4 [1270 kB] 113s Get:19 http://ftpmaster.internal/ubuntu noble/main arm64 tdb-tools arm64 1.4.10-1build1 [25.9 kB] 113s Get:20 http://ftpmaster.internal/ubuntu noble-updates/main arm64 samba arm64 2:4.19.5+dfsg-4ubuntu9.4 [1000 kB] 113s Get:21 http://ftpmaster.internal/ubuntu noble/main arm64 sgml-base all 1.31 [11.4 kB] 113s Get:22 http://ftpmaster.internal/ubuntu noble/main arm64 m4 arm64 1.4.19-4build1 [240 kB] 113s Get:23 http://ftpmaster.internal/ubuntu noble/main arm64 autoconf all 2.71-3 [339 kB] 113s Get:24 http://ftpmaster.internal/ubuntu noble/main arm64 autotools-dev all 20220109.1 [44.9 kB] 113s Get:25 http://ftpmaster.internal/ubuntu noble/main arm64 automake all 1:1.16.5-1.3ubuntu1 [558 kB] 113s Get:26 http://ftpmaster.internal/ubuntu noble/main arm64 autopoint all 0.21-14ubuntu2 [422 kB] 113s Get:27 http://ftpmaster.internal/ubuntu noble-updates/main arm64 gcc-13-base arm64 13.3.0-6ubuntu2~24.04 [51.5 kB] 113s Get:28 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libisl23 arm64 0.26-3build1.1 [669 kB] 113s Get:29 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libmpc3 arm64 1.3.1-1build1.1 [56.4 kB] 113s Get:30 http://ftpmaster.internal/ubuntu noble-updates/main arm64 cpp-13-aarch64-linux-gnu arm64 13.3.0-6ubuntu2~24.04 [9556 kB] 114s Get:31 http://ftpmaster.internal/ubuntu noble-updates/main arm64 cpp-13 arm64 13.3.0-6ubuntu2~24.04 [1036 B] 114s Get:32 http://ftpmaster.internal/ubuntu noble/main arm64 cpp-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [5316 B] 114s Get:33 http://ftpmaster.internal/ubuntu noble/main arm64 cpp arm64 4:13.2.0-7ubuntu1 [22.4 kB] 114s Get:34 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libcc1-0 arm64 14.2.0-4ubuntu2~24.04 [49.7 kB] 114s Get:35 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libgomp1 arm64 14.2.0-4ubuntu2~24.04 [145 kB] 114s Get:36 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libitm1 arm64 14.2.0-4ubuntu2~24.04 [28.1 kB] 114s Get:37 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libatomic1 arm64 14.2.0-4ubuntu2~24.04 [11.6 kB] 114s Get:38 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libasan8 arm64 14.2.0-4ubuntu2~24.04 [2930 kB] 114s Get:39 http://ftpmaster.internal/ubuntu noble-updates/main arm64 liblsan0 arm64 14.2.0-4ubuntu2~24.04 [1289 kB] 114s Get:40 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libtsan2 arm64 14.2.0-4ubuntu2~24.04 [2696 kB] 114s Get:41 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libubsan1 arm64 14.2.0-4ubuntu2~24.04 [1157 kB] 114s Get:42 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libhwasan0 arm64 14.2.0-4ubuntu2~24.04 [1605 kB] 115s Get:43 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libgcc-13-dev arm64 13.3.0-6ubuntu2~24.04 [2473 kB] 115s Get:44 http://ftpmaster.internal/ubuntu noble-updates/main arm64 gcc-13-aarch64-linux-gnu arm64 13.3.0-6ubuntu2~24.04 [18.7 MB] 118s Get:45 http://ftpmaster.internal/ubuntu noble-updates/main arm64 gcc-13 arm64 13.3.0-6ubuntu2~24.04 [484 kB] 118s Get:46 http://ftpmaster.internal/ubuntu noble/main arm64 gcc-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [1198 B] 118s Get:47 http://ftpmaster.internal/ubuntu noble/main arm64 gcc arm64 4:13.2.0-7ubuntu1 [5018 B] 118s Get:48 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libstdc++-13-dev arm64 13.3.0-6ubuntu2~24.04 [2397 kB] 118s Get:49 http://ftpmaster.internal/ubuntu noble-updates/main arm64 g++-13-aarch64-linux-gnu arm64 13.3.0-6ubuntu2~24.04 [10.9 MB] 121s Get:50 http://ftpmaster.internal/ubuntu noble-updates/main arm64 g++-13 arm64 13.3.0-6ubuntu2~24.04 [16.0 kB] 121s Get:51 http://ftpmaster.internal/ubuntu noble/main arm64 g++-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [962 B] 121s Get:52 http://ftpmaster.internal/ubuntu noble/main arm64 g++ arm64 4:13.2.0-7ubuntu1 [1082 B] 121s Get:53 http://ftpmaster.internal/ubuntu noble/main arm64 build-essential arm64 12.10ubuntu1 [4932 B] 121s Get:54 http://ftpmaster.internal/ubuntu noble/main arm64 libdebhelper-perl all 13.14.1ubuntu5 [89.8 kB] 121s Get:55 http://ftpmaster.internal/ubuntu noble/main arm64 libtool all 2.4.7-7build1 [166 kB] 121s Get:56 http://ftpmaster.internal/ubuntu noble/main arm64 dh-autoreconf all 20 [16.1 kB] 121s Get:57 http://ftpmaster.internal/ubuntu noble/main arm64 libarchive-zip-perl all 1.68-1 [90.2 kB] 121s Get:58 http://ftpmaster.internal/ubuntu noble/main arm64 libsub-override-perl all 0.10-1 [10.0 kB] 121s Get:59 http://ftpmaster.internal/ubuntu noble/main arm64 libfile-stripnondeterminism-perl all 1.13.1-1 [18.1 kB] 121s Get:60 http://ftpmaster.internal/ubuntu noble/main arm64 dh-strip-nondeterminism all 1.13.1-1 [5362 B] 121s Get:61 http://ftpmaster.internal/ubuntu noble/main arm64 debugedit arm64 1:5.0-5build2 [45.3 kB] 121s Get:62 http://ftpmaster.internal/ubuntu noble/main arm64 dwz arm64 0.15-1build6 [113 kB] 121s Get:63 http://ftpmaster.internal/ubuntu noble/main arm64 gettext arm64 0.21-14ubuntu2 [845 kB] 121s Get:64 http://ftpmaster.internal/ubuntu noble/main arm64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 121s Get:65 http://ftpmaster.internal/ubuntu noble/main arm64 po-debconf all 1.0.21+nmu1 [233 kB] 121s Get:66 http://ftpmaster.internal/ubuntu noble/main arm64 debhelper all 13.14.1ubuntu5 [869 kB] 121s Get:67 http://ftpmaster.internal/ubuntu noble-updates/universe arm64 dh-apport all 2.28.1-0ubuntu3.8 [18.8 kB] 121s Get:68 http://ftpmaster.internal/ubuntu noble-updates/universe arm64 golang-1.23-src all 1.23.1-1~24.04.1 [19.8 MB] 126s Get:69 http://ftpmaster.internal/ubuntu noble-updates/universe arm64 golang-1.23-go arm64 1.23.1-1~24.04.1 [25.2 MB] 132s Get:70 http://ftpmaster.internal/ubuntu noble-updates/main arm64 comerr-dev arm64 2.1-1.47.0-2.4~exp1ubuntu4.1 [44.1 kB] 132s Get:71 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libgssrpc4t64 arm64 1.20.1-6ubuntu2.6 [57.9 kB] 132s Get:72 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libkadm5clnt-mit12 arm64 1.20.1-6ubuntu2.6 [40.0 kB] 132s Get:73 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libkdb5-10t64 arm64 1.20.1-6ubuntu2.6 [40.5 kB] 132s Get:74 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libkadm5srv-mit12 arm64 1.20.1-6ubuntu2.6 [53.4 kB] 132s Get:75 http://ftpmaster.internal/ubuntu noble-updates/main arm64 krb5-multidev arm64 1.20.1-6ubuntu2.6 [125 kB] 132s Get:76 http://ftpmaster.internal/ubuntu noble/main arm64 libpkgconf3 arm64 1.8.1-2build1 [31.2 kB] 132s Get:77 http://ftpmaster.internal/ubuntu noble/main arm64 pkgconf-bin arm64 1.8.1-2build1 [20.5 kB] 132s Get:78 http://ftpmaster.internal/ubuntu noble/main arm64 pkgconf arm64 1.8.1-2build1 [16.8 kB] 132s Get:79 http://ftpmaster.internal/ubuntu noble/main arm64 xml-core all 0.19 [20.3 kB] 132s Get:80 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libdbus-1-dev arm64 1.14.10-4ubuntu4.1 [200 kB] 132s Get:81 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libgirepository-2.0-0 arm64 2.80.0-6ubuntu3.4 [71.5 kB] 132s Get:82 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libglib2.0-bin arm64 2.80.0-6ubuntu3.4 [97.1 kB] 132s Get:83 http://ftpmaster.internal/ubuntu noble/main arm64 libffi-dev arm64 3.4.6-1build1 [59.5 kB] 132s Get:84 http://ftpmaster.internal/ubuntu noble/main arm64 python3-packaging all 24.0-1 [41.1 kB] 132s Get:85 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libglib2.0-dev-bin arm64 2.80.0-6ubuntu3.4 [138 kB] 132s Get:86 http://ftpmaster.internal/ubuntu noble-updates/main arm64 uuid-dev arm64 2.39.3-9ubuntu6.3 [34.8 kB] 132s Get:87 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libblkid-dev arm64 2.39.3-9ubuntu6.3 [219 kB] 132s Get:88 http://ftpmaster.internal/ubuntu noble/main arm64 libsepol-dev arm64 3.5-2build1 [395 kB] 132s Get:89 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libpcre2-16-0 arm64 10.42-4ubuntu2.1 [196 kB] 133s Get:90 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libpcre2-32-0 arm64 10.42-4ubuntu2.1 [184 kB] 133s Get:91 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libpcre2-posix3 arm64 10.42-4ubuntu2.1 [6604 B] 133s Get:92 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libpcre2-dev arm64 10.42-4ubuntu2.1 [680 kB] 133s Get:93 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libselinux1-dev arm64 3.5-2ubuntu2.1 [172 kB] 133s Get:94 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libmount-dev arm64 2.39.3-9ubuntu6.3 [14.9 kB] 133s Get:95 http://ftpmaster.internal/ubuntu noble-updates/main arm64 zlib1g-dev arm64 1:1.3.dfsg-3.1ubuntu2.1 [894 kB] 133s Get:96 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libglib2.0-dev arm64 2.80.0-6ubuntu3.4 [1963 kB] 133s Get:97 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libpam0g-dev arm64 1.5.3-5ubuntu5.5 [116 kB] 133s Get:98 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libsmbclient0 arm64 2:4.19.5+dfsg-4ubuntu9.4 [62.1 kB] 133s Get:99 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libwbclient-dev arm64 2:4.19.5+dfsg-4ubuntu9.4 [16.2 kB] 133s Get:100 http://ftpmaster.internal/ubuntu noble-updates/main arm64 samba-dsdb-modules arm64 2:4.19.5+dfsg-4ubuntu9.4 [319 kB] 133s Get:101 http://ftpmaster.internal/ubuntu noble/main arm64 dh-golang all 1.62 [25.2 kB] 134s Get:102 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libkrb5-dev arm64 1.20.1-6ubuntu2.6 [11.9 kB] 134s Get:103 http://ftpmaster.internal/ubuntu noble-updates/main arm64 libsmbclient-dev arm64 2:4.19.5+dfsg-4ubuntu9.4 [40.5 kB] 134s Fetched 123 MB in 23s (5382 kB/s) 134s Selecting previously unselected package python3-dnspython. 134s (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 ... 113353 files and directories currently installed.) 134s Preparing to unpack .../000-python3-dnspython_2.6.1-1ubuntu1_all.deb ... 134s Unpacking python3-dnspython (2.6.1-1ubuntu1) ... 134s Selecting previously unselected package libtalloc2:arm64. 134s Preparing to unpack .../001-libtalloc2_2.4.2-1build2_arm64.deb ... 134s Unpacking libtalloc2:arm64 (2.4.2-1build2) ... 134s Selecting previously unselected package libtdb1:arm64. 135s Preparing to unpack .../002-libtdb1_1.4.10-1build1_arm64.deb ... 135s Unpacking libtdb1:arm64 (1.4.10-1build1) ... 135s Selecting previously unselected package libtevent0t64:arm64. 135s Preparing to unpack .../003-libtevent0t64_0.16.1-2build1_arm64.deb ... 135s Unpacking libtevent0t64:arm64 (0.16.1-2build1) ... 135s Selecting previously unselected package libldb2:arm64. 135s Preparing to unpack .../004-libldb2_2%3a2.8.0+samba4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 135s Unpacking libldb2:arm64 (2:2.8.0+samba4.19.5+dfsg-4ubuntu9.4) ... 135s Selecting previously unselected package python3-ldb. 135s Preparing to unpack .../005-python3-ldb_2%3a2.8.0+samba4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 135s Unpacking python3-ldb (2:2.8.0+samba4.19.5+dfsg-4ubuntu9.4) ... 135s Selecting previously unselected package python3-tdb. 135s Preparing to unpack .../006-python3-tdb_1.4.10-1build1_arm64.deb ... 135s Unpacking python3-tdb (1.4.10-1build1) ... 135s Selecting previously unselected package python3-markdown. 135s Preparing to unpack .../007-python3-markdown_3.5.2-1_all.deb ... 135s Unpacking python3-markdown (3.5.2-1) ... 135s Selecting previously unselected package libavahi-common-data:arm64. 135s Preparing to unpack .../008-libavahi-common-data_0.8-13ubuntu6_arm64.deb ... 135s Unpacking libavahi-common-data:arm64 (0.8-13ubuntu6) ... 135s Selecting previously unselected package libavahi-common3:arm64. 135s Preparing to unpack .../009-libavahi-common3_0.8-13ubuntu6_arm64.deb ... 135s Unpacking libavahi-common3:arm64 (0.8-13ubuntu6) ... 135s Selecting previously unselected package libavahi-client3:arm64. 135s Preparing to unpack .../010-libavahi-client3_0.8-13ubuntu6_arm64.deb ... 135s Unpacking libavahi-client3:arm64 (0.8-13ubuntu6) ... 135s Selecting previously unselected package libwbclient0:arm64. 135s Preparing to unpack .../011-libwbclient0_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 135s Unpacking libwbclient0:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 135s Selecting previously unselected package samba-libs:arm64. 135s Preparing to unpack .../012-samba-libs_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 135s Unpacking samba-libs:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 135s Selecting previously unselected package python3-talloc:arm64. 135s Preparing to unpack .../013-python3-talloc_2.4.2-1build2_arm64.deb ... 135s Unpacking python3-talloc:arm64 (2.4.2-1build2) ... 135s Selecting previously unselected package python3-samba. 135s Preparing to unpack .../014-python3-samba_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 135s Unpacking python3-samba (2:4.19.5+dfsg-4ubuntu9.4) ... 135s Selecting previously unselected package samba-common. 135s Preparing to unpack .../015-samba-common_2%3a4.19.5+dfsg-4ubuntu9.4_all.deb ... 135s Unpacking samba-common (2:4.19.5+dfsg-4ubuntu9.4) ... 135s Selecting previously unselected package libcups2t64:arm64. 136s Preparing to unpack .../016-libcups2t64_2.4.7-1.2ubuntu7.4_arm64.deb ... 136s Unpacking libcups2t64:arm64 (2.4.7-1.2ubuntu7.4) ... 136s Selecting previously unselected package samba-common-bin. 136s Preparing to unpack .../017-samba-common-bin_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 136s Unpacking samba-common-bin (2:4.19.5+dfsg-4ubuntu9.4) ... 136s Selecting previously unselected package tdb-tools. 136s Preparing to unpack .../018-tdb-tools_1.4.10-1build1_arm64.deb ... 136s Unpacking tdb-tools (1.4.10-1build1) ... 136s Selecting previously unselected package samba. 136s Preparing to unpack .../019-samba_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 136s Unpacking samba (2:4.19.5+dfsg-4ubuntu9.4) ... 136s Selecting previously unselected package sgml-base. 136s Preparing to unpack .../020-sgml-base_1.31_all.deb ... 136s Unpacking sgml-base (1.31) ... 136s Selecting previously unselected package m4. 136s Preparing to unpack .../021-m4_1.4.19-4build1_arm64.deb ... 136s Unpacking m4 (1.4.19-4build1) ... 136s Selecting previously unselected package autoconf. 136s Preparing to unpack .../022-autoconf_2.71-3_all.deb ... 136s Unpacking autoconf (2.71-3) ... 136s Selecting previously unselected package autotools-dev. 136s Preparing to unpack .../023-autotools-dev_20220109.1_all.deb ... 136s Unpacking autotools-dev (20220109.1) ... 136s Selecting previously unselected package automake. 136s Preparing to unpack .../024-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 136s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 136s Selecting previously unselected package autopoint. 136s Preparing to unpack .../025-autopoint_0.21-14ubuntu2_all.deb ... 136s Unpacking autopoint (0.21-14ubuntu2) ... 136s Selecting previously unselected package gcc-13-base:arm64. 136s Preparing to unpack .../026-gcc-13-base_13.3.0-6ubuntu2~24.04_arm64.deb ... 136s Unpacking gcc-13-base:arm64 (13.3.0-6ubuntu2~24.04) ... 136s Selecting previously unselected package libisl23:arm64. 136s Preparing to unpack .../027-libisl23_0.26-3build1.1_arm64.deb ... 136s Unpacking libisl23:arm64 (0.26-3build1.1) ... 136s Selecting previously unselected package libmpc3:arm64. 136s Preparing to unpack .../028-libmpc3_1.3.1-1build1.1_arm64.deb ... 136s Unpacking libmpc3:arm64 (1.3.1-1build1.1) ... 136s Selecting previously unselected package cpp-13-aarch64-linux-gnu. 136s Preparing to unpack .../029-cpp-13-aarch64-linux-gnu_13.3.0-6ubuntu2~24.04_arm64.deb ... 136s Unpacking cpp-13-aarch64-linux-gnu (13.3.0-6ubuntu2~24.04) ... 137s Selecting previously unselected package cpp-13. 137s Preparing to unpack .../030-cpp-13_13.3.0-6ubuntu2~24.04_arm64.deb ... 137s Unpacking cpp-13 (13.3.0-6ubuntu2~24.04) ... 137s Selecting previously unselected package cpp-aarch64-linux-gnu. 137s Preparing to unpack .../031-cpp-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ... 137s Unpacking cpp-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ... 137s Selecting previously unselected package cpp. 137s Preparing to unpack .../032-cpp_4%3a13.2.0-7ubuntu1_arm64.deb ... 137s Unpacking cpp (4:13.2.0-7ubuntu1) ... 137s Selecting previously unselected package libcc1-0:arm64. 137s Preparing to unpack .../033-libcc1-0_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libcc1-0:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libgomp1:arm64. 137s Preparing to unpack .../034-libgomp1_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libgomp1:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libitm1:arm64. 137s Preparing to unpack .../035-libitm1_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libitm1:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libatomic1:arm64. 137s Preparing to unpack .../036-libatomic1_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libatomic1:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libasan8:arm64. 137s Preparing to unpack .../037-libasan8_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libasan8:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package liblsan0:arm64. 137s Preparing to unpack .../038-liblsan0_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking liblsan0:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libtsan2:arm64. 137s Preparing to unpack .../039-libtsan2_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libtsan2:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libubsan1:arm64. 137s Preparing to unpack .../040-libubsan1_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libubsan1:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libhwasan0:arm64. 137s Preparing to unpack .../041-libhwasan0_14.2.0-4ubuntu2~24.04_arm64.deb ... 137s Unpacking libhwasan0:arm64 (14.2.0-4ubuntu2~24.04) ... 137s Selecting previously unselected package libgcc-13-dev:arm64. 137s Preparing to unpack .../042-libgcc-13-dev_13.3.0-6ubuntu2~24.04_arm64.deb ... 137s Unpacking libgcc-13-dev:arm64 (13.3.0-6ubuntu2~24.04) ... 137s Selecting previously unselected package gcc-13-aarch64-linux-gnu. 137s Preparing to unpack .../043-gcc-13-aarch64-linux-gnu_13.3.0-6ubuntu2~24.04_arm64.deb ... 137s Unpacking gcc-13-aarch64-linux-gnu (13.3.0-6ubuntu2~24.04) ... 138s Selecting previously unselected package gcc-13. 138s Preparing to unpack .../044-gcc-13_13.3.0-6ubuntu2~24.04_arm64.deb ... 138s Unpacking gcc-13 (13.3.0-6ubuntu2~24.04) ... 138s Selecting previously unselected package gcc-aarch64-linux-gnu. 138s Preparing to unpack .../045-gcc-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ... 138s Unpacking gcc-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ... 138s Selecting previously unselected package gcc. 138s Preparing to unpack .../046-gcc_4%3a13.2.0-7ubuntu1_arm64.deb ... 138s Unpacking gcc (4:13.2.0-7ubuntu1) ... 138s Selecting previously unselected package libstdc++-13-dev:arm64. 138s Preparing to unpack .../047-libstdc++-13-dev_13.3.0-6ubuntu2~24.04_arm64.deb ... 138s Unpacking libstdc++-13-dev:arm64 (13.3.0-6ubuntu2~24.04) ... 138s Selecting previously unselected package g++-13-aarch64-linux-gnu. 138s Preparing to unpack .../048-g++-13-aarch64-linux-gnu_13.3.0-6ubuntu2~24.04_arm64.deb ... 138s Unpacking g++-13-aarch64-linux-gnu (13.3.0-6ubuntu2~24.04) ... 139s Selecting previously unselected package g++-13. 139s Preparing to unpack .../049-g++-13_13.3.0-6ubuntu2~24.04_arm64.deb ... 139s Unpacking g++-13 (13.3.0-6ubuntu2~24.04) ... 139s Selecting previously unselected package g++-aarch64-linux-gnu. 139s Preparing to unpack .../050-g++-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ... 139s Unpacking g++-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ... 139s Selecting previously unselected package g++. 139s Preparing to unpack .../051-g++_4%3a13.2.0-7ubuntu1_arm64.deb ... 139s Unpacking g++ (4:13.2.0-7ubuntu1) ... 139s Selecting previously unselected package build-essential. 139s Preparing to unpack .../052-build-essential_12.10ubuntu1_arm64.deb ... 139s Unpacking build-essential (12.10ubuntu1) ... 139s Selecting previously unselected package libdebhelper-perl. 139s Preparing to unpack .../053-libdebhelper-perl_13.14.1ubuntu5_all.deb ... 139s Unpacking libdebhelper-perl (13.14.1ubuntu5) ... 139s Selecting previously unselected package libtool. 139s Preparing to unpack .../054-libtool_2.4.7-7build1_all.deb ... 139s Unpacking libtool (2.4.7-7build1) ... 139s Selecting previously unselected package dh-autoreconf. 139s Preparing to unpack .../055-dh-autoreconf_20_all.deb ... 139s Unpacking dh-autoreconf (20) ... 139s Selecting previously unselected package libarchive-zip-perl. 139s Preparing to unpack .../056-libarchive-zip-perl_1.68-1_all.deb ... 139s Unpacking libarchive-zip-perl (1.68-1) ... 139s Selecting previously unselected package libsub-override-perl. 139s Preparing to unpack .../057-libsub-override-perl_0.10-1_all.deb ... 139s Unpacking libsub-override-perl (0.10-1) ... 139s Selecting previously unselected package libfile-stripnondeterminism-perl. 139s Preparing to unpack .../058-libfile-stripnondeterminism-perl_1.13.1-1_all.deb ... 139s Unpacking libfile-stripnondeterminism-perl (1.13.1-1) ... 139s Selecting previously unselected package dh-strip-nondeterminism. 139s Preparing to unpack .../059-dh-strip-nondeterminism_1.13.1-1_all.deb ... 139s Unpacking dh-strip-nondeterminism (1.13.1-1) ... 139s Selecting previously unselected package debugedit. 139s Preparing to unpack .../060-debugedit_1%3a5.0-5build2_arm64.deb ... 139s Unpacking debugedit (1:5.0-5build2) ... 139s Selecting previously unselected package dwz. 139s Preparing to unpack .../061-dwz_0.15-1build6_arm64.deb ... 139s Unpacking dwz (0.15-1build6) ... 139s Selecting previously unselected package gettext. 139s Preparing to unpack .../062-gettext_0.21-14ubuntu2_arm64.deb ... 139s Unpacking gettext (0.21-14ubuntu2) ... 139s Selecting previously unselected package intltool-debian. 139s Preparing to unpack .../063-intltool-debian_0.35.0+20060710.6_all.deb ... 139s Unpacking intltool-debian (0.35.0+20060710.6) ... 139s Selecting previously unselected package po-debconf. 139s Preparing to unpack .../064-po-debconf_1.0.21+nmu1_all.deb ... 139s Unpacking po-debconf (1.0.21+nmu1) ... 139s Selecting previously unselected package debhelper. 139s Preparing to unpack .../065-debhelper_13.14.1ubuntu5_all.deb ... 139s Unpacking debhelper (13.14.1ubuntu5) ... 139s Selecting previously unselected package dh-apport. 140s Preparing to unpack .../066-dh-apport_2.28.1-0ubuntu3.8_all.deb ... 140s Unpacking dh-apport (2.28.1-0ubuntu3.8) ... 140s Selecting previously unselected package golang-1.23-src. 140s Preparing to unpack .../067-golang-1.23-src_1.23.1-1~24.04.1_all.deb ... 140s Unpacking golang-1.23-src (1.23.1-1~24.04.1) ... 142s Selecting previously unselected package golang-1.23-go. 142s Preparing to unpack .../068-golang-1.23-go_1.23.1-1~24.04.1_arm64.deb ... 142s Unpacking golang-1.23-go (1.23.1-1~24.04.1) ... 142s Selecting previously unselected package comerr-dev:arm64. 142s Preparing to unpack .../069-comerr-dev_2.1-1.47.0-2.4~exp1ubuntu4.1_arm64.deb ... 142s Unpacking comerr-dev:arm64 (2.1-1.47.0-2.4~exp1ubuntu4.1) ... 142s Selecting previously unselected package libgssrpc4t64:arm64. 142s Preparing to unpack .../070-libgssrpc4t64_1.20.1-6ubuntu2.6_arm64.deb ... 142s Unpacking libgssrpc4t64:arm64 (1.20.1-6ubuntu2.6) ... 142s Selecting previously unselected package libkadm5clnt-mit12:arm64. 142s Preparing to unpack .../071-libkadm5clnt-mit12_1.20.1-6ubuntu2.6_arm64.deb ... 142s Unpacking libkadm5clnt-mit12:arm64 (1.20.1-6ubuntu2.6) ... 142s Selecting previously unselected package libkdb5-10t64:arm64. 142s Preparing to unpack .../072-libkdb5-10t64_1.20.1-6ubuntu2.6_arm64.deb ... 142s Unpacking libkdb5-10t64:arm64 (1.20.1-6ubuntu2.6) ... 142s Selecting previously unselected package libkadm5srv-mit12:arm64. 142s Preparing to unpack .../073-libkadm5srv-mit12_1.20.1-6ubuntu2.6_arm64.deb ... 142s Unpacking libkadm5srv-mit12:arm64 (1.20.1-6ubuntu2.6) ... 142s Selecting previously unselected package krb5-multidev:arm64. 142s Preparing to unpack .../074-krb5-multidev_1.20.1-6ubuntu2.6_arm64.deb ... 142s Unpacking krb5-multidev:arm64 (1.20.1-6ubuntu2.6) ... 142s Selecting previously unselected package libpkgconf3:arm64. 142s Preparing to unpack .../075-libpkgconf3_1.8.1-2build1_arm64.deb ... 142s Unpacking libpkgconf3:arm64 (1.8.1-2build1) ... 142s Selecting previously unselected package pkgconf-bin. 142s Preparing to unpack .../076-pkgconf-bin_1.8.1-2build1_arm64.deb ... 142s Unpacking pkgconf-bin (1.8.1-2build1) ... 142s Selecting previously unselected package pkgconf:arm64. 143s Preparing to unpack .../077-pkgconf_1.8.1-2build1_arm64.deb ... 143s Unpacking pkgconf:arm64 (1.8.1-2build1) ... 143s Selecting previously unselected package xml-core. 143s Preparing to unpack .../078-xml-core_0.19_all.deb ... 143s Unpacking xml-core (0.19) ... 143s Selecting previously unselected package libdbus-1-dev:arm64. 143s Preparing to unpack .../079-libdbus-1-dev_1.14.10-4ubuntu4.1_arm64.deb ... 143s Unpacking libdbus-1-dev:arm64 (1.14.10-4ubuntu4.1) ... 143s Selecting previously unselected package libgirepository-2.0-0:arm64. 143s Preparing to unpack .../080-libgirepository-2.0-0_2.80.0-6ubuntu3.4_arm64.deb ... 143s Unpacking libgirepository-2.0-0:arm64 (2.80.0-6ubuntu3.4) ... 143s Selecting previously unselected package libglib2.0-bin. 143s Preparing to unpack .../081-libglib2.0-bin_2.80.0-6ubuntu3.4_arm64.deb ... 143s Unpacking libglib2.0-bin (2.80.0-6ubuntu3.4) ... 143s Selecting previously unselected package libffi-dev:arm64. 143s Preparing to unpack .../082-libffi-dev_3.4.6-1build1_arm64.deb ... 143s Unpacking libffi-dev:arm64 (3.4.6-1build1) ... 143s Selecting previously unselected package python3-packaging. 143s Preparing to unpack .../083-python3-packaging_24.0-1_all.deb ... 143s Unpacking python3-packaging (24.0-1) ... 143s Selecting previously unselected package libglib2.0-dev-bin. 143s Preparing to unpack .../084-libglib2.0-dev-bin_2.80.0-6ubuntu3.4_arm64.deb ... 143s Unpacking libglib2.0-dev-bin (2.80.0-6ubuntu3.4) ... 143s Selecting previously unselected package uuid-dev:arm64. 143s Preparing to unpack .../085-uuid-dev_2.39.3-9ubuntu6.3_arm64.deb ... 143s Unpacking uuid-dev:arm64 (2.39.3-9ubuntu6.3) ... 143s Selecting previously unselected package libblkid-dev:arm64. 143s Preparing to unpack .../086-libblkid-dev_2.39.3-9ubuntu6.3_arm64.deb ... 143s Unpacking libblkid-dev:arm64 (2.39.3-9ubuntu6.3) ... 143s Selecting previously unselected package libsepol-dev:arm64. 143s Preparing to unpack .../087-libsepol-dev_3.5-2build1_arm64.deb ... 143s Unpacking libsepol-dev:arm64 (3.5-2build1) ... 143s Selecting previously unselected package libpcre2-16-0:arm64. 143s Preparing to unpack .../088-libpcre2-16-0_10.42-4ubuntu2.1_arm64.deb ... 143s Unpacking libpcre2-16-0:arm64 (10.42-4ubuntu2.1) ... 143s Selecting previously unselected package libpcre2-32-0:arm64. 143s Preparing to unpack .../089-libpcre2-32-0_10.42-4ubuntu2.1_arm64.deb ... 143s Unpacking libpcre2-32-0:arm64 (10.42-4ubuntu2.1) ... 143s Selecting previously unselected package libpcre2-posix3:arm64. 143s Preparing to unpack .../090-libpcre2-posix3_10.42-4ubuntu2.1_arm64.deb ... 143s Unpacking libpcre2-posix3:arm64 (10.42-4ubuntu2.1) ... 143s Selecting previously unselected package libpcre2-dev:arm64. 143s Preparing to unpack .../091-libpcre2-dev_10.42-4ubuntu2.1_arm64.deb ... 143s Unpacking libpcre2-dev:arm64 (10.42-4ubuntu2.1) ... 143s Selecting previously unselected package libselinux1-dev:arm64. 143s Preparing to unpack .../092-libselinux1-dev_3.5-2ubuntu2.1_arm64.deb ... 143s Unpacking libselinux1-dev:arm64 (3.5-2ubuntu2.1) ... 143s Selecting previously unselected package libmount-dev:arm64. 143s Preparing to unpack .../093-libmount-dev_2.39.3-9ubuntu6.3_arm64.deb ... 143s Unpacking libmount-dev:arm64 (2.39.3-9ubuntu6.3) ... 143s Selecting previously unselected package zlib1g-dev:arm64. 143s Preparing to unpack .../094-zlib1g-dev_1%3a1.3.dfsg-3.1ubuntu2.1_arm64.deb ... 143s Unpacking zlib1g-dev:arm64 (1:1.3.dfsg-3.1ubuntu2.1) ... 144s Selecting previously unselected package libglib2.0-dev:arm64. 144s Preparing to unpack .../095-libglib2.0-dev_2.80.0-6ubuntu3.4_arm64.deb ... 144s Unpacking libglib2.0-dev:arm64 (2.80.0-6ubuntu3.4) ... 144s Selecting previously unselected package libpam0g-dev:arm64. 144s Preparing to unpack .../096-libpam0g-dev_1.5.3-5ubuntu5.5_arm64.deb ... 144s Unpacking libpam0g-dev:arm64 (1.5.3-5ubuntu5.5) ... 144s Selecting previously unselected package libsmbclient0:arm64. 144s Preparing to unpack .../097-libsmbclient0_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 144s Unpacking libsmbclient0:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 144s Selecting previously unselected package libwbclient-dev:arm64. 144s Preparing to unpack .../098-libwbclient-dev_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 144s Unpacking libwbclient-dev:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 144s Selecting previously unselected package samba-dsdb-modules:arm64. 144s Preparing to unpack .../099-samba-dsdb-modules_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 144s Unpacking samba-dsdb-modules:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 144s Selecting previously unselected package dh-golang. 144s Preparing to unpack .../100-dh-golang_1.62_all.deb ... 144s Unpacking dh-golang (1.62) ... 144s Selecting previously unselected package libkrb5-dev:arm64. 144s Preparing to unpack .../101-libkrb5-dev_1.20.1-6ubuntu2.6_arm64.deb ... 144s Unpacking libkrb5-dev:arm64 (1.20.1-6ubuntu2.6) ... 144s Selecting previously unselected package libsmbclient-dev:arm64. 144s Preparing to unpack .../102-libsmbclient-dev_2%3a4.19.5+dfsg-4ubuntu9.4_arm64.deb ... 144s Unpacking libsmbclient-dev:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 144s Setting up libpam0g-dev:arm64 (1.5.3-5ubuntu5.5) ... 144s Setting up libgirepository-2.0-0:arm64 (2.80.0-6ubuntu3.4) ... 144s Setting up libarchive-zip-perl (1.68-1) ... 144s Setting up libtdb1:arm64 (1.4.10-1build1) ... 144s Setting up libdebhelper-perl (13.14.1ubuntu5) ... 144s Setting up libglib2.0-bin (2.80.0-6ubuntu3.4) ... 144s Setting up m4 (1.4.19-4build1) ... 144s Setting up samba-common (2:4.19.5+dfsg-4ubuntu9.4) ... 144s 144s Creating config file /etc/samba/smb.conf with new version 144s Setting up libgomp1:arm64 (14.2.0-4ubuntu2~24.04) ... 144s Setting up libffi-dev:arm64 (3.4.6-1build1) ... 144s Setting up dh-apport (2.28.1-0ubuntu3.8) ... 144s Setting up libwbclient0:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 144s Setting up libwbclient-dev:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 144s Setting up libpcre2-16-0:arm64 (10.42-4ubuntu2.1) ... 144s Setting up libtalloc2:arm64 (2.4.2-1build2) ... 145s Setting up python3-tdb (1.4.10-1build1) ... 145s Setting up autotools-dev (20220109.1) ... 145s Setting up libpcre2-32-0:arm64 (10.42-4ubuntu2.1) ... 145s Setting up python3-packaging (24.0-1) ... 145s Setting up libpkgconf3:arm64 (1.8.1-2build1) ... 145s Setting up gcc-13-base:arm64 (13.3.0-6ubuntu2~24.04) ... 145s Setting up libgssrpc4t64:arm64 (1.20.1-6ubuntu2.6) ... 145s Setting up uuid-dev:arm64 (2.39.3-9ubuntu6.3) ... 145s Setting up libavahi-common-data:arm64 (0.8-13ubuntu6) ... 145s Setting up tdb-tools (1.4.10-1build1) ... 145s update-alternatives: using /usr/bin/tdbbackup.tdbtools to provide /usr/bin/tdbbackup (tdbbackup) in auto mode 145s Setting up comerr-dev:arm64 (2.1-1.47.0-2.4~exp1ubuntu4.1) ... 145s Setting up libmpc3:arm64 (1.3.1-1build1.1) ... 145s Setting up libatomic1:arm64 (14.2.0-4ubuntu2~24.04) ... 145s Setting up python3-markdown (3.5.2-1) ... 145s Setting up golang-1.23-src (1.23.1-1~24.04.1) ... 145s Setting up autopoint (0.21-14ubuntu2) ... 145s Setting up libsepol-dev:arm64 (3.5-2build1) ... 145s Setting up pkgconf-bin (1.8.1-2build1) ... 145s Setting up autoconf (2.71-3) ... 145s Setting up libubsan1:arm64 (14.2.0-4ubuntu2~24.04) ... 145s Setting up zlib1g-dev:arm64 (1:1.3.dfsg-3.1ubuntu2.1) ... 145s Setting up libpcre2-posix3:arm64 (10.42-4ubuntu2.1) ... 145s Setting up dwz (0.15-1build6) ... 145s Setting up libhwasan0:arm64 (14.2.0-4ubuntu2~24.04) ... 145s Setting up python3-dnspython (2.6.1-1ubuntu1) ... 146s Setting up libasan8:arm64 (14.2.0-4ubuntu2~24.04) ... 146s Setting up debugedit (1:5.0-5build2) ... 146s Setting up libsub-override-perl (0.10-1) ... 146s Setting up sgml-base (1.31) ... 146s Setting up libtsan2:arm64 (14.2.0-4ubuntu2~24.04) ... 146s Setting up libisl23:arm64 (0.26-3build1.1) ... 146s Setting up libcc1-0:arm64 (14.2.0-4ubuntu2~24.04) ... 146s Setting up liblsan0:arm64 (14.2.0-4ubuntu2~24.04) ... 146s Setting up libtevent0t64:arm64 (0.16.1-2build1) ... 146s Setting up libitm1:arm64 (14.2.0-4ubuntu2~24.04) ... 146s Setting up libkadm5clnt-mit12:arm64 (1.20.1-6ubuntu2.6) ... 146s Setting up automake (1:1.16.5-1.3ubuntu1) ... 146s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 146s Setting up libfile-stripnondeterminism-perl (1.13.1-1) ... 146s Setting up libglib2.0-dev-bin (2.80.0-6ubuntu3.4) ... 146s Setting up libblkid-dev:arm64 (2.39.3-9ubuntu6.3) ... 146s Setting up gettext (0.21-14ubuntu2) ... 146s Setting up libpcre2-dev:arm64 (10.42-4ubuntu2.1) ... 146s Setting up cpp-13-aarch64-linux-gnu (13.3.0-6ubuntu2~24.04) ... 146s Setting up libkdb5-10t64:arm64 (1.20.1-6ubuntu2.6) ... 146s Setting up python3-talloc:arm64 (2.4.2-1build2) ... 146s Setting up libselinux1-dev:arm64 (3.5-2ubuntu2.1) ... 146s Setting up libavahi-common3:arm64 (0.8-13ubuntu6) ... 146s Setting up pkgconf:arm64 (1.8.1-2build1) ... 146s Setting up intltool-debian (0.35.0+20060710.6) ... 146s Setting up golang-1.23-go (1.23.1-1~24.04.1) ... 146s Setting up cpp-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ... 146s Setting up dh-strip-nondeterminism (1.13.1-1) ... 146s Setting up libgcc-13-dev:arm64 (13.3.0-6ubuntu2~24.04) ... 146s Setting up xml-core (0.19) ... 146s Setting up libkadm5srv-mit12:arm64 (1.20.1-6ubuntu2.6) ... 146s Setting up libldb2:arm64 (2:2.8.0+samba4.19.5+dfsg-4ubuntu9.4) ... 146s Setting up libavahi-client3:arm64 (0.8-13ubuntu6) ... 146s Setting up libmount-dev:arm64 (2.39.3-9ubuntu6.3) ... 146s Setting up libstdc++-13-dev:arm64 (13.3.0-6ubuntu2~24.04) ... 146s Setting up krb5-multidev:arm64 (1.20.1-6ubuntu2.6) ... 146s Setting up cpp-13 (13.3.0-6ubuntu2~24.04) ... 146s Setting up po-debconf (1.0.21+nmu1) ... 146s Setting up samba-libs:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 146s Setting up gcc-13-aarch64-linux-gnu (13.3.0-6ubuntu2~24.04) ... 146s Setting up libkrb5-dev:arm64 (1.20.1-6ubuntu2.6) ... 146s Setting up libglib2.0-dev:arm64 (2.80.0-6ubuntu3.4) ... 146s Setting up gcc-13 (13.3.0-6ubuntu2~24.04) ... 146s Setting up python3-ldb (2:2.8.0+samba4.19.5+dfsg-4ubuntu9.4) ... 146s Setting up cpp (4:13.2.0-7ubuntu1) ... 146s Setting up samba-dsdb-modules:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 146s Setting up libsmbclient0:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 146s Setting up libcups2t64:arm64 (2.4.7-1.2ubuntu7.4) ... 146s Setting up python3-samba (2:4.19.5+dfsg-4ubuntu9.4) ... 148s Setting up g++-13-aarch64-linux-gnu (13.3.0-6ubuntu2~24.04) ... 148s Setting up gcc-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ... 148s Setting up g++-13 (13.3.0-6ubuntu2~24.04) ... 148s Setting up libtool (2.4.7-7build1) ... 148s Setting up gcc (4:13.2.0-7ubuntu1) ... 148s Setting up dh-autoreconf (20) ... 148s Setting up libsmbclient-dev:arm64 (2:4.19.5+dfsg-4ubuntu9.4) ... 148s Setting up samba-common-bin (2:4.19.5+dfsg-4ubuntu9.4) ... 148s Setting up g++-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ... 148s Setting up samba (2:4.19.5+dfsg-4ubuntu9.4) ... 148s Created symlink /etc/systemd/system/smb.service → /usr/lib/systemd/system/smbd.service. 148s Created symlink /etc/systemd/system/multi-user.target.wants/smbd.service → /usr/lib/systemd/system/smbd.service. 149s Created symlink /etc/systemd/system/nmb.service → /usr/lib/systemd/system/nmbd.service. 149s Created symlink /etc/systemd/system/multi-user.target.wants/nmbd.service → /usr/lib/systemd/system/nmbd.service. 150s Created symlink /etc/systemd/system/samba.service → /usr/lib/systemd/system/samba-ad-dc.service. 150s Created symlink /etc/systemd/system/multi-user.target.wants/samba-ad-dc.service → /usr/lib/systemd/system/samba-ad-dc.service. 150s Setting up debhelper (13.14.1ubuntu5) ... 150s Setting up g++ (4:13.2.0-7ubuntu1) ... 150s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 150s Setting up build-essential (12.10ubuntu1) ... 150s Setting up dh-golang (1.62) ... 150s Processing triggers for install-info (7.1-3build2) ... 150s Processing triggers for libc-bin (2.39-0ubuntu8.6) ... 150s Processing triggers for ufw (0.36.2-6) ... 150s Processing triggers for man-db (2.12.0-4build2) ... 152s Processing triggers for libglib2.0-0t64:arm64 (2.80.0-6ubuntu3.4) ... 152s No schema files found: doing nothing. 152s Processing triggers for sgml-base (1.31) ... 152s Setting up libdbus-1-dev:arm64 (1.14.10-4ubuntu4.1) ... 154s autopkgtest [03:45:29]: test command1: ./debian/tests/test no-sudo 154s autopkgtest [03:45:29]: test command1: [----------------------- 154s Running non-root tests... 187s ? github.com/ubuntu/adsys [no test files] 199s === RUN TestRun 199s === RUN TestRun/Run_and_return_error 199s level=error msg="Error requested" 199s === RUN TestRun/Run_and_return_usage_error 199s level=error msg="Error requested" 199s === RUN TestRun/Run_and_usage_error_only_does_not_fail 199s === RUN TestRun/Run_and_exit_successfully 199s --- PASS: TestRun (0.00s) 199s --- PASS: TestRun/Run_and_return_error (0.00s) 199s --- PASS: TestRun/Run_and_return_usage_error (0.00s) 199s --- PASS: TestRun/Run_and_usage_error_only_does_not_fail (0.00s) 199s --- PASS: TestRun/Run_and_exit_successfully (0.00s) 199s === RUN TestMainApp 199s --- PASS: TestMainApp (0.01s) 199s === RUN TestAppUsage 199s === RUN TestAppUsage/Error_when_command_is_called_with_wrong_arguments 199s === RUN TestAppUsage/Expand_with_correct_arguments 199s === RUN TestAppUsage/Admx_with_correct_arguments 199s === RUN TestAppUsage/Doc_with_correct_arguments 199s --- PASS: TestAppUsage (0.03s) 199s --- PASS: TestAppUsage/Error_when_command_is_called_with_wrong_arguments (0.01s) 199s --- PASS: TestAppUsage/Expand_with_correct_arguments (0.01s) 199s --- PASS: TestAppUsage/Admx_with_correct_arguments (0.01s) 199s --- PASS: TestAppUsage/Doc_with_correct_arguments (0.01s) 199s PASS 199s ok github.com/ubuntu/adsys/cmd/admxgen 0.069s 199s ? github.com/ubuntu/adsys/cmd/admxgen/commands [no test files] 219s === RUN TestRun 219s === RUN TestRun/Run_and_return_usage_error 219s level=error msg="Error requested" 219s === RUN TestRun/Run_and_usage_error_only_does_not_fail 219s === RUN TestRun/Send_SIGINT_exits 219s === RUN TestRun/Send_SIGTERM_exits 219s === RUN TestRun/Send_SIGHUP_without_exiting 219s === RUN TestRun/Send_SIGHUP_with_exit 219s === RUN TestRun/Run_and_exit_successfully 219s === RUN TestRun/Run_and_return_error 219s level=error msg="Error requested" 219s --- PASS: TestRun (0.86s) 219s --- PASS: TestRun/Run_and_return_usage_error (0.10s) 219s --- PASS: TestRun/Run_and_usage_error_only_does_not_fail (0.10s) 219s --- PASS: TestRun/Send_SIGINT_exits (0.10s) 219s --- PASS: TestRun/Send_SIGTERM_exits (0.10s) 219s --- PASS: TestRun/Send_SIGHUP_without_exiting (0.15s) 219s --- PASS: TestRun/Send_SIGHUP_with_exit (0.10s) 219s --- PASS: TestRun/Run_and_exit_successfully (0.10s) 219s --- PASS: TestRun/Run_and_return_error (0.10s) 219s === RUN TestMainApp 219s --- PASS: TestMainApp (0.95s) 219s PASS 219s ok github.com/ubuntu/adsys/cmd/adsysd 1.934s 219s === RUN TestColorizePolicies 219s --- PASS: TestColorizePolicies (0.00s) 219s === RUN TestInitApp 219s === PAUSE TestInitApp 219s === RUN TestAppHelp 219s === PAUSE TestAppHelp 219s === RUN TestAppCompletion 219s === PAUSE TestAppCompletion 219s === RUN TestAppNoUsageError 219s === PAUSE TestAppNoUsageError 219s === RUN TestAppUsageError 219s === PAUSE TestAppUsageError 219s === RUN TestAppUsageErrorReportsSuggestions 219s Usage: 219s adsysctl COMMAND [flags] 219s adsysctl [command] 219s 219s Available Commands: 219s applied Print last applied GPOs for current or given user/machine 219s completion Generate the autocompletion script for the specified shell 219s doc Documentation 219s help Help about any command 219s policy Policy management 219s service Service management 219s update Updates/Create a policy for current user or given user with its kerberos ticket 219s version Returns version of client and service 219s 219s Flags: 219s -c, --config string use a specific configuration file 219s -h, --help help for adsysctl 219s -s, --socket string socket path to use between daemon and client. Can be overridden by systemd socket activation. (default "/run/adsysd.sock") 219s -t, --timeout int time in seconds before cancelling the client request when the server gives no result. 0 for no timeout. (default 30) 219s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 219s 219s Use "adsysctl [command] --help" for more information about a command. 219s 219s --- PASS: TestAppUsageErrorReportsSuggestions (0.00s) 219s === RUN TestAppCanQuitWhenExecute 219s === PAUSE TestAppCanQuitWhenExecute 219s === RUN TestAppCanQuitAfterExecute 219s === PAUSE TestAppCanQuitAfterExecute 219s === RUN TestAppCanQuitWithoutExecute 219s === PAUSE TestAppCanQuitWithoutExecute 219s === RUN TestAppCanSigHupWhenExecute 219s === PAUSE TestAppCanSigHupWhenExecute 219s === RUN TestAppCanSigHupAfterExecute 219s === PAUSE TestAppCanSigHupAfterExecute 219s === RUN TestAppGetRootCmd 219s === PAUSE TestAppGetRootCmd 219s === CONT TestInitApp 219s === CONT TestAppCanQuitAfterExecute 219s Usage: 219s adsysctl COMMAND [flags] 219s adsysctl [command] 219s 219s Available Commands: 219s applied Print last applied GPOs for current or given user/machine 219s completion Generate the autocompletion script for the specified shell 219s doc Documentation 219s help Help about any command 219s policy Policy management 219s service Service management 219s update Updates/Create a policy for current user or given user with its kerberos ticket 219s version Returns version of client and service 219s 219s Flags: 219s -c, --config string use a specific configuration file 219s -h, --help help for adsysctl 219s -s, --socket string socket path to use between daemon and client. Can be overridden by systemd socket activation. (default "/run/adsysd.sock") 219s -t, --timeout int time in seconds before cancelling the client request when the server gives no result. 0 for no timeout. (default 30) 219s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 219s 219s Use "adsysctl [command] --help" for more information about a command. 219s 219s --- PASS: TestInitApp (0.00s) 219s === CONT TestAppCanQuitWhenExecute 219s # bash completion V2 for adsysctl -*- shell-script -*- 219s 219s __adsysctl_debug() 219s { 219s if [[ -n ${BASH_COMP_DEBUG_FILE-} ]]; then 219s echo "$*" >> "${BASH_COMP_DEBUG_FILE}" 219s fi 219s } 219s 219s # Macs have bash3 for which the bash-completion package doesn't include 219s # _init_completion. This is a minimal version of that function. 219s __adsysctl_init_completion() 219s { 219s COMPREPLY=() 219s _get_comp_words_by_ref "$@" cur prev words cword 219s } 219s 219s # This function calls the adsysctl program to obtain the completion 219s # results and the directive. It fills the 'out' and 'directive' vars. 219s __adsysctl_get_completion_results() { 219s local requestComp lastParam lastChar args 219s 219s # Prepare the command to request completions for the program. 219s # Calling ${words[0]} instead of directly adsysctl allows handling aliases 219s args=("${words[@]:1}") 219s requestComp="${words[0]} __complete ${args[*]}" 219s 219s lastParam=${words[$((${#words[@]}-1))]} 219s lastChar=${lastParam:$((${#lastParam}-1)):1} 219s __adsysctl_debug "lastParam ${lastParam}, lastChar ${lastChar}" 219s 219s if [[ -z ${cur} && ${lastChar} != = ]]; then 219s # If the last parameter is complete (there is a space following it) 219s # We add an extra empty parameter so we can indicate this to the go method. 219s __adsysctl_debug "Adding extra empty parameter" 219s requestComp="${requestComp} ''" 219s fi 219s 219s # When completing a flag with an = (e.g., adsysctl -n=) 219s # bash focuses on the part after the =, so we need to remove 219s # the flag part from $cur 219s if [[ ${cur} == -*=* ]]; then 219s cur="${cur#*=}" 219s fi 219s 219s __adsysctl_debug "Calling ${requestComp}" 219s # Use eval to handle any environment variables and such 219s out=$(eval "${requestComp}" 2>/dev/null) 219s 219s # Extract the directive integer at the very end of the output following a colon (:) 219s directive=${out##*:} 219s # Remove the directive 219s out=${out%:*} 219s if [[ ${directive} == "${out}" ]]; then 219s # There is not directive specified 219s directive=0 219s fi 219s __adsysctl_debug "The completion directive is: ${directive}" 219s __adsysctl_debug "The completions are: ${out}" 219s } 219s 219s __adsysctl_process_completion_results() { 219s local shellCompDirectiveError=1 219s local shellCompDirectiveNoSpace=2 219s local shellCompDirectiveNoFileComp=4 219s local shellCompDirectiveFilterFileExt=8 219s local shellCompDirectiveFilterDirs=16 219s local shellCompDirectiveKeepOrder=32 219s 219s if (((directive & shellCompDirectiveError) != 0)); then 219s # Error code. No completion. 219s __adsysctl_debug "Received error from custom completion go code" 219s return 219s else 219s if (((directive & shellCompDirectiveNoSpace) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no space" 219s compopt -o nospace 219s else 219s __adsysctl_debug "No space directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveKeepOrder) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s # no sort isn't supported for bash less than < 4.4 219s if [[ ${BASH_VERSINFO[0]} -lt 4 || ( ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -lt 4 ) ]]; then 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s else 219s __adsysctl_debug "Activating keep order" 219s compopt -o nosort 219s fi 219s else 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveNoFileComp) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no file completion" 219s compopt +o default 219s else 219s __adsysctl_debug "No file completion directive not supported in this version of bash" 219s fi 219s fi 219s fi 219s 219s # Separate activeHelp from normal completions 219s local completions=() 219s local activeHelp=() 219s __adsysctl_extract_activeHelp 219s 219s if (((directive & shellCompDirectiveFilterFileExt) != 0)); then 219s # File extension filtering 219s local fullFilter="" filter filteringCmd 219s 219s # Do not use quotes around the $completions variable or else newline 219s # characters will be kept. 219s for filter in ${completions[*]}; do 219s fullFilter+="$filter|" 219s done 219s 219s filteringCmd="_filedir $fullFilter" 219s __adsysctl_debug "File filtering command: $filteringCmd" 219s $filteringCmd 219s elif (((directive & shellCompDirectiveFilterDirs) != 0)); then 219s # File completion for directories only 219s 219s local subdir 219s subdir=${completions[0]} 219s if [[ -n $subdir ]]; then 219s __adsysctl_debug "Listing directories in $subdir" 219s pushd "$subdir" >/dev/null 2>&1 && _filedir -d && popd >/dev/null 2>&1 || return 219s else 219s __adsysctl_debug "Listing directories in ." 219s _filedir -d 219s fi 219s else 219s __adsysctl_handle_completion_types 219s fi 219s 219s __adsysctl_handle_special_char "$cur" : 219s __adsysctl_handle_special_char "$cur" = 219s 219s # Print the activeHelp statements before we finish 219s __adsysctl_handle_activeHelp 219s } 219s 219s __adsysctl_handle_activeHelp() { 219s # Print the activeHelp statements 219s if ((${#activeHelp[*]} != 0)); then 219s if [ -z $COMP_TYPE ]; then 219s # Bash v3 does not set the COMP_TYPE variable. 219s printf "\n"; 219s printf "%s\n" "${activeHelp[@]}" 219s printf "\n" 219s __adsysctl_reprint_commandLine 219s return 219s fi 219s 219s # Only print ActiveHelp on the second TAB press 219s if [ $COMP_TYPE -eq 63 ]; then 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s if ((${#COMPREPLY[*]} == 0)); then 219s # When there are no completion choices from the program, file completion 219s # may kick in if the program has not disabled it; in such a case, we want 219s # to know if any files will match what the user typed, so that we know if 219s # there will be completions presented, so that we know how to handle ActiveHelp. 219s # To find out, we actually trigger the file completion ourselves; 219s # the call to _filedir will fill COMPREPLY if files match. 219s if (((directive & shellCompDirectiveNoFileComp) == 0)); then 219s __adsysctl_debug "Listing files" 219s _filedir 219s fi 219s fi 219s 219s if ((${#COMPREPLY[*]} != 0)); then 219s # If there are completion choices to be shown, print a delimiter. 219s # Re-printing the command-line will automatically be done 219s # by the shell when it prints the completion choices. 219s printf -- "--" 219s else 219s # When there are no completion choices at all, we need 219s # to re-print the command-line since the shell will 219s # not be doing it itself. 219s __adsysctl_reprint_commandLine 219s fi 219s elif [ $COMP_TYPE -eq 37 ] || [ $COMP_TYPE -eq 42 ]; then 219s # For completion type: menu-complete/menu-complete-backward and insert-completions 219s # the completions are immediately inserted into the command-line, so we first 219s # print the activeHelp message and reprint the command-line since the shell won't. 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s __adsysctl_reprint_commandLine 219s fi 219s fi 219s } 219s 219s __adsysctl_reprint_commandLine() { 219s # The prompt format is only available from bash 4.4. 219s # We test if it is available before using it. 219s if (x=${PS1@P}) 2> /dev/null; then 219s printf "%s" "${PS1@P}${COMP_LINE[@]}" 219s else 219s # Can't print the prompt. Just print the 219s # text the user had typed, it is workable enough. 219s printf "%s" "${COMP_LINE[@]}" 219s fi 219s } 219s 219s # Separate activeHelp lines from real completions. 219s # Fills the $activeHelp and $completions arrays. 219s __adsysctl_extract_activeHelp() { 219s local activeHelpMarker="_activeHelp_ " 219s local endIndex=${#activeHelpMarker} 219s 219s while IFS='' read -r comp; do 219s [[ -z $comp ]] && continue 219s 219s if [[ ${comp:0:endIndex} == $activeHelpMarker ]]; then 219s comp=${comp:endIndex} 219s __adsysctl_debug "ActiveHelp found: $comp" 219s if [[ -n $comp ]]; then 219s activeHelp+=("$comp") 219s fi 219s else 219s # Not an activeHelp line but a normal completion 219s completions+=("$comp") 219s fi 219s done <<<"${out}" 219s } 219s 219s __adsysctl_handle_completion_types() { 219s __adsysctl_debug "__adsysctl_handle_completion_types: COMP_TYPE is $COMP_TYPE" 219s 219s case $COMP_TYPE in 219s 37|42) 219s # Type: menu-complete/menu-complete-backward and insert-completions 219s # If the user requested inserting one completion at a time, or all 219s # completions at once on the command-line we must remove the descriptions. 219s # https://github.com/spf13/cobra/issues/1508 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s local tab=$'\t' 219s 219s # Strip any description and escape the completion to handled special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]%%$tab*}") 219s 219s # Only consider the completions that match 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so we need to escape all completions again since they will 219s # all be inserted on the command-line. 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(printf "%q\n" "${COMPREPLY[@]}") 219s ;; 219s 219s *) 219s # Type: complete (normal completion) 219s __adsysctl_handle_standard_completion_case 219s ;; 219s esac 219s } 219s 219s __adsysctl_handle_standard_completion_case() { 219s local tab=$'\t' 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s # Short circuit to optimize if we don't have descriptions 219s if [[ "${completions[*]}" != *$tab* ]]; then 219s # First, escape the completions to handle special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]}") 219s # Only consider the completions that match what the user typed 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so, if there is only a single completion, we need to 219s # escape it again because it will be inserted on the command-line. If there are multiple 219s # completions, we don't want to escape them because they will be printed in a list 219s # and we don't want to show escape characters in that list. 219s if (( ${#COMPREPLY[@]} == 1 )); then 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]}") 219s fi 219s return 0 219s fi 219s 219s local longest=0 219s local compline 219s # Look for the longest completion so that we can format things nicely 219s while IFS='' read -r compline; do 219s [[ -z $compline ]] && continue 219s 219s # Before checking if the completion matches what the user typed, 219s # we need to strip any description and escape the completion to handle special 219s # characters because those escape characters are part of what the user typed. 219s # Don't call "printf" in a sub-shell because it will be much slower 219s # since we are in a loop. 219s printf -v comp "%q" "${compline%%$tab*}" &>/dev/null || comp=$(printf "%q" "${compline%%$tab*}") 219s 219s # Only consider the completions that match 219s [[ $comp == "$cur"* ]] || continue 219s 219s # The completions matches. Add it to the list of full completions including 219s # its description. We don't escape the completion because it may get printed 219s # in a list if there are more than one and we don't want show escape characters 219s # in that list. 219s COMPREPLY+=("$compline") 219s 219s # Strip any description before checking the length, and again, don't escape 219s # the completion because this length is only used when printing the completions 219s # in a list and we don't want show escape characters in that list. 219s comp=${compline%%$tab*} 219s if ((${#comp}>longest)); then 219s longest=${#comp} 219s fi 219s done < <(printf "%s\n" "${completions[@]}") 219s 219s # If there is a single completion left, remove the description text and escape any special characters 219s if ((${#COMPREPLY[*]} == 1)); then 219s __adsysctl_debug "COMPREPLY[0]: ${COMPREPLY[0]}" 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]%%$tab*}") 219s __adsysctl_debug "Removed description from single completion, which is now: ${COMPREPLY[0]}" 219s else 219s # Format the descriptions 219s __adsysctl_format_comp_descriptions $longest 219s fi 219s } 219s 219s __adsysctl_handle_special_char() 219s { 219s local comp="$1" 219s local char=$2 219s if [[ "$comp" == *${char}* && "$COMP_WORDBREAKS" == *${char}* ]]; then 219s local word=${comp%"${comp##*${char}}"} 219s local idx=${#COMPREPLY[*]} 219s while ((--idx >= 0)); do 219s COMPREPLY[idx]=${COMPREPLY[idx]#"$word"} 219s done 219s fi 219s } 219s 219s __adsysctl_format_comp_descriptions() 219s { 219s local tab=$'\t' 219s local comp desc maxdesclength 219s local longest=$1 219s 219s local i ci 219s for ci in ${!COMPREPLY[*]}; do 219s comp=${COMPREPLY[ci]} 219s # Properly format the description string which follows a tab character if there is one 219s if [[ "$comp" == *$tab* ]]; then 219s __adsysctl_debug "Original comp: $comp" 219s desc=${comp#*$tab} 219s comp=${comp%%$tab*} 219s 219s # $COLUMNS stores the current shell width. 219s # Remove an extra 4 because we add 2 spaces and 2 parentheses. 219s maxdesclength=$(( COLUMNS - longest - 4 )) 219s 219s # Make sure we can fit a description of at least 8 characters 219s # if we are to align the descriptions. 219s if ((maxdesclength > 8)); then 219s # Add the proper number of spaces to align the descriptions 219s for ((i = ${#comp} ; i < longest ; i++)); do 219s comp+=" " 219s done 219s else 219s # Don't pad the descriptions so we can fit more text after the completion 219s maxdesclength=$(( COLUMNS - ${#comp} - 4 )) 219s fi 219s 219s # If there is enough space for any description text, 219s # truncate the descriptions that are too long for the shell width 219s if ((maxdesclength > 0)); then 219s if ((${#desc} > maxdesclength)); then 219s desc=${desc:0:$(( maxdesclength - 1 ))} 219s desc+="…" 219s fi 219s comp+=" ($desc)" 219s fi 219s COMPREPLY[ci]=$comp 219s __adsysctl_debug "Final comp: $comp" 219s fi 219s done 219s } 219s 219s __start_adsysctl() 219s { 219s local cur prev words cword split 219s 219s COMPREPLY=() 219s 219s # Call _init_completion from the bash-completion package 219s # to prepare the arguments properly 219s if declare -F _init_completion >/dev/null 2>&1; then 219s _init_completion -n =: || return 219s else 219s __adsysctl_init_completion -n =: || return 219s fi 219s 219s __adsysctl_debug 219s __adsysctl_debug "========= starting completion logic ==========" 219s __adsysctl_debug "cur is ${cur}, words[*] is ${words[*]}, #words[@] is ${#words[@]}, cword is $cword" 219s 219s # The user could have moved the cursor backwards on the command-line. 219s # We need to trigger completion from the $cword location, so we need 219s # to truncate the command-line ($words) up to the $cword location. 219s words=("${words[@]:0:$cword+1}") 219s __adsysctl_debug "Truncated words[*]: ${words[*]}," 219s 219s local out directive 219s __adsysctl_get_completion_results 219s __adsysctl_process_completion_results 219s } 219s 219s if [[ $(type -t compopt) = "builtin" ]]; then 219s complete -o default -F __start_adsysctl adsysctl 219s else 219s complete -o default -o nospace -F __start_adsysctl adsysctl 219s fi 219s 219s # ex: ts=4 sw=4 et filetype=sh 219s --- PASS: TestAppCanQuitAfterExecute (0.00s) 219s === CONT TestAppGetRootCmd 219s --- PASS: TestAppCanQuitWhenExecute (0.00s) 219s === CONT TestAppUsageError 219s Usage: 219s adsysctl COMMAND [flags] 219s adsysctl [command] 219s 219s Available Commands: 219s applied Print last applied GPOs for current or given user/machine 219s completion Generate the autocompletion script for the specified shell 219s doc Documentation 219s help Help about any command 219s policy Policy management 219s service Service management 219s update Updates/Create a policy for current user or given user with its kerberos ticket 219s version Returns version of client and service 219s 219s Flags: 219s -c, --config string use a specific configuration file 219s -h, --help help for adsysctl 219s -s, --socket string socket path to use between daemon and client. Can be overridden by systemd socket activation. (default "/run/adsysd.sock") 219s -t, --timeout int time in seconds before cancelling the client request when the server gives no result. 0 for no timeout. (default 30) 219s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 219s 219s Use "adsysctl [command] --help" for more information about a command. 219s 219s --- PASS: TestAppUsageError (0.00s) 219s === CONT TestAppNoUsageError 219s --- PASS: TestAppGetRootCmd (0.01s) 219s === CONT TestAppCompletion 219s # bash completion V2 for adsysctl -*- shell-script -*- 219s 219s __adsysctl_debug() 219s { 219s if [[ -n ${BASH_COMP_DEBUG_FILE-} ]]; then 219s echo "$*" >> "${BASH_COMP_DEBUG_FILE}" 219s fi 219s } 219s 219s # Macs have bash3 for which the bash-completion package doesn't include 219s # _init_completion. This is a minimal version of that function. 219s __adsysctl_init_completion() 219s { 219s COMPREPLY=() 219s _get_comp_words_by_ref "$@" cur prev words cword 219s } 219s 219s # This function calls the adsysctl program to obtain the completion 219s # results and the directive. It fills the 'out' and 'directive' vars. 219s __adsysctl_get_completion_results() { 219s local requestComp lastParam lastChar args 219s 219s # Prepare the command to request completions for the program. 219s # Calling ${words[0]} instead of directly adsysctl allows handling aliases 219s args=("${words[@]:1}") 219s requestComp="${words[0]} __complete ${args[*]}" 219s 219s lastParam=${words[$((${#words[@]}-1))]} 219s lastChar=${lastParam:$((${#lastParam}-1)):1} 219s __adsysctl_debug "lastParam ${lastParam}, lastChar ${lastChar}" 219s 219s if [[ -z ${cur} && ${lastChar} != = ]]; then 219s # If the last parameter is complete (there is a space following it) 219s # We add an extra empty parameter so we can indicate this to the go method. 219s __adsysctl_debug "Adding extra empty parameter" 219s requestComp="${requestComp} ''" 219s fi 219s 219s # When completing a flag with an = (e.g., adsysctl -n=) 219s # bash focuses on the part after the =, so we need to remove 219s # the flag part from $cur 219s if [[ ${cur} == -*=* ]]; then 219s cur="${cur#*=}" 219s fi 219s 219s __adsysctl_debug "Calling ${requestComp}" 219s # Use eval to handle any environment variables and such 219s out=$(eval "${requestComp}" 2>/dev/null) 219s 219s # Extract the directive integer at the very end of the output following a colon (:) 219s directive=${out##*:} 219s # Remove the directive 219s out=${out%:*} 219s if [[ ${directive} == "${out}" ]]; then 219s # There is not directive specified 219s directive=0 219s fi 219s __adsysctl_debug "The completion directive is: ${directive}" 219s __adsysctl_debug "The completions are: ${out}" 219s } 219s 219s __adsysctl_process_completion_results() { 219s local shellCompDirectiveError=1 219s local shellCompDirectiveNoSpace=2 219s local shellCompDirectiveNoFileComp=4 219s local shellCompDirectiveFilterFileExt=8 219s local shellCompDirectiveFilterDirs=16 219s local shellCompDirectiveKeepOrder=32 219s 219s if (((directive & shellCompDirectiveError) != 0)); then 219s # Error code. No completion. 219s __adsysctl_debug "Received error from custom completion go code" 219s return 219s else 219s if (((directive & shellCompDirectiveNoSpace) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no space" 219s compopt -o nospace 219s else 219s __adsysctl_debug "No space directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveKeepOrder) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s # no sort isn't supported for bash less than < 4.4 219s if [[ ${BASH_VERSINFO[0]} -lt 4 || ( ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -lt 4 ) ]]; then 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s else 219s __adsysctl_debug "Activating keep order" 219s compopt -o nosort 219s fi 219s else 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveNoFileComp) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no file completion" 219s compopt +o default 219s else 219s __adsysctl_debug "No file completion directive not supported in this version of bash" 219s fi 219s fi 219s fi 219s 219s # Separate activeHelp from normal completions 219s local completions=() 219s local activeHelp=() 219s __adsysctl_extract_activeHelp 219s 219s if (((directive & shellCompDirectiveFilterFileExt) != 0)); then 219s # File extension filtering 219s local fullFilter="" filter filteringCmd 219s 219s # Do not use quotes around the $completions variable or else newline 219s # characters will be kept. 219s for filter in ${completions[*]}; do 219s fullFilter+="$filter|" 219s done 219s 219s filteringCmd="_filedir $fullFilter" 219s __adsysctl_debug "File filtering command: $filteringCmd" 219s $filteringCmd 219s elif (((directive & shellCompDirectiveFilterDirs) != 0)); then 219s # File completion for directories only 219s 219s local subdir 219s subdir=${completions[0]} 219s if [[ -n $subdir ]]; then 219s __adsysctl_debug "Listing directories in $subdir" 219s pushd "$subdir" >/dev/null 2>&1 && _filedir -d && popd >/dev/null 2>&1 || return 219s else 219s __adsysctl_debug "Listing directories in ." 219s _filedir -d 219s fi 219s else 219s __adsysctl_handle_completion_types 219s fi 219s 219s __adsysctl_handle_special_char "$cur" : 219s __adsysctl_handle_special_char "$cur" = 219s 219s # Print the activeHelp statements before we finish 219s __adsysctl_handle_activeHelp 219s } 219s 219s __adsysctl_handle_activeHelp() { 219s # Print the activeHelp statements 219s if ((${#activeHelp[*]} != 0)); then 219s if [ -z $COMP_TYPE ]; then 219s # Bash v3 does not set the COMP_TYPE variable. 219s printf "\n"; 219s printf "%s\n" "${activeHelp[@]}" 219s printf "\n" 219s __adsysctl_reprint_commandLine 219s return 219s fi 219s 219s # Only print ActiveHelp on the second TAB press 219s if [ $COMP_TYPE -eq 63 ]; then 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s if ((${#COMPREPLY[*]} == 0)); then 219s # When there are no completion choices from the program, file completion 219s # may kick in if the program has not disabled it; in such a case, we want 219s # to know if any files will match what the user typed, so that we know if 219s # there will be completions presented, so that we know how to handle ActiveHelp. 219s # To find out, we actually trigger the file completion ourselves; 219s # the call to _filedir will fill COMPREPLY if files match. 219s if (((directive & shellCompDirectiveNoFileComp) == 0)); then 219s __adsysctl_debug "Listing files" 219s _filedir 219s fi 219s fi 219s 219s if ((${#COMPREPLY[*]} != 0)); then 219s # If there are completion choices to be shown, print a delimiter. 219s # Re-printing the command-line will automatically be done 219s # by the shell when it prints the completion choices. 219s printf -- "--" 219s else 219s # When there are no completion choices at all, we need 219s # to re-print the command-line since the shell will 219s # not be doing it itself. 219s __adsysctl_reprint_commandLine 219s fi 219s elif [ $COMP_TYPE -eq 37 ] || [ $COMP_TYPE -eq 42 ]; then 219s # For completion type: menu-complete/menu-complete-backward and insert-completions 219s # the completions are immediately inserted into the command-line, so we first 219s # print the activeHelp message and reprint the command-line since the shell won't. 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s __adsysctl_reprint_commandLine 219s fi 219s fi 219s } 219s 219s __adsysctl_reprint_commandLine() { 219s # The prompt format is only available from bash 4.4. 219s # We test if it is available before using it. 219s if (x=${PS1@P}) 2> /dev/null; then 219s printf "%s" "${PS1@P}${COMP_LINE[@]}" 219s else 219s # Can't print the prompt. Just print the 219s # text the user had typed, it is workable enough. 219s printf "%s" "${COMP_LINE[@]}" 219s fi 219s } 219s 219s # Separate activeHelp lines from real completions. 219s # Fills the $activeHelp and $completions arrays. 219s __adsysctl_extract_activeHelp() { 219s local activeHelpMarker="_activeHelp_ " 219s local endIndex=${#activeHelpMarker} 219s 219s while IFS='' read -r comp; do 219s [[ -z $comp ]] && continue 219s 219s if [[ ${comp:0:endIndex} == $activeHelpMarker ]]; then 219s comp=${comp:endIndex} 219s __adsysctl_debug "ActiveHelp found: $comp" 219s if [[ -n $comp ]]; then 219s activeHelp+=("$comp") 219s fi 219s else 219s # Not an activeHelp line but a normal completion 219s completions+=("$comp") 219s fi 219s done <<<"${out}" 219s } 219s 219s __adsysctl_handle_completion_types() { 219s __adsysctl_debug "__adsysctl_handle_completion_types: COMP_TYPE is $COMP_TYPE" 219s 219s case $COMP_TYPE in 219s 37|42) 219s # Type: menu-complete/menu-complete-backward and insert-completions 219s # If the user requested inserting one completion at a time, or all 219s # completions at once on the command-line we must remove the descriptions. 219s # https://github.com/spf13/cobra/issues/1508 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s local tab=$'\t' 219s 219s # Strip any description and escape the completion to handled special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]%%$tab*}") 219s 219s # Only consider the completions that match 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so we need to escape all completions again since they will 219s # all be inserted on the command-line. 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(printf "%q\n" "${COMPREPLY[@]}") 219s ;; 219s 219s *) 219s # Type: complete (normal completion) 219s __adsysctl_handle_standard_completion_case 219s ;; 219s esac 219s } 219s 219s __adsysctl_handle_standard_completion_case() { 219s local tab=$'\t' 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s # Short circuit to optimize if we don't have descriptions 219s if [[ "${completions[*]}" != *$tab* ]]; then 219s # First, escape the completions to handle special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]}") 219s # Only consider the completions that match what the user typed 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so, if there is only a single completion, we need to 219s # escape it again because it will be inserted on the command-line. If there are multiple 219s # completions, we don't want to escape them because they will be printed in a list 219s # and we don't want to show escape characters in that list. 219s if (( ${#COMPREPLY[@]} == 1 )); then 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]}") 219s fi 219s return 0 219s fi 219s 219s local longest=0 219s local compline 219s # Look for the longest completion so that we can format things nicely 219s while IFS='' read -r compline; do 219s [[ -z $compline ]] && continue 219s 219s # Before checking if the completion matches what the user typed, 219s # we need to strip any description and escape the completion to handle special 219s # characters because those escape characters are part of what the user typed. 219s # Don't call "printf" in a sub-shell because it will be much slower 219s # since we are in a loop. 219s printf -v comp "%q" "${compline%%$tab*}" &>/dev/null || comp=$(printf "%q" "${compline%%$tab*}") 219s 219s # Only consider the completions that match 219s [[ $comp == "$cur"* ]] || continue 219s 219s # The completions matches. Add it to the list of full completions including 219s # its description. We don't escape the completion because it may get printed 219s # in a list if there are more than one and we don't want show escape characters 219s # in that list. 219s COMPREPLY+=("$compline") 219s 219s # Strip any description before checking the length, and again, don't escape 219s # the completion because this length is only used when printing the completions 219s # in a list and we don't want show escape characters in that list. 219s comp=${compline%%$tab*} 219s if ((${#comp}>longest)); then 219s longest=${#comp} 219s fi 219s done < <(printf "%s\n" "${completions[@]}") 219s 219s # If there is a single completion left, remove the description text and escape any special characters 219s if ((${#COMPREPLY[*]} == 1)); then 219s __adsysctl_debug "COMPREPLY[0]: ${COMPREPLY[0]}" 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]%%$tab*}") 219s __adsysctl_debug "Removed description from single completion, which is now: ${COMPREPLY[0]}" 219s else 219s # Format the descriptions 219s __adsysctl_format_comp_descriptions $longest 219s fi 219s } 219s 219s __adsysctl_handle_special_char() 219s { 219s local comp="$1" 219s local char=$2 219s if [[ "$comp" == *${char}* && "$COMP_WORDBREAKS" == *${char}* ]]; then 219s local word=${comp%"${comp##*${char}}"} 219s local idx=${#COMPREPLY[*]} 219s while ((--idx >= 0)); do 219s COMPREPLY[idx]=${COMPREPLY[idx]#"$word"} 219s done 219s fi 219s } 219s 219s __adsysctl_format_comp_descriptions() 219s { 219s local tab=$'\t' 219s local comp desc maxdesclength 219s local longest=$1 219s 219s local i ci 219s for ci in ${!COMPREPLY[*]}; do 219s comp=${COMPREPLY[ci]} 219s # Properly format the description string which follows a tab character if there is one 219s if [[ "$comp" == *$tab* ]]; then 219s __adsysctl_debug "Original comp: $comp" 219s desc=${comp#*$tab} 219s comp=${comp%%$tab*} 219s 219s # $COLUMNS stores the current shell width. 219s # Remove an extra 4 because we add 2 spaces and 2 parentheses. 219s maxdesclength=$(( COLUMNS - longest - 4 )) 219s 219s # Make sure we can fit a description of at least 8 characters 219s # if we are to align the descriptions. 219s if ((maxdesclength > 8)); then 219s # Add the proper number of spaces to align the descriptions 219s for ((i = ${#comp} ; i < longest ; i++)); do 219s comp+=" " 219s done 219s else 219s # Don't pad the descriptions so we can fit more text after the completion 219s maxdesclength=$(( COLUMNS - ${#comp} - 4 )) 219s fi 219s 219s # If there is enough space for any description text, 219s # truncate the descriptions that are too long for the shell width 219s if ((maxdesclength > 0)); then 219s if ((${#desc} > maxdesclength)); then 219s desc=${desc:0:$(( maxdesclength - 1 ))} 219s desc+="…" 219s fi 219s comp+=" ($desc)" 219s fi 219s COMPREPLY[ci]=$comp 219s __adsysctl_debug "Final comp: $comp" 219s fi 219s done 219s } 219s 219s __start_adsysctl() 219s { 219s local cur prev words cword split 219s 219s COMPREPLY=() 219s 219s # Call _init_completion from the bash-completion package 219s # to prepare the arguments properly 219s if declare -F _init_completion >/dev/null 2>&1; then 219s _init_completion -n =: || return 219s else 219s __adsysctl_init_completion -n =: || return 219s fi 219s 219s __adsysctl_debug 219s __adsysctl_debug "========= starting completion logic ==========" 219s __adsysctl_debug "cur is ${cur}, words[*] is ${words[*]}, #words[@] is ${#words[@]}, cword is $cword" 219s 219s # The user could have moved the cursor backwards on the command-line. 219s # We need to trigger completion from the $cword location, so we need 219s # to truncate the command-line ($words) up to the $cword location. 219s words=("${words[@]:0:$cword+1}") 219s __adsysctl_debug "Truncated words[*]: ${words[*]}," 219s 219s local out directive 219s __adsysctl_get_completion_results 219s __adsysctl_process_completion_results 219s } 219s 219s if [[ $(type -t compopt) = "builtin" ]]; then 219s complete -o default -F __start_adsysctl adsysctl 219s else 219s complete -o default -o nospace -F __start_adsysctl adsysctl 219s fi 219s 219s # ex: ts=4 sw=4 et filetype=sh 219s --- PASS: TestAppCompletion (0.00s) 219s === CONT TestAppHelp 219s Active Directory integration bridging toolset command line tool. 219s 219s Usage: 219s adsysctl COMMAND [flags] 219s adsysctl [command] 219s 219s Available Commands: 219s applied Print last applied GPOs for current or given user/machine 219s completion Generate the autocompletion script for the specified shell 219s doc Documentation 219s help Help about any command 219s policy Policy management 219s service Service management 219s update Updates/Create a policy for current user or given user with its kerberos ticket 219s version Returns version of client and service 219s 219s Flags: 219s -c, --config string use a specific configuration file 219s -h, --help help for adsysctl 219s -s, --socket string socket path to use between daemon and client. Can be overridden by systemd socket activation. (default "/run/adsysd.sock") 219s -t, --timeout int time in seconds before cancelling the client request when the server gives no result. 0 for no timeout. (default 30) 219s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 219s 219s Use "adsysctl [command] --help" for more information about a command. 219s --- PASS: TestAppHelp (0.00s) 219s === CONT TestAppCanSigHupWhenExecute 219s # bash completion V2 for adsysctl -*- shell-script -*- 219s 219s __adsysctl_debug() 219s { 219s if [[ -n ${BASH_COMP_DEBUG_FILE-} ]]; then 219s echo "$*" >> "${BASH_COMP_DEBUG_FILE}" 219s fi 219s } 219s 219s # Macs have bash3 for which the bash-completion package doesn't include 219s # _init_completion. This is a minimal version of that function. 219s __adsysctl_init_completion() 219s { 219s COMPREPLY=() 219s _get_comp_words_by_ref "$@" cur prev words cword 219s } 219s 219s # This function calls the adsysctl program to obtain the completion 219s # results and the directive. It fills the 'out' and 'directive' vars. 219s __adsysctl_get_completion_results() { 219s local requestComp lastParam lastChar args 219s 219s # Prepare the command to request completions for the program. 219s # Calling ${words[0]} instead of directly adsysctl allows handling aliases 219s args=("${words[@]:1}") 219s requestComp="${words[0]} __complete ${args[*]}" 219s 219s lastParam=${words[$((${#words[@]}-1))]} 219s lastChar=${lastParam:$((${#lastParam}-1)):1} 219s __adsysctl_debug "lastParam ${lastParam}, lastChar ${lastChar}" 219s 219s if [[ -z ${cur} && ${lastChar} != = ]]; then 219s # If the last parameter is complete (there is a space following it) 219s # We add an extra empty parameter so we can indicate this to the go method. 219s __adsysctl_debug "Adding extra empty parameter" 219s requestComp="${requestComp} ''" 219s fi 219s 219s # When completing a flag with an = (e.g., adsysctl -n=) 219s # bash focuses on the part after the =, so we need to remove 219s # the flag part from $cur 219s if [[ ${cur} == -*=* ]]; then 219s cur="${cur#*=}" 219s fi 219s 219s __adsysctl_debug "Calling ${requestComp}" 219s # Use eval to handle any environment variables and such 219s out=$(eval "${requestComp}" 2>/dev/null) 219s 219s # Extract the directive integer at the very end of the output following a colon (:) 219s directive=${out##*:} 219s # Remove the directive 219s out=${out%:*} 219s if [[ ${directive} == "${out}" ]]; then 219s # There is not directive specified 219s directive=0 219s fi 219s __adsysctl_debug "The completion directive is: ${directive}" 219s __adsysctl_debug "The completions are: ${out}" 219s } 219s 219s __adsysctl_process_completion_results() { 219s local shellCompDirectiveError=1 219s local shellCompDirectiveNoSpace=2 219s local shellCompDirectiveNoFileComp=4 219s local shellCompDirectiveFilterFileExt=8 219s local shellCompDirectiveFilterDirs=16 219s local shellCompDirectiveKeepOrder=32 219s 219s if (((directive & shellCompDirectiveError) != 0)); then 219s # Error code. No completion. 219s __adsysctl_debug "Received error from custom completion go code" 219s return 219s else 219s if (((directive & shellCompDirectiveNoSpace) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no space" 219s compopt -o nospace 219s else 219s __adsysctl_debug "No space directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveKeepOrder) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s # no sort isn't supported for bash less than < 4.4 219s if [[ ${BASH_VERSINFO[0]} -lt 4 || ( ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -lt 4 ) ]]; then 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s else 219s __adsysctl_debug "Activating keep order" 219s compopt -o nosort 219s fi 219s else 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveNoFileComp) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no file completion" 219s compopt +o default 219s else 219s __adsysctl_debug "No file completion directive not supported in this version of bash" 219s fi 219s fi 219s fi 219s 219s # Separate activeHelp from normal completions 219s local completions=() 219s local activeHelp=() 219s __adsysctl_extract_activeHelp 219s 219s if (((directive & shellCompDirectiveFilterFileExt) != 0)); then 219s # File extension filtering 219s local fullFilter="" filter filteringCmd 219s 219s # Do not use quotes around the $completions variable or else newline 219s # characters will be kept. 219s for filter in ${completions[*]}; do 219s fullFilter+="$filter|" 219s done 219s 219s filteringCmd="_filedir $fullFilter" 219s __adsysctl_debug "File filtering command: $filteringCmd" 219s $filteringCmd 219s elif (((directive & shellCompDirectiveFilterDirs) != 0)); then 219s # File completion for directories only 219s 219s local subdir 219s subdir=${completions[0]} 219s if [[ -n $subdir ]]; then 219s __adsysctl_debug "Listing directories in $subdir" 219s pushd "$subdir" >/dev/null 2>&1 && _filedir -d && popd >/dev/null 2>&1 || return 219s else 219s __adsysctl_debug "Listing directories in ." 219s _filedir -d 219s fi 219s else 219s __adsysctl_handle_completion_types 219s fi 219s 219s __adsysctl_handle_special_char "$cur" : 219s __adsysctl_handle_special_char "$cur" = 219s 219s # Print the activeHelp statements before we finish 219s __adsysctl_handle_activeHelp 219s } 219s 219s __adsysctl_handle_activeHelp() { 219s # Print the activeHelp statements 219s if ((${#activeHelp[*]} != 0)); then 219s if [ -z $COMP_TYPE ]; then 219s # Bash v3 does not set the COMP_TYPE variable. 219s printf "\n"; 219s printf "%s\n" "${activeHelp[@]}" 219s printf "\n" 219s __adsysctl_reprint_commandLine 219s return 219s fi 219s 219s # Only print ActiveHelp on the second TAB press 219s if [ $COMP_TYPE -eq 63 ]; then 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s if ((${#COMPREPLY[*]} == 0)); then 219s # When there are no completion choices from the program, file completion 219s # may kick in if the program has not disabled it; in such a case, we want 219s # to know if any files will match what the user typed, so that we know if 219s # there will be completions presented, so that we know how to handle ActiveHelp. 219s # To find out, we actually trigger the file completion ourselves; 219s # the call to _filedir will fill COMPREPLY if files match. 219s if (((directive & shellCompDirectiveNoFileComp) == 0)); then 219s __adsysctl_debug "Listing files" 219s _filedir 219s fi 219s fi 219s 219s if ((${#COMPREPLY[*]} != 0)); then 219s # If there are completion choices to be shown, print a delimiter. 219s # Re-printing the command-line will automatically be done 219s # by the shell when it prints the completion choices. 219s printf -- "--" 219s else 219s # When there are no completion choices at all, we need 219s # to re-print the command-line since the shell will 219s # not be doing it itself. 219s __adsysctl_reprint_commandLine 219s fi 219s elif [ $COMP_TYPE -eq 37 ] || [ $COMP_TYPE -eq 42 ]; then 219s # For completion type: menu-complete/menu-complete-backward and insert-completions 219s # the completions are immediately inserted into the command-line, so we first 219s # print the activeHelp message and reprint the command-line since the shell won't. 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s __adsysctl_reprint_commandLine 219s fi 219s fi 219s } 219s 219s __adsysctl_reprint_commandLine() { 219s # The prompt format is only available from bash 4.4. 219s # We test if it is available before using it. 219s if (x=${PS1@P}) 2> /dev/null; then 219s printf "%s" "${PS1@P}${COMP_LINE[@]}" 219s else 219s # Can't print the prompt. Just print the 219s # text the user had typed, it is workable enough. 219s printf "%s" "${COMP_LINE[@]}" 219s fi 219s } 219s 219s # Separate activeHelp lines from real completions. 219s # Fills the $activeHelp and $completions arrays. 219s __adsysctl_extract_activeHelp() { 219s local activeHelpMarker="_activeHelp_ " 219s local endIndex=${#activeHelpMarker} 219s 219s while IFS='' read -r comp; do 219s [[ -z $comp ]] && continue 219s 219s if [[ ${comp:0:endIndex} == $activeHelpMarker ]]; then 219s comp=${comp:endIndex} 219s __adsysctl_debug "ActiveHelp found: $comp" 219s if [[ -n $comp ]]; then 219s activeHelp+=("$comp") 219s fi 219s else 219s # Not an activeHelp line but a normal completion 219s completions+=("$comp") 219s fi 219s done <<<"${out}" 219s } 219s 219s __adsysctl_handle_completion_types() { 219s __adsysctl_debug "__adsysctl_handle_completion_types: COMP_TYPE is $COMP_TYPE" 219s 219s case $COMP_TYPE in 219s 37|42) 219s # Type: menu-complete/menu-complete-backward and insert-completions 219s # If the user requested inserting one completion at a time, or all 219s # completions at once on the command-line we must remove the descriptions. 219s # https://github.com/spf13/cobra/issues/1508 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s local tab=$'\t' 219s 219s # Strip any description and escape the completion to handled special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]%%$tab*}") 219s 219s # Only consider the completions that match 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so we need to escape all completions again since they will 219s # all be inserted on the command-line. 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(printf "%q\n" "${COMPREPLY[@]}") 219s ;; 219s 219s *) 219s # Type: complete (normal completion) 219s __adsysctl_handle_standard_completion_case 219s ;; 219s esac 219s } 219s 219s __adsysctl_handle_standard_completion_case() { 219s local tab=$'\t' 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s # Short circuit to optimize if we don't have descriptions 219s if [[ "${completions[*]}" != *$tab* ]]; then 219s # First, escape the completions to handle special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]}") 219s # Only consider the completions that match what the user typed 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so, if there is only a single completion, we need to 219s # escape it again because it will be inserted on the command-line. If there are multiple 219s # completions, we don't want to escape them because they will be printed in a list 219s # and we don't want to show escape characters in that list. 219s if (( ${#COMPREPLY[@]} == 1 )); then 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]}") 219s fi 219s return 0 219s fi 219s 219s local longest=0 219s local compline 219s # Look for the longest completion so that we can format things nicely 219s while IFS='' read -r compline; do 219s [[ -z $compline ]] && continue 219s 219s # Before checking if the completion matches what the user typed, 219s # we need to strip any description and escape the completion to handle special 219s # characters because those escape characters are part of what the user typed. 219s # Don't call "printf" in a sub-shell because it will be much slower 219s # since we are in a loop. 219s printf -v comp "%q" "${compline%%$tab*}" &>/dev/null || comp=$(printf "%q" "${compline%%$tab*}") 219s 219s # Only consider the completions that match 219s [[ $comp == "$cur"* ]] || continue 219s 219s # The completions matches. Add it to the list of full completions including 219s # its description. We don't escape the completion because it may get printed 219s # in a list if there are more than one and we don't want show escape characters 219s # in that list. 219s COMPREPLY+=("$compline") 219s 219s # Strip any description before checking the length, and again, don't escape 219s # the completion because this length is only used when printing the completions 219s # in a list and we don't want show escape characters in that list. 219s comp=${compline%%$tab*} 219s if ((${#comp}>longest)); then 219s longest=${#comp} 219s fi 219s done < <(printf "%s\n" "${completions[@]}") 219s 219s # If there is a single completion left, remove the description text and escape any special characters 219s if ((${#COMPREPLY[*]} == 1)); then 219s __adsysctl_debug "COMPREPLY[0]: ${COMPREPLY[0]}" 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]%%$tab*}") 219s __adsysctl_debug "Removed description from single completion, which is now: ${COMPREPLY[0]}" 219s else 219s # Format the descriptions 219s __adsysctl_format_comp_descriptions $longest 219s fi 219s } 219s 219s __adsysctl_handle_special_char() 219s { 219s local comp="$1" 219s local char=$2 219s if [[ "$comp" == *${char}* && "$COMP_WORDBREAKS" == *${char}* ]]; then 219s local word=${comp%"${comp##*${char}}"} 219s local idx=${#COMPREPLY[*]} 219s while ((--idx >= 0)); do 219s COMPREPLY[idx]=${COMPREPLY[idx]#"$word"} 219s done 219s fi 219s } 219s 219s __adsysctl_format_comp_descriptions() 219s { 219s local tab=$'\t' 219s local comp desc maxdesclength 219s local longest=$1 219s 219s local i ci 219s for ci in ${!COMPREPLY[*]}; do 219s comp=${COMPREPLY[ci]} 219s # Properly format the description string which follows a tab character if there is one 219s if [[ "$comp" == *$tab* ]]; then 219s __adsysctl_debug "Original comp: $comp" 219s desc=${comp#*$tab} 219s comp=${comp%%$tab*} 219s 219s # $COLUMNS stores the current shell width. 219s # Remove an extra 4 because we add 2 spaces and 2 parentheses. 219s maxdesclength=$(( COLUMNS - longest - 4 )) 219s 219s # Make sure we can fit a description of at least 8 characters 219s # if we are to align the descriptions. 219s if ((maxdesclength > 8)); then 219s # Add the proper number of spaces to align the descriptions 219s for ((i = ${#comp} ; i < longest ; i++)); do 219s comp+=" " 219s done 219s else 219s # Don't pad the descriptions so we can fit more text after the completion 219s maxdesclength=$(( COLUMNS - ${#comp} - 4 )) 219s fi 219s 219s # If there is enough space for any description text, 219s # truncate the descriptions that are too long for the shell width 219s if ((maxdesclength > 0)); then 219s if ((${#desc} > maxdesclength)); then 219s desc=${desc:0:$(( maxdesclength - 1 ))} 219s desc+="…" 219s fi 219s comp+=" ($desc)" 219s fi 219s COMPREPLY[ci]=$comp 219s __adsysctl_debug "Final comp: $comp" 219s fi 219s done 219s } 219s 219s __start_adsysctl() 219s { 219s local cur prev words cword split 219s 219s COMPREPLY=() 219s 219s # Call _init_completion from the bash-completion package 219s # to prepare the arguments properly 219s if declare -F _init_completion >/dev/null 2>&1; then 219s _init_completion -n =: || return 219s else 219s __adsysctl_init_completion -n =: || return 219s fi 219s 219s __adsysctl_debug 219s __adsysctl_debug "========= starting completion logic ==========" 219s __adsysctl_debug "cur is ${cur}, words[*] is ${words[*]}, #words[@] is ${#words[@]}, cword is $cword" 219s 219s # The user could have moved the cursor backwards on the command-line. 219s # We need to trigger completion from the $cword location, so we need 219s # to truncate the command-line ($words) up to the $cword location. 219s words=("${words[@]:0:$cword+1}") 219s __adsysctl_debug "Truncated words[*]: ${words[*]}," 219s 219s local out directive 219s __adsysctl_get_completion_results 219s __adsysctl_process_completion_results 219s } 219s 219s if [[ $(type -t compopt) = "builtin" ]]; then 219s complete -o default -F __start_adsysctl adsysctl 219s else 219s complete -o default -o nospace -F __start_adsysctl adsysctl 219s fi 219s 219s # ex: ts=4 sw=4 et filetype=sh 219s --- PASS: TestAppNoUsageError (0.01s) 219s === CONT TestAppCanSigHupAfterExecute 219s # bash completion V2 for adsysctl -*- shell-script -*- 219s 219s __adsysctl_debug() 219s { 219s if [[ -n ${BASH_COMP_DEBUG_FILE-} ]]; then 219s echo "$*" >> "${BASH_COMP_DEBUG_FILE}" 219s fi 219s } 219s 219s # Macs have bash3 for which the bash-completion package doesn't include 219s # _init_completion. This is a minimal version of that function. 219s __adsysctl_init_completion() 219s { 219s COMPREPLY=() 219s _get_comp_words_by_ref "$@" cur prev words cword 219s } 219s 219s # This function calls the adsysctl program to obtain the completion 219s # results and the directive. It fills the 'out' and 'directive' vars. 219s __adsysctl_get_completion_results() { 219s local requestComp lastParam lastChar args 219s 219s # Prepare the command to request completions for the program. 219s # Calling ${words[0]} instead of directly adsysctl allows handling aliases 219s args=("${words[@]:1}") 219s requestComp="${words[0]} __complete ${args[*]}" 219s 219s lastParam=${words[$((${#words[@]}-1))]} 219s lastChar=${lastParam:$((${#lastParam}-1)):1} 219s __adsysctl_debug "lastParam ${lastParam}, lastChar ${lastChar}" 219s 219s if [[ -z ${cur} && ${lastChar} != = ]]; then 219s # If the last parameter is complete (there is a space following it) 219s # We add an extra empty parameter so we can indicate this to the go method. 219s __adsysctl_debug "Adding extra empty parameter" 219s requestComp="${requestComp} ''" 219s fi 219s 219s # When completing a flag with an = (e.g., adsysctl -n=) 219s # bash focuses on the part after the =, so we need to remove 219s # the flag part from $cur 219s if [[ ${cur} == -*=* ]]; then 219s cur="${cur#*=}" 219s fi 219s 219s __adsysctl_debug "Calling ${requestComp}" 219s # Use eval to handle any environment variables and such 219s out=$(eval "${requestComp}" 2>/dev/null) 219s 219s # Extract the directive integer at the very end of the output following a colon (:) 219s directive=${out##*:} 219s # Remove the directive 219s out=${out%:*} 219s if [[ ${directive} == "${out}" ]]; then 219s # There is not directive specified 219s directive=0 219s fi 219s __adsysctl_debug "The completion directive is: ${directive}" 219s __adsysctl_debug "The completions are: ${out}" 219s } 219s 219s __adsysctl_process_completion_results() { 219s local shellCompDirectiveError=1 219s local shellCompDirectiveNoSpace=2 219s local shellCompDirectiveNoFileComp=4 219s local shellCompDirectiveFilterFileExt=8 219s local shellCompDirectiveFilterDirs=16 219s local shellCompDirectiveKeepOrder=32 219s 219s if (((directive & shellCompDirectiveError) != 0)); then 219s # Error code. No completion. 219s __adsysctl_debug "Received error from custom completion go code" 219s return 219s else 219s if (((directive & shellCompDirectiveNoSpace) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no space" 219s compopt -o nospace 219s else 219s __adsysctl_debug "No space directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveKeepOrder) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s # no sort isn't supported for bash less than < 4.4 219s if [[ ${BASH_VERSINFO[0]} -lt 4 || ( ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -lt 4 ) ]]; then 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s else 219s __adsysctl_debug "Activating keep order" 219s compopt -o nosort 219s fi 219s else 219s __adsysctl_debug "No sort directive not supported in this version of bash" 219s fi 219s fi 219s if (((directive & shellCompDirectiveNoFileComp) != 0)); then 219s if [[ $(type -t compopt) == builtin ]]; then 219s __adsysctl_debug "Activating no file completion" 219s compopt +o default 219s else 219s __adsysctl_debug "No file completion directive not supported in this version of bash" 219s fi 219s fi 219s fi 219s 219s # Separate activeHelp from normal completions 219s local completions=() 219s local activeHelp=() 219s __adsysctl_extract_activeHelp 219s 219s if (((directive & shellCompDirectiveFilterFileExt) != 0)); then 219s # File extension filtering 219s local fullFilter="" filter filteringCmd 219s 219s # Do not use quotes around the $completions variable or else newline 219s # characters will be kept. 219s for filter in ${completions[*]}; do 219s fullFilter+="$filter|" 219s done 219s 219s filteringCmd="_filedir $fullFilter" 219s __adsysctl_debug "File filtering command: $filteringCmd" 219s $filteringCmd 219s elif (((directive & shellCompDirectiveFilterDirs) != 0)); then 219s # File completion for directories only 219s 219s local subdir 219s subdir=${completions[0]} 219s if [[ -n $subdir ]]; then 219s __adsysctl_debug "Listing directories in $subdir" 219s pushd "$subdir" >/dev/null 2>&1 && _filedir -d && popd >/dev/null 2>&1 || return 219s else 219s __adsysctl_debug "Listing directories in ." 219s _filedir -d 219s fi 219s else 219s __adsysctl_handle_completion_types 219s fi 219s 219s __adsysctl_handle_special_char "$cur" : 219s __adsysctl_handle_special_char "$cur" = 219s 219s # Print the activeHelp statements before we finish 219s __adsysctl_handle_activeHelp 219s } 219s 219s __adsysctl_handle_activeHelp() { 219s # Print the activeHelp statements 219s if ((${#activeHelp[*]} != 0)); then 219s if [ -z $COMP_TYPE ]; then 219s # Bash v3 does not set the COMP_TYPE variable. 219s printf "\n"; 219s printf "%s\n" "${activeHelp[@]}" 219s printf "\n" 219s __adsysctl_reprint_commandLine 219s return 219s fi 219s 219s # Only print ActiveHelp on the second TAB press 219s if [ $COMP_TYPE -eq 63 ]; then 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s if ((${#COMPREPLY[*]} == 0)); then 219s # When there are no completion choices from the program, file completion 219s # may kick in if the program has not disabled it; in such a case, we want 219s # to know if any files will match what the user typed, so that we know if 219s # there will be completions presented, so that we know how to handle ActiveHelp. 219s # To find out, we actually trigger the file completion ourselves; 219s # the call to _filedir will fill COMPREPLY if files match. 219s if (((directive & shellCompDirectiveNoFileComp) == 0)); then 219s __adsysctl_debug "Listing files" 219s _filedir 219s fi 219s fi 219s 219s if ((${#COMPREPLY[*]} != 0)); then 219s # If there are completion choices to be shown, print a delimiter. 219s # Re-printing the command-line will automatically be done 219s # by the shell when it prints the completion choices. 219s printf -- "--" 219s else 219s # When there are no completion choices at all, we need 219s # to re-print the command-line since the shell will 219s # not be doing it itself. 219s __adsysctl_reprint_commandLine 219s fi 219s elif [ $COMP_TYPE -eq 37 ] || [ $COMP_TYPE -eq 42 ]; then 219s # For completion type: menu-complete/menu-complete-backward and insert-completions 219s # the completions are immediately inserted into the command-line, so we first 219s # print the activeHelp message and reprint the command-line since the shell won't. 219s printf "\n" 219s printf "%s\n" "${activeHelp[@]}" 219s 219s __adsysctl_reprint_commandLine 219s fi 219s fi 219s } 219s 219s __adsysctl_reprint_commandLine() { 219s # The prompt format is only available from bash 4.4. 219s # We test if it is available before using it. 219s if (x=${PS1@P}) 2> /dev/null; then 219s printf "%s" "${PS1@P}${COMP_LINE[@]}" 219s else 219s # Can't print the prompt. Just print the 219s # text the user had typed, it is workable enough. 219s printf "%s" "${COMP_LINE[@]}" 219s fi 219s } 219s 219s # Separate activeHelp lines from real completions. 219s # Fills the $activeHelp and $completions arrays. 219s __adsysctl_extract_activeHelp() { 219s local activeHelpMarker="_activeHelp_ " 219s local endIndex=${#activeHelpMarker} 219s 219s while IFS='' read -r comp; do 219s [[ -z $comp ]] && continue 219s 219s if [[ ${comp:0:endIndex} == $activeHelpMarker ]]; then 219s comp=${comp:endIndex} 219s __adsysctl_debug "ActiveHelp found: $comp" 219s if [[ -n $comp ]]; then 219s activeHelp+=("$comp") 219s fi 219s else 219s # Not an activeHelp line but a normal completion 219s completions+=("$comp") 219s fi 219s done <<<"${out}" 219s } 219s 219s __adsysctl_handle_completion_types() { 219s __adsysctl_debug "__adsysctl_handle_completion_types: COMP_TYPE is $COMP_TYPE" 219s 219s case $COMP_TYPE in 219s 37|42) 219s # Type: menu-complete/menu-complete-backward and insert-completions 219s # If the user requested inserting one completion at a time, or all 219s # completions at once on the command-line we must remove the descriptions. 219s # https://github.com/spf13/cobra/issues/1508 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s local tab=$'\t' 219s 219s # Strip any description and escape the completion to handled special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]%%$tab*}") 219s 219s # Only consider the completions that match 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so we need to escape all completions again since they will 219s # all be inserted on the command-line. 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(printf "%q\n" "${COMPREPLY[@]}") 219s ;; 219s 219s *) 219s # Type: complete (normal completion) 219s __adsysctl_handle_standard_completion_case 219s ;; 219s esac 219s } 219s 219s __adsysctl_handle_standard_completion_case() { 219s local tab=$'\t' 219s 219s # If there are no completions, we don't need to do anything 219s (( ${#completions[@]} == 0 )) && return 0 219s 219s # Short circuit to optimize if we don't have descriptions 219s if [[ "${completions[*]}" != *$tab* ]]; then 219s # First, escape the completions to handle special characters 219s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]}") 219s # Only consider the completions that match what the user typed 219s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 219s 219s # compgen looses the escaping so, if there is only a single completion, we need to 219s # escape it again because it will be inserted on the command-line. If there are multiple 219s # completions, we don't want to escape them because they will be printed in a list 219s # and we don't want to show escape characters in that list. 219s if (( ${#COMPREPLY[@]} == 1 )); then 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]}") 219s fi 219s return 0 219s fi 219s 219s local longest=0 219s local compline 219s # Look for the longest completion so that we can format things nicely 219s while IFS='' read -r compline; do 219s [[ -z $compline ]] && continue 219s 219s # Before checking if the completion matches what the user typed, 219s # we need to strip any description and escape the completion to handle special 219s # characters because those escape characters are part of what the user typed. 219s # Don't call "printf" in a sub-shell because it will be much slower 219s # since we are in a loop. 219s printf -v comp "%q" "${compline%%$tab*}" &>/dev/null || comp=$(printf "%q" "${compline%%$tab*}") 219s 219s # Only consider the completions that match 219s [[ $comp == "$cur"* ]] || continue 219s 219s # The completions matches. Add it to the list of full completions including 219s # its description. We don't escape the completion because it may get printed 219s # in a list if there are more than one and we don't want show escape characters 219s # in that list. 219s COMPREPLY+=("$compline") 219s 219s # Strip any description before checking the length, and again, don't escape 219s # the completion because this length is only used when printing the completions 219s # in a list and we don't want show escape characters in that list. 219s comp=${compline%%$tab*} 219s if ((${#comp}>longest)); then 219s longest=${#comp} 219s fi 219s done < <(printf "%s\n" "${completions[@]}") 219s 219s # If there is a single completion left, remove the description text and escape any special characters 219s if ((${#COMPREPLY[*]} == 1)); then 219s __adsysctl_debug "COMPREPLY[0]: ${COMPREPLY[0]}" 219s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]%%$tab*}") 219s __adsysctl_debug "Removed description from single completion, which is now: ${COMPREPLY[0]}" 219s else 219s # Format the descriptions 219s __adsysctl_format_comp_descriptions $longest 219s fi 219s } 219s 219s __adsysctl_handle_special_char() 219s { 219s local comp="$1" 219s local char=$2 219s if [[ "$comp" == *${char}* && "$COMP_WORDBREAKS" == *${char}* ]]; then 219s local word=${comp%"${comp##*${char}}"} 219s local idx=${#COMPREPLY[*]} 219s while ((--idx >= 0)); do 219s COMPREPLY[idx]=${COMPREPLY[idx]#"$word"} 219s done 219s fi 219s } 219s 219s __adsysctl_format_comp_descriptions() 219s { 219s local tab=$'\t' 219s local comp desc maxdesclength 219s local longest=$1 219s 219s local i ci 219s for ci in ${!COMPREPLY[*]}; do 219s comp=${COMPREPLY[ci]} 219s # Properly format the description string which follows a tab character if there is one 219s if [[ "$comp" == *$tab* ]]; then 219s __adsysctl_debug "Original comp: $comp" 219s desc=${comp#*$tab} 219s comp=${comp%%$tab*} 219s 219s # $COLUMNS stores the current shell width. 219s # Remove an extra 4 because we add 2 spaces and 2 parentheses. 219s maxdesclength=$(( COLUMNS - longest - 4 )) 219s 219s # Make sure we can fit a description of at least 8 characters 219s # if we are to align the descriptions. 219s if ((maxdesclength > 8)); then 219s # Add the proper number of spaces to align the descriptions 219s for ((i = ${#comp} ; i < longest ; i++)); do 219s comp+=" " 219s done 219s else 219s # Don't pad the descriptions so we can fit more text after the completion 219s maxdesclength=$(( COLUMNS - ${#comp} - 4 )) 219s fi 219s 219s # If there is enough space for any description text, 219s # truncate the descriptions that are too long for the shell width 219s if ((maxdesclength > 0)); then 219s if ((${#desc} > maxdesclength)); then 219s desc=${desc:0:$(( maxdesclength - 1 ))} 219s desc+="…" 219s fi 219s comp+=" ($desc)" 219s fi 219s COMPREPLY[ci]=$comp 219s __adsysctl_debug "Final comp: $comp" 219s fi 219s done 219s } 219s 219s __start_adsysctl() 219s { 219s local cur prev words cword split 219s 219s COMPREPLY=() 219s 219s # Call _init_completion from the bash-completion package 219s # to prepare the arguments properly 219s if declare -F _init_completion >/dev/null 2>&1; then 219s _init_completion -n =: || return 219s else 219s __adsysctl_init_completion -n =: || return 219s fi 219s 219s __adsysctl_debug 219s __adsysctl_debug "========= starting completion logic ==========" 219s __adsysctl_debug "cur is ${cur}, words[*] is ${words[*]}, #words[@] is ${#words[@]}, cword is $cword" 219s 219s # The user could have moved the cursor backwards on the command-line. 219s # We need to trigger completion from the $cword location, so we need 219s # to truncate the command-line ($words) up to the $cword location. 219s words=("${words[@]:0:$cword+1}") 219s __adsysctl_debug "Truncated words[*]: ${words[*]}," 219s 219s local out directive 219s __adsysctl_get_completion_results 219s __adsysctl_process_completion_results 219s } 219s 219s if [[ $(type -t compopt) = "builtin" ]]; then 219s complete -o default -F __start_adsysctl adsysctl 219s else 219s complete -o default -o nospace -F __start_adsysctl adsysctl 219s fi 219s 219s # ex: ts=4 sw=4 et filetype=sh 219s --- PASS: TestAppCanSigHupAfterExecute (0.00s) 219s === CONT TestAppCanQuitWithoutExecute 219s --- PASS: TestAppCanSigHupWhenExecute (0.01s) 219s --- PASS: TestAppCanQuitWithoutExecute (0.00s) 219s PASS 219s ok github.com/ubuntu/adsys/cmd/adsysd/client 0.143s 224s === RUN TestAppHelp 224s === PAUSE TestAppHelp 224s === RUN TestAppCompletion 224s === PAUSE TestAppCompletion 224s === RUN TestAppVersion 224s --- PASS: TestAppVersion (0.00s) 224s === RUN TestAppNoUsageError 224s === PAUSE TestAppNoUsageError 224s === RUN TestAppUsageError 224s === PAUSE TestAppUsageError 224s === RUN TestAppCanQuitWhenExecute 224s time="2025-10-31T03:46:37Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s --- PASS: TestAppCanQuitWhenExecute (0.07s) 224s === RUN TestAppCanQuitAfterExecute 224s time="2025-10-31T03:46:37Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s --- PASS: TestAppCanQuitAfterExecute (1.01s) 224s === RUN TestAppCanQuitWithoutExecute 224s === PAUSE TestAppCanQuitWithoutExecute 224s === RUN TestAppRunFailsOnDaemonCreationAndQuit 224s time="2025-10-31T03:46:38Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s --- PASS: TestAppRunFailsOnDaemonCreationAndQuit (0.04s) 224s === RUN TestAppRunFailsOnServiceCreationAndQuit 224s --- PASS: TestAppRunFailsOnServiceCreationAndQuit (0.00s) 224s === RUN TestAppCanSigHupWhenExecute 224s time="2025-10-31T03:46:38Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s --- PASS: TestAppCanSigHupWhenExecute (0.06s) 224s === RUN TestAppCanSigHupAfterExecute 224s time="2025-10-31T03:46:38Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s --- PASS: TestAppCanSigHupAfterExecute (1.01s) 224s === RUN TestAppCanSigHupWithoutExecute 224s --- PASS: TestAppCanSigHupWithoutExecute (0.00s) 224s === RUN TestAppTimeout 224s time="2025-10-31T03:46:39Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s --- PASS: TestAppTimeout (1.01s) 224s === RUN TestAppGetRootCmd 224s === PAUSE TestAppGetRootCmd 224s === RUN TestConfigLoad 224s time="2025-10-31T03:46:40Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s time="2025-10-31T03:46:40Z" level=info msg="Serving on /tmp/TestConfigLoad4053931324/001/adsys.socket" 224s time="2025-10-31T03:46:40Z" level=info msg="Stopping daemon requested." 224s time="2025-10-31T03:46:40Z" level=info msg="Wait for active requests to close." 224s --- PASS: TestConfigLoad (0.06s) 224s === RUN TestConfigChange 224s time="2025-10-31T03:46:40Z" level=warning msg="could not get system startup time? Can’t list next refresh: Process org.freedesktop.systemd1 exited with status 1" 224s time="2025-10-31T03:46:40Z" level=info msg="Serving on /tmp/TestConfigChange1279477477/001/adsys.socket" 224s time="2025-10-31T03:46:40Z" level=info msg="Stopping daemon requested." 224s time="2025-10-31T03:46:40Z" level=info msg="Wait for active requests to close." 224s time="2025-10-31T03:46:40Z" level=debug msg="All connections have now ended." 224s time="2025-10-31T03:46:40Z" level=debug msg=Quitting 224s --- PASS: TestConfigChange (0.16s) 224s === CONT TestAppHelp 224s === CONT TestAppUsageError 224s Active Directory integration bridging toolset daemon. 224s 224s Usage: 224s adsysd COMMAND [flags] 224s adsysd [command] 224s 224s Available Commands: 224s completion Generate the autocompletion script for the specified shell 224s help Help about any command 224s version Returns version of service and exits 224s 224s Flags: 224s --ad-backend string Active Directory authentication backend (default "sssd") 224s --cache-dir string directory where ADSys caches GPOs downloads and policies. (default "/var/cache/adsys") 224s -c, --config string use a specific configuration file 224s --gpo-list-timeout int time in seconds for the GPO list. 0 for no timeout. (default 10) 224s -h, --help help for adsysd 224s --run-dir string directory where ADSys stores transient information erased on reboot. (default "/run/adsys") 224s -s, --socket string socket path to use between daemon and client. Can be overridden by systemd socket activation. (default "/run/adsysd.sock") 224s --sssd.cache-dir string SSSd cache directory (default "/var/lib/sss/db") 224s --sssd.config string SSSd config file path (default "/etc/sssd/sssd.conf") 224s -t, --timeout int time in seconds without activity before the service exists. 0 for no timeout. (default 120) 224s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 224s 224s Use "adsysd [command] --help" for more information about a command. 224s --- PASS: TestAppHelp (0.00s) 224s === CONT TestAppGetRootCmd 224s --- PASS: TestAppUsageError (0.00s) 224s === CONT TestAppCanQuitWithoutExecute 224s daemon_test.go:104: We need to initialize the daemon first, so this is not possible and will hang forever (ready not closed) 224s --- SKIP: TestAppCanQuitWithoutExecute (0.00s) 224s === CONT TestAppNoUsageError 224s --- PASS: TestAppGetRootCmd (0.00s) 224s === CONT TestAppCompletion 224s # bash completion V2 for adsysd -*- shell-script -*- 224s 224s __adsysd_debug() 224s { 224s if [[ -n ${BASH_COMP_DEBUG_FILE-} ]]; then 224s echo "$*" >> "${BASH_COMP_DEBUG_FILE}" 224s fi 224s } 224s 224s # Macs have bash3 for which the bash-completion package doesn't include 224s # _init_completion. This is a minimal version of that function. 224s __adsysd_init_completion() 224s { 224s COMPREPLY=() 224s _get_comp_words_by_ref "$@" cur prev words cword 224s } 224s 224s # This function calls the adsysd program to obtain the completion 224s # results and the directive. It fills the 'out' and 'directive' vars. 224s __adsysd_get_completion_results() { 224s local requestComp lastParam lastChar args 224s 224s # Prepare the command to request completions for the program. 224s # Calling ${words[0]} instead of directly adsysd allows handling aliases 224s args=("${words[@]:1}") 224s requestComp="${words[0]} __complete ${args[*]}" 224s 224s lastParam=${words[$((${#words[@]}-1))]} 224s lastChar=${lastParam:$((${#lastParam}-1)):1} 224s __adsysd_debug "lastParam ${lastParam}, lastChar ${lastChar}" 224s 224s if [[ -z ${cur} && ${lastChar} != = ]]; then 224s # If the last parameter is complete (there is a space following it) 224s # We add an extra empty parameter so we can indicate this to the go method. 224s __adsysd_debug "Adding extra empty parameter" 224s requestComp="${requestComp} ''" 224s fi 224s 224s # When completing a flag with an = (e.g., adsysd -n=) 224s # bash focuses on the part after the =, so we need to remove 224s # the flag part from $cur 224s if [[ ${cur} == -*=* ]]; then 224s cur="${cur#*=}" 224s fi 224s 224s __adsysd_debug "Calling ${requestComp}" 224s # Use eval to handle any environment variables and such 224s out=$(eval "${requestComp}" 2>/dev/null) 224s 224s # Extract the directive integer at the very end of the output following a colon (:) 224s directive=${out##*:} 224s # Remove the directive 224s out=${out%:*} 224s if [[ ${directive} == "${out}" ]]; then 224s # There is not directive specified 224s directive=0 224s fi 224s __adsysd_debug "The completion directive is: ${directive}" 224s __adsysd_debug "The completions are: ${out}" 224s } 224s 224s __adsysd_process_completion_results() { 224s local shellCompDirectiveError=1 224s local shellCompDirectiveNoSpace=2 224s local shellCompDirectiveNoFileComp=4 224s local shellCompDirectiveFilterFileExt=8 224s local shellCompDirectiveFilterDirs=16 224s local shellCompDirectiveKeepOrder=32 224s 224s if (((directive & shellCompDirectiveError) != 0)); then 224s # Error code. No completion. 224s __adsysd_debug "Received error from custom completion go code" 224s return 224s else 224s if (((directive & shellCompDirectiveNoSpace) != 0)); then 224s if [[ $(type -t compopt) == builtin ]]; then 224s __adsysd_debug "Activating no space" 224s compopt -o nospace 224s else 224s __adsysd_debug "No space directive not supported in this version of bash" 224s fi 224s fi 224s if (((directive & shellCompDirectiveKeepOrder) != 0)); then 224s if [[ $(type -t compopt) == builtin ]]; then 224s # no sort isn't supported for bash less than < 4.4 224s if [[ ${BASH_VERSINFO[0]} -lt 4 || ( ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -lt 4 ) ]]; then 224s __adsysd_debug "No sort directive not supported in this version of bash" 224s else 224s __adsysd_debug "Activating keep order" 224s compopt -o nosort 224s fi 224s else 224s __adsysd_debug "No sort directive not supported in this version of bash" 224s fi 224s fi 224s if (((directive & shellCompDirectiveNoFileComp) != 0)); then 224s if [[ $(type -t compopt) == builtin ]]; then 224s __adsysd_debug "Activating no file completion" 224s compopt +o default 224s else 224s __adsysd_debug "No file completion directive not supported in this version of bash" 224s fi 224s fi 224s fi 224s 224s # Separate activeHelp from normal completions 224s local completions=() 224s local activeHelp=() 224s __adsysd_extract_activeHelp 224s 224s if (((directive & shellCompDirectiveFilterFileExt) != 0)); then 224s # File extension filtering 224s local fullFilter="" filter filteringCmd 224s 224s # Do not use quotes around the $completions variable or else newline 224s # characters will be kept. 224s for filter in ${completions[*]}; do 224s fullFilter+="$filter|" 224s done 224s 224s filteringCmd="_filedir $fullFilter" 224s __adsysd_debug "File filtering command: $filteringCmd" 224s $filteringCmd 224s elif (((directive & shellCompDirectiveFilterDirs) != 0)); then 224s # File completion for directories only 224s 224s local subdir 224s subdir=${completions[0]} 224s if [[ -n $subdir ]]; then 224s __adsysd_debug "Listing directories in $subdir" 224s pushd "$subdir" >/dev/null 2>&1 && _filedir -d && popd >/dev/null 2>&1 || return 224s else 224s __adsysd_debug "Listing directories in ." 224s _filedir -d 224s fi 224s else 224s __adsysd_handle_completion_types 224s fi 224s 224s __adsysd_handle_special_char "$cur" : 224s __adsysd_handle_special_char "$cur" = 224s 224s # Print the activeHelp statements before we finish 224s __adsysd_handle_activeHelp 224s } 224s 224s __adsysd_handle_activeHelp() { 224s # Print the activeHelp statements 224s if ((${#activeHelp[*]} != 0)); then 224s if [ -z $COMP_TYPE ]; then 224s # Bash v3 does not set the COMP_TYPE variable. 224s printf "\n"; 224s printf "%s\n" "${activeHelp[@]}" 224s printf "\n" 224s __adsysd_reprint_commandLine 224s return 224s fi 224s 224s # Only print ActiveHelp on the second TAB press 224s if [ $COMP_TYPE -eq 63 ]; then 224s printf "\n" 224s printf "%s\n" "${activeHelp[@]}" 224s 224s if ((${#COMPREPLY[*]} == 0)); then 224s # When there are no completion choices from the program, file completion 224s # may kick in if the program has not disabled it; in such a case, we want 224s # to know if any files will match what the user typed, so that we know if 224s # there will be completions presented, so that we know how to handle ActiveHelp. 224s # To find out, we actually trigger the file completion ourselves; 224s # the call to _filedir will fill COMPREPLY if files match. 224s if (((directive & shellCompDirectiveNoFileComp) == 0)); then 224s __adsysd_debug "Listing files" 224s _filedir 224s fi 224s fi 224s 224s if ((${#COMPREPLY[*]} != 0)); then 224s # If there are completion choices to be shown, print a delimiter. 224s # Re-printing the command-line will automatically be done 224s # by the shell when it prints the completion choices. 224s printf -- "--" 224s else 224s # When there are no completion choices at all, we need 224s # to re-print the command-line since the shell will 224s # not be doing it itself. 224s __adsysd_reprint_commandLine 224s fi 224s elif [ $COMP_TYPE -eq 37 ] || [ $COMP_TYPE -eq 42 ]; then 224s # For completion type: menu-complete/menu-complete-backward and insert-completions 224s # the completions are immediately inserted into the command-line, so we first 224s # print the activeHelp message and reprint the command-line since the shell won't. 224s printf "\n" 224s printf "%s\n" "${activeHelp[@]}" 224s 224s __adsysd_reprint_commandLine 224s fi 224s fi 224s } 224s 224s __adsysd_reprint_commandLine() { 224s # The prompt format is only available from bash 4.4. 224s # We test if it is available before using it. 224s if (x=${PS1@P}) 2> /dev/null; then 224s printf "%s" "${PS1@P}${COMP_LINE[@]}" 224s else 224s # Can't print the prompt. Just print the 224s # text the user had typed, it is workable enough. 224s printf "%s" "${COMP_LINE[@]}" 224s fi 224s } 224s 224s # Separate activeHelp lines from real completions. 224s # Fills the $activeHelp and $completions arrays. 224s __adsysd_extract_activeHelp() { 224s local activeHelpMarker="_activeHelp_ " 224s local endIndex=${#activeHelpMarker} 224s 224s while IFS='' read -r comp; do 224s [[ -z $comp ]] && continue 224s 224s if [[ ${comp:0:endIndex} == $activeHelpMarker ]]; then 224s comp=${comp:endIndex} 224s __adsysd_debug "ActiveHelp found: $comp" 224s if [[ -n $comp ]]; then 224s activeHelp+=("$comp") 224s fi 224s else 224s # Not an activeHelp line but a normal completion 224s completions+=("$comp") 224s fi 224s done <<<"${out}" 224s } 224s 224s __adsysd_handle_completion_types() { 224s __adsysd_debug "__adsysd_handle_completion_types: COMP_TYPE is $COMP_TYPE" 224s 224s case $COMP_TYPE in 224s 37|42) 224s # Type: menu-complete/menu-complete-backward and insert-completions 224s # If the user requested inserting one completion at a time, or all 224s # completions at once on the command-line we must remove the descriptions. 224s # https://github.com/spf13/cobra/issues/1508 224s 224s # If there are no completions, we don't need to do anything 224s (( ${#completions[@]} == 0 )) && return 0 224s 224s local tab=$'\t' 224s 224s # Strip any description and escape the completion to handled special characters 224s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]%%$tab*}") 224s 224s # Only consider the completions that match 224s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 224s 224s # compgen looses the escaping so we need to escape all completions again since they will 224s # all be inserted on the command-line. 224s IFS=$'\n' read -ra COMPREPLY -d '' < <(printf "%q\n" "${COMPREPLY[@]}") 224s ;; 224s 224s *) 224s # Type: complete (normal completion) 224s __adsysd_handle_standard_completion_case 224s ;; 224s esac 224s } 224s 224s __adsysd_handle_standard_completion_case() { 224s local tab=$'\t' 224s 224s # If there are no completions, we don't need to do anything 224s (( ${#completions[@]} == 0 )) && return 0 224s 224s # Short circuit to optimize if we don't have descriptions 224s if [[ "${completions[*]}" != *$tab* ]]; then 224s # First, escape the completions to handle special characters 224s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]}") 224s # Only consider the completions that match what the user typed 224s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 224s 224s # compgen looses the escaping so, if there is only a single completion, we need to 224s # escape it again because it will be inserted on the command-line. If there are multiple 224s # completions, we don't want to escape them because they will be printed in a list 224s # and we don't want to show escape characters in that list. 224s if (( ${#COMPREPLY[@]} == 1 )); then 224s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]}") 224s fi 224s return 0 224s fi 224s 224s local longest=0 224s local compline 224s # Look for the longest completion so that we can format things nicely 224s while IFS='' read -r compline; do 224s [[ -z $compline ]] && continue 224s 224s # Before checking if the completion matches what the user typed, 224s # we need to strip any description and escape the completion to handle special 224s # characters because those escape characters are part of what the user typed. 224s # Don't call "printf" in a sub-shell because it will be much slower 224s # since we are in a loop. 224s printf -v comp "%q" "${compline%%$tab*}" &>/dev/null || comp=$(printf "%q" "${compline%%$tab*}") 224s 224s # Only consider the completions that match 224s [[ $comp == "$cur"* ]] || continue 224s 224s # The completions matches. Add it to the list of full completions including 224s # its description. We don't escape the completion because it may get printed 224s # in a list if there are more than one and we don't want show escape characters 224s # in that list. 224s COMPREPLY+=("$compline") 224s 224s # Strip any description before checking the length, and again, don't escape 224s # the completion because this length is only used when printing the completions 224s # in a list and we don't want show escape characters in that list. 224s comp=${compline%%$tab*} 224s if ((${#comp}>longest)); then 224s longest=${#comp} 224s fi 224s done < <(printf "%s\n" "${completions[@]}") 224s 224s # If there is a single completion left, remove the description text and escape any special characters 224s if ((${#COMPREPLY[*]} == 1)); then 224s __adsysd_debug "COMPREPLY[0]: ${COMPREPLY[0]}" 224s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]%%$tab*}") 224s __adsysd_debug "Removed description from single completion, which is now: ${COMPREPLY[0]}" 224s else 224s # Format the descriptions 224s __adsysd_format_comp_descriptions $longest 224s fi 224s } 224s 224s __adsysd_handle_special_char() 224s { 224s local comp="$1" 224s local char=$2 224s if [[ "$comp" == *${char}* && "$COMP_WORDBREAKS" == *${char}* ]]; then 224s local word=${comp%"${comp##*${char}}"} 224s local idx=${#COMPREPLY[*]} 224s while ((--idx >= 0)); do 224s COMPREPLY[idx]=${COMPREPLY[idx]#"$word"} 224s done 224s fi 224s } 224s 224s __adsysd_format_comp_descriptions() 224s { 224s local tab=$'\t' 224s local comp desc maxdesclength 224s local longest=$1 224s 224s local i ci 224s for ci in ${!COMPREPLY[*]}; do 224s comp=${COMPREPLY[ci]} 224s # Properly format the description string which follows a tab character if there is one 224s if [[ "$comp" == *$tab* ]]; then 224s __adsysd_debug "Original comp: $comp" 224s desc=${comp#*$tab} 224s comp=${comp%%$tab*} 224s 224s # $COLUMNS stores the current shell width. 224s # Remove an extra 4 because we add 2 spaces and 2 parentheses. 224s maxdesclength=$(( COLUMNS - longest - 4 )) 224s 224s # Make sure we can fit a description of at least 8 characters 224s # if we are to align the descriptions. 224s if ((maxdesclength > 8)); then 224s # Add the proper number of spaces to align the descriptions 224s for ((i = ${#comp} ; i < longest ; i++)); do 224s comp+=" " 224s done 224s else 224s # Don't pad the descriptions so we can fit more text after the completion 224s maxdesclength=$(( COLUMNS - ${#comp} - 4 )) 224s fi 224s 224s # If there is enough space for any description text, 224s # truncate the descriptions that are too long for the shell width 224s if ((maxdesclength > 0)); then 224s if ((${#desc} > maxdesclength)); then 224s desc=${desc:0:$(( maxdesclength - 1 ))} 224s desc+="…" 224s fi 224s comp+=" ($desc)" 224s fi 224s COMPREPLY[ci]=$comp 224s __adsysd_debug "Final comp: $comp" 224s fi 224s done 224s } 224s 224s __start_adsysd() 224s { 224s local cur prev words cword split 224s 224s COMPREPLY=() 224s 224s # Call _init_completion from the bash-completion package 224s # to prepare the arguments properly 224s if declare -F _init_completion >/dev/null 2>&1; then 224s _init_completion -n =: || return 224s else 224s __adsysd_init_completion -n =: || return 224s fi 224s 224s __adsysd_debug 224s __adsysd_debug "========= starting completion logic ==========" 224s __adsysd_debug "cur is ${cur}, words[*] is ${words[*]}, #words[@] is ${#words[@]}, cword is $cword" 224s 224s # The user could have moved the cursor backwards on the command-line. 224s # We need to trigger completion from the $cword location, so we need 224s # to truncate the command-line ($words) up to the $cword location. 224s words=("${words[@]:0:$cword+1}") 224s __adsysd_debug "Truncated words[*]: ${words[*]}," 224s 224s local out directive 224s __adsysd_get_completion_results 224s __adsysd_process_completion_results 224s } 224s 224s if [[ $(type -t compopt) = "builtin" ]]; then 224s complete -o default -F __start_adsysd adsysd 224s else 224s complete -o default -o nospace -F __start_adsysd adsysd 224s fi 224s 224s # ex: ts=4 sw=4 et filetype=sh 224s --- PASS: TestAppNoUsageError (0.00s) 224s # bash completion V2 for adsysd -*- shell-script -*- 224s 224s __adsysd_debug() 224s { 224s if [[ -n ${BASH_COMP_DEBUG_FILE-} ]]; then 224s echo "$*" >> "${BASH_COMP_DEBUG_FILE}" 224s fi 224s } 224s 224s # Macs have bash3 for which the bash-completion package doesn't include 224s # _init_completion. This is a minimal version of that function. 224s __adsysd_init_completion() 224s { 224s COMPREPLY=() 224s _get_comp_words_by_ref "$@" cur prev words cword 224s } 224s 224s # This function calls the adsysd program to obtain the completion 224s # results and the directive. It fills the 'out' and 'directive' vars. 224s __adsysd_get_completion_results() { 224s local requestComp lastParam lastChar args 224s 224s # Prepare the command to request completions for the program. 224s # Calling ${words[0]} instead of directly adsysd allows handling aliases 224s args=("${words[@]:1}") 224s requestComp="${words[0]} __complete ${args[*]}" 224s 224s lastParam=${words[$((${#words[@]}-1))]} 224s lastChar=${lastParam:$((${#lastParam}-1)):1} 224s __adsysd_debug "lastParam ${lastParam}, lastChar ${lastChar}" 224s 224s if [[ -z ${cur} && ${lastChar} != = ]]; then 224s # If the last parameter is complete (there is a space following it) 224s # We add an extra empty parameter so we can indicate this to the go method. 224s __adsysd_debug "Adding extra empty parameter" 224s requestComp="${requestComp} ''" 224s fi 224s 224s # When completing a flag with an = (e.g., adsysd -n=) 224s # bash focuses on the part after the =, so we need to remove 224s # the flag part from $cur 224s if [[ ${cur} == -*=* ]]; then 224s cur="${cur#*=}" 224s fi 224s 224s __adsysd_debug "Calling ${requestComp}" 224s # Use eval to handle any environment variables and such 224s out=$(eval "${requestComp}" 2>/dev/null) 224s 224s # Extract the directive integer at the very end of the output following a colon (:) 224s directive=${out##*:} 224s # Remove the directive 224s out=${out%:*} 224s if [[ ${directive} == "${out}" ]]; then 224s # There is not directive specified 224s directive=0 224s fi 224s __adsysd_debug "The completion directive is: ${directive}" 224s __adsysd_debug "The completions are: ${out}" 224s } 224s 224s __adsysd_process_completion_results() { 224s local shellCompDirectiveError=1 224s local shellCompDirectiveNoSpace=2 224s local shellCompDirectiveNoFileComp=4 224s local shellCompDirectiveFilterFileExt=8 224s local shellCompDirectiveFilterDirs=16 224s local shellCompDirectiveKeepOrder=32 224s 224s if (((directive & shellCompDirectiveError) != 0)); then 224s # Error code. No completion. 224s __adsysd_debug "Received error from custom completion go code" 224s return 224s else 224s if (((directive & shellCompDirectiveNoSpace) != 0)); then 224s if [[ $(type -t compopt) == builtin ]]; then 224s __adsysd_debug "Activating no space" 224s compopt -o nospace 224s else 224s __adsysd_debug "No space directive not supported in this version of bash" 224s fi 224s fi 224s if (((directive & shellCompDirectiveKeepOrder) != 0)); then 224s if [[ $(type -t compopt) == builtin ]]; then 224s # no sort isn't supported for bash less than < 4.4 224s if [[ ${BASH_VERSINFO[0]} -lt 4 || ( ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -lt 4 ) ]]; then 224s __adsysd_debug "No sort directive not supported in this version of bash" 224s else 224s __adsysd_debug "Activating keep order" 224s compopt -o nosort 224s fi 224s else 224s __adsysd_debug "No sort directive not supported in this version of bash" 224s fi 224s fi 224s if (((directive & shellCompDirectiveNoFileComp) != 0)); then 224s if [[ $(type -t compopt) == builtin ]]; then 224s __adsysd_debug "Activating no file completion" 224s compopt +o default 224s else 224s __adsysd_debug "No file completion directive not supported in this version of bash" 224s fi 224s fi 224s fi 224s 224s # Separate activeHelp from normal completions 224s local completions=() 224s local activeHelp=() 224s __adsysd_extract_activeHelp 224s 224s if (((directive & shellCompDirectiveFilterFileExt) != 0)); then 224s # File extension filtering 224s local fullFilter="" filter filteringCmd 224s 224s # Do not use quotes around the $completions variable or else newline 224s # characters will be kept. 224s for filter in ${completions[*]}; do 224s fullFilter+="$filter|" 224s done 224s 224s filteringCmd="_filedir $fullFilter" 224s __adsysd_debug "File filtering command: $filteringCmd" 224s $filteringCmd 224s elif (((directive & shellCompDirectiveFilterDirs) != 0)); then 224s # File completion for directories only 224s 224s local subdir 224s subdir=${completions[0]} 224s if [[ -n $subdir ]]; then 224s __adsysd_debug "Listing directories in $subdir" 224s pushd "$subdir" >/dev/null 2>&1 && _filedir -d && popd >/dev/null 2>&1 || return 224s else 224s __adsysd_debug "Listing directories in ." 224s _filedir -d 224s fi 224s else 224s __adsysd_handle_completion_types 224s fi 224s 224s __adsysd_handle_special_char "$cur" : 224s __adsysd_handle_special_char "$cur" = 224s 224s # Print the activeHelp statements before we finish 224s __adsysd_handle_activeHelp 224s } 224s 224s __adsysd_handle_activeHelp() { 224s # Print the activeHelp statements 224s if ((${#activeHelp[*]} != 0)); then 224s if [ -z $COMP_TYPE ]; then 224s # Bash v3 does not set the COMP_TYPE variable. 224s printf "\n"; 224s printf "%s\n" "${activeHelp[@]}" 224s printf "\n" 224s __adsysd_reprint_commandLine 224s return 224s fi 224s 224s # Only print ActiveHelp on the second TAB press 224s if [ $COMP_TYPE -eq 63 ]; then 224s printf "\n" 224s printf "%s\n" "${activeHelp[@]}" 224s 224s if ((${#COMPREPLY[*]} == 0)); then 224s # When there are no completion choices from the program, file completion 224s # may kick in if the program has not disabled it; in such a case, we want 224s # to know if any files will match what the user typed, so that we know if 224s # there will be completions presented, so that we know how to handle ActiveHelp. 224s # To find out, we actually trigger the file completion ourselves; 224s # the call to _filedir will fill COMPREPLY if files match. 224s if (((directive & shellCompDirectiveNoFileComp) == 0)); then 224s __adsysd_debug "Listing files" 224s _filedir 224s fi 224s fi 224s 224s if ((${#COMPREPLY[*]} != 0)); then 224s # If there are completion choices to be shown, print a delimiter. 224s # Re-printing the command-line will automatically be done 224s # by the shell when it prints the completion choices. 224s printf -- "--" 224s else 224s # When there are no completion choices at all, we need 224s # to re-print the command-line since the shell will 224s # not be doing it itself. 224s __adsysd_reprint_commandLine 224s fi 224s elif [ $COMP_TYPE -eq 37 ] || [ $COMP_TYPE -eq 42 ]; then 224s # For completion type: menu-complete/menu-complete-backward and insert-completions 224s # the completions are immediately inserted into the command-line, so we first 224s # print the activeHelp message and reprint the command-line since the shell won't. 224s printf "\n" 224s printf "%s\n" "${activeHelp[@]}" 224s 224s __adsysd_reprint_commandLine 224s fi 224s fi 224s } 224s 224s __adsysd_reprint_commandLine() { 224s # The prompt format is only available from bash 4.4. 224s # We test if it is available before using it. 224s if (x=${PS1@P}) 2> /dev/null; then 224s printf "%s" "${PS1@P}${COMP_LINE[@]}" 224s else 224s # Can't print the prompt. Just print the 224s # text the user had typed, it is workable enough. 224s printf "%s" "${COMP_LINE[@]}" 224s fi 224s } 224s 224s # Separate activeHelp lines from real completions. 224s # Fills the $activeHelp and $completions arrays. 224s __adsysd_extract_activeHelp() { 224s local activeHelpMarker="_activeHelp_ " 224s local endIndex=${#activeHelpMarker} 224s 224s while IFS='' read -r comp; do 224s [[ -z $comp ]] && continue 224s 224s if [[ ${comp:0:endIndex} == $activeHelpMarker ]]; then 224s comp=${comp:endIndex} 224s __adsysd_debug "ActiveHelp found: $comp" 224s if [[ -n $comp ]]; then 224s activeHelp+=("$comp") 224s fi 224s else 224s # Not an activeHelp line but a normal completion 224s completions+=("$comp") 224s fi 224s done <<<"${out}" 224s } 224s 224s __adsysd_handle_completion_types() { 224s __adsysd_debug "__adsysd_handle_completion_types: COMP_TYPE is $COMP_TYPE" 224s 224s case $COMP_TYPE in 224s 37|42) 224s # Type: menu-complete/menu-complete-backward and insert-completions 224s # If the user requested inserting one completion at a time, or all 224s # completions at once on the command-line we must remove the descriptions. 224s # https://github.com/spf13/cobra/issues/1508 224s 224s # If there are no completions, we don't need to do anything 224s (( ${#completions[@]} == 0 )) && return 0 224s 224s local tab=$'\t' 224s 224s # Strip any description and escape the completion to handled special characters 224s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]%%$tab*}") 224s 224s # Only consider the completions that match 224s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 224s 224s # compgen looses the escaping so we need to escape all completions again since they will 224s # all be inserted on the command-line. 224s IFS=$'\n' read -ra COMPREPLY -d '' < <(printf "%q\n" "${COMPREPLY[@]}") 224s ;; 224s 224s *) 224s # Type: complete (normal completion) 224s __adsysd_handle_standard_completion_case 224s ;; 224s esac 224s } 224s 224s __adsysd_handle_standard_completion_case() { 224s local tab=$'\t' 224s 224s # If there are no completions, we don't need to do anything 224s (( ${#completions[@]} == 0 )) && return 0 224s 224s # Short circuit to optimize if we don't have descriptions 224s if [[ "${completions[*]}" != *$tab* ]]; then 224s # First, escape the completions to handle special characters 224s IFS=$'\n' read -ra completions -d '' < <(printf "%q\n" "${completions[@]}") 224s # Only consider the completions that match what the user typed 224s IFS=$'\n' read -ra COMPREPLY -d '' < <(IFS=$'\n'; compgen -W "${completions[*]}" -- "${cur}") 224s 224s # compgen looses the escaping so, if there is only a single completion, we need to 224s # escape it again because it will be inserted on the command-line. If there are multiple 224s # completions, we don't want to escape them because they will be printed in a list 224s # and we don't want to show escape characters in that list. 224s if (( ${#COMPREPLY[@]} == 1 )); then 224s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]}") 224s fi 224s return 0 224s fi 224s 224s local longest=0 224s local compline 224s # Look for the longest completion so that we can format things nicely 224s while IFS='' read -r compline; do 224s [[ -z $compline ]] && continue 224s 224s # Before checking if the completion matches what the user typed, 224s # we need to strip any description and escape the completion to handle special 224s # characters because those escape characters are part of what the user typed. 224s # Don't call "printf" in a sub-shell because it will be much slower 224s # since we are in a loop. 224s printf -v comp "%q" "${compline%%$tab*}" &>/dev/null || comp=$(printf "%q" "${compline%%$tab*}") 224s 224s # Only consider the completions that match 224s [[ $comp == "$cur"* ]] || continue 224s 224s # The completions matches. Add it to the list of full completions including 224s # its description. We don't escape the completion because it may get printed 224s # in a list if there are more than one and we don't want show escape characters 224s # in that list. 224s COMPREPLY+=("$compline") 224s 224s # Strip any description before checking the length, and again, don't escape 224s # the completion because this length is only used when printing the completions 224s # in a list and we don't want show escape characters in that list. 224s comp=${compline%%$tab*} 224s if ((${#comp}>longest)); then 224s longest=${#comp} 224s fi 224s done < <(printf "%s\n" "${completions[@]}") 224s 224s # If there is a single completion left, remove the description text and escape any special characters 224s if ((${#COMPREPLY[*]} == 1)); then 224s __adsysd_debug "COMPREPLY[0]: ${COMPREPLY[0]}" 224s COMPREPLY[0]=$(printf "%q" "${COMPREPLY[0]%%$tab*}") 224s __adsysd_debug "Removed description from single completion, which is now: ${COMPREPLY[0]}" 224s else 224s # Format the descriptions 224s __adsysd_format_comp_descriptions $longest 224s fi 224s } 224s 224s __adsysd_handle_special_char() 224s { 224s local comp="$1" 224s local char=$2 224s if [[ "$comp" == *${char}* && "$COMP_WORDBREAKS" == *${char}* ]]; then 224s local word=${comp%"${comp##*${char}}"} 224s local idx=${#COMPREPLY[*]} 224s while ((--idx >= 0)); do 224s COMPREPLY[idx]=${COMPREPLY[idx]#"$word"} 224s done 224s fi 224s } 224s 224s __adsysd_format_comp_descriptions() 224s { 224s local tab=$'\t' 224s local comp desc maxdesclength 224s local longest=$1 224s 224s local i ci 224s for ci in ${!COMPREPLY[*]}; do 224s comp=${COMPREPLY[ci]} 224s # Properly format the description string which follows a tab character if there is one 224s if [[ "$comp" == *$tab* ]]; then 224s __adsysd_debug "Original comp: $comp" 224s desc=${comp#*$tab} 224s comp=${comp%%$tab*} 224s 224s # $COLUMNS stores the current shell width. 224s # Remove an extra 4 because we add 2 spaces and 2 parentheses. 224s maxdesclength=$(( COLUMNS - longest - 4 )) 224s 224s # Make sure we can fit a description of at least 8 characters 224s # if we are to align the descriptions. 224s if ((maxdesclength > 8)); then 224s # Add the proper number of spaces to align the descriptions 224s for ((i = ${#comp} ; i < longest ; i++)); do 224s comp+=" " 224s done 224s else 224s # Don't pad the descriptions so we can fit more text after the completion 224s maxdesclength=$(( COLUMNS - ${#comp} - 4 )) 224s fi 224s 224s # If there is enough space for any description text, 224s # truncate the descriptions that are too long for the shell width 224s if ((maxdesclength > 0)); then 224s if ((${#desc} > maxdesclength)); then 224s desc=${desc:0:$(( maxdesclength - 1 ))} 224s desc+="…" 224s fi 224s comp+=" ($desc)" 224s fi 224s COMPREPLY[ci]=$comp 224s __adsysd_debug "Final comp: $comp" 224s fi 224s done 224s } 224s 224s __start_adsysd() 224s { 224s local cur prev words cword split 224s 224s COMPREPLY=() 224s 224s # Call _init_completion from the bash-completion package 224s # to prepare the arguments properly 224s if declare -F _init_completion >/dev/null 2>&1; then 224s _init_completion -n =: || return 224s else 224s __adsysd_init_completion -n =: || return 224s fi 224s 224s __adsysd_debug 224s __adsysd_debug "========= starting completion logic ==========" 224s __adsysd_debug "cur is ${cur}, words[*] is ${words[*]}, #words[@] is ${#words[@]}, cword is $cword" 224s 224s # The user could have moved the cursor backwards on the command-line. 224s # We need to trigger completion from the $cword location, so we need 224s # to truncate the command-line ($words) up to the $cword location. 224s words=("${words[@]:0:$cword+1}") 224s __adsysd_debug "Truncated words[*]: ${words[*]}," 224s 224s local out directive 224s __adsysd_get_completion_results 224s __adsysd_process_completion_results 224s } 224s 224s if [[ $(type -t compopt) = "builtin" ]]; then 224s complete -o default -F __start_adsysd adsysd 224s else 224s complete -o default -o nospace -F __start_adsysd adsysd 224s fi 224s 224s # ex: ts=4 sw=4 et filetype=sh 224s --- PASS: TestAppCompletion (0.00s) 224s PASS 224s ok github.com/ubuntu/adsys/cmd/adsysd/daemon 3.504s 224s Integration tests skipped as requested 224s ok github.com/ubuntu/adsys/cmd/adsysd/integration_tests 0.102s 224s ? github.com/ubuntu/adsys/cmd/adwatchd/commands [no test files] 225s ? github.com/ubuntu/adsys/docs [no test files] 225s === RUN TestRun 225s === RUN TestRun/Send_SIGINT_exits 225s === RUN TestRun/Send_SIGTERM_exits 225s === RUN TestRun/Run_and_exit_successfully 225s === RUN TestRun/Run_and_return_error 225s ERROR Error requested 225s === RUN TestRun/Run_and_return_usage_error 225s ERROR Error requested 225s === RUN TestRun/Run_and_usage_error_only_does_not_fail 225s --- PASS: TestRun (0.61s) 225s --- PASS: TestRun/Send_SIGINT_exits (0.10s) 225s --- PASS: TestRun/Send_SIGTERM_exits (0.10s) 225s --- PASS: TestRun/Run_and_exit_successfully (0.10s) 225s --- PASS: TestRun/Run_and_return_error (0.10s) 225s --- PASS: TestRun/Run_and_return_usage_error (0.10s) 225s --- PASS: TestRun/Run_and_usage_error_only_does_not_fail (0.10s) 225s === RUN TestMainApp 225s --- PASS: TestMainApp (0.61s) 225s PASS 225s ok github.com/ubuntu/adsys/cmd/adwatchd 1.244s 225s Test has to be run as root, skipping... 225s ok github.com/ubuntu/adsys/cmd/adwatchd/integration_tests 0.025s 226s ? github.com/ubuntu/adsys/e2e/cmd/build_base_image/00_check_vm_image [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/build_base_image/01_prepare_base_vm [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/build_base_image/02_create_vm_template [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/build_base_image/99_destroy_previous_versions [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/00_build_adsys_deb [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/01_provision_client [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/02_provision_ad [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/03_pam_coverage_support [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/10_test_non_pro_managers [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/11_test_pro_managers [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/12_test_pam_krb5cc [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/98_collect_pam_coverage [no test files] 228s ? github.com/ubuntu/adsys/e2e/cmd/run_tests/99_deprovision [no test files] 228s ? github.com/ubuntu/adsys/e2e/internal/az [no test files] 229s ? github.com/ubuntu/adsys/e2e/internal/inventory [no test files] 229s ? github.com/ubuntu/adsys/e2e/internal/remote [no test files] 229s ? github.com/ubuntu/adsys/e2e/scripts [no test files] 229s === RUN TestAddFlags 229s --- PASS: TestAddFlags (0.00s) 229s === RUN TestInventory 229s === RUN TestInventory/Multiple_from_states_requires_at_least_one 229s === RUN TestInventory/Error_if_inventory_file_is_required_and_doesn't_exist 229s time="2025-10-31T03:46:45Z" level=error msg="Failed to read inventory file required by the current script: failed to read inventory file: open /tmp/TestInventoryError_if_inventory_file_is_required_and_doesnt_exist3751405070/001/inventory/inventory.yaml: no such file or directory. Please refer to the previous script in the series" 229s === RUN TestInventory/Error_if_inventory_state_does_not_match_expected_state 229s time="2025-10-31T03:46:45Z" level=error msg="Inventory file is not in any of the expected initial states: [template_created ]" 229s === RUN TestInventory/Error_if_inventory_state_does_not_match_any_expected_state 229s time="2025-10-31T03:46:45Z" level=error msg="Inventory file is not in any of the expected initial states: [template_created ]" 229s === RUN TestInventory/From_null_state_doesn't_require_existing_data 229s === RUN TestInventory/From_existing_state_requires_existing_data 229s === RUN TestInventory/To_null_state_doesn't_write_data 229s --- PASS: TestInventory (0.01s) 229s --- PASS: TestInventory/Multiple_from_states_requires_at_least_one (0.00s) 229s --- PASS: TestInventory/Error_if_inventory_file_is_required_and_doesn't_exist (0.00s) 229s --- PASS: TestInventory/Error_if_inventory_state_does_not_match_expected_state (0.00s) 229s --- PASS: TestInventory/Error_if_inventory_state_does_not_match_any_expected_state (0.00s) 229s --- PASS: TestInventory/From_null_state_doesn't_require_existing_data (0.00s) 229s --- PASS: TestInventory/From_existing_state_requires_existing_data (0.00s) 229s --- PASS: TestInventory/To_null_state_doesn't_write_data (0.00s) 229s === RUN TestExecute 229s === RUN TestExecute/Action_and_validation_succeed 229s === RUN TestExecute/Error_when_action_fails 229s time="2025-10-31T03:46:45Z" level=error msg="requested error" 229s === RUN TestExecute/Error_when_validation_fails 229s time="2025-10-31T03:46:45Z" level=error msg="requested error" 229s === RUN TestExecute/Error_when_both_action_and_validation_fail 229s time="2025-10-31T03:46:45Z" level=error msg="requested error" 229s === RUN TestExecute/Action_succeeds 229s --- PASS: TestExecute (0.00s) 229s --- PASS: TestExecute/Action_and_validation_succeed (0.00s) 229s --- PASS: TestExecute/Error_when_action_fails (0.00s) 229s --- PASS: TestExecute/Error_when_validation_fails (0.00s) 229s --- PASS: TestExecute/Error_when_both_action_and_validation_fail (0.00s) 229s --- PASS: TestExecute/Action_succeeds (0.00s) 229s PASS 229s ok github.com/ubuntu/adsys/e2e/internal/command 0.023s 231s ? github.com/ubuntu/adsys/internal/ad/admxgen/common [no test files] 232s ? github.com/ubuntu/adsys/internal/ad/backends [no test files] 232s ? github.com/ubuntu/adsys/internal/ad/backends/mock [no test files] 239s ? github.com/ubuntu/adsys/internal/adsysservice/actions [no test files] 241s === RUN TestFetch 241s === PAUSE TestFetch 241s === RUN TestFetchWithUnreadableFile 241s === PAUSE TestFetchWithUnreadableFile 241s === RUN TestFetchTweakSysvolCacheDir 241s === PAUSE TestFetchTweakSysvolCacheDir 241s === RUN TestFetchOneGPOWhileParsingItConcurrently 241s === PAUSE TestFetchOneGPOWhileParsingItConcurrently 241s === RUN TestParseGPOConcurrent 241s === PAUSE TestParseGPOConcurrent 241s === RUN TestNew 241s === PAUSE TestNew 241s === RUN TestGetPolicies 241s === PAUSE TestGetPolicies 241s === RUN TestGetPoliciesOffline 241s === PAUSE TestGetPoliciesOffline 241s === RUN TestGetPoliciesWorkflows 241s === PAUSE TestGetPoliciesWorkflows 241s === RUN TestGetPoliciesConcurrently 241s === PAUSE TestGetPoliciesConcurrently 241s === RUN TestListUsers 241s === PAUSE TestListUsers 241s === RUN TestGetInfo 241s === PAUSE TestGetInfo 241s === RUN TestNormalizeTargetName 241s === PAUSE TestNormalizeTargetName 241s === RUN TestMockGPOList 241s --- PASS: TestMockGPOList (0.00s) 241s === RUN TestAdsysGPOList 241s === RUN TestAdsysGPOList/Computers_truncated_at_15_characters 241s === RUN TestAdsysGPOList/Error_on_computer_requested_but_found_user 241s === RUN TestAdsysGPOList/Return_one_gpo 241s === RUN TestAdsysGPOList/Block_inheritance 241s === RUN TestAdsysGPOList/Security_descriptor_missing_ignores_GPO 241s === RUN TestAdsysGPOList/No_gPOptions_fallbacks_to_0 241s === RUN TestAdsysGPOList/No_@_in_user_name_returns_the_same_thing 241s === RUN TestAdsysGPOList/Error_on_dangling_ticket_symlink 241s === RUN TestAdsysGPOList/Filter_user_only_GPOs 241s === RUN TestAdsysGPOList/Error_on_non_existent_account 241s === RUN TestAdsysGPOList/Error_on_KRB5CCNAME_unset 241s === RUN TestAdsysGPOList/Return_hierarchy 241s === RUN TestAdsysGPOList/Filter_machine_only_GPOs 241s === RUN TestAdsysGPOList/Error_on_user_requested_but_found_machine 241s === RUN TestAdsysGPOList/Multiple_GPOs_in_same_OU 241s === RUN TestAdsysGPOList/Fail_on_security_descriptor_access_failure 241s === RUN TestAdsysGPOList/Security_descriptor_access_denied_ignores_GPO 241s === RUN TestAdsysGPOList/Long_computer_name,_not_truncated 241s === RUN TestAdsysGPOList/Error_invalid_GPO_link 241s === RUN TestAdsysGPOList/Forced_GPO_and_blocked_inheritance 241s === RUN TestAdsysGPOList/No_GPO_on_OU_-_bytes 241s === RUN TestAdsysGPOList/Security_descriptor_accepted_is_for_another_user 241s === RUN TestAdsysGPOList/Error_on_unreachable_ldap_host 241s === RUN TestAdsysGPOList/Error_on_ldap_connection_refused 241s === RUN TestAdsysGPOList/Disabled_GPOs 241s === RUN TestAdsysGPOList/KRB5CCNAME_without_FILE:_is_supported_by_the_samba_bindings 241s === RUN TestAdsysGPOList/Error_on_no_network 241s === RUN TestAdsysGPOList/Error_on_machine_with_no_ldap 241s === RUN TestAdsysGPOList/Error_on_invalid_ticket 241s === RUN TestAdsysGPOList/Machine_GPOs 241s === RUN TestAdsysGPOList/Forced_GPO_are_first_by_reverse_order 241s === RUN TestAdsysGPOList/No_GPO_on_OU_-_string 241s --- PASS: TestAdsysGPOList (1.59s) 241s --- PASS: TestAdsysGPOList/Computers_truncated_at_15_characters (0.06s) 241s --- PASS: TestAdsysGPOList/Error_on_computer_requested_but_found_user (0.05s) 241s --- PASS: TestAdsysGPOList/Return_one_gpo (0.05s) 241s --- PASS: TestAdsysGPOList/Block_inheritance (0.05s) 241s --- PASS: TestAdsysGPOList/Security_descriptor_missing_ignores_GPO (0.05s) 241s --- PASS: TestAdsysGPOList/No_gPOptions_fallbacks_to_0 (0.05s) 241s --- PASS: TestAdsysGPOList/No_@_in_user_name_returns_the_same_thing (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_dangling_ticket_symlink (0.07s) 241s --- PASS: TestAdsysGPOList/Filter_user_only_GPOs (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_non_existent_account (0.06s) 241s --- PASS: TestAdsysGPOList/Error_on_KRB5CCNAME_unset (0.05s) 241s --- PASS: TestAdsysGPOList/Return_hierarchy (0.05s) 241s --- PASS: TestAdsysGPOList/Filter_machine_only_GPOs (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_user_requested_but_found_machine (0.05s) 241s --- PASS: TestAdsysGPOList/Multiple_GPOs_in_same_OU (0.05s) 241s --- PASS: TestAdsysGPOList/Fail_on_security_descriptor_access_failure (0.05s) 241s --- PASS: TestAdsysGPOList/Security_descriptor_access_denied_ignores_GPO (0.05s) 241s --- PASS: TestAdsysGPOList/Long_computer_name,_not_truncated (0.05s) 241s --- PASS: TestAdsysGPOList/Error_invalid_GPO_link (0.05s) 241s --- PASS: TestAdsysGPOList/Forced_GPO_and_blocked_inheritance (0.05s) 241s --- PASS: TestAdsysGPOList/No_GPO_on_OU_-_bytes (0.05s) 241s --- PASS: TestAdsysGPOList/Security_descriptor_accepted_is_for_another_user (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_unreachable_ldap_host (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_ldap_connection_refused (0.05s) 241s --- PASS: TestAdsysGPOList/Disabled_GPOs (0.05s) 241s --- PASS: TestAdsysGPOList/KRB5CCNAME_without_FILE:_is_supported_by_the_samba_bindings (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_no_network (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_machine_with_no_ldap (0.05s) 241s --- PASS: TestAdsysGPOList/Error_on_invalid_ticket (0.06s) 241s --- PASS: TestAdsysGPOList/Machine_GPOs (0.05s) 241s --- PASS: TestAdsysGPOList/Forced_GPO_are_first_by_reverse_order (0.05s) 241s --- PASS: TestAdsysGPOList/No_GPO_on_OU_-_string (0.05s) 241s === RUN TestGetPolicyDefinitions 241s === PAUSE TestGetPolicyDefinitions 241s === RUN TestTicketPath 241s krb5_test.go:23: Running subprocess with [/tmp/go-build3318534642/b566/ad.test -test.testlogfile=/tmp/go-build3318534642/b566/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true -test.run=TestTicketPath] 241s === RUN TestTicketPath 241s === RUN TestTicketPath/Allow_ccache_without_FILE_identifier 241s === RUN TestTicketPath/Error_when_ccache_not_present_on_disk 241s === RUN TestTicketPath/Error_when_ccache_is_a_directory 241s === RUN TestTicketPath/Error_when_initializing_context 241s === RUN TestTicketPath/Error_on_empty_ticket_path 241s === RUN TestTicketPath/Error_on_NULL_ticket_path 241s === RUN TestTicketPath/Error_on_non-FILE_ccache 241s === RUN TestTicketPath/Lookup_is_successful 241s --- PASS: TestTicketPath (0.01s) 241s --- PASS: TestTicketPath/Allow_ccache_without_FILE_identifier (0.00s) 241s --- PASS: TestTicketPath/Error_when_ccache_not_present_on_disk (0.00s) 241s --- PASS: TestTicketPath/Error_when_ccache_is_a_directory (0.00s) 241s --- PASS: TestTicketPath/Error_when_initializing_context (0.00s) 241s --- PASS: TestTicketPath/Error_on_empty_ticket_path (0.00s) 241s --- PASS: TestTicketPath/Error_on_NULL_ticket_path (0.00s) 241s --- PASS: TestTicketPath/Error_on_non-FILE_ccache (0.00s) 241s --- PASS: TestTicketPath/Lookup_is_successful (0.00s) 241s PASS 241s --- PASS: TestTicketPath (0.22s) 241s === CONT TestFetch 241s === RUN TestFetch/assets_are_updated_to_latest_version 241s === PAUSE TestFetch/assets_are_updated_to_latest_version 241s === RUN TestFetch/Error_missing_remote_GPT.INI 241s === PAUSE TestFetch/Error_missing_remote_GPT.INI 241s === RUN TestFetch/assets_is_a_file_is_not_downloaded 241s === PAUSE TestFetch/assets_is_a_file_is_not_downloaded 241s === RUN TestFetch/two_gpos,_one_more_recent,_one_new 241s === PAUSE TestFetch/two_gpos,_one_more_recent,_one_new 241s === RUN TestFetch/remote_version_entry_missing_treated_as_0 241s === PAUSE TestFetch/remote_version_entry_missing_treated_as_0 241s === RUN TestFetch/Error_remote_version_NaN 241s === PAUSE TestFetch/Error_remote_version_NaN 241s === RUN TestFetch/assets_are_not_updated_if_version_matches 241s === PAUSE TestFetch/assets_are_not_updated_if_version_matches 241s === RUN TestFetch/existing_assets_are_kept_if_no_assets_downloadable_provided 241s === PAUSE TestFetch/existing_assets_are_kept_if_no_assets_downloadable_provided 241s === RUN TestFetch/assets_are_not_updated_if_remote_version_matches,_with_non-standard_GPT.INI_casing 241s === PAUSE TestFetch/assets_are_not_updated_if_remote_version_matches,_with_non-standard_GPT.INI_casing 241s === RUN TestFetch/Error_keeps_downloading_other_GPOS 241s === PAUSE TestFetch/Error_keeps_downloading_other_GPOS 241s === RUN TestFetch/two_gpos,_one_should_be_refreshed,_one_new 241s === PAUSE TestFetch/two_gpos,_one_should_be_refreshed,_one_new 241s === RUN TestFetch/Local_gpo_redownloaded_on_NaN_version_in_GPT.INI 241s === PAUSE TestFetch/Local_gpo_redownloaded_on_NaN_version_in_GPT.INI 241s === RUN TestFetch/one_new_gpo 241s === PAUSE TestFetch/one_new_gpo 241s === RUN TestFetch/two_new_gpos 241s === PAUSE TestFetch/two_new_gpos 241s === RUN TestFetch/Local_gpo_redownloaded_on_version_entry_missing_in_GPT.INI 241s === PAUSE TestFetch/Local_gpo_redownloaded_on_version_entry_missing_in_GPT.INI 241s === RUN TestFetch/two_gpos,_one_more_recent,_one_up_to_date 241s === PAUSE TestFetch/two_gpos,_one_more_recent,_one_up_to_date 241s === RUN TestFetch/concurrent_different_gpos 241s === PAUSE TestFetch/concurrent_different_gpos 241s === RUN TestFetch/assets_root_directory_not_present_on_SYSVOL_issues_a_warning_only 241s === PAUSE TestFetch/assets_root_directory_not_present_on_SYSVOL_issues_a_warning_only 241s === RUN TestFetch/local_gpo_is_more_recent_than_AD_one 241s === PAUSE TestFetch/local_gpo_is_more_recent_than_AD_one 241s === RUN TestFetch/gpo_is_refreshed 241s === PAUSE TestFetch/gpo_is_refreshed 241s === RUN TestFetch/two_gpos,_one_more_recent,_one_should_be_refreshed 241s === PAUSE TestFetch/two_gpos,_one_more_recent,_one_should_be_refreshed 241s === RUN TestFetch/Local_gpo_redownloaded_on_missing_GPT.INI 241s === PAUSE TestFetch/Local_gpo_redownloaded_on_missing_GPT.INI 241s === RUN TestFetch/existing_assets_are_removed_if_not_present_on_SYSVOL 241s === PAUSE TestFetch/existing_assets_are_removed_if_not_present_on_SYSVOL 241s === RUN TestFetch/gpo_already_up_to_date 241s === PAUSE TestFetch/gpo_already_up_to_date 241s === RUN TestFetch/two_gpos,_one_already_up_to_date,_one_new 241s === PAUSE TestFetch/two_gpos,_one_already_up_to_date,_one_new 241s === RUN TestFetch/assets_only_are_downloaded 241s === PAUSE TestFetch/assets_only_are_downloaded 241s === RUN TestFetch/assets_are_not_updated_if_local_version_matches,_with_non-standard_GPT.INI_casing 241s === PAUSE TestFetch/assets_are_not_updated_if_local_version_matches,_with_non-standard_GPT.INI_casing 241s === RUN TestFetch/gpos_and_assets 241s === PAUSE TestFetch/gpos_and_assets 241s === RUN TestFetch/concurrent_same_gpos 241s === PAUSE TestFetch/concurrent_same_gpos 241s === RUN TestFetch/Error_unexistant_remote_gpo 241s === PAUSE TestFetch/Error_unexistant_remote_gpo 241s === RUN TestFetch/two_gpos,_one_already_up_to_date,_one_should_be_refreshed 241s === PAUSE TestFetch/two_gpos,_one_already_up_to_date,_one_should_be_refreshed 241s === RUN TestFetch/keep_existing_gpos_intact 241s === PAUSE TestFetch/keep_existing_gpos_intact 241s === CONT TestFetch/assets_are_updated_to_latest_version 241s === CONT TestGetPolicyDefinitions 241s === RUN TestGetPolicyDefinitions/Load_ADMX_and_ADML 241s === PAUSE TestGetPolicyDefinitions/Load_ADMX_and_ADML 241s === RUN TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_format 241s === PAUSE TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_format 241s === RUN TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_distro 241s === PAUSE TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_distro 241s === CONT TestGetPolicyDefinitions/Load_ADMX_and_ADML 241s === CONT TestFetch/Local_gpo_redownloaded_on_missing_GPT.INI 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:49Z" level=info msg="Downloading \"assets\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:49Z" level=info msg="Downloading \"gpo1-name\"" 241s === CONT TestNormalizeTargetName 241s === RUN TestNormalizeTargetName/One_user_without_explicit_domain_suffix 241s === PAUSE TestNormalizeTargetName/One_user_without_explicit_domain_suffix 241s === RUN TestNormalizeTargetName/Computer_in_uppercase_is_left_as_such 241s === PAUSE TestNormalizeTargetName/Computer_in_uppercase_is_left_as_such 241s === RUN TestNormalizeTargetName/Error_on_multiple_\_in_name 241s === PAUSE TestNormalizeTargetName/Error_on_multiple_\_in_name 241s === RUN TestNormalizeTargetName/Computer_name_without_objectClass 241s === PAUSE TestNormalizeTargetName/Computer_name_without_objectClass 241s === RUN TestNormalizeTargetName/User_name_fqdn_matching_computer 241s === PAUSE TestNormalizeTargetName/User_name_fqdn_matching_computer 241s === RUN TestNormalizeTargetName/One_valid_user 241s === PAUSE TestNormalizeTargetName/One_valid_user 241s === RUN TestNormalizeTargetName/One_valid_user_with_mixed_case 241s === PAUSE TestNormalizeTargetName/One_valid_user_with_mixed_case 241s === RUN TestNormalizeTargetName/One_valid_user_with_domain\user 241s === PAUSE TestNormalizeTargetName/One_valid_user_with_domain\user 241s === RUN TestNormalizeTargetName/Computer_is_left_as_such 241s === PAUSE TestNormalizeTargetName/Computer_is_left_as_such 241s === RUN TestNormalizeTargetName/Computer_with_@_is_left_as_such 241s === PAUSE TestNormalizeTargetName/Computer_with_@_is_left_as_such 241s === RUN TestNormalizeTargetName/Error_on_no_default_domain_suffix_and_no_fqdn_user 241s === PAUSE TestNormalizeTargetName/Error_on_no_default_domain_suffix_and_no_fqdn_user 241s === RUN TestNormalizeTargetName/User_name_matching_computer,_setting_as_user 241s === PAUSE TestNormalizeTargetName/User_name_matching_computer,_setting_as_user 241s === CONT TestGetInfo 241s === RUN TestGetInfo/Info_reported_from_backend,_online 241s === PAUSE TestGetInfo/Info_reported_from_backend,_online 241s === RUN TestGetInfo/Info_reported_from_backend,_offline 241s === PAUSE TestGetInfo/Info_reported_from_backend,_offline 241s === RUN TestGetInfo/Report_unknown_state_if_IsOnline_calls_fail 241s === PAUSE TestGetInfo/Report_unknown_state_if_IsOnline_calls_fail 241s === RUN TestGetInfo/Report_unknown_state_if_ServerFQDN_calls_fail 241s === PAUSE TestGetInfo/Report_unknown_state_if_ServerFQDN_calls_fail 241s === CONT TestListUsers 241s === RUN TestListUsers/Machines_are_ignored,_from_policy_cache 241s === PAUSE TestListUsers/Machines_are_ignored,_from_policy_cache 241s === RUN TestListUsers/Machine_Only 241s === PAUSE TestListUsers/Machine_Only 241s === RUN TestListUsers/One_user,_from_policy_cache 241s === PAUSE TestListUsers/One_user,_from_policy_cache 241s === RUN TestListUsers/Two_users 241s === PAUSE TestListUsers/Two_users 241s === RUN TestListUsers/None 241s === PAUSE TestListUsers/None 241s === RUN TestListUsers/Machines_are_ignored 241s === PAUSE TestListUsers/Machines_are_ignored 241s === RUN TestListUsers/Error_on_policy_cache_directory_not_existing 241s === PAUSE TestListUsers/Error_on_policy_cache_directory_not_existing 241s === RUN TestListUsers/Two_users,_dangling_symlink_for_one 241s === PAUSE TestListUsers/Two_users,_dangling_symlink_for_one 241s === RUN TestListUsers/None,_from_policy_cache 241s === PAUSE TestListUsers/None,_from_policy_cache 241s === RUN TestListUsers/Machine_Only,_from_policy_cache 241s === PAUSE TestListUsers/Machine_Only,_from_policy_cache 241s === RUN TestListUsers/Ticket_cache_ignored_if_policy_cache_is_requested 241s === PAUSE TestListUsers/Ticket_cache_ignored_if_policy_cache_is_requested 241s === RUN TestListUsers/Error_on_Krb5_directory_not_existing 241s === PAUSE TestListUsers/Error_on_Krb5_directory_not_existing 241s === RUN TestListUsers/One_user 241s === PAUSE TestListUsers/One_user 241s === RUN TestListUsers/Two_users,_from_policy_cache 241s === PAUSE TestListUsers/Two_users,_from_policy_cache 241s === CONT TestGetPoliciesConcurrently 241s === RUN TestGetPoliciesConcurrently/One_machine,_one_user 241s === PAUSE TestGetPoliciesConcurrently/One_machine,_one_user 241s === RUN TestGetPoliciesConcurrently/Machine_requested_twice_at_the_same_time 241s === PAUSE TestGetPoliciesConcurrently/Machine_requested_twice_at_the_same_time 241s === RUN TestGetPoliciesConcurrently/Same_user,_same_GPO 241s === PAUSE TestGetPoliciesConcurrently/Same_user,_same_GPO 241s === RUN TestGetPoliciesConcurrently/Different_users,_same_GPO 241s === PAUSE TestGetPoliciesConcurrently/Different_users,_same_GPO 241s === RUN TestGetPoliciesConcurrently/Different_users,_different_GPO 241s === PAUSE TestGetPoliciesConcurrently/Different_users,_different_GPO 241s === CONT TestGetPoliciesWorkflows 241s === RUN TestGetPoliciesWorkflows/Second_call_after_service_restarted 241s === PAUSE TestGetPoliciesWorkflows/Second_call_after_service_restarted 241s === RUN TestGetPoliciesWorkflows/Second_call_with_different_user 241s === PAUSE TestGetPoliciesWorkflows/Second_call_with_different_user 241s === RUN TestGetPoliciesWorkflows/Second_machine_call_after_service_restarted 241s === PAUSE TestGetPoliciesWorkflows/Second_machine_call_after_service_restarted 241s === RUN TestGetPoliciesWorkflows/Second_machine_call_after_a_restart 241s === PAUSE TestGetPoliciesWorkflows/Second_machine_call_after_a_restart 241s === RUN TestGetPoliciesWorkflows/Second_call_is_a_refresh_(without_Krb5CCName_specified) 241s === PAUSE TestGetPoliciesWorkflows/Second_call_is_a_refresh_(without_Krb5CCName_specified) 241s === RUN TestGetPoliciesWorkflows/Second_call_after_a_relogin 241s === PAUSE TestGetPoliciesWorkflows/Second_call_after_a_relogin 241s === RUN TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_refreshes_ticket_copy_if_needed 241s === PAUSE TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_refreshes_ticket_copy_if_needed 241s === RUN TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_replaces_previous_symlinks_in_the_original_path 241s === PAUSE TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_replaces_previous_symlinks_in_the_original_path 241s === RUN TestGetPoliciesWorkflows/Second_machine_call_is_a_refresh_(without_Krb5CCName_specified) 241s === PAUSE TestGetPoliciesWorkflows/Second_machine_call_is_a_refresh_(without_Krb5CCName_specified) 241s === CONT TestGetPoliciesOffline 241s === RUN TestGetPoliciesOffline/Offline,_with_assets 241s === PAUSE TestGetPoliciesOffline/Offline,_with_assets 241s === RUN TestGetPoliciesOffline/Error_on_SSSD_reports_online,_but_we_are_actually_offline_when_fetching_gpo_list,_even_with_a_cache 241s === PAUSE TestGetPoliciesOffline/Error_on_SSSD_reports_online,_but_we_are_actually_offline_when_fetching_gpo_list,_even_with_a_cache 241s === RUN TestGetPoliciesOffline/Offline,_get_from_cache,_gpo_only 241s === PAUSE TestGetPoliciesOffline/Offline,_get_from_cache,_gpo_only 241s === RUN TestGetPoliciesOffline/Offline,_get_from_cache,_with_assets 241s === PAUSE TestGetPoliciesOffline/Offline,_get_from_cache,_with_assets 241s === RUN TestGetPoliciesOffline/Error_offline_with_no_cache 241s === PAUSE TestGetPoliciesOffline/Error_offline_with_no_cache 241s === RUN TestGetPoliciesOffline/Offline,_ensure_we_fetch_from_cache_and_not_fetch_GPO_list 241s === PAUSE TestGetPoliciesOffline/Offline,_ensure_we_fetch_from_cache_and_not_fetch_GPO_list 241s === CONT TestGetPolicies 241s === RUN TestGetPolicies/Assets_directory_being_a_file_cleanup_local_existing_assets_and_its_db 241s === PAUSE TestGetPolicies/Assets_directory_being_a_file_cleanup_local_existing_assets_and_its_db 241s === RUN TestGetPolicies/No_override_for_this_release,_takes_default_value 241s === PAUSE TestGetPolicies/No_override_for_this_release,_takes_default_value 241s === RUN TestGetPolicies/User_policy_Registry.pol_is_lower_case 241s === PAUSE TestGetPolicies/User_policy_Registry.pol_is_lower_case 241s === RUN TestGetPolicies/Without_previous_call,_needs_userKrb5CCBaseName 241s === PAUSE TestGetPolicies/Without_previous_call,_needs_userKrb5CCBaseName 241s === RUN TestGetPolicies/Error_on_backend_IsOnline_call_failed 241s === PAUSE TestGetPolicies/Error_on_backend_IsOnline_call_failed 241s === RUN TestGetPolicies/Standard_policy,_computer_object 241s === PAUSE TestGetPolicies/Standard_policy,_computer_object 241s === RUN TestGetPolicies/Local_assets_and_its_db_are_removed_if_not_present_anymore_on_AD_sysvol 241s === PAUSE TestGetPolicies/Local_assets_and_its_db_are_removed_if_not_present_anymore_on_AD_sysvol 241s === RUN TestGetPolicies/Assets_can’t_be_downloaded_without_GPO 241s === PAUSE TestGetPolicies/Assets_can’t_be_downloaded_without_GPO 241s === RUN TestGetPolicies/Disabled_override 241s === PAUSE TestGetPolicies/Disabled_override 241s === RUN TestGetPolicies/Enabled_override_for_matching_release,_other_releases_override_ignored 241s === PAUSE TestGetPolicies/Enabled_override_for_matching_release,_other_releases_override_ignored 241s === RUN TestGetPolicies/Unexisting_CC_original_file_for_user 241s === PAUSE TestGetPolicies/Unexisting_CC_original_file_for_user 241s === RUN TestGetPolicies/Same_key_in_different_domains_are_kept_separated 241s === PAUSE TestGetPolicies/Same_key_in_different_domains_are_kept_separated 241s === RUN TestGetPolicies/Corrupted_policy_file 241s === PAUSE TestGetPolicies/Corrupted_policy_file 241s === RUN TestGetPolicies/Policy_can’t_be_downloaded 241s === PAUSE TestGetPolicies/Policy_can’t_be_downloaded 241s === RUN TestGetPolicies/Two_policies,_with_reversed_overrides 241s === PAUSE TestGetPolicies/Two_policies,_with_reversed_overrides 241s === RUN TestGetPolicies/Two_policies,_no_overrides,_one_is_not_the_same_object_type,_machine_ones_are_empty_when_parsing_user 241s === PAUSE TestGetPolicies/Two_policies,_no_overrides,_one_is_not_the_same_object_type,_machine_ones_are_empty_when_parsing_user 241s === RUN TestGetPolicies/Include_non_Ubuntu_keys_used_to_configure_certificate_autoenrollment 241s === PAUSE TestGetPolicies/Include_non_Ubuntu_keys_used_to_configure_certificate_autoenrollment 241s === RUN TestGetPolicies/Ignore_errors_on_non_Ubuntu_keys 241s === PAUSE TestGetPolicies/Ignore_errors_on_non_Ubuntu_keys 241s === RUN TestGetPolicies/Computer_policy_Registry.pol_is_lower_case 241s === PAUSE TestGetPolicies/Computer_policy_Registry.pol_is_lower_case 241s === RUN TestGetPolicies/Error_on_user_without_@_in_name 241s === PAUSE TestGetPolicies/Error_on_user_without_@_in_name 241s === RUN TestGetPolicies/User_only_policy,_computer_object,_policy_is_empty 241s === PAUSE TestGetPolicies/User_only_policy,_computer_object,_policy_is_empty 241s === RUN TestGetPolicies/Disable_override_for_matching_release,_other_releases_override_ignored 241s === PAUSE TestGetPolicies/Disable_override_for_matching_release,_other_releases_override_ignored 241s === RUN TestGetPolicies/Disabled_value_is_overridden 241s === PAUSE TestGetPolicies/Disabled_value_is_overridden 241s === RUN TestGetPolicies/More_policies,_with_multiple_overrides 241s === PAUSE TestGetPolicies/More_policies,_with_multiple_overrides 241s === RUN TestGetPolicies/Error_on_backend_ServerFQDN_call_failed 241s === PAUSE TestGetPolicies/Error_on_backend_ServerFQDN_call_failed 241s === RUN TestGetPolicies/Empty_value_for_unfiltered_entry 241s === PAUSE TestGetPolicies/Empty_value_for_unfiltered_entry 241s === RUN TestGetPolicies/Computer_policy_Registry.pol_is_mixed_case 241s === PAUSE TestGetPolicies/Computer_policy_Registry.pol_is_mixed_case 241s === RUN TestGetPolicies/Unsupported_type_for_unfiltered_entry 241s === PAUSE TestGetPolicies/Unsupported_type_for_unfiltered_entry 241s === RUN TestGetPolicies/Standard_policy,_user_object 241s === PAUSE TestGetPolicies/Standard_policy,_user_object 241s === RUN TestGetPolicies/Standard_policy_with_assets,_existing_assets_are_reattached_if_not_refreshed 241s === PAUSE TestGetPolicies/Standard_policy_with_assets,_existing_assets_are_reattached_if_not_refreshed 241s === RUN TestGetPolicies/Two_policies,_with_overrides 241s === PAUSE TestGetPolicies/Two_policies,_with_overrides 241s === RUN TestGetPolicies/Disabled_value_overrides_non_disabled_one 241s === PAUSE TestGetPolicies/Disabled_value_overrides_non_disabled_one 241s === RUN TestGetPolicies/Policy_user_directory_is_uppercase 241s === PAUSE TestGetPolicies/Policy_user_directory_is_uppercase 241s === RUN TestGetPolicies/User_policy_Registry.pol_is_mixed_case 241s === PAUSE TestGetPolicies/User_policy_Registry.pol_is_mixed_case 241s === RUN TestGetPolicies/Symlinks_can’t_be_created 241s === PAUSE TestGetPolicies/Symlinks_can’t_be_created 241s === RUN TestGetPolicies/Computer_only_policy,_user_object,_policy_is_empty 241s === PAUSE TestGetPolicies/Computer_only_policy,_user_object,_policy_is_empty 241s === RUN TestGetPolicies/Standard_policy_with_assets,_downloads_assets 241s === PAUSE TestGetPolicies/Standard_policy_with_assets,_downloads_assets 241s === RUN TestGetPolicies/Multiple_domains,_same_GPO 241s === PAUSE TestGetPolicies/Multiple_domains,_same_GPO 241s === RUN TestGetPolicies/Two_policies,_no_overrides 241s === PAUSE TestGetPolicies/Two_policies,_no_overrides 241s === RUN TestGetPolicies/Two_policies,_no_overrides,_reversed 241s === PAUSE TestGetPolicies/Two_policies,_no_overrides,_reversed 241s === RUN TestGetPolicies/Unexisting_CC_original_file_for_machine 241s === PAUSE TestGetPolicies/Unexisting_CC_original_file_for_machine 241s === RUN TestGetPolicies/Machine_doesn’t_match 241s === PAUSE TestGetPolicies/Machine_doesn’t_match 241s === RUN TestGetPolicies/Error_on_backend_HostKrb5CCName_call_failed 241s === PAUSE TestGetPolicies/Error_on_backend_HostKrb5CCName_call_failed 241s === RUN TestGetPolicies/User_only_policy,_user_object 241s === PAUSE TestGetPolicies/User_only_policy,_user_object 241s === RUN TestGetPolicies/Enabled_override 241s === PAUSE TestGetPolicies/Enabled_override 241s === RUN TestGetPolicies/Filter_non_Ubuntu_keys 241s === PAUSE TestGetPolicies/Filter_non_Ubuntu_keys 241s === RUN TestGetPolicies/Policy_machine_directory_is_uppercase 241s === PAUSE TestGetPolicies/Policy_machine_directory_is_uppercase 241s === RUN TestGetPolicies/Policy_user_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed 241s === PAUSE TestGetPolicies/Policy_user_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed 241s === RUN TestGetPolicies/Policy_machine_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed 241s === PAUSE TestGetPolicies/Policy_machine_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed 241s === CONT TestNew 241s === RUN TestNew/error_on_backend_ServerFQDN_random_failure 241s === PAUSE TestNew/error_on_backend_ServerFQDN_random_failure 241s === RUN TestNew/create_KRB5_and_Sysvol_cache_directory 241s === PAUSE TestNew/create_KRB5_and_Sysvol_cache_directory 241s === RUN TestNew/failed_to_create_KRB5_cache_directory 241s === PAUSE TestNew/failed_to_create_KRB5_cache_directory 241s === RUN TestNew/failed_to_create_Sysvol_cache_directory 241s === PAUSE TestNew/failed_to_create_Sysvol_cache_directory 241s === RUN TestNew/failed_to_create_Policies_cache_directory 241s === PAUSE TestNew/failed_to_create_Policies_cache_directory 241s === RUN TestNew/no_active_server_in_backend_does_not_fail_ad_creation 241s === PAUSE TestNew/no_active_server_in_backend_does_not_fail_ad_creation 241s === CONT TestParseGPOConcurrent 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s === CONT TestFetchOneGPOWhileParsingItConcurrently 241s time="2025-10-31T03:46:49Z" level=info msg="Downloading \"standard-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:49Z" level=info msg="Downloading \"standard-name\"" 241s --- PASS: TestFetchOneGPOWhileParsingItConcurrently (0.04s) 241s === CONT TestFetchTweakSysvolCacheDir 241s === RUN TestFetchTweakSysvolCacheDir/SysvolCacheDir_doesn't_exist 241s === PAUSE TestFetchTweakSysvolCacheDir/SysvolCacheDir_doesn't_exist 241s === RUN TestFetchTweakSysvolCacheDir/SysvolCacheDir_is_read_only 241s === PAUSE TestFetchTweakSysvolCacheDir/SysvolCacheDir_is_read_only 241s === CONT TestFetchWithUnreadableFile 241s === RUN TestFetchWithUnreadableFile/without_gpo_initially_don’t_commit_new_partial_GPO 241s === PAUSE TestFetchWithUnreadableFile/without_gpo_initially_don’t_commit_new_partial_GPO 241s === RUN TestFetchWithUnreadableFile/existing_gpo_is_preserved 241s === PAUSE TestFetchWithUnreadableFile/existing_gpo_is_preserved 241s === CONT TestFetch/keep_existing_gpos_intact 241s --- PASS: TestParseGPOConcurrent (0.29s) 241s === CONT TestFetch/two_gpos,_one_already_up_to_date,_one_should_be_refreshed 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:49Z" level=info msg="GPO \"gpo1-name\" is already up to date" 241s === CONT TestFetch/Error_unexistant_remote_gpo 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:49Z" level=info msg="Downloading \"gpo1-name\"" 241s time="2025-10-31T03:46:49Z" level=info msg="GPO \"gpo2-name\" is already up to date" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s === CONT TestFetch/concurrent_same_gpos 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:49Z" level=info msg="Downloading \"gpo1-name\"" 241s === CONT TestFetch/gpos_and_assets 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"assets\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo1-name\" is already up to date" 241s === CONT TestFetch/assets_are_not_updated_if_local_version_matches,_with_non-standard_GPT.INI_casing 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Assets directory is already up to date" 241s === CONT TestFetch/assets_only_are_downloaded 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"assets\"" 241s === CONT TestFetch/two_gpos,_one_already_up_to_date,_one_new 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo1-name\" is already up to date" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo2-name\"" 241s === CONT TestFetch/gpo_already_up_to_date 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo1-name\" is already up to date" 241s === CONT TestFetch/existing_assets_are_removed_if_not_present_on_SYSVOL 241s === CONT TestFetch/two_gpos,_one_should_be_refreshed,_one_new 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s === CONT TestFetch/two_gpos,_one_more_recent,_one_should_be_refreshed 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo2-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo2-name\" is already up to date" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s === CONT TestFetch/gpo_is_refreshed 241s === CONT TestFetch/local_gpo_is_more_recent_than_AD_one 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo2-name\" is already up to date" 241s === CONT TestFetch/assets_root_directory_not_present_on_SYSVOL_issues_a_warning_only 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s === CONT TestFetch/concurrent_different_gpos 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo2-name\"" 241s === CONT TestFetch/two_gpos,_one_more_recent,_one_up_to_date 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo2-name\" is already up to date" 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo1-name\" is already up to date" 241s === CONT TestFetch/Local_gpo_redownloaded_on_version_entry_missing_in_GPT.INI 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="No version key found in GPT.INI for gpo1-name, assuming 0" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s === CONT TestFetch/two_new_gpos 241s === CONT TestFetch/one_new_gpo 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo2-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s === CONT TestFetch/Local_gpo_redownloaded_on_NaN_version_in_GPT.INI 241s time="2025-10-31T03:46:50Z" level=warning msg="Invalid local GPT.INI for gpo1-name: invalid remote GPT.INI: strconv.ParseInt: parsing \"NaN\": invalid syntax\nDownloading it again…" 241s === CONT TestFetch/remote_version_entry_missing_treated_as_0 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="No version key found in GPT.INI for gpt_ini_version_missing-name, assuming 0" 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpt_ini_version_missing-name\" is already up to date" 241s === CONT TestFetch/Error_keeps_downloading_other_GPOS 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo2-name\"" 241s === CONT TestFetch/assets_are_not_updated_if_remote_version_matches,_with_non-standard_GPT.INI_casing 241s === CONT TestFetch/existing_assets_are_kept_if_no_assets_downloadable_provided 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s === CONT TestFetch/assets_are_not_updated_if_version_matches 241s time="2025-10-31T03:46:50Z" level=info msg="Assets directory is already up to date" 241s === CONT TestFetch/Error_remote_version_NaN 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Assets directory is already up to date" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s === CONT TestFetch/Error_missing_remote_GPT.INI 241s === CONT TestFetch/two_gpos,_one_more_recent,_one_new 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s === CONT TestFetch/assets_is_a_file_is_not_downloaded 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"gpo1-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="GPO \"gpo2-name\" is already up to date" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s === CONT TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_distro 241s === CONT TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_format 241s --- PASS: TestGetPolicyDefinitions (0.00s) 241s --- PASS: TestGetPolicyDefinitions/Load_ADMX_and_ADML (0.01s) 241s --- PASS: TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_distro (0.00s) 241s --- PASS: TestGetPolicyDefinitions/ADMX_and_ADML_does_not_exist_for_this_format (0.00s) 241s === CONT TestNormalizeTargetName/One_user_without_explicit_domain_suffix 241s === CONT TestGetInfo/Info_reported_from_backend,_online 241s === CONT TestNormalizeTargetName/User_name_matching_computer,_setting_as_user 241s === CONT TestNormalizeTargetName/Error_on_no_default_domain_suffix_and_no_fqdn_user 241s === CONT TestNormalizeTargetName/Computer_with_@_is_left_as_such 241s === CONT TestNormalizeTargetName/Computer_is_left_as_such 241s === CONT TestNormalizeTargetName/One_valid_user_with_domain\user 241s === CONT TestNormalizeTargetName/One_valid_user_with_mixed_case 241s === CONT TestNormalizeTargetName/One_valid_user 241s === CONT TestNormalizeTargetName/User_name_fqdn_matching_computer 241s === CONT TestNormalizeTargetName/Computer_name_without_objectClass 241s === CONT TestNormalizeTargetName/Error_on_multiple_\_in_name 241s === CONT TestNormalizeTargetName/Computer_in_uppercase_is_left_as_such 241s === CONT TestGetInfo/Report_unknown_state_if_IsOnline_calls_fail 241s time="2025-10-31T03:46:50Z" level=warning msg="IsOnline returned an error" 241s === CONT TestGetInfo/Report_unknown_state_if_ServerFQDN_calls_fail 241s === CONT TestGetInfo/Info_reported_from_backend,_offline 241s --- PASS: TestNormalizeTargetName (0.00s) 241s --- PASS: TestNormalizeTargetName/One_user_without_explicit_domain_suffix (0.00s) 241s --- PASS: TestNormalizeTargetName/User_name_matching_computer,_setting_as_user (0.00s) 241s --- PASS: TestNormalizeTargetName/Error_on_no_default_domain_suffix_and_no_fqdn_user (0.00s) 241s --- PASS: TestNormalizeTargetName/Computer_with_@_is_left_as_such (0.00s) 241s --- PASS: TestNormalizeTargetName/Computer_is_left_as_such (0.00s) 241s --- PASS: TestNormalizeTargetName/One_valid_user_with_domain\user (0.00s) 241s --- PASS: TestNormalizeTargetName/One_valid_user_with_mixed_case (0.00s) 241s --- PASS: TestNormalizeTargetName/One_valid_user (0.00s) 241s --- PASS: TestNormalizeTargetName/User_name_fqdn_matching_computer (0.00s) 241s --- PASS: TestNormalizeTargetName/Computer_name_without_objectClass (0.00s) 241s --- PASS: TestNormalizeTargetName/Error_on_multiple_\_in_name (0.00s) 241s --- PASS: TestNormalizeTargetName/Computer_in_uppercase_is_left_as_such (0.00s) 241s --- PASS: TestGetInfo (0.00s) 241s --- PASS: TestGetInfo/Info_reported_from_backend,_online (0.00s) 241s --- PASS: TestGetInfo/Report_unknown_state_if_IsOnline_calls_fail (0.00s) 241s --- PASS: TestGetInfo/Report_unknown_state_if_ServerFQDN_calls_fail (0.00s) 241s --- PASS: TestGetInfo/Info_reported_from_backend,_offline (0.00s) 241s === CONT TestListUsers/Machines_are_ignored,_from_policy_cache 241s === CONT TestListUsers/Two_users,_dangling_symlink_for_one 241s === CONT TestListUsers/Two_users,_from_policy_cache 241s === CONT TestListUsers/One_user 241s === CONT TestListUsers/Error_on_Krb5_directory_not_existing 241s === CONT TestListUsers/Ticket_cache_ignored_if_policy_cache_is_requested 241s --- PASS: TestFetch (0.00s) 241s --- PASS: TestFetch/assets_are_updated_to_latest_version (0.08s) 241s --- PASS: TestFetch/Local_gpo_redownloaded_on_missing_GPT.INI (0.11s) 241s --- PASS: TestFetch/keep_existing_gpos_intact (0.21s) 241s --- PASS: TestFetch/Error_unexistant_remote_gpo (0.02s) 241s --- PASS: TestFetch/two_gpos,_one_already_up_to_date,_one_should_be_refreshed (0.08s) 241s --- PASS: TestFetch/concurrent_same_gpos (0.08s) 241s --- PASS: TestFetch/assets_are_not_updated_if_local_version_matches,_with_non-standard_GPT.INI_casing (0.03s) 241s --- PASS: TestFetch/gpos_and_assets (0.11s) 241s --- PASS: TestFetch/assets_only_are_downloaded (0.06s) 241s --- PASS: TestFetch/gpo_already_up_to_date (0.02s) 241s --- PASS: TestFetch/two_gpos,_one_already_up_to_date,_one_new (0.07s) 241s --- PASS: TestFetch/existing_assets_are_removed_if_not_present_on_SYSVOL (0.05s) 241s --- PASS: TestFetch/two_gpos,_one_should_be_refreshed,_one_new (0.13s) 241s --- PASS: TestFetch/two_gpos,_one_more_recent,_one_should_be_refreshed (0.10s) 241s --- PASS: TestFetch/local_gpo_is_more_recent_than_AD_one (0.04s) 241s --- PASS: TestFetch/assets_root_directory_not_present_on_SYSVOL_issues_a_warning_only (0.02s) 241s --- PASS: TestFetch/gpo_is_refreshed (0.10s) 241s --- PASS: TestFetch/two_gpos,_one_more_recent,_one_up_to_date (0.04s) 241s --- PASS: TestFetch/concurrent_different_gpos (0.15s) 241s --- PASS: TestFetch/Local_gpo_redownloaded_on_version_entry_missing_in_GPT.INI (0.08s) 241s --- PASS: TestFetch/two_new_gpos (0.08s) 241s --- PASS: TestFetch/one_new_gpo (0.08s) 241s --- PASS: TestFetch/remote_version_entry_missing_treated_as_0 (0.03s) 241s --- PASS: TestFetch/Local_gpo_redownloaded_on_NaN_version_in_GPT.INI (0.08s) 241s --- PASS: TestFetch/Error_keeps_downloading_other_GPOS (0.06s) 241s --- PASS: TestFetch/existing_assets_are_kept_if_no_assets_downloadable_provided (0.01s) 241s --- PASS: TestFetch/assets_are_not_updated_if_remote_version_matches,_with_non-standard_GPT.INI_casing (0.03s) 241s --- PASS: TestFetch/Error_remote_version_NaN (0.02s) 241s --- PASS: TestFetch/assets_are_not_updated_if_version_matches (0.04s) 241s --- PASS: TestFetch/Error_missing_remote_GPT.INI (0.02s) 241s --- PASS: TestFetch/assets_is_a_file_is_not_downloaded (0.03s) 241s --- PASS: TestFetch/two_gpos,_one_more_recent,_one_new (0.08s) 241s === CONT TestListUsers/Machine_Only,_from_policy_cache 241s === CONT TestListUsers/None,_from_policy_cache 241s === CONT TestListUsers/Error_on_policy_cache_directory_not_existing 241s === CONT TestListUsers/None 241s === CONT TestListUsers/Machines_are_ignored 241s === CONT TestListUsers/One_user,_from_policy_cache 241s === CONT TestListUsers/Two_users 241s === CONT TestListUsers/Machine_Only 241s === CONT TestGetPoliciesConcurrently/One_machine,_one_user 241s --- PASS: TestListUsers (0.00s) 241s --- PASS: TestListUsers/Machines_are_ignored,_from_policy_cache (0.00s) 241s --- PASS: TestListUsers/Two_users,_dangling_symlink_for_one (0.00s) 241s --- PASS: TestListUsers/Two_users,_from_policy_cache (0.00s) 241s --- PASS: TestListUsers/One_user (0.00s) 241s --- PASS: TestListUsers/Error_on_Krb5_directory_not_existing (0.01s) 241s --- PASS: TestListUsers/Machine_Only,_from_policy_cache (0.00s) 241s --- PASS: TestListUsers/Ticket_cache_ignored_if_policy_cache_is_requested (0.01s) 241s --- PASS: TestListUsers/None,_from_policy_cache (0.00s) 241s --- PASS: TestListUsers/None (0.00s) 241s --- PASS: TestListUsers/Error_on_policy_cache_directory_not_existing (0.00s) 241s --- PASS: TestListUsers/One_user,_from_policy_cache (0.00s) 241s --- PASS: TestListUsers/Two_users (0.00s) 241s --- PASS: TestListUsers/Machine_Only (0.00s) 241s --- PASS: TestListUsers/Machines_are_ignored (0.00s) 241s === CONT TestGetPoliciesConcurrently/Different_users,_different_GPO 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:50Z" level=info msg="Downloading \"assets\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"one-value-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s === CONT TestGetPoliciesConcurrently/Different_users,_same_GPO 241s === CONT TestGetPoliciesConcurrently/Same_user,_same_GPO 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s === CONT TestGetPoliciesConcurrently/Machine_requested_twice_at_the_same_time 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s === CONT TestGetPoliciesWorkflows/Second_call_after_service_restarted 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s === CONT TestGetPoliciesOffline/Offline,_with_assets 241s --- PASS: TestGetPoliciesConcurrently (0.00s) 241s --- PASS: TestGetPoliciesConcurrently/One_machine,_one_user (0.25s) 241s --- PASS: TestGetPoliciesConcurrently/Different_users,_different_GPO (0.26s) 241s --- PASS: TestGetPoliciesConcurrently/Different_users,_same_GPO (0.20s) 241s --- PASS: TestGetPoliciesConcurrently/Same_user,_same_GPO (0.20s) 241s --- PASS: TestGetPoliciesConcurrently/Machine_requested_twice_at_the_same_time (0.28s) 241s === CONT TestGetPoliciesWorkflows/Second_machine_call_is_a_refresh_(without_Krb5CCName_specified) 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Can't reach AD: machine is offline and \"useroffline@ASSETSANDGPO.COM\" policies are applied using previous online update" 241s === CONT TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_replaces_previous_symlinks_in_the_original_path 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s === CONT TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_refreshes_ticket_copy_if_needed 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:51Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:51Z" level=info msg="GPO \"standard-name\" is already up to date" 241s === CONT TestGetPoliciesWorkflows/Second_call_after_a_relogin 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Assets directory is already up to date" 241s === CONT TestGetPoliciesWorkflows/Second_call_is_a_refresh_(without_Krb5CCName_specified) 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="GPO \"standard-name\" is already up to date" 241s === CONT TestGetPoliciesWorkflows/Second_machine_call_after_a_restart 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:52Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="Assets directory is already up to date" 241s === CONT TestGetPoliciesWorkflows/Second_machine_call_after_service_restarted 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="GPO \"standard-name\" is already up to date" 241s === CONT TestGetPoliciesWorkflows/Second_call_with_different_user 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s === CONT TestGetPoliciesOffline/Offline,_ensure_we_fetch_from_cache_and_not_fetch_GPO_list 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="GPO \"standard-name\" is already up to date" 241s time="2025-10-31T03:46:52Z" level=info msg="Assets directory is already up to date" 241s === CONT TestGetPoliciesOffline/Error_offline_with_no_cache 241s --- PASS: TestGetPoliciesWorkflows (0.00s) 241s --- PASS: TestGetPoliciesWorkflows/Second_call_after_service_restarted (0.25s) 241s --- PASS: TestGetPoliciesWorkflows/Second_machine_call_is_a_refresh_(without_Krb5CCName_specified) (0.30s) 241s --- PASS: TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_replaces_previous_symlinks_in_the_original_path (0.23s) 241s --- PASS: TestGetPoliciesWorkflows/Second_call_without_Krb5CCName_refreshes_ticket_copy_if_needed (0.23s) 241s --- PASS: TestGetPoliciesWorkflows/Second_call_after_a_relogin (0.23s) 241s --- PASS: TestGetPoliciesWorkflows/Second_call_is_a_refresh_(without_Krb5CCName_specified) (0.25s) 241s --- PASS: TestGetPoliciesWorkflows/Second_machine_call_after_a_restart (0.29s) 241s --- PASS: TestGetPoliciesWorkflows/Second_machine_call_after_service_restarted (0.28s) 241s --- PASS: TestGetPoliciesWorkflows/Second_call_with_different_user (0.23s) 241s === CONT TestGetPoliciesOffline/Offline,_get_from_cache,_with_assets 241s time="2025-10-31T03:46:52Z" level=info msg="Can't reach AD: machine is offline and \"useroffline@GPOONLY.COM\" policies are applied using previous online update" 241s === CONT TestGetPoliciesOffline/Offline,_get_from_cache,_gpo_only 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Can't reach AD: machine is offline and \"useroffline@GPOONLY.COM\" policies are applied using previous online update" 241s === CONT TestGetPoliciesOffline/Error_on_SSSD_reports_online,_but_we_are_actually_offline_when_fetching_gpo_list,_even_with_a_cache 241s time="2025-10-31T03:46:52Z" level=info msg="Can't reach AD: machine is offline and \"useroffline@ASSETSANDGPO.COM\" policies are applied using previous online update" 241s === CONT TestGetPolicies/Assets_directory_being_a_file_cleanup_local_existing_assets_and_its_db 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:52Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:52Z" level=info msg="Downloading \"standard-name\"" 241s === CONT TestGetPolicies/Empty_value_for_unfiltered_entry 241s --- PASS: TestGetPoliciesOffline (0.00s) 241s --- PASS: TestGetPoliciesOffline/Offline,_with_assets (0.19s) 241s --- PASS: TestGetPoliciesOffline/Error_offline_with_no_cache (0.01s) 241s --- PASS: TestGetPoliciesOffline/Offline,_ensure_we_fetch_from_cache_and_not_fetch_GPO_list (0.12s) 241s --- PASS: TestGetPoliciesOffline/Offline,_get_from_cache,_gpo_only (0.15s) 241s --- PASS: TestGetPoliciesOffline/Offline,_get_from_cache,_with_assets (0.18s) 241s --- PASS: TestGetPoliciesOffline/Error_on_SSSD_reports_online,_but_we_are_actually_offline_when_fetching_gpo_list,_even_with_a_cache (0.21s) 241s === CONT TestGetPolicies/Policy_machine_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"empty-value-name\"" 241s === CONT TestGetPolicies/Policy_user_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"lowercase-class-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"lowercase-class-name\"" 241s === CONT TestGetPolicies/Policy_machine_directory_is_uppercase 241s === CONT TestGetPolicies/Filter_non_Ubuntu_keys 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"uppercase-class-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"filtered-name\"" 241s === CONT TestGetPolicies/Enabled_override 241s === CONT TestGetPolicies/User_only_policy,_user_object 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"multiple-releases-one-enabled-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"user-only-name\"" 241s === CONT TestGetPolicies/Error_on_backend_HostKrb5CCName_call_failed 241s === CONT TestGetPolicies/Machine_doesn’t_match 241s === CONT TestGetPolicies/Unexisting_CC_original_file_for_machine 241s === CONT TestGetPolicies/Two_policies,_no_overrides,_reversed 241s === CONT TestGetPolicies/Two_policies,_no_overrides 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"one-value-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"user-only-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"one-value-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"user-only-name\"" 241s === CONT TestGetPolicies/Multiple_domains,_same_GPO 241s === CONT TestGetPolicies/Standard_policy_with_assets,_downloads_assets 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"assets\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"multiple-domains-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"standard-name\"" 241s === CONT TestGetPolicies/Computer_only_policy,_user_object,_policy_is_empty 241s === CONT TestGetPolicies/Symlinks_can’t_be_created 241s === CONT TestGetPolicies/User_policy_Registry.pol_is_mixed_case 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:53Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"mixedcase-registry-name\"" 241s time="2025-10-31T03:46:53Z" level=info msg="Downloading \"machine-only-name\"" 241s === CONT TestGetPolicies/Policy_user_directory_is_uppercase 241s === CONT TestGetPolicies/Disabled_value_overrides_non_disabled_one 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"uppercase-class-name\"" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"disabled-value-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s === CONT TestGetPolicies/Two_policies,_with_overrides 241s === CONT TestGetPolicies/Standard_policy_with_assets,_existing_assets_are_reattached_if_not_refreshed 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="Assets directory is already up to date" 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"one-value-name\"" 241s === CONT TestGetPolicies/Standard_policy,_user_object 241s === CONT TestGetPolicies/Unsupported_type_for_unfiltered_entry 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"bad-entry-type-name\"" 241s === CONT TestGetPolicies/Computer_policy_Registry.pol_is_mixed_case 241s === CONT TestGetPolicies/Policy_can’t_be_downloaded 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"mixedcase-registry-name\"" 241s === CONT TestGetPolicies/Error_on_backend_ServerFQDN_call_failed 241s === CONT TestGetPolicies/More_policies,_with_multiple_overrides 241s === CONT TestGetPolicies/Disabled_value_is_overridden 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"disabled-value-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"one-value-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"user-only-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s === CONT TestGetPolicies/Disable_override_for_matching_release,_other_releases_override_ignored 241s === CONT TestGetPolicies/User_only_policy,_computer_object,_policy_is_empty 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"multiple-releases-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"user-only-name\"" 241s === CONT TestGetPolicies/Error_on_user_without_@_in_name 241s === CONT TestGetPolicies/Computer_policy_Registry.pol_is_lower_case 241s === CONT TestGetPolicies/Ignore_errors_on_non_Ubuntu_keys 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"lowercase-registry-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"unsupported-with-errors-name\"" 241s === CONT TestGetPolicies/Include_non_Ubuntu_keys_used_to_configure_certificate_autoenrollment 241s === CONT TestGetPolicies/Two_policies,_no_overrides,_one_is_not_the_same_object_type,_machine_ones_are_empty_when_parsing_user 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:54Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"filtered-with-certificate-autoenrollment-name\"" 241s time="2025-10-31T03:46:54Z" level=info msg="Downloading \"machine-only-name\"" 241s === CONT TestGetPolicies/Two_policies,_with_reversed_overrides 241s === CONT TestGetPolicies/Assets_can’t_be_downloaded_without_GPO 241s === CONT TestGetPolicies/Corrupted_policy_file 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"one-value-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"corrupted-policy-name\"" 241s === CONT TestGetPolicies/Same_key_in_different_domains_are_kept_separated 241s === CONT TestGetPolicies/Unexisting_CC_original_file_for_user 241s === CONT TestGetPolicies/Enabled_override_for_matching_release,_other_releases_override_ignored 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"multiple-releases-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"one-value-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"other-domain-name\"" 241s === CONT TestGetPolicies/Disabled_override 241s === CONT TestGetPolicies/Error_on_backend_IsOnline_call_failed 241s === CONT TestGetPolicies/Local_assets_and_its_db_are_removed_if_not_present_anymore_on_AD_sysvol 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"multiple-releases-one-disabled-name\"" 241s === CONT TestGetPolicies/Standard_policy,_computer_object 241s === CONT TestGetPolicies/User_policy_Registry.pol_is_lower_case 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"standard-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"lowercase-registry-name\"" 241s === CONT TestGetPolicies/Without_previous_call,_needs_userKrb5CCBaseName 241s === CONT TestGetPolicies/No_override_for_this_release,_takes_default_value 241s === CONT TestNew/error_on_backend_ServerFQDN_random_failure 241s === CONT TestNew/failed_to_create_Sysvol_cache_directory 241s === CONT TestNew/no_active_server_in_backend_does_not_fail_ad_creation 241s === CONT TestNew/failed_to_create_Policies_cache_directory 241s === CONT TestNew/failed_to_create_KRB5_cache_directory 241s === CONT TestNew/create_KRB5_and_Sysvol_cache_directory 241s --- PASS: TestNew (0.00s) 241s --- PASS: TestNew/error_on_backend_ServerFQDN_random_failure (0.00s) 241s --- PASS: TestNew/failed_to_create_Sysvol_cache_directory (0.00s) 241s --- PASS: TestNew/no_active_server_in_backend_does_not_fail_ad_creation (0.00s) 241s --- PASS: TestNew/failed_to_create_Policies_cache_directory (0.00s) 241s --- PASS: TestNew/failed_to_create_KRB5_cache_directory (0.00s) 241s --- PASS: TestNew/create_KRB5_and_Sysvol_cache_directory (0.00s) 241s === CONT TestFetchTweakSysvolCacheDir/SysvolCacheDir_doesn't_exist 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="No assets directory with GPT.INI file found on AD, skipping assets download" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"gpo1-name\"" 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"multiple-releases-name\"" 241s === CONT TestFetchWithUnreadableFile/without_gpo_initially_don’t_commit_new_partial_GPO 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"gpo1-name\"" 241s --- PASS: TestGetPolicies (0.01s) 241s --- PASS: TestGetPolicies/Assets_directory_being_a_file_cleanup_local_existing_assets_and_its_db (0.11s) 241s --- PASS: TestGetPolicies/Empty_value_for_unfiltered_entry (0.10s) 241s --- PASS: TestGetPolicies/Policy_machine_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed (0.15s) 241s --- PASS: TestGetPolicies/Policy_user_directory_is_not_capitalized_or_uppercase,_no_rules_are_parsed (0.14s) 241s --- PASS: TestGetPolicies/Filter_non_Ubuntu_keys (0.19s) 241s --- PASS: TestGetPolicies/Policy_machine_directory_is_uppercase (0.21s) 241s --- PASS: TestGetPolicies/User_only_policy,_user_object (0.11s) 241s --- PASS: TestGetPolicies/Enabled_override (0.13s) 241s --- PASS: TestGetPolicies/Error_on_backend_HostKrb5CCName_call_failed (0.01s) 241s --- PASS: TestGetPolicies/Unexisting_CC_original_file_for_machine (0.00s) 241s --- PASS: TestGetPolicies/Machine_doesn’t_match (0.00s) 241s --- PASS: TestGetPolicies/Two_policies,_no_overrides (0.14s) 241s --- PASS: TestGetPolicies/Two_policies,_no_overrides,_reversed (0.15s) 241s --- PASS: TestGetPolicies/Multiple_domains,_same_GPO (0.12s) 241s --- PASS: TestGetPolicies/Symlinks_can’t_be_created (0.00s) 241s --- PASS: TestGetPolicies/Standard_policy_with_assets,_downloads_assets (0.13s) 241s --- PASS: TestGetPolicies/Computer_only_policy,_user_object,_policy_is_empty (0.11s) 241s --- PASS: TestGetPolicies/User_policy_Registry.pol_is_mixed_case (0.10s) 241s --- PASS: TestGetPolicies/Policy_user_directory_is_uppercase (0.13s) 241s --- PASS: TestGetPolicies/Disabled_value_overrides_non_disabled_one (0.13s) 241s --- PASS: TestGetPolicies/Standard_policy_with_assets,_existing_assets_are_reattached_if_not_refreshed (0.11s) 241s --- PASS: TestGetPolicies/Two_policies,_with_overrides (0.13s) 241s --- PASS: TestGetPolicies/Unsupported_type_for_unfiltered_entry (0.16s) 241s --- PASS: TestGetPolicies/Standard_policy,_user_object (0.17s) 241s --- PASS: TestGetPolicies/Policy_can’t_be_downloaded (0.11s) 241s --- PASS: TestGetPolicies/Error_on_backend_ServerFQDN_call_failed (0.00s) 241s --- PASS: TestGetPolicies/Computer_policy_Registry.pol_is_mixed_case (0.13s) 241s --- PASS: TestGetPolicies/Disabled_value_is_overridden (0.14s) 241s --- PASS: TestGetPolicies/More_policies,_with_multiple_overrides (0.16s) 241s --- PASS: TestGetPolicies/User_only_policy,_computer_object,_policy_is_empty (0.10s) 241s --- PASS: TestGetPolicies/Error_on_user_without_@_in_name (0.00s) 241s --- PASS: TestGetPolicies/Disable_override_for_matching_release,_other_releases_override_ignored (0.12s) 241s --- PASS: TestGetPolicies/Ignore_errors_on_non_Ubuntu_keys (0.11s) 241s --- PASS: TestGetPolicies/Computer_policy_Registry.pol_is_lower_case (0.12s) 241s --- PASS: TestGetPolicies/Include_non_Ubuntu_keys_used_to_configure_certificate_autoenrollment (0.12s) 241s --- PASS: TestGetPolicies/Two_policies,_no_overrides,_one_is_not_the_same_object_type,_machine_ones_are_empty_when_parsing_user (0.14s) 241s --- PASS: TestGetPolicies/Assets_can’t_be_downloaded_without_GPO (0.05s) 241s --- PASS: TestGetPolicies/Two_policies,_with_reversed_overrides (0.17s) 241s --- PASS: TestGetPolicies/Corrupted_policy_file (0.11s) 241s --- PASS: TestGetPolicies/Unexisting_CC_original_file_for_user (0.00s) 241s --- PASS: TestGetPolicies/Same_key_in_different_domains_are_kept_separated (0.14s) 241s --- PASS: TestGetPolicies/Enabled_override_for_matching_release,_other_releases_override_ignored (0.14s) 241s --- PASS: TestGetPolicies/Error_on_backend_IsOnline_call_failed (0.00s) 241s --- PASS: TestGetPolicies/Local_assets_and_its_db_are_removed_if_not_present_anymore_on_AD_sysvol (0.11s) 241s --- PASS: TestGetPolicies/Disabled_override (0.13s) 241s --- PASS: TestGetPolicies/Standard_policy,_computer_object (0.13s) 241s --- PASS: TestGetPolicies/User_policy_Registry.pol_is_lower_case (0.13s) 241s --- PASS: TestGetPolicies/Without_previous_call,_needs_userKrb5CCBaseName (0.00s) 241s --- PASS: TestGetPolicies/No_override_for_this_release,_takes_default_value (0.12s) 241s === CONT TestFetchTweakSysvolCacheDir/SysvolCacheDir_is_read_only 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"gpo1-name\"" 241s --- PASS: TestFetchTweakSysvolCacheDir (0.00s) 241s --- PASS: TestFetchTweakSysvolCacheDir/SysvolCacheDir_doesn't_exist (0.07s) 241s --- PASS: TestFetchTweakSysvolCacheDir/SysvolCacheDir_is_read_only (0.03s) 241s === CONT TestFetchWithUnreadableFile/existing_gpo_is_preserved 241s Kerberos auth with 'ubuntu@WORKGROUP' (WORKGROUP\ubuntu) to access 'localhost' not possible 241s time="2025-10-31T03:46:55Z" level=info msg="Downloading \"gpo1-name\"" 241s --- PASS: TestFetchWithUnreadableFile (0.00s) 241s --- PASS: TestFetchWithUnreadableFile/without_gpo_initially_don’t_commit_new_partial_GPO (0.07s) 241s --- PASS: TestFetchWithUnreadableFile/existing_gpo_is_preserved (0.03s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad 8.348s 241s === RUN TestGenerateExpandedCategories 241s === PAUSE TestGenerateExpandedCategories 241s === RUN TestExpandedCategoriesToADMX 241s === PAUSE TestExpandedCategoriesToADMX 241s === RUN TestExpandedCategoriesToMD 241s === PAUSE TestExpandedCategoriesToMD 241s === RUN TestExpand 241s === PAUSE TestExpand 241s === RUN TestGenerateAD 241s === PAUSE TestGenerateAD 241s === RUN TestGenerateDoc 241s === PAUSE TestGenerateDoc 241s === CONT TestGenerateExpandedCategories 241s === RUN TestGenerateExpandedCategories/use_policy_class_instead_of_category_default 241s === PAUSE TestGenerateExpandedCategories/use_policy_class_instead_of_category_default 241s === RUN TestGenerateExpandedCategories/same_policy_used_in_two_categories 241s === PAUSE TestGenerateExpandedCategories/same_policy_used_in_two_categories 241s === RUN TestGenerateExpandedCategories/choices 241s === PAUSE TestGenerateExpandedCategories/choices 241s === RUN TestGenerateExpandedCategories/requires_ubuntu_pro 241s === PAUSE TestGenerateExpandedCategories/requires_ubuntu_pro 241s === RUN TestGenerateExpandedCategories/different_range 241s === PAUSE TestGenerateExpandedCategories/different_range 241s === RUN TestGenerateExpandedCategories/meta_is_overridden_by_enabled_key 241s === PAUSE TestGenerateExpandedCategories/meta_is_overridden_by_enabled_key 241s === RUN TestGenerateExpandedCategories/error_on_policy_not_attached_to_any_releases 241s === PAUSE TestGenerateExpandedCategories/error_on_policy_not_attached_to_any_releases 241s === RUN TestGenerateExpandedCategories/allow_policy_referenced_but_not_available_in_any_releases 241s === PAUSE TestGenerateExpandedCategories/allow_policy_referenced_but_not_available_in_any_releases 241s === RUN TestGenerateExpandedCategories/no_meta_disabled 241s === PAUSE TestGenerateExpandedCategories/no_meta_disabled 241s === RUN TestGenerateExpandedCategories/two_policies 241s === PAUSE TestGenerateExpandedCategories/two_policies 241s === RUN TestGenerateExpandedCategories/same_default 241s === PAUSE TestGenerateExpandedCategories/same_default 241s === RUN TestGenerateExpandedCategories/with_prefix 241s === PAUSE TestGenerateExpandedCategories/with_prefix 241s === RUN TestGenerateExpandedCategories/no_defaults 241s === PAUSE TestGenerateExpandedCategories/no_defaults 241s === RUN TestGenerateExpandedCategories/error_on_different_policy_type 241s === PAUSE TestGenerateExpandedCategories/error_on_different_policy_type 241s === RUN TestGenerateExpandedCategories/error_on_invalid_default_policy_class 241s === PAUSE TestGenerateExpandedCategories/error_on_invalid_default_policy_class 241s === RUN TestGenerateExpandedCategories/category_definition_doesn't_exist 241s === PAUSE TestGenerateExpandedCategories/category_definition_doesn't_exist 241s === RUN TestGenerateExpandedCategories/different_defaults 241s === PAUSE TestGenerateExpandedCategories/different_defaults 241s === RUN TestGenerateExpandedCategories/available_on_one_release_only 241s === PAUSE TestGenerateExpandedCategories/available_on_one_release_only 241s === RUN TestGenerateExpandedCategories/same_policy_used_in_two_categories_but_different_default_class 241s === PAUSE TestGenerateExpandedCategories/same_policy_used_in_two_categories_but_different_default_class 241s === RUN TestGenerateExpandedCategories/no_note_strategy_append 241s === PAUSE TestGenerateExpandedCategories/no_note_strategy_append 241s === RUN TestGenerateExpandedCategories/different_meta 241s === PAUSE TestGenerateExpandedCategories/different_meta 241s === RUN TestGenerateExpandedCategories/error_on_one_policy_not_used 241s === PAUSE TestGenerateExpandedCategories/error_on_one_policy_not_used 241s === RUN TestGenerateExpandedCategories/error_on_nested_category 241s === PAUSE TestGenerateExpandedCategories/error_on_nested_category 241s === RUN TestGenerateExpandedCategories/different_display_name 241s === PAUSE TestGenerateExpandedCategories/different_display_name 241s === RUN TestGenerateExpandedCategories/nested_categories 241s === PAUSE TestGenerateExpandedCategories/nested_categories 241s === RUN TestGenerateExpandedCategories/different_element_type 241s === PAUSE TestGenerateExpandedCategories/different_element_type 241s === RUN TestGenerateExpandedCategories/applicable_to_all_releases 241s === PAUSE TestGenerateExpandedCategories/applicable_to_all_releases 241s === RUN TestGenerateExpandedCategories/multiple_top_categories 241s === PAUSE TestGenerateExpandedCategories/multiple_top_categories 241s === RUN TestGenerateExpandedCategories/error_on_missing_release 241s === PAUSE TestGenerateExpandedCategories/error_on_missing_release 241s === RUN TestGenerateExpandedCategories/error_on_empty_default_policy_class 241s === PAUSE TestGenerateExpandedCategories/error_on_empty_default_policy_class 241s === RUN TestGenerateExpandedCategories/basic 241s === PAUSE TestGenerateExpandedCategories/basic 241s === RUN TestGenerateExpandedCategories/default_policy_class_is_capitalized 241s === PAUSE TestGenerateExpandedCategories/default_policy_class_is_capitalized 241s === RUN TestGenerateExpandedCategories/different_choices 241s === PAUSE TestGenerateExpandedCategories/different_choices 241s === RUN TestGenerateExpandedCategories/meta_entry_only 241s === PAUSE TestGenerateExpandedCategories/meta_entry_only 241s === RUN TestGenerateExpandedCategories/meta_is_overridden_by_disabled_key 241s === PAUSE TestGenerateExpandedCategories/meta_is_overridden_by_disabled_key 241s === RUN TestGenerateExpandedCategories/error_on_key_independent_of_any_release_key_but_with_one_release_specified 241s === PAUSE TestGenerateExpandedCategories/error_on_key_independent_of_any_release_key_but_with_one_release_specified 241s === RUN TestGenerateExpandedCategories/simple 241s === PAUSE TestGenerateExpandedCategories/simple 241s === RUN TestGenerateExpandedCategories/different_explain_text 241s === PAUSE TestGenerateExpandedCategories/different_explain_text 241s === RUN TestGenerateExpandedCategories/no_note 241s === PAUSE TestGenerateExpandedCategories/no_note 241s === RUN TestGenerateExpandedCategories/range 241s === PAUSE TestGenerateExpandedCategories/range 241s === RUN TestGenerateExpandedCategories/no_meta_enabled 241s === PAUSE TestGenerateExpandedCategories/no_meta_enabled 241s === RUN TestGenerateExpandedCategories/no_meta_at_all 241s === PAUSE TestGenerateExpandedCategories/no_meta_at_all 241s === RUN TestGenerateExpandedCategories/error_on_unexisting_policy_referenced 241s === PAUSE TestGenerateExpandedCategories/error_on_unexisting_policy_referenced 241s === RUN TestGenerateExpandedCategories/error_on_different_class 241s === PAUSE TestGenerateExpandedCategories/error_on_different_class 241s === RUN TestGenerateExpandedCategories/policy_directory_doesn't_exist 241s === PAUSE TestGenerateExpandedCategories/policy_directory_doesn't_exist 241s === CONT TestGenerateExpandedCategories/use_policy_class_instead_of_category_default 241s === CONT TestGenerateExpandedCategories/different_element_type 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/use_policy_class_instead_of_category_default 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/nested_categories 241s === CONT TestGenerateExpandedCategories/different_display_name 241s === NAME TestGenerateExpandedCategories/nested_categories 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/different_display_name 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/error_on_nested_category 241s === CONT TestGenerateExpandedCategories/error_on_one_policy_not_used 241s === CONT TestGenerateExpandedCategories/different_meta 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/no_note_strategy_append 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/same_policy_used_in_two_categories_but_different_default_class 241s === CONT TestGenerateExpandedCategories/available_on_one_release_only 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/same_policy_used_in_two_categories_but_different_default_class 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/different_defaults 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/error_on_invalid_default_policy_class 241s === CONT TestGenerateExpandedCategories/error_on_different_policy_type 241s === CONT TestGenerateExpandedCategories/no_defaults 241s === CONT TestGenerateExpandedCategories/category_definition_doesn't_exist 241s === NAME TestGenerateExpandedCategories/no_defaults 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/with_prefix 241s === CONT TestGenerateExpandedCategories/same_default 241s === NAME TestGenerateExpandedCategories/with_prefix 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/two_policies 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/no_meta_disabled 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/allow_policy_referenced_but_not_available_in_any_releases 241s === NAME TestGenerateExpandedCategories/same_default 241s internal_test.go:112: Serializing object for golden file 241s time="2025-10-31T03:46:47Z" level=warning msg="policy /org/gnome/desktop/policy-doesnotexit referenced in \"Category1 Display Name\" does not exist in any supported releases" 241s === NAME TestGenerateExpandedCategories/allow_policy_referenced_but_not_available_in_any_releases 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/error_on_policy_not_attached_to_any_releases 241s === CONT TestGenerateExpandedCategories/meta_is_overridden_by_enabled_key 241s === CONT TestGenerateExpandedCategories/different_range 241s === NAME TestGenerateExpandedCategories/meta_is_overridden_by_enabled_key 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/different_range 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/requires_ubuntu_pro 241s === CONT TestGenerateExpandedCategories/choices 241s === NAME TestGenerateExpandedCategories/requires_ubuntu_pro 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/same_policy_used_in_two_categories 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/choices 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/no_note 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateAD 241s === RUN TestGenerateAD/releases_from_yaml 241s === PAUSE TestGenerateAD/releases_from_yaml 241s === RUN TestGenerateAD/autodetect_overrides_releases_from_yaml 241s === PAUSE TestGenerateAD/autodetect_overrides_releases_from_yaml 241s === RUN TestGenerateAD/invalid_definition_file 241s === CONT TestGenerateDoc 241s === RUN TestGenerateDoc/releases_from_yaml 241s === PAUSE TestGenerateDoc/releases_from_yaml 241s === RUN TestGenerateDoc/autodetect_overrides_releases_from_yaml 241s === PAUSE TestGenerateDoc/autodetect_overrides_releases_from_yaml 241s === RUN TestGenerateDoc/invalid_definition_file 241s === PAUSE TestGenerateDoc/invalid_definition_file 241s === RUN TestGenerateDoc/category_expansion_fails 241s === PAUSE TestGenerateDoc/category_expansion_fails 241s === RUN TestGenerateDoc/doc_generation_fails 241s === PAUSE TestGenerateDoc/doc_generation_fails 241s === CONT TestExpand 241s === RUN TestExpand/dconf 241s === PAUSE TestExpand/dconf 241s === RUN TestExpand/expanded_policy 241s === PAUSE TestExpand/expanded_policy 241s === RUN TestExpand/expanded_policy_with_meta 241s === PAUSE TestExpand/expanded_policy_with_meta 241s === RUN TestExpand/expanded_policy_with_release_any 241s === PAUSE TestExpand/expanded_policy_with_release_any 241s === RUN TestExpand/ignore_categories_and_non_yaml_files 241s === PAUSE TestExpand/ignore_categories_and_non_yaml_files 241s === RUN TestExpand/no_release_file 241s === PAUSE TestExpand/no_release_file 241s === RUN TestExpand/invalid_dconf.yaml 241s === PAUSE TestExpand/invalid_dconf.yaml 241s === RUN TestExpand/no_version_id 241s === PAUSE TestExpand/no_version_id 241s === RUN TestExpand/unsupported_policy_type 241s === PAUSE TestExpand/unsupported_policy_type 241s === RUN TestExpand/no_source_directory 241s === PAUSE TestExpand/no_source_directory 241s === RUN TestExpand/dconf_generation_fails 241s === PAUSE TestExpand/dconf_generation_fails 241s === CONT TestExpandedCategoriesToMD 241s === RUN TestExpandedCategoriesToMD/decimal_with_range 241s === PAUSE TestExpandedCategoriesToMD/decimal_with_range 241s === RUN TestExpandedCategoriesToMD/nested_categories 241s === PAUSE TestExpandedCategoriesToMD/nested_categories 241s === RUN TestExpandedCategoriesToMD/basic_key 241s === PAUSE TestExpandedCategoriesToMD/basic_key 241s === RUN TestExpandedCategoriesToMD/user_policy 241s === PAUSE TestExpandedCategoriesToMD/user_policy 241s === RUN TestExpandedCategoriesToMD/long_decimal 241s === PAUSE TestExpandedCategoriesToMD/long_decimal 241s === RUN TestExpandedCategoriesToMD/choices 241s === PAUSE TestExpandedCategoriesToMD/choices 241s === RUN TestExpandedCategoriesToMD/multiple_releases_with_different_widgettype 241s === PAUSE TestExpandedCategoriesToMD/multiple_releases_with_different_widgettype 241s === RUN TestExpandedCategoriesToMD/multiple_categories 241s === PAUSE TestExpandedCategoriesToMD/multiple_categories 241s === RUN TestExpandedCategoriesToMD/simple 241s === PAUSE TestExpandedCategoriesToMD/simple 241s === RUN TestExpandedCategoriesToMD/array_of_integers 241s === PAUSE TestExpandedCategoriesToMD/array_of_integers 241s === RUN TestExpandedCategoriesToMD/double_with_range 241s === PAUSE TestExpandedCategoriesToMD/double_with_range 241s === RUN TestExpandedCategoriesToMD/no_meta_enabled 241s === PAUSE TestExpandedCategoriesToMD/no_meta_enabled 241s === RUN TestExpandedCategoriesToMD/no_meta_at_all 241s === PAUSE TestExpandedCategoriesToMD/no_meta_at_all 241s === RUN TestExpandedCategoriesToMD/nested_categories,_classes_and_empty 241s === PAUSE TestExpandedCategoriesToMD/nested_categories,_classes_and_empty 241s === RUN TestExpandedCategoriesToMD/decimal_with_max_only 241s === PAUSE TestExpandedCategoriesToMD/decimal_with_max_only 241s === RUN TestExpandedCategoriesToMD/error_on_destination_creation 241s === PAUSE TestExpandedCategoriesToMD/error_on_destination_creation 241s === RUN TestExpandedCategoriesToMD/decimal 241s === PAUSE TestExpandedCategoriesToMD/decimal 241s === RUN TestExpandedCategoriesToMD/array_of_strings 241s === PAUSE TestExpandedCategoriesToMD/array_of_strings 241s === RUN TestExpandedCategoriesToMD/double 241s === PAUSE TestExpandedCategoriesToMD/double 241s === RUN TestExpandedCategoriesToMD/multiple_releases_for_one_key 241s === PAUSE TestExpandedCategoriesToMD/multiple_releases_for_one_key 241s === RUN TestExpandedCategoriesToMD/multiple_releases_with_different_choices 241s === PAUSE TestExpandedCategoriesToMD/multiple_releases_with_different_choices 241s === RUN TestExpandedCategoriesToMD/multiple_releases_with_different_ranges 241s === PAUSE TestExpandedCategoriesToMD/multiple_releases_with_different_ranges 241s === RUN TestExpandedCategoriesToMD/boolean 241s === PAUSE TestExpandedCategoriesToMD/boolean 241s === RUN TestExpandedCategoriesToMD/choices_with_default 241s === PAUSE TestExpandedCategoriesToMD/choices_with_default 241s === RUN TestExpandedCategoriesToMD/multiple_releases_with_all_widgets_and_different_defaults 241s === PAUSE TestExpandedCategoriesToMD/multiple_releases_with_all_widgets_and_different_defaults 241s === RUN TestExpandedCategoriesToMD/no_meta_disabled 241s === PAUSE TestExpandedCategoriesToMD/no_meta_disabled 241s === RUN TestExpandedCategoriesToMD/decimal_with_min_only 241s === PAUSE TestExpandedCategoriesToMD/decimal_with_min_only 241s === CONT TestExpandedCategoriesToADMX 241s === RUN TestExpandedCategoriesToADMX/multiple_releases_with_all_widgets_and_different_defaults 241s === PAUSE TestExpandedCategoriesToADMX/multiple_releases_with_all_widgets_and_different_defaults 241s === RUN TestExpandedCategoriesToADMX/no_meta_disabled 241s === PAUSE TestExpandedCategoriesToADMX/no_meta_disabled 241s === RUN TestExpandedCategoriesToADMX/choices_with_default 241s === PAUSE TestExpandedCategoriesToADMX/choices_with_default 241s === RUN TestExpandedCategoriesToADMX/double 241s === PAUSE TestExpandedCategoriesToADMX/double 241s === RUN TestExpandedCategoriesToADMX/decimal_with_range 241s === PAUSE TestExpandedCategoriesToADMX/decimal_with_range 241s === RUN TestExpandedCategoriesToADMX/multiple_releases_for_one_key 241s === PAUSE TestExpandedCategoriesToADMX/multiple_releases_for_one_key 241s === RUN TestExpandedCategoriesToADMX/multiple_releases_with_different_choices 241s === PAUSE TestExpandedCategoriesToADMX/multiple_releases_with_different_choices 241s === RUN TestExpandedCategoriesToADMX/multiple_releases_with_different_ranges 241s === PAUSE TestExpandedCategoriesToADMX/multiple_releases_with_different_ranges 241s === RUN TestExpandedCategoriesToADMX/no_meta_enabled 241s === PAUSE TestExpandedCategoriesToADMX/no_meta_enabled 241s === RUN TestExpandedCategoriesToADMX/no_meta_at_all 241s === PAUSE TestExpandedCategoriesToADMX/no_meta_at_all 241s === RUN TestExpandedCategoriesToADMX/nested_categories 241s === PAUSE TestExpandedCategoriesToADMX/nested_categories 241s === RUN TestExpandedCategoriesToADMX/basic_key 241s === PAUSE TestExpandedCategoriesToADMX/basic_key 241s === RUN TestExpandedCategoriesToADMX/long_decimal 241s === PAUSE TestExpandedCategoriesToADMX/long_decimal 241s === RUN TestExpandedCategoriesToADMX/array_of_integers 241s === PAUSE TestExpandedCategoriesToADMX/array_of_integers 241s === RUN TestExpandedCategoriesToADMX/double_with_range 241s === PAUSE TestExpandedCategoriesToADMX/double_with_range 241s === RUN TestExpandedCategoriesToADMX/multiple_releases_with_different_widgettype 241s === PAUSE TestExpandedCategoriesToADMX/multiple_releases_with_different_widgettype 241s === RUN TestExpandedCategoriesToADMX/simple 241s === PAUSE TestExpandedCategoriesToADMX/simple 241s === RUN TestExpandedCategoriesToADMX/decimal_with_min_only 241s === PAUSE TestExpandedCategoriesToADMX/decimal_with_min_only 241s === RUN TestExpandedCategoriesToADMX/boolean 241s === PAUSE TestExpandedCategoriesToADMX/boolean 241s === RUN TestExpandedCategoriesToADMX/decimal 241s === PAUSE TestExpandedCategoriesToADMX/decimal 241s === RUN TestExpandedCategoriesToADMX/decimal_with_max_only 241s === PAUSE TestExpandedCategoriesToADMX/decimal_with_max_only 241s === RUN TestExpandedCategoriesToADMX/array_of_strings 241s === PAUSE TestExpandedCategoriesToADMX/array_of_strings 241s === RUN TestExpandedCategoriesToADMX/choices 241s === PAUSE TestExpandedCategoriesToADMX/choices 241s === RUN TestExpandedCategoriesToADMX/error_on_destination_creation 241s === PAUSE TestExpandedCategoriesToADMX/error_on_destination_creation 241s === RUN TestExpandedCategoriesToADMX/multiple_categories 241s === PAUSE TestExpandedCategoriesToADMX/multiple_categories 241s === RUN TestExpandedCategoriesToADMX/other_distro 241s === PAUSE TestExpandedCategoriesToADMX/other_distro 241s === CONT TestGenerateExpandedCategories/policy_directory_doesn't_exist 241s === CONT TestGenerateExpandedCategories/error_on_different_class 241s === CONT TestGenerateExpandedCategories/error_on_unexisting_policy_referenced 241s === CONT TestGenerateExpandedCategories/no_meta_at_all 241s === PAUSE TestGenerateAD/invalid_definition_file 241s === RUN TestGenerateAD/category_expansion_fails 241s === PAUSE TestGenerateAD/category_expansion_fails 241s === RUN TestGenerateAD/admx_generation_fails 241s === PAUSE TestGenerateAD/admx_generation_fails 241s === CONT TestGenerateExpandedCategories/no_meta_enabled 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/range 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/different_choices 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/no_meta_at_all 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/different_explain_text 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/simple 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/error_on_key_independent_of_any_release_key_but_with_one_release_specified 241s === CONT TestGenerateExpandedCategories/meta_is_overridden_by_disabled_key 241s === CONT TestGenerateExpandedCategories/meta_entry_only 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/error_on_empty_default_policy_class 241s === CONT TestGenerateExpandedCategories/default_policy_class_is_capitalized 241s internal_test.go:112: Serializing object for golden file 241s === NAME TestGenerateExpandedCategories/meta_is_overridden_by_disabled_key 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/basic 241s === CONT TestGenerateExpandedCategories/multiple_top_categories 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateExpandedCategories/error_on_missing_release 241s === CONT TestGenerateExpandedCategories/applicable_to_all_releases 241s === NAME TestGenerateExpandedCategories/basic 241s internal_test.go:112: Serializing object for golden file 241s === CONT TestGenerateDoc/releases_from_yaml 241s === NAME TestGenerateExpandedCategories/applicable_to_all_releases 241s internal_test.go:112: Serializing object for golden file 241s --- PASS: TestGenerateExpandedCategories (0.00s) 241s --- PASS: TestGenerateExpandedCategories/use_policy_class_instead_of_category_default (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_element_type (0.00s) 241s --- PASS: TestGenerateExpandedCategories/nested_categories (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_display_name (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_nested_category (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_one_policy_not_used (0.00s) 241s --- PASS: TestGenerateExpandedCategories/no_note_strategy_append (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_meta (0.00s) 241s --- PASS: TestGenerateExpandedCategories/available_on_one_release_only (0.00s) 241s --- PASS: TestGenerateExpandedCategories/same_policy_used_in_two_categories_but_different_default_class (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_defaults (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_invalid_default_policy_class (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_different_policy_type (0.00s) 241s --- PASS: TestGenerateExpandedCategories/category_definition_doesn't_exist (0.00s) 241s --- PASS: TestGenerateExpandedCategories/no_defaults (0.00s) 241s --- PASS: TestGenerateExpandedCategories/with_prefix (0.00s) 241s --- PASS: TestGenerateExpandedCategories/two_policies (0.00s) 241s --- PASS: TestGenerateExpandedCategories/no_meta_disabled (0.00s) 241s --- PASS: TestGenerateExpandedCategories/same_default (0.00s) 241s --- PASS: TestGenerateExpandedCategories/allow_policy_referenced_but_not_available_in_any_releases (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_policy_not_attached_to_any_releases (0.00s) 241s --- PASS: TestGenerateExpandedCategories/meta_is_overridden_by_enabled_key (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_range (0.00s) 241s --- PASS: TestGenerateExpandedCategories/requires_ubuntu_pro (0.00s) 241s --- PASS: TestGenerateExpandedCategories/same_policy_used_in_two_categories (0.00s) 241s --- PASS: TestGenerateExpandedCategories/choices (0.00s) 241s --- PASS: TestGenerateExpandedCategories/no_note (0.00s) 241s --- PASS: TestGenerateExpandedCategories/policy_directory_doesn't_exist (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_different_class (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_unexisting_policy_referenced (0.00s) 241s --- PASS: TestGenerateExpandedCategories/no_meta_enabled (0.00s) 241s --- PASS: TestGenerateExpandedCategories/range (0.00s) 241s --- PASS: TestGenerateExpandedCategories/no_meta_at_all (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_explain_text (0.00s) 241s --- PASS: TestGenerateExpandedCategories/simple (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_key_independent_of_any_release_key_but_with_one_release_specified (0.00s) 241s --- PASS: TestGenerateExpandedCategories/different_choices (0.00s) 241s --- PASS: TestGenerateExpandedCategories/meta_entry_only (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_empty_default_policy_class (0.00s) 241s --- PASS: TestGenerateExpandedCategories/meta_is_overridden_by_disabled_key (0.00s) 241s --- PASS: TestGenerateExpandedCategories/default_policy_class_is_capitalized (0.00s) 241s --- PASS: TestGenerateExpandedCategories/multiple_top_categories (0.00s) 241s --- PASS: TestGenerateExpandedCategories/error_on_missing_release (0.00s) 241s --- PASS: TestGenerateExpandedCategories/basic (0.01s) 241s --- PASS: TestGenerateExpandedCategories/applicable_to_all_releases (0.00s) 241s === CONT TestExpand/dconf 241s admxgen_test.go:78: Serializing object for golden file 241s === CONT TestGenerateDoc/doc_generation_fails 241s === CONT TestGenerateDoc/category_expansion_fails 241s === CONT TestGenerateDoc/invalid_definition_file 241s === CONT TestGenerateDoc/autodetect_overrides_releases_from_yaml 241s === CONT TestExpandedCategoriesToMD/decimal_with_range 241s === CONT TestExpand/dconf_generation_fails 241s === CONT TestExpand/no_source_directory 241s === CONT TestExpand/unsupported_policy_type 241s --- PASS: TestGenerateDoc (0.00s) 241s --- PASS: TestGenerateDoc/releases_from_yaml (0.00s) 241s --- PASS: TestGenerateDoc/category_expansion_fails (0.00s) 241s --- PASS: TestGenerateDoc/doc_generation_fails (0.00s) 241s --- PASS: TestGenerateDoc/invalid_definition_file (0.00s) 241s --- PASS: TestGenerateDoc/autodetect_overrides_releases_from_yaml (0.00s) 241s === CONT TestExpand/no_version_id 241s === CONT TestExpand/invalid_dconf.yaml 241s === CONT TestExpand/no_release_file 241s === CONT TestExpand/ignore_categories_and_non_yaml_files 241s admxgen_test.go:78: Serializing object for golden file 241s === CONT TestExpand/expanded_policy_with_release_any 241s admxgen_test.go:78: Serializing object for golden file 241s === CONT TestExpand/expanded_policy_with_meta 241s admxgen_test.go:78: Serializing object for golden file 241s === CONT TestExpand/expanded_policy 241s admxgen_test.go:78: Serializing object for golden file 241s === CONT TestExpandedCategoriesToADMX/multiple_releases_with_all_widgets_and_different_defaults 241s --- PASS: TestExpand (0.00s) 241s --- PASS: TestExpand/dconf (0.00s) 241s --- PASS: TestExpand/dconf_generation_fails (0.00s) 241s --- PASS: TestExpand/no_source_directory (0.00s) 241s --- PASS: TestExpand/no_version_id (0.00s) 241s --- PASS: TestExpand/invalid_dconf.yaml (0.00s) 241s --- PASS: TestExpand/unsupported_policy_type (0.00s) 241s --- PASS: TestExpand/ignore_categories_and_non_yaml_files (0.00s) 241s --- PASS: TestExpand/no_release_file (0.00s) 241s --- PASS: TestExpand/expanded_policy_with_meta (0.00s) 241s --- PASS: TestExpand/expanded_policy (0.00s) 241s --- PASS: TestExpand/expanded_policy_with_release_any (0.00s) 241s === CONT TestExpandedCategoriesToMD/decimal_with_min_only 241s === CONT TestExpandedCategoriesToMD/no_meta_disabled 241s === CONT TestExpandedCategoriesToMD/multiple_releases_with_all_widgets_and_different_defaults 241s === CONT TestExpandedCategoriesToMD/choices_with_default 241s === CONT TestExpandedCategoriesToMD/boolean 241s === CONT TestExpandedCategoriesToMD/multiple_releases_with_different_ranges 241s === CONT TestExpandedCategoriesToMD/multiple_releases_with_different_choices 241s === CONT TestExpandedCategoriesToMD/multiple_releases_for_one_key 241s === CONT TestExpandedCategoriesToMD/double 241s === CONT TestExpandedCategoriesToMD/array_of_strings 241s === CONT TestExpandedCategoriesToMD/decimal 241s === CONT TestExpandedCategoriesToMD/error_on_destination_creation 241s === CONT TestExpandedCategoriesToMD/decimal_with_max_only 241s === CONT TestExpandedCategoriesToMD/nested_categories,_classes_and_empty 241s === CONT TestExpandedCategoriesToMD/no_meta_at_all 241s === CONT TestExpandedCategoriesToMD/no_meta_enabled 241s === CONT TestExpandedCategoriesToMD/array_of_integers 241s === CONT TestExpandedCategoriesToMD/double_with_range 241s === CONT TestExpandedCategoriesToMD/simple 241s === CONT TestExpandedCategoriesToMD/multiple_releases_with_different_widgettype 241s === CONT TestExpandedCategoriesToMD/multiple_categories 241s === CONT TestExpandedCategoriesToMD/long_decimal 241s === CONT TestExpandedCategoriesToMD/choices 241s === CONT TestExpandedCategoriesToMD/user_policy 241s === CONT TestExpandedCategoriesToMD/basic_key 241s === CONT TestExpandedCategoriesToMD/nested_categories 241s === CONT TestGenerateAD/releases_from_yaml 241s --- PASS: TestExpandedCategoriesToMD (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/decimal_with_range (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/decimal_with_min_only (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/no_meta_disabled (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/multiple_releases_with_all_widgets_and_different_defaults (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/choices_with_default (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/boolean (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/multiple_releases_with_different_ranges (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/multiple_releases_with_different_choices (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/multiple_releases_for_one_key (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/double (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/array_of_strings (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/decimal (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/error_on_destination_creation (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/decimal_with_max_only (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/no_meta_at_all (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/no_meta_enabled (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/nested_categories,_classes_and_empty (0.01s) 241s --- PASS: TestExpandedCategoriesToMD/double_with_range (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/simple (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/array_of_integers (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/multiple_releases_with_different_widgettype (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/multiple_categories (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/long_decimal (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/choices (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/basic_key (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/user_policy (0.00s) 241s --- PASS: TestExpandedCategoriesToMD/nested_categories (0.01s) 241s === CONT TestGenerateAD/admx_generation_fails 241s === CONT TestGenerateAD/category_expansion_fails 241s === CONT TestGenerateAD/autodetect_overrides_releases_from_yaml 241s === CONT TestGenerateAD/invalid_definition_file 241s === CONT TestExpandedCategoriesToADMX/array_of_integers 241s === CONT TestExpandedCategoriesToADMX/other_distro 241s === CONT TestExpandedCategoriesToADMX/multiple_categories 241s === CONT TestExpandedCategoriesToADMX/error_on_destination_creation 241s === CONT TestExpandedCategoriesToADMX/array_of_strings 241s --- PASS: TestGenerateAD (0.00s) 241s --- PASS: TestGenerateAD/admx_generation_fails (0.00s) 241s --- PASS: TestGenerateAD/releases_from_yaml (0.01s) 241s --- PASS: TestGenerateAD/category_expansion_fails (0.00s) 241s --- PASS: TestGenerateAD/invalid_definition_file (0.00s) 241s --- PASS: TestGenerateAD/autodetect_overrides_releases_from_yaml (0.01s) 241s === CONT TestExpandedCategoriesToADMX/choices 241s === CONT TestExpandedCategoriesToADMX/decimal_with_max_only 241s === CONT TestExpandedCategoriesToADMX/decimal 241s === CONT TestExpandedCategoriesToADMX/boolean 241s === CONT TestExpandedCategoriesToADMX/simple 241s === CONT TestExpandedCategoriesToADMX/decimal_with_min_only 241s === CONT TestExpandedCategoriesToADMX/multiple_releases_with_different_widgettype 241s === CONT TestExpandedCategoriesToADMX/double_with_range 241s === CONT TestExpandedCategoriesToADMX/multiple_releases_with_different_ranges 241s === CONT TestExpandedCategoriesToADMX/long_decimal 241s === CONT TestExpandedCategoriesToADMX/basic_key 241s === CONT TestExpandedCategoriesToADMX/nested_categories 241s === CONT TestExpandedCategoriesToADMX/no_meta_at_all 241s === CONT TestExpandedCategoriesToADMX/no_meta_enabled 241s === CONT TestExpandedCategoriesToADMX/decimal_with_range 241s === CONT TestExpandedCategoriesToADMX/multiple_releases_with_different_choices 241s === CONT TestExpandedCategoriesToADMX/multiple_releases_for_one_key 241s === CONT TestExpandedCategoriesToADMX/choices_with_default 241s === CONT TestExpandedCategoriesToADMX/double 241s === CONT TestExpandedCategoriesToADMX/no_meta_disabled 241s --- PASS: TestExpandedCategoriesToADMX (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/multiple_releases_with_all_widgets_and_different_defaults (0.01s) 241s --- PASS: TestExpandedCategoriesToADMX/array_of_integers (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/other_distro (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/multiple_categories (0.01s) 241s --- PASS: TestExpandedCategoriesToADMX/error_on_destination_creation (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/array_of_strings (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/choices (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/decimal_with_max_only (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/decimal (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/boolean (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/simple (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/multiple_releases_with_different_widgettype (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/double_with_range (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/decimal_with_min_only (0.01s) 241s --- PASS: TestExpandedCategoriesToADMX/multiple_releases_with_different_ranges (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/basic_key (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/long_decimal (0.01s) 241s --- PASS: TestExpandedCategoriesToADMX/nested_categories (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/no_meta_at_all (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/no_meta_enabled (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/decimal_with_range (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/multiple_releases_for_one_key (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/choices_with_default (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/multiple_releases_with_different_choices (0.01s) 241s --- PASS: TestExpandedCategoriesToADMX/double (0.00s) 241s --- PASS: TestExpandedCategoriesToADMX/no_meta_disabled (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad/admxgen 0.176s 241s === RUN TestGenerate 241s === PAUSE TestGenerate 241s === CONT TestGenerate 241s === RUN TestGenerate/Relocatable_key_overridden 241s === PAUSE TestGenerate/Relocatable_key_overridden 241s === RUN TestGenerate/Choices_are_loaded 241s === PAUSE TestGenerate/Choices_are_loaded 241s === RUN TestGenerate/Valid_class_should_be_capitalized 241s === PAUSE TestGenerate/Valid_class_should_be_capitalized 241s === RUN TestGenerate/Array_of_strings 241s === PAUSE TestGenerate/Array_of_strings 241s === RUN TestGenerate/One_decimal_key 241s === PAUSE TestGenerate/One_decimal_key 241s === RUN TestGenerate/Double_key_with_range 241s === PAUSE TestGenerate/Double_key_with_range 241s === RUN TestGenerate/Override_without_session 241s === PAUSE TestGenerate/Override_without_session 241s === RUN TestGenerate/Override_with_no_matching_session_defaults_to_root_override 241s === PAUSE TestGenerate/Override_with_no_matching_session_defaults_to_root_override 241s === RUN TestGenerate/Enums_in_other_files_are_converted_to_choices 241s === PAUSE TestGenerate/Enums_in_other_files_are_converted_to_choices 241s === RUN TestGenerate/Description_containing_deprecated_without_starting_by_it_is_not_ignored 241s === PAUSE TestGenerate/Description_containing_deprecated_without_starting_by_it_is_not_ignored 241s === RUN TestGenerate/One_text_key 241s === PAUSE TestGenerate/One_text_key 241s === RUN TestGenerate/Long_decimal_key 241s === PAUSE TestGenerate/Long_decimal_key 241s === RUN TestGenerate/Long_decimal_key_with_range_min_lt_0 241s === PAUSE TestGenerate/Long_decimal_key_with_range_min_lt_0 241s === RUN TestGenerate/Description_starting_with_deprecated_mixed_case_is_ignored 241s === PAUSE TestGenerate/Description_starting_with_deprecated_mixed_case_is_ignored 241s === RUN TestGenerate/Unsupported_key_type 241s === PAUSE TestGenerate/Unsupported_key_type 241s === RUN TestGenerate/One_decimal_key_with_range 241s === PAUSE TestGenerate/One_decimal_key_with_range 241s === RUN TestGenerate/NaN_min 241s === PAUSE TestGenerate/NaN_min 241s === RUN TestGenerate/Long_decimal_key_with_range_min_gt_0 241s === PAUSE TestGenerate/Long_decimal_key_with_range_min_gt_0 241s === RUN TestGenerate/One_decimal_key_with_min_only 241s === PAUSE TestGenerate/One_decimal_key_with_min_only 241s === RUN TestGenerate/Double_key 241s === PAUSE TestGenerate/Double_key 241s === RUN TestGenerate/Override_with_session_takes_session_override 241s === PAUSE TestGenerate/Override_with_session_takes_session_override 241s === RUN TestGenerate/Invalid_override_files_are_skipped 241s === PAUSE TestGenerate/Invalid_override_files_are_skipped 241s === RUN TestGenerate/Enum_does_not_exist 241s === PAUSE TestGenerate/Enum_does_not_exist 241s === RUN TestGenerate/Key_with_class 241s === PAUSE TestGenerate/Key_with_class 241s === RUN TestGenerate/Same_key_relocated_twice 241s === PAUSE TestGenerate/Same_key_relocated_twice 241s === RUN TestGenerate/Array_of_integers 241s === PAUSE TestGenerate/Array_of_integers 241s === RUN TestGenerate/Inlined_Enums_are_converted_to_choices 241s === PAUSE TestGenerate/Inlined_Enums_are_converted_to_choices 241s === RUN TestGenerate/No_key_on_system 241s === PAUSE TestGenerate/No_key_on_system 241s === RUN TestGenerate/Empty 241s === PAUSE TestGenerate/Empty 241s === RUN TestGenerate/Description_starting_with_deprecated_is_ignored 241s === PAUSE TestGenerate/Description_starting_with_deprecated_is_ignored 241s === RUN TestGenerate/Missing_XML_declaration_is_successfully_parsed 241s === PAUSE TestGenerate/Missing_XML_declaration_is_successfully_parsed 241s === RUN TestGenerate/Relocatable_key 241s === PAUSE TestGenerate/Relocatable_key 241s === RUN TestGenerate/Invalid_schema_files 241s === PAUSE TestGenerate/Invalid_schema_files 241s === RUN TestGenerate/One_decimal_key_with_max_only 241s === PAUSE TestGenerate/One_decimal_key_with_max_only 241s === RUN TestGenerate/Override_takes_first_session 241s === PAUSE TestGenerate/Override_takes_first_session 241s === RUN TestGenerate/Override_default_to_second_if_first_not_present 241s === PAUSE TestGenerate/Override_default_to_second_if_first_not_present 241s === RUN TestGenerate/Override_without_session_takes_default 241s === PAUSE TestGenerate/Override_without_session_takes_default 241s === RUN TestGenerate/One_boolean_key 241s === PAUSE TestGenerate/One_boolean_key 241s === RUN TestGenerate/Description_starting_with_obsolete_is_ignored 241s === PAUSE TestGenerate/Description_starting_with_obsolete_is_ignored 241s === RUN TestGenerate/Malformed_XML_declaration_is_successfully_parsed 241s === PAUSE TestGenerate/Malformed_XML_declaration_is_successfully_parsed 241s === RUN TestGenerate/Invalid_class 241s === PAUSE TestGenerate/Invalid_class 241s === RUN TestGenerate/Invalid_min 241s === PAUSE TestGenerate/Invalid_min 241s === RUN TestGenerate/Overridden_by_multiple_files,_last_wins 241s === PAUSE TestGenerate/Overridden_by_multiple_files,_last_wins 241s === CONT TestGenerate/Relocatable_key_overridden 241s === CONT TestGenerate/Enum_does_not_exist 241s === CONT TestGenerate/Overridden_by_multiple_files,_last_wins 241s === NAME TestGenerate/Relocatable_key_overridden 241s dconf_test.go:106: Serializing object for golden file 241s === NAME TestGenerate/Overridden_by_multiple_files,_last_wins 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Invalid_override_files_are_skipped 241s time="2025-10-31T03:46:48Z" level=warning msg="testdata/TestGenerate/system/broken_override/usr/share/glib-2.0/schemas/broken.gschema.override is an invalid override file: unclosed section: [com.ubuntu.simple.overridden\n" 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Override_with_session_takes_session_override 241s === CONT TestGenerate/Double_key 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/One_decimal_key_with_min_only 241s === NAME TestGenerate/Override_with_session_takes_session_override 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Long_decimal_key_with_range_min_gt_0 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/NaN_min 241s === CONT TestGenerate/One_decimal_key_with_range 241s === NAME TestGenerate/One_decimal_key_with_min_only 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Unsupported_key_type 241s === CONT TestGenerate/Description_starting_with_deprecated_mixed_case_is_ignored 241s time="2025-10-31T03:46:48Z" level=warning msg="dconf key \"com.ubuntu.with.deprecated\":\"/com/ubuntu/with-deprecated/deprecated-different-cases\" is deprecated. Ignoring" 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Long_decimal_key_with_range_min_lt_0 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Long_decimal_key 241s === NAME TestGenerate/One_decimal_key_with_range 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/One_text_key 241s === NAME TestGenerate/Long_decimal_key 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Description_containing_deprecated_without_starting_by_it_is_not_ignored 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Enums_in_other_files_are_converted_to_choices 241s === NAME TestGenerate/One_text_key 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Override_with_no_matching_session_defaults_to_root_override 241s === NAME TestGenerate/Enums_in_other_files_are_converted_to_choices 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Override_without_session 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Double_key_with_range 241s dconf_test.go:106: Serializing object for golden file 241s === NAME TestGenerate/Override_with_no_matching_session_defaults_to_root_override 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/One_decimal_key 241s === CONT TestGenerate/Array_of_strings 241s === NAME TestGenerate/One_decimal_key 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Valid_class_should_be_capitalized 241s === NAME TestGenerate/Array_of_strings 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Choices_are_loaded 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Invalid_min 241s === CONT TestGenerate/Invalid_class 241s === NAME TestGenerate/Valid_class_should_be_capitalized 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Malformed_XML_declaration_is_successfully_parsed 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Description_starting_with_obsolete_is_ignored 241s === CONT TestGenerate/One_boolean_key 241s time="2025-10-31T03:46:48Z" level=warning msg="dconf key \"com.ubuntu.with.deprecated\":\"/com/ubuntu/with-deprecated/obsolete\" is deprecated. Ignoring" 241s === NAME TestGenerate/Description_starting_with_obsolete_is_ignored 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Override_without_session_takes_default 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Override_default_to_second_if_first_not_present 241s === NAME TestGenerate/One_boolean_key 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Override_takes_first_session 241s === NAME TestGenerate/Override_default_to_second_if_first_not_present 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/One_decimal_key_with_max_only 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Invalid_schema_files 241s === CONT TestGenerate/Relocatable_key 241s === NAME TestGenerate/Override_takes_first_session 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Missing_XML_declaration_is_successfully_parsed 241s === NAME TestGenerate/Relocatable_key 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Description_starting_with_deprecated_is_ignored 241s === NAME TestGenerate/Missing_XML_declaration_is_successfully_parsed 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Empty 241s time="2025-10-31T03:46:48Z" level=warning msg="dconf key \"com.ubuntu.with.deprecated\":\"/com/ubuntu/with-deprecated/deprecated\" is deprecated. Ignoring" 241s === NAME TestGenerate/Description_starting_with_deprecated_is_ignored 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/No_key_on_system 241s === NAME TestGenerate/Empty 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Inlined_Enums_are_converted_to_choices 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Array_of_integers 241s time="2025-10-31T03:46:48Z" level=warning msg="dconf entry \"/com/ubuntu/simple/non-existent\" is not available on this machine" 241s === NAME TestGenerate/No_key_on_system 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Same_key_relocated_twice 241s === NAME TestGenerate/Array_of_integers 241s dconf_test.go:106: Serializing object for golden file 241s === CONT TestGenerate/Key_with_class 241s === NAME TestGenerate/Same_key_relocated_twice 241s dconf_test.go:106: Serializing object for golden file 241s === NAME TestGenerate/Key_with_class 241s dconf_test.go:106: Serializing object for golden file 241s --- PASS: TestGenerate (0.00s) 241s --- PASS: TestGenerate/Enum_does_not_exist (0.00s) 241s --- PASS: TestGenerate/Overridden_by_multiple_files,_last_wins (0.00s) 241s --- PASS: TestGenerate/Invalid_override_files_are_skipped (0.00s) 241s --- PASS: TestGenerate/Relocatable_key_overridden (0.01s) 241s --- PASS: TestGenerate/Double_key (0.00s) 241s --- PASS: TestGenerate/Override_with_session_takes_session_override (0.00s) 241s --- PASS: TestGenerate/Long_decimal_key_with_range_min_gt_0 (0.00s) 241s --- PASS: TestGenerate/NaN_min (0.00s) 241s --- PASS: TestGenerate/One_decimal_key_with_min_only (0.00s) 241s --- PASS: TestGenerate/Unsupported_key_type (0.00s) 241s --- PASS: TestGenerate/Description_starting_with_deprecated_mixed_case_is_ignored (0.00s) 241s --- PASS: TestGenerate/Long_decimal_key_with_range_min_lt_0 (0.00s) 241s --- PASS: TestGenerate/One_decimal_key_with_range (0.00s) 241s --- PASS: TestGenerate/Long_decimal_key (0.00s) 241s --- PASS: TestGenerate/Description_containing_deprecated_without_starting_by_it_is_not_ignored (0.00s) 241s --- PASS: TestGenerate/One_text_key (0.01s) 241s --- PASS: TestGenerate/Enums_in_other_files_are_converted_to_choices (0.00s) 241s --- PASS: TestGenerate/Override_without_session (0.00s) 241s --- PASS: TestGenerate/Override_with_no_matching_session_defaults_to_root_override (0.00s) 241s --- PASS: TestGenerate/Double_key_with_range (0.00s) 241s --- PASS: TestGenerate/One_decimal_key (0.00s) 241s --- PASS: TestGenerate/Array_of_strings (0.00s) 241s --- PASS: TestGenerate/Choices_are_loaded (0.00s) 241s --- PASS: TestGenerate/Invalid_min (0.00s) 241s --- PASS: TestGenerate/Valid_class_should_be_capitalized (0.00s) 241s --- PASS: TestGenerate/Invalid_class (0.00s) 241s --- PASS: TestGenerate/Malformed_XML_declaration_is_successfully_parsed (0.00s) 241s --- PASS: TestGenerate/Description_starting_with_obsolete_is_ignored (0.00s) 241s --- PASS: TestGenerate/Override_without_session_takes_default (0.00s) 241s --- PASS: TestGenerate/One_boolean_key (0.00s) 241s --- PASS: TestGenerate/Override_default_to_second_if_first_not_present (0.00s) 241s --- PASS: TestGenerate/One_decimal_key_with_max_only (0.00s) 241s --- PASS: TestGenerate/Invalid_schema_files (0.00s) 241s --- PASS: TestGenerate/Override_takes_first_session (0.00s) 241s --- PASS: TestGenerate/Relocatable_key (0.00s) 241s --- PASS: TestGenerate/Missing_XML_declaration_is_successfully_parsed (0.00s) 241s --- PASS: TestGenerate/Description_starting_with_deprecated_is_ignored (0.00s) 241s --- PASS: TestGenerate/Empty (0.00s) 241s --- PASS: TestGenerate/Inlined_Enums_are_converted_to_choices (0.00s) 241s --- PASS: TestGenerate/No_key_on_system (0.00s) 241s --- PASS: TestGenerate/Array_of_integers (0.00s) 241s --- PASS: TestGenerate/Same_key_relocated_twice (0.00s) 241s --- PASS: TestGenerate/Key_with_class (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad/admxgen/dconf 0.057s 241s === RUN TestSSSD 241s === PAUSE TestSSSD 241s === CONT TestSSSD 241s === RUN TestSSSD/Ignore_upper_cases_in_domain_name 241s === PAUSE TestSSSD/Ignore_upper_cases_in_domain_name 241s === RUN TestSSSD/No_sssd_conf_loads_the_default 241s === PAUSE TestSSSD/No_sssd_conf_loads_the_default 241s === RUN TestSSSD/ServerFQDN()_does_not_fail_when_we_do_not_need_an_active_server 241s === PAUSE TestSSSD/ServerFQDN()_does_not_fail_when_we_do_not_need_an_active_server 241s === RUN TestSSSD/SSSd_domain_can_not_match_ad_domain 241s === PAUSE TestSSSD/SSSd_domain_can_not_match_ad_domain 241s === RUN TestSSSD/Use_domain_from_section_if_no_ad_domain 241s === PAUSE TestSSSD/Use_domain_from_section_if_no_ad_domain 241s === RUN TestSSSD/Error_on_no_sssd_section 241s === PAUSE TestSSSD/Error_on_no_sssd_section 241s === RUN TestSSSD/Error_on_sssd_domain_empty_section 241s === PAUSE TestSSSD/Error_on_sssd_domain_empty_section 241s === RUN TestSSSD/Multiple_domains,_pick_first 241s === PAUSE TestSSSD/Multiple_domains,_pick_first 241s === RUN TestSSSD/Error_returned_by_IsOnline()__when_calls_is_erroring_out 241s === PAUSE TestSSSD/Error_returned_by_IsOnline()__when_calls_is_erroring_out 241s === RUN TestSSSD/Error_returned_by_ServerFQDN()_on_no_config_nor_active_server_provided 241s === PAUSE TestSSSD/Error_returned_by_ServerFQDN()_on_no_config_nor_active_server_provided 241s === RUN TestSSSD/Regular_config 241s === PAUSE TestSSSD/Regular_config 241s === RUN TestSSSD/Ad_server_starting_with_ldap_prefix_does_not_stutter 241s === PAUSE TestSSSD/Ad_server_starting_with_ldap_prefix_does_not_stutter 241s === RUN TestSSSD/Is_not_online 241s === PAUSE TestSSSD/Is_not_online 241s === RUN TestSSSD/Can_handle_special_DNS_domain_characters 241s === PAUSE TestSSSD/Can_handle_special_DNS_domain_characters 241s === RUN TestSSSD/Default_domain_suffix_is_read 241s === PAUSE TestSSSD/Default_domain_suffix_is_read 241s === RUN TestSSSD/Regular_config,_with_cache_dir 241s === PAUSE TestSSSD/Regular_config,_with_cache_dir 241s === RUN TestSSSD/Error_returned_by_ServerFQDN()_when_calls_is_erroring_out 241s === PAUSE TestSSSD/Error_returned_by_ServerFQDN()_when_calls_is_erroring_out 241s === RUN TestSSSD/Error_returned_by_ServerFQDN()_and_IsOnline()_when_DBUS_has_no_object 241s === PAUSE TestSSSD/Error_returned_by_ServerFQDN()_and_IsOnline()_when_DBUS_has_no_object 241s === RUN TestSSSD/Ad_server_defined_in_config_has_priority_over_active_server 241s === PAUSE TestSSSD/Ad_server_defined_in_config_has_priority_over_active_server 241s === RUN TestSSSD/Ad_server_defined_in_config_does_not_need_active_server 241s === PAUSE TestSSSD/Ad_server_defined_in_config_does_not_need_active_server 241s === RUN TestSSSD/Error_on_empty_domains_field 241s === PAUSE TestSSSD/Error_on_empty_domains_field 241s === RUN TestSSSD/Error_on_sssd_domain_section_missing 241s === PAUSE TestSSSD/Error_on_sssd_domain_section_missing 241s === RUN TestSSSD/Error_on_sssd_conf_does_not_exists 241s === PAUSE TestSSSD/Error_on_sssd_conf_does_not_exists 241s === RUN TestSSSD/Error_on_no_domains_field 241s === PAUSE TestSSSD/Error_on_no_domains_field 241s === CONT TestSSSD/Ignore_upper_cases_in_domain_name 241s === CONT TestSSSD/Error_on_no_domains_field 241s === CONT TestSSSD/Error_on_sssd_conf_does_not_exists 241s === CONT TestSSSD/Error_on_sssd_domain_section_missing 241s === CONT TestSSSD/Error_on_empty_domains_field 241s === CONT TestSSSD/Ad_server_defined_in_config_does_not_need_active_server 241s === CONT TestSSSD/Ad_server_defined_in_config_has_priority_over_active_server 241s === CONT TestSSSD/Error_returned_by_ServerFQDN()_when_calls_is_erroring_out 241s === CONT TestSSSD/Error_returned_by_ServerFQDN()_and_IsOnline()_when_DBUS_has_no_object 241s === CONT TestSSSD/Regular_config,_with_cache_dir 241s === CONT TestSSSD/Default_domain_suffix_is_read 241s === CONT TestSSSD/Can_handle_special_DNS_domain_characters 241s === CONT TestSSSD/Is_not_online 241s === CONT TestSSSD/Ad_server_starting_with_ldap_prefix_does_not_stutter 241s === CONT TestSSSD/Regular_config 241s === CONT TestSSSD/Error_returned_by_ServerFQDN()_on_no_config_nor_active_server_provided 241s === CONT TestSSSD/Error_returned_by_IsOnline()__when_calls_is_erroring_out 241s === CONT TestSSSD/Multiple_domains,_pick_first 241s === CONT TestSSSD/Error_on_sssd_domain_empty_section 241s === CONT TestSSSD/Error_on_no_sssd_section 241s === CONT TestSSSD/Use_domain_from_section_if_no_ad_domain 241s === CONT TestSSSD/SSSd_domain_can_not_match_ad_domain 241s === CONT TestSSSD/ServerFQDN()_does_not_fail_when_we_do_not_need_an_active_server 241s === CONT TestSSSD/No_sssd_conf_loads_the_default 241s --- PASS: TestSSSD (0.00s) 241s --- PASS: TestSSSD/Error_on_no_domains_field (0.00s) 241s --- PASS: TestSSSD/Error_on_sssd_conf_does_not_exists (0.00s) 241s --- PASS: TestSSSD/Error_on_sssd_domain_section_missing (0.00s) 241s --- PASS: TestSSSD/Error_on_empty_domains_field (0.00s) 241s --- PASS: TestSSSD/Ad_server_defined_in_config_does_not_need_active_server (0.00s) 241s --- PASS: TestSSSD/Ignore_upper_cases_in_domain_name (0.00s) 241s --- PASS: TestSSSD/Ad_server_defined_in_config_has_priority_over_active_server (0.00s) 241s --- PASS: TestSSSD/Error_returned_by_ServerFQDN()_and_IsOnline()_when_DBUS_has_no_object (0.00s) 241s --- PASS: TestSSSD/Error_returned_by_ServerFQDN()_when_calls_is_erroring_out (0.00s) 241s --- PASS: TestSSSD/Default_domain_suffix_is_read (0.00s) 241s --- PASS: TestSSSD/Regular_config,_with_cache_dir (0.00s) 241s --- PASS: TestSSSD/Can_handle_special_DNS_domain_characters (0.00s) 241s --- PASS: TestSSSD/Is_not_online (0.00s) 241s --- PASS: TestSSSD/Ad_server_starting_with_ldap_prefix_does_not_stutter (0.00s) 241s --- PASS: TestSSSD/Regular_config (0.00s) 241s --- PASS: TestSSSD/Error_returned_by_ServerFQDN()_on_no_config_nor_active_server_provided (0.00s) 241s --- PASS: TestSSSD/Error_returned_by_IsOnline()__when_calls_is_erroring_out (0.00s) 241s --- PASS: TestSSSD/Error_on_sssd_domain_empty_section (0.00s) 241s --- PASS: TestSSSD/Error_on_no_sssd_section (0.00s) 241s --- PASS: TestSSSD/Multiple_domains,_pick_first (0.00s) 241s --- PASS: TestSSSD/SSSd_domain_can_not_match_ad_domain (0.00s) 241s --- PASS: TestSSSD/Use_domain_from_section_if_no_ad_domain (0.00s) 241s --- PASS: TestSSSD/No_sssd_conf_loads_the_default (0.00s) 241s --- PASS: TestSSSD/ServerFQDN()_does_not_fail_when_we_do_not_need_an_active_server (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad/backends/sss 0.046s 241s === RUN TestWinbind 241s winbind_test.go:25: Running subprocess with [/tmp/go-build3318534642/b584/winbind.test -test.testlogfile=/tmp/go-build3318534642/b584/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true -test.run=TestWinbind] 241s === RUN TestWinbind 241s === RUN TestWinbind/Lookup_with_overridden_ad_domain 241s === RUN TestWinbind/Lookup_with_overridden_ad_server_with_LDAP_prefix 241s === RUN TestWinbind/Error_when_looking_up_domain 241s === RUN TestWinbind/Error_when_getting_online_status 241s === RUN TestWinbind/Error_when_domain_is_offline 241s === RUN TestWinbind/Lookup_is_successful 241s === RUN TestWinbind/Lookup_with_different_hostname_is_successful 241s === RUN TestWinbind/Error_when_requesting_krb5cc 241s === RUN TestWinbind/Lookup_with_overridden_ad_server 241s === RUN TestWinbind/Error_when_looking_up_DC_name 241s --- PASS: TestWinbind (0.10s) 241s --- PASS: TestWinbind/Lookup_with_overridden_ad_domain (0.01s) 241s --- PASS: TestWinbind/Lookup_with_overridden_ad_server_with_LDAP_prefix (0.01s) 241s --- PASS: TestWinbind/Error_when_looking_up_domain (0.00s) 241s --- PASS: TestWinbind/Error_when_getting_online_status (0.01s) 241s --- PASS: TestWinbind/Error_when_domain_is_offline (0.01s) 241s --- PASS: TestWinbind/Lookup_is_successful (0.01s) 241s --- PASS: TestWinbind/Lookup_with_different_hostname_is_successful (0.01s) 241s --- PASS: TestWinbind/Error_when_requesting_krb5cc (0.01s) 241s --- PASS: TestWinbind/Lookup_with_overridden_ad_server (0.01s) 241s --- PASS: TestWinbind/Error_when_looking_up_DC_name (0.02s) 241s PASS 241s --- PASS: TestWinbind (0.18s) 241s === RUN TestExecuteKinitCommand 241s --- PASS: TestExecuteKinitCommand (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad/backends/winbind 0.256s 241s === RUN TestGetVersionID 241s === PAUSE TestGetVersionID 241s === CONT TestGetVersionID 241s === RUN TestGetVersionID/Read_VERSION_ID 241s === PAUSE TestGetVersionID/Read_VERSION_ID 241s === RUN TestGetVersionID/No_VERSION_ID_in_file 241s === PAUSE TestGetVersionID/No_VERSION_ID_in_file 241s === RUN TestGetVersionID/No_os-release_file 241s === PAUSE TestGetVersionID/No_os-release_file 241s === CONT TestGetVersionID/Read_VERSION_ID 241s === CONT TestGetVersionID/No_os-release_file 241s === CONT TestGetVersionID/No_VERSION_ID_in_file 241s --- PASS: TestGetVersionID (0.00s) 241s --- PASS: TestGetVersionID/Read_VERSION_ID (0.00s) 241s --- PASS: TestGetVersionID/No_os-release_file (0.00s) 241s --- PASS: TestGetVersionID/No_VERSION_ID_in_file (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad/common 0.019s 241s === RUN TestReadPolicy 241s === PAUSE TestReadPolicy 241s === RUN TestDecodePolicy 241s === PAUSE TestDecodePolicy 241s === CONT TestReadPolicy 241s === RUN TestReadPolicy/no_header 241s === PAUSE TestReadPolicy/no_header 241s === RUN TestReadPolicy/one_element,_string_value 241s === PAUSE TestReadPolicy/one_element,_string_value 241s === RUN TestReadPolicy/memory_on_multiple_elements_dont_overlap 241s === PAUSE TestReadPolicy/memory_on_multiple_elements_dont_overlap 241s === RUN TestReadPolicy/section_separators_in_data 241s === PAUSE TestReadPolicy/section_separators_in_data 241s === RUN TestReadPolicy/invalid_header,_header_doesnt_match 241s === PAUSE TestReadPolicy/invalid_header,_header_doesnt_match 241s === RUN TestReadPolicy/invalid_header,_file_truncated 241s === PAUSE TestReadPolicy/invalid_header,_file_truncated 241s === RUN TestReadPolicy/semicolon_in_data 241s === PAUSE TestReadPolicy/semicolon_in_data 241s === RUN TestReadPolicy/very_large_gpo 241s === PAUSE TestReadPolicy/very_large_gpo 241s === RUN TestReadPolicy/empty_key 241s === PAUSE TestReadPolicy/empty_key 241s === RUN TestReadPolicy/empty_value 241s === PAUSE TestReadPolicy/empty_value 241s === RUN TestReadPolicy/header_only 241s === PAUSE TestReadPolicy/header_only 241s === RUN TestReadPolicy/empty_file 241s === PAUSE TestReadPolicy/empty_file 241s === RUN TestReadPolicy/section_not_closed 241s === PAUSE TestReadPolicy/section_not_closed 241s === RUN TestReadPolicy/missing_field 241s === PAUSE TestReadPolicy/missing_field 241s === RUN TestReadPolicy/key_is_not_utf16 241s === PAUSE TestReadPolicy/key_is_not_utf16 241s === RUN TestReadPolicy/value_is_not_utf16 241s === PAUSE TestReadPolicy/value_is_not_utf16 241s === RUN TestReadPolicy/invalid_header,_header_too_short 241s === PAUSE TestReadPolicy/invalid_header,_header_too_short 241s === RUN TestReadPolicy/one_element,_decimal_value 241s === PAUSE TestReadPolicy/one_element,_decimal_value 241s === RUN TestReadPolicy/two_elements 241s === PAUSE TestReadPolicy/two_elements 241s === RUN TestReadPolicy/exotic_return_type 241s === PAUSE TestReadPolicy/exotic_return_type 241s === CONT TestReadPolicy/no_header 241s === CONT TestDecodePolicy 241s === RUN TestDecodePolicy/missing_field 241s === PAUSE TestDecodePolicy/missing_field 241s === RUN TestDecodePolicy/key_is_not_utf16 241s === PAUSE TestDecodePolicy/key_is_not_utf16 241s === RUN TestDecodePolicy/empty_key 241s === PAUSE TestDecodePolicy/empty_key 241s === RUN TestDecodePolicy/one_element,_disabled 241s === PAUSE TestDecodePolicy/one_element,_disabled 241s === RUN TestDecodePolicy/policy_container_is_ignored_for_meta_of_wrong_type 241s === PAUSE TestDecodePolicy/policy_container_is_ignored_for_meta_of_wrong_type 241s === RUN TestDecodePolicy/two_containers_don’t_mix_their_meta_values,_even_if_second_has_none 241s === PAUSE TestDecodePolicy/two_containers_don’t_mix_their_meta_values,_even_if_second_has_none 241s === RUN TestDecodePolicy/no_header 241s === PAUSE TestDecodePolicy/no_header 241s === RUN TestDecodePolicy/two_elements 241s === CONT TestReadPolicy/header_only 241s === CONT TestReadPolicy/exotic_return_type 241s === CONT TestReadPolicy/two_elements 241s === CONT TestReadPolicy/one_element,_decimal_value 241s === CONT TestReadPolicy/invalid_header,_header_too_short 241s === CONT TestReadPolicy/value_is_not_utf16 241s === CONT TestReadPolicy/key_is_not_utf16 241s === CONT TestReadPolicy/missing_field 241s === CONT TestReadPolicy/section_not_closed 241s === CONT TestReadPolicy/empty_file 241s === CONT TestReadPolicy/invalid_header,_file_truncated 241s === CONT TestReadPolicy/empty_value 241s === CONT TestReadPolicy/empty_key 241s === CONT TestReadPolicy/very_large_gpo 241s === PAUSE TestDecodePolicy/two_elements 241s === RUN TestDecodePolicy/disabled_container_with_values_needs_a_DISABLED_marker 241s === PAUSE TestDecodePolicy/disabled_container_with_values_needs_a_DISABLED_marker 241s === RUN TestDecodePolicy/one_container_with_2_children_don’t_mix_their_meta_values 241s === PAUSE TestDecodePolicy/one_container_with_2_children_don’t_mix_their_meta_values 241s === RUN TestDecodePolicy/invalid_decimal_value 241s === PAUSE TestDecodePolicy/invalid_decimal_value 241s === RUN TestDecodePolicy/one_element,_string_value 241s === PAUSE TestDecodePolicy/one_element,_string_value 241s === RUN TestDecodePolicy/basic_type_with_default_value_needs_a_DISABLED_marker 241s === PAUSE TestDecodePolicy/basic_type_with_default_value_needs_a_DISABLED_marker 241s === RUN TestDecodePolicy/container_with_default_elements_are_ignored_on_int_option_values_(always_have_values) 241s === PAUSE TestDecodePolicy/container_with_default_elements_are_ignored_on_int_option_values_(always_have_values) 241s === RUN TestDecodePolicy/container_without_metavalues 241s === PAUSE TestDecodePolicy/container_without_metavalues 241s === RUN TestDecodePolicy/two_containers_don’t_mix_their_default_values_even_when_second_has_none 241s === PAUSE TestDecodePolicy/two_containers_don’t_mix_their_default_values_even_when_second_has_none 241s === RUN TestDecodePolicy/invalid_container_default_values 241s === PAUSE TestDecodePolicy/invalid_container_default_values 241s === RUN TestDecodePolicy/one_element,_multitext_value 241s === PAUSE TestDecodePolicy/one_element,_multitext_value 241s === RUN TestDecodePolicy/container_with_default_elements_override_empty_option_values 241s === PAUSE TestDecodePolicy/container_with_default_elements_override_empty_option_values 241s === RUN TestDecodePolicy/container_with_missing_default_element_for_option_values_have_empty_strings 241s === PAUSE TestDecodePolicy/container_with_missing_default_element_for_option_values_have_empty_strings 241s === RUN TestDecodePolicy/disabled_container_with_values_still_keep_meta_and_strategy_with_a_DISABLED_marker 241s === PAUSE TestDecodePolicy/disabled_container_with_values_still_keep_meta_and_strategy_with_a_DISABLED_marker 241s === RUN TestDecodePolicy/semicolon_in_data 241s === PAUSE TestDecodePolicy/semicolon_in_data 241s === RUN TestDecodePolicy/basic_type_with_strategy 241s === PAUSE TestDecodePolicy/basic_type_with_strategy 241s === RUN TestDecodePolicy/header_only 241s === PAUSE TestDecodePolicy/header_only 241s === RUN TestDecodePolicy/empty_file 241s === PAUSE TestDecodePolicy/empty_file 241s === RUN TestDecodePolicy/value_is_not_utf16 241s === PAUSE TestDecodePolicy/value_is_not_utf16 241s === RUN TestDecodePolicy/basic_type,_enabled 241s === PAUSE TestDecodePolicy/basic_type,_enabled 241s === RUN TestDecodePolicy/basic_type,_disabled 241s === PAUSE TestDecodePolicy/basic_type,_disabled 241s === RUN TestDecodePolicy/basic_type_with_default_value_has_value_filed_in 241s === PAUSE TestDecodePolicy/basic_type_with_default_value_has_value_filed_in 241s === RUN TestDecodePolicy/basic_type_with_a_DISABLED_marker_keeps_meta_and_strategy 241s === PAUSE TestDecodePolicy/basic_type_with_a_DISABLED_marker_keeps_meta_and_strategy 241s === RUN TestDecodePolicy/container_with_meta_elements_and_value_on_options 241s === PAUSE TestDecodePolicy/container_with_meta_elements_and_value_on_options 241s === RUN TestDecodePolicy/exotic_return_type 241s === PAUSE TestDecodePolicy/exotic_return_type 241s === RUN TestDecodePolicy/one_container_with_2_children_don’t_mix_their_default_values 241s === PAUSE TestDecodePolicy/one_container_with_2_children_don’t_mix_their_default_values 241s === RUN TestDecodePolicy/basic_type_is_ignored_for_meta_of_wrong_type 241s === PAUSE TestDecodePolicy/basic_type_is_ignored_for_meta_of_wrong_type 241s === RUN TestDecodePolicy/invalid_header,_header_too_short 241s === PAUSE TestDecodePolicy/invalid_header,_header_too_short 241s === RUN TestDecodePolicy/invalid_header,_file_truncated 241s === PAUSE TestDecodePolicy/invalid_header,_file_truncated 241s === RUN TestDecodePolicy/one_element,_decimal_value 241s === PAUSE TestDecodePolicy/one_element,_decimal_value 241s === RUN TestDecodePolicy/container_strategy_is_reflected_on_child 241s === PAUSE TestDecodePolicy/container_strategy_is_reflected_on_child 241s === RUN TestDecodePolicy/disabled_container_with_disabled_option_values 241s === PAUSE TestDecodePolicy/disabled_container_with_disabled_option_values 241s === RUN TestDecodePolicy/disabled_container_disables_its_option_values 241s === PAUSE TestDecodePolicy/disabled_container_disables_its_option_values 241s === RUN TestDecodePolicy/two_containers_don’t_mix_their_default_values_when_redefined 241s === PAUSE TestDecodePolicy/two_containers_don’t_mix_their_default_values_when_redefined 241s === RUN TestDecodePolicy/invalid_header,_header_doesnt_match 241s === PAUSE TestDecodePolicy/invalid_header,_header_doesnt_match 241s === RUN TestDecodePolicy/container_with_meta_elements_and_default_without_value_on_options 241s === PAUSE TestDecodePolicy/container_with_meta_elements_and_default_without_value_on_options 241s === RUN TestDecodePolicy/null_character_in_data 241s === PAUSE TestDecodePolicy/null_character_in_data 241s === RUN TestDecodePolicy/empty_value 241s === PAUSE TestDecodePolicy/empty_value 241s === RUN TestDecodePolicy/section_not_closed 241s === PAUSE TestDecodePolicy/section_not_closed 241s === RUN TestDecodePolicy/container_with_default_elements_are_ignored_on_non_empty_option_values 241s === PAUSE TestDecodePolicy/container_with_default_elements_are_ignored_on_non_empty_option_values 241s === RUN TestDecodePolicy/section_separators_in_data 241s === PAUSE TestDecodePolicy/section_separators_in_data 241s === RUN TestDecodePolicy/empty_data 241s === PAUSE TestDecodePolicy/empty_data 241s === CONT TestDecodePolicy/missing_field 241s === CONT TestReadPolicy/invalid_header,_header_doesnt_match 241s === CONT TestReadPolicy/section_separators_in_data 241s === CONT TestReadPolicy/memory_on_multiple_elements_dont_overlap 241s === CONT TestReadPolicy/one_element,_string_value 241s === CONT TestDecodePolicy/empty_data 241s === CONT TestDecodePolicy/section_separators_in_data 241s === CONT TestDecodePolicy/container_with_default_elements_are_ignored_on_non_empty_option_values 241s === CONT TestDecodePolicy/section_not_closed 241s === CONT TestDecodePolicy/empty_value 241s === CONT TestDecodePolicy/null_character_in_data 241s === CONT TestReadPolicy/semicolon_in_data 241s === CONT TestDecodePolicy/basic_type_with_strategy 241s === CONT TestDecodePolicy/container_with_meta_elements_and_default_without_value_on_options 241s === CONT TestDecodePolicy/two_containers_don’t_mix_their_default_values_when_redefined 241s --- PASS: TestReadPolicy (0.00s) 241s --- PASS: TestReadPolicy/no_header (0.00s) 241s --- PASS: TestReadPolicy/header_only (0.00s) 241s --- PASS: TestReadPolicy/exotic_return_type (0.00s) 241s --- PASS: TestReadPolicy/two_elements (0.00s) 241s --- PASS: TestReadPolicy/one_element,_decimal_value (0.00s) 241s --- PASS: TestReadPolicy/invalid_header,_header_too_short (0.00s) 241s --- PASS: TestReadPolicy/value_is_not_utf16 (0.00s) 241s --- PASS: TestReadPolicy/key_is_not_utf16 (0.00s) 241s --- PASS: TestReadPolicy/missing_field (0.00s) 241s --- PASS: TestReadPolicy/section_not_closed (0.00s) 241s --- PASS: TestReadPolicy/empty_file (0.00s) 241s --- PASS: TestReadPolicy/invalid_header,_file_truncated (0.00s) 241s --- PASS: TestReadPolicy/empty_value (0.00s) 241s --- PASS: TestReadPolicy/empty_key (0.00s) 241s --- PASS: TestReadPolicy/invalid_header,_header_doesnt_match (0.00s) 241s --- PASS: TestReadPolicy/section_separators_in_data (0.00s) 241s --- PASS: TestReadPolicy/memory_on_multiple_elements_dont_overlap (0.00s) 241s --- PASS: TestReadPolicy/one_element,_string_value (0.00s) 241s --- PASS: TestReadPolicy/semicolon_in_data (0.00s) 241s --- PASS: TestReadPolicy/very_large_gpo (0.02s) 241s === CONT TestDecodePolicy/invalid_header,_header_doesnt_match 241s === CONT TestDecodePolicy/disabled_container_disables_its_option_values 241s === CONT TestDecodePolicy/disabled_container_with_disabled_option_values 241s === CONT TestDecodePolicy/container_strategy_is_reflected_on_child 241s === CONT TestDecodePolicy/one_element,_decimal_value 241s === CONT TestDecodePolicy/invalid_header,_file_truncated 241s === CONT TestDecodePolicy/invalid_header,_header_too_short 241s === CONT TestDecodePolicy/basic_type_is_ignored_for_meta_of_wrong_type 241s === CONT TestDecodePolicy/one_container_with_2_children_don’t_mix_their_default_values 241s === CONT TestDecodePolicy/exotic_return_type 241s === CONT TestDecodePolicy/container_with_meta_elements_and_value_on_options 241s === CONT TestDecodePolicy/basic_type_with_a_DISABLED_marker_keeps_meta_and_strategy 241s === CONT TestDecodePolicy/basic_type_with_default_value_has_value_filed_in 241s === CONT TestDecodePolicy/basic_type,_disabled 241s === CONT TestDecodePolicy/basic_type,_enabled 241s === CONT TestDecodePolicy/value_is_not_utf16 241s === CONT TestDecodePolicy/empty_file 241s === CONT TestDecodePolicy/header_only 241s === CONT TestDecodePolicy/one_element,_string_value 241s === CONT TestDecodePolicy/semicolon_in_data 241s === CONT TestDecodePolicy/disabled_container_with_values_still_keep_meta_and_strategy_with_a_DISABLED_marker 241s === CONT TestDecodePolicy/container_with_missing_default_element_for_option_values_have_empty_strings 241s === CONT TestDecodePolicy/container_with_default_elements_override_empty_option_values 241s === CONT TestDecodePolicy/one_element,_multitext_value 241s === CONT TestDecodePolicy/invalid_container_default_values 241s === CONT TestDecodePolicy/two_containers_don’t_mix_their_default_values_even_when_second_has_none 241s === CONT TestDecodePolicy/container_without_metavalues 241s === CONT TestDecodePolicy/container_with_default_elements_are_ignored_on_int_option_values_(always_have_values) 241s === CONT TestDecodePolicy/basic_type_with_default_value_needs_a_DISABLED_marker 241s === CONT TestDecodePolicy/invalid_decimal_value 241s === CONT TestDecodePolicy/one_container_with_2_children_don’t_mix_their_meta_values 241s === CONT TestDecodePolicy/no_header 241s === CONT TestDecodePolicy/disabled_container_with_values_needs_a_DISABLED_marker 241s === CONT TestDecodePolicy/two_elements 241s === CONT TestDecodePolicy/one_element,_disabled 241s === CONT TestDecodePolicy/two_containers_don’t_mix_their_meta_values,_even_if_second_has_none 241s === CONT TestDecodePolicy/policy_container_is_ignored_for_meta_of_wrong_type 241s === CONT TestDecodePolicy/empty_key 241s === CONT TestDecodePolicy/key_is_not_utf16 241s --- PASS: TestDecodePolicy (0.00s) 241s --- PASS: TestDecodePolicy/missing_field (0.00s) 241s --- PASS: TestDecodePolicy/empty_data (0.00s) 241s --- PASS: TestDecodePolicy/section_separators_in_data (0.00s) 241s --- PASS: TestDecodePolicy/container_with_default_elements_are_ignored_on_non_empty_option_values (0.00s) 241s --- PASS: TestDecodePolicy/section_not_closed (0.00s) 241s --- PASS: TestDecodePolicy/empty_value (0.00s) 241s --- PASS: TestDecodePolicy/null_character_in_data (0.00s) 241s --- PASS: TestDecodePolicy/basic_type_with_strategy (0.00s) 241s --- PASS: TestDecodePolicy/container_with_meta_elements_and_default_without_value_on_options (0.00s) 241s --- PASS: TestDecodePolicy/two_containers_don’t_mix_their_default_values_when_redefined (0.00s) 241s --- PASS: TestDecodePolicy/disabled_container_disables_its_option_values (0.00s) 241s --- PASS: TestDecodePolicy/disabled_container_with_disabled_option_values (0.00s) 241s --- PASS: TestDecodePolicy/container_strategy_is_reflected_on_child (0.00s) 241s --- PASS: TestDecodePolicy/one_element,_decimal_value (0.00s) 241s --- PASS: TestDecodePolicy/invalid_header,_file_truncated (0.00s) 241s --- PASS: TestDecodePolicy/invalid_header,_header_too_short (0.00s) 241s --- PASS: TestDecodePolicy/basic_type_is_ignored_for_meta_of_wrong_type (0.00s) 241s --- PASS: TestDecodePolicy/one_container_with_2_children_don’t_mix_their_default_values (0.00s) 241s --- PASS: TestDecodePolicy/invalid_header,_header_doesnt_match (0.00s) 241s --- PASS: TestDecodePolicy/container_with_meta_elements_and_value_on_options (0.00s) 241s --- PASS: TestDecodePolicy/basic_type_with_a_DISABLED_marker_keeps_meta_and_strategy (0.00s) 241s --- PASS: TestDecodePolicy/basic_type_with_default_value_has_value_filed_in (0.00s) 241s --- PASS: TestDecodePolicy/basic_type,_disabled (0.00s) 241s --- PASS: TestDecodePolicy/basic_type,_enabled (0.00s) 241s --- PASS: TestDecodePolicy/value_is_not_utf16 (0.00s) 241s --- PASS: TestDecodePolicy/empty_file (0.00s) 241s --- PASS: TestDecodePolicy/exotic_return_type (0.00s) 241s --- PASS: TestDecodePolicy/one_element,_string_value (0.00s) 241s --- PASS: TestDecodePolicy/semicolon_in_data (0.00s) 241s --- PASS: TestDecodePolicy/disabled_container_with_values_still_keep_meta_and_strategy_with_a_DISABLED_marker (0.00s) 241s --- PASS: TestDecodePolicy/container_with_missing_default_element_for_option_values_have_empty_strings (0.00s) 241s --- PASS: TestDecodePolicy/container_with_default_elements_override_empty_option_values (0.00s) 241s --- PASS: TestDecodePolicy/one_element,_multitext_value (0.00s) 241s --- PASS: TestDecodePolicy/invalid_container_default_values (0.00s) 241s --- PASS: TestDecodePolicy/two_containers_don’t_mix_their_default_values_even_when_second_has_none (0.00s) 241s --- PASS: TestDecodePolicy/header_only (0.00s) 241s --- PASS: TestDecodePolicy/container_with_default_elements_are_ignored_on_int_option_values_(always_have_values) (0.00s) 241s --- PASS: TestDecodePolicy/basic_type_with_default_value_needs_a_DISABLED_marker (0.00s) 241s --- PASS: TestDecodePolicy/container_without_metavalues (0.00s) 241s --- PASS: TestDecodePolicy/invalid_decimal_value (0.00s) 241s --- PASS: TestDecodePolicy/no_header (0.00s) 241s --- PASS: TestDecodePolicy/disabled_container_with_values_needs_a_DISABLED_marker (0.00s) 241s --- PASS: TestDecodePolicy/two_elements (0.00s) 241s --- PASS: TestDecodePolicy/one_element,_disabled (0.00s) 241s --- PASS: TestDecodePolicy/two_containers_don’t_mix_their_meta_values,_even_if_second_has_none (0.00s) 241s --- PASS: TestDecodePolicy/policy_container_is_ignored_for_meta_of_wrong_type (0.00s) 241s --- PASS: TestDecodePolicy/empty_key (0.00s) 241s --- PASS: TestDecodePolicy/key_is_not_utf16 (0.00s) 241s --- PASS: TestDecodePolicy/one_container_with_2_children_don’t_mix_their_meta_values (0.00s) 241s === RUN FuzzDecodePolicy 241s === RUN FuzzDecodePolicy/seed#0 241s === RUN FuzzDecodePolicy/seed#1 241s === RUN FuzzDecodePolicy/seed#2 241s === RUN FuzzDecodePolicy/seed#3 241s === RUN FuzzDecodePolicy/seed#4 241s === RUN FuzzDecodePolicy/seed#5 241s === RUN FuzzDecodePolicy/seed#6 241s === RUN FuzzDecodePolicy/seed#7 241s === RUN FuzzDecodePolicy/seed#8 241s === RUN FuzzDecodePolicy/seed#9 241s === RUN FuzzDecodePolicy/seed#10 241s === RUN FuzzDecodePolicy/seed#11 241s === RUN FuzzDecodePolicy/seed#12 241s === RUN FuzzDecodePolicy/seed#13 241s === RUN FuzzDecodePolicy/seed#14 241s === RUN FuzzDecodePolicy/seed#15 241s === RUN FuzzDecodePolicy/seed#16 241s === RUN FuzzDecodePolicy/seed#17 241s === RUN FuzzDecodePolicy/seed#18 241s === RUN FuzzDecodePolicy/seed#19 241s === RUN FuzzDecodePolicy/seed#20 241s === RUN FuzzDecodePolicy/seed#21 241s === RUN FuzzDecodePolicy/seed#22 241s === RUN FuzzDecodePolicy/seed#23 241s === RUN FuzzDecodePolicy/seed#24 241s === RUN FuzzDecodePolicy/seed#25 241s === RUN FuzzDecodePolicy/seed#26 241s === RUN FuzzDecodePolicy/seed#27 241s === RUN FuzzDecodePolicy/seed#28 241s === RUN FuzzDecodePolicy/seed#29 241s === RUN FuzzDecodePolicy/seed#30 241s === RUN FuzzDecodePolicy/seed#31 241s === RUN FuzzDecodePolicy/seed#32 241s === RUN FuzzDecodePolicy/seed#33 241s === RUN FuzzDecodePolicy/seed#34 241s === RUN FuzzDecodePolicy/seed#35 241s === RUN FuzzDecodePolicy/seed#36 241s === RUN FuzzDecodePolicy/seed#37 241s === RUN FuzzDecodePolicy/seed#38 241s === RUN FuzzDecodePolicy/seed#39 241s === RUN FuzzDecodePolicy/seed#40 241s === RUN FuzzDecodePolicy/seed#41 241s === RUN FuzzDecodePolicy/seed#42 241s === RUN FuzzDecodePolicy/seed#43 241s === RUN FuzzDecodePolicy/seed#44 241s === RUN FuzzDecodePolicy/seed#45 241s === RUN FuzzDecodePolicy/seed#46 241s === RUN FuzzDecodePolicy/seed#47 241s === RUN FuzzDecodePolicy/seed#48 241s === RUN FuzzDecodePolicy/seed#49 241s === RUN FuzzDecodePolicy/seed#50 241s === RUN FuzzDecodePolicy/seed#51 241s === RUN FuzzDecodePolicy/seed#52 241s === RUN FuzzDecodePolicy/seed#53 241s === RUN FuzzDecodePolicy/0062cd090fe349d2 241s === RUN FuzzDecodePolicy/04b7526092323e1c 241s === RUN FuzzDecodePolicy/0defa8b97933a28f 241s === RUN FuzzDecodePolicy/133d1110defea029 241s === RUN FuzzDecodePolicy/1417961320cddc32 241s === RUN FuzzDecodePolicy/18ca9a9ddd9b04c5 241s === RUN FuzzDecodePolicy/1b6cf53b6668b5b8 241s === RUN FuzzDecodePolicy/1b723f18e7bbd2bd 241s === RUN FuzzDecodePolicy/1fa4e44bc7eaab2b 241s === RUN FuzzDecodePolicy/20bb28e943f3a163 241s === RUN FuzzDecodePolicy/20f9df382d135424 241s === RUN FuzzDecodePolicy/21a02646df37f4a3 241s === RUN FuzzDecodePolicy/222e7dcc7ccf2b94 241s === RUN FuzzDecodePolicy/263b842aaa06d620 241s === RUN FuzzDecodePolicy/28ee70a86ff08ae5 241s === RUN FuzzDecodePolicy/298aa48ef602f955 241s === RUN FuzzDecodePolicy/2cb06d9f4d5ffe78 241s === RUN FuzzDecodePolicy/2e90d7e4f1973efd 241s === RUN FuzzDecodePolicy/2f2f939e0f0a5dfa 241s === RUN FuzzDecodePolicy/2f559466be2bb6db 241s === RUN FuzzDecodePolicy/3183a1d080909e99 241s === RUN FuzzDecodePolicy/31b9c4efbfccaa4b 241s === RUN FuzzDecodePolicy/33661e4c5fce45df 241s === RUN FuzzDecodePolicy/33c1677cf59487f5 241s === RUN FuzzDecodePolicy/3a49e3a9b34e7ca0 241s === RUN FuzzDecodePolicy/3f5a8494482ab97f 241s === RUN FuzzDecodePolicy/40a5045c4171f005 241s === RUN FuzzDecodePolicy/44e971d5bd7f28b3 241s === RUN FuzzDecodePolicy/44ef800113434b04 241s === RUN FuzzDecodePolicy/471661e7b661c53d 241s === RUN FuzzDecodePolicy/476ca3647151c006 241s === RUN FuzzDecodePolicy/4843648786c70b38 241s === RUN FuzzDecodePolicy/48ca8b9fbeccc5a8 241s === RUN FuzzDecodePolicy/4a75b70e3bbd2aee 241s === RUN FuzzDecodePolicy/4ab54fbe4f748f85 241s === RUN FuzzDecodePolicy/4b03a60474b90bbd 241s === RUN FuzzDecodePolicy/4cf871ee411324fb 241s === RUN FuzzDecodePolicy/4f1d38c1e12aef6a 241s === RUN FuzzDecodePolicy/5044e53350040819 241s === RUN FuzzDecodePolicy/504944f54851313c 241s === RUN FuzzDecodePolicy/582528ddfad69eb5 241s === RUN FuzzDecodePolicy/593a3ee315061853 241s === RUN FuzzDecodePolicy/59d23806a24221a5 241s === RUN FuzzDecodePolicy/5a29ff4d9005ba8b 241s === RUN FuzzDecodePolicy/5f0ada98ca1ad1a9 241s === RUN FuzzDecodePolicy/62a8dced0efc9d72 241s === RUN FuzzDecodePolicy/68c1564da597fea0 241s === RUN FuzzDecodePolicy/69603dec84f1482b 241s === RUN FuzzDecodePolicy/6960c361007d8825 241s === RUN FuzzDecodePolicy/699e9d8d0197487d 241s === RUN FuzzDecodePolicy/6ccb1b379873af9f 241s === RUN FuzzDecodePolicy/6d1b1e240f60f6c9 241s === RUN FuzzDecodePolicy/6d3215f003388cf1 241s === RUN FuzzDecodePolicy/6d817b46e0caad15 241s === RUN FuzzDecodePolicy/6dc2686e428754f3 241s === RUN FuzzDecodePolicy/6ddc8b3bed7c0e39 241s === RUN FuzzDecodePolicy/6e0990202f9b9d55 241s === RUN FuzzDecodePolicy/6e1da4d6ea90bc7a 241s === RUN FuzzDecodePolicy/6f0e2fcef25f63cf 241s === RUN FuzzDecodePolicy/72cca4222533d089 241s === RUN FuzzDecodePolicy/731d3b5bde9cc690 241s === RUN FuzzDecodePolicy/7361de35bf70bf17 241s === RUN FuzzDecodePolicy/749f16c9bc3cc87e 241s === RUN FuzzDecodePolicy/74ac7250a3338978 241s === RUN FuzzDecodePolicy/758383ad78d1ddd4 241s === RUN FuzzDecodePolicy/76f1ccb3afa04e6e 241s === RUN FuzzDecodePolicy/795ceb881d4221e3 241s === RUN FuzzDecodePolicy/7b60c5de747214b6 241s === RUN FuzzDecodePolicy/7bc7f7ba36ff22f5 241s === RUN FuzzDecodePolicy/7f3faed21426db2f 241s === RUN FuzzDecodePolicy/82a803231677d0f5 241s === RUN FuzzDecodePolicy/837bc22f260799fd 241s === RUN FuzzDecodePolicy/85315bd4891f6c1e 241s === RUN FuzzDecodePolicy/867b5ab9e5d21aea 241s === RUN FuzzDecodePolicy/888de5c9e80ce3b0 241s === RUN FuzzDecodePolicy/8a61b9487446d726 241s === RUN FuzzDecodePolicy/8b0f0dee6f9a48fd 241s === RUN FuzzDecodePolicy/8e8f4e91b7c5bfd0 241s === RUN FuzzDecodePolicy/8f19b0f96affeba8 241s === RUN FuzzDecodePolicy/9334c46469323973 241s === RUN FuzzDecodePolicy/9604c69b88bc6151 241s === RUN FuzzDecodePolicy/963211680af6bd1a 241s === RUN FuzzDecodePolicy/972db90b4d6a1d5b 241s === RUN FuzzDecodePolicy/985ec3cbf457896a 241s === RUN FuzzDecodePolicy/997536fa86bbbc34 241s === RUN FuzzDecodePolicy/9acd70418e457d18 241s === RUN FuzzDecodePolicy/9b0a4105f1089a20 241s === RUN FuzzDecodePolicy/9d8cdc0719c46928 241s === RUN FuzzDecodePolicy/9e6f333572766a4b 241s === RUN FuzzDecodePolicy/9e943f761adfbbd0 241s === RUN FuzzDecodePolicy/a1698d53f5c4d82d 241s === RUN FuzzDecodePolicy/a1841a4689867471 241s === RUN FuzzDecodePolicy/a26ca284000eeff9 241s === RUN FuzzDecodePolicy/a552164bb872fda4 241s === RUN FuzzDecodePolicy/a9c5e443bf44c80d 241s === RUN FuzzDecodePolicy/ac277569a745611f 241s === RUN FuzzDecodePolicy/ac53c3dce7a4706d 241s === RUN FuzzDecodePolicy/ada28ad70c7345f1 241s === RUN FuzzDecodePolicy/adb9a13c291b7e8c 241s === RUN FuzzDecodePolicy/aeb9d5c55731dae0 241s === RUN FuzzDecodePolicy/af71c7d394bbf535 241s === RUN FuzzDecodePolicy/b0ecd34477c6628e 241s === RUN FuzzDecodePolicy/b1585b9aa01c16b3 241s === RUN FuzzDecodePolicy/b6264d058ed4028a 241s === RUN FuzzDecodePolicy/b6790bea1e752c32 241s === RUN FuzzDecodePolicy/b741e8aa6c8179ba 241s === RUN FuzzDecodePolicy/b9032509681e867b 241s === RUN FuzzDecodePolicy/bb684f658455e982 241s === RUN FuzzDecodePolicy/bc6ddfc82e38438b 241s === RUN FuzzDecodePolicy/bf4f46d3858edb39 241s === RUN FuzzDecodePolicy/bfdd1bd65b5f5c04 241s === RUN FuzzDecodePolicy/c01841582b4cdc2f 241s === RUN FuzzDecodePolicy/c340eca55c3c30e3 241s === RUN FuzzDecodePolicy/c39235a2f77e92fd 241s === RUN FuzzDecodePolicy/c4d9def3916de265 241s === RUN FuzzDecodePolicy/c610d176a1726c39 241s === RUN FuzzDecodePolicy/ca683af05a78b772 241s === RUN FuzzDecodePolicy/cac340cbf4f81f48 241s === RUN FuzzDecodePolicy/ccdaead0f44dc069 241s === RUN FuzzDecodePolicy/ce8467c12ac1478e 241s === RUN FuzzDecodePolicy/cebcbd67b0b51d54 241s === RUN FuzzDecodePolicy/cf318b520a8e55be 241s === RUN FuzzDecodePolicy/cf592b0a6a725d1c 241s === RUN FuzzDecodePolicy/d0b8dc40737b3ff0 241s === RUN FuzzDecodePolicy/d2969c8e25b51895 241s === RUN FuzzDecodePolicy/d4e956bdff66867a 241s === RUN FuzzDecodePolicy/d5b932675c6ca808 241s === RUN FuzzDecodePolicy/dac7bf5435c51dea 241s === RUN FuzzDecodePolicy/dddc8d06ef526aba 241s === RUN FuzzDecodePolicy/e3065cb3ac7c0f78 241s === RUN FuzzDecodePolicy/e4242a66193c4579 241s === RUN FuzzDecodePolicy/e4a4780eb4ee185b 241s === RUN FuzzDecodePolicy/e5b22ed07e48d3fb 241s === RUN FuzzDecodePolicy/e7e4a84593481e49 241s === RUN FuzzDecodePolicy/e8030826b4125cbb 241s === RUN FuzzDecodePolicy/e923261af5ebad81 241s === RUN FuzzDecodePolicy/ea426f6b8bedc4d6 241s === RUN FuzzDecodePolicy/ead723bc16638dcb 241s === RUN FuzzDecodePolicy/f131b8f78f028a54 241s === RUN FuzzDecodePolicy/f1c1d58ecbe0d6dd 241s === RUN FuzzDecodePolicy/f3313a9f40c82a87 241s === RUN FuzzDecodePolicy/f4f490e788a76488 241s === RUN FuzzDecodePolicy/fa7acaf11cff6812 241s === RUN FuzzDecodePolicy/fb991a0182b5fe4d 241s === RUN FuzzDecodePolicy/fc0deb922246d3b7 241s === RUN FuzzDecodePolicy/fccd118f10988218 241s === RUN FuzzDecodePolicy/fe9d2018570dc6c6 241s === RUN FuzzDecodePolicy/ffd2d2b4544a818d 241s === RUN FuzzDecodePolicy/ffd60d90486b3974 241s === RUN FuzzDecodePolicy/regression-test-input-333 241s --- PASS: FuzzDecodePolicy (0.37s) 241s --- PASS: FuzzDecodePolicy/seed#0 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#1 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#2 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#3 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#4 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#5 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#6 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#7 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#8 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#9 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#10 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#11 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#12 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#13 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#14 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#15 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#16 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#17 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#18 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#19 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#20 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#21 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#22 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#23 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#24 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#25 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#26 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#27 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#28 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#29 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#30 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#31 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#32 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#33 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#34 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#35 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#36 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#37 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#38 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#39 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#40 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#41 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#42 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#43 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#44 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#45 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#46 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#47 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#48 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#49 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#50 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#51 (0.00s) 241s --- PASS: FuzzDecodePolicy/seed#52 (0.02s) 241s --- PASS: FuzzDecodePolicy/seed#53 (0.00s) 241s --- PASS: FuzzDecodePolicy/0062cd090fe349d2 (0.00s) 241s --- PASS: FuzzDecodePolicy/04b7526092323e1c (0.00s) 241s --- PASS: FuzzDecodePolicy/0defa8b97933a28f (0.00s) 241s --- PASS: FuzzDecodePolicy/133d1110defea029 (0.00s) 241s --- PASS: FuzzDecodePolicy/1417961320cddc32 (0.00s) 241s --- PASS: FuzzDecodePolicy/18ca9a9ddd9b04c5 (0.00s) 241s --- PASS: FuzzDecodePolicy/1b6cf53b6668b5b8 (0.00s) 241s --- PASS: FuzzDecodePolicy/1b723f18e7bbd2bd (0.00s) 241s --- PASS: FuzzDecodePolicy/1fa4e44bc7eaab2b (0.00s) 241s --- PASS: FuzzDecodePolicy/20bb28e943f3a163 (0.00s) 241s --- PASS: FuzzDecodePolicy/20f9df382d135424 (0.00s) 241s --- PASS: FuzzDecodePolicy/21a02646df37f4a3 (0.00s) 241s --- PASS: FuzzDecodePolicy/222e7dcc7ccf2b94 (0.00s) 241s --- PASS: FuzzDecodePolicy/263b842aaa06d620 (0.00s) 241s --- PASS: FuzzDecodePolicy/28ee70a86ff08ae5 (0.00s) 241s --- PASS: FuzzDecodePolicy/298aa48ef602f955 (0.00s) 241s --- PASS: FuzzDecodePolicy/2cb06d9f4d5ffe78 (0.00s) 241s --- PASS: FuzzDecodePolicy/2e90d7e4f1973efd (0.00s) 241s --- PASS: FuzzDecodePolicy/2f2f939e0f0a5dfa (0.00s) 241s --- PASS: FuzzDecodePolicy/2f559466be2bb6db (0.00s) 241s --- PASS: FuzzDecodePolicy/3183a1d080909e99 (0.00s) 241s --- PASS: FuzzDecodePolicy/31b9c4efbfccaa4b (0.00s) 241s --- PASS: FuzzDecodePolicy/33661e4c5fce45df (0.00s) 241s --- PASS: FuzzDecodePolicy/33c1677cf59487f5 (0.00s) 241s --- PASS: FuzzDecodePolicy/3a49e3a9b34e7ca0 (0.00s) 241s --- PASS: FuzzDecodePolicy/3f5a8494482ab97f (0.00s) 241s --- PASS: FuzzDecodePolicy/40a5045c4171f005 (0.00s) 241s --- PASS: FuzzDecodePolicy/44e971d5bd7f28b3 (0.00s) 241s --- PASS: FuzzDecodePolicy/44ef800113434b04 (0.03s) 241s --- PASS: FuzzDecodePolicy/471661e7b661c53d (0.00s) 241s --- PASS: FuzzDecodePolicy/476ca3647151c006 (0.00s) 241s --- PASS: FuzzDecodePolicy/4843648786c70b38 (0.00s) 241s --- PASS: FuzzDecodePolicy/48ca8b9fbeccc5a8 (0.00s) 241s --- PASS: FuzzDecodePolicy/4a75b70e3bbd2aee (0.00s) 241s --- PASS: FuzzDecodePolicy/4ab54fbe4f748f85 (0.00s) 241s --- PASS: FuzzDecodePolicy/4b03a60474b90bbd (0.00s) 241s --- PASS: FuzzDecodePolicy/4cf871ee411324fb (0.00s) 241s --- PASS: FuzzDecodePolicy/4f1d38c1e12aef6a (0.00s) 241s --- PASS: FuzzDecodePolicy/5044e53350040819 (0.00s) 241s --- PASS: FuzzDecodePolicy/504944f54851313c (0.00s) 241s --- PASS: FuzzDecodePolicy/582528ddfad69eb5 (0.00s) 241s --- PASS: FuzzDecodePolicy/593a3ee315061853 (0.00s) 241s --- PASS: FuzzDecodePolicy/59d23806a24221a5 (0.00s) 241s --- PASS: FuzzDecodePolicy/5a29ff4d9005ba8b (0.00s) 241s --- PASS: FuzzDecodePolicy/5f0ada98ca1ad1a9 (0.00s) 241s --- PASS: FuzzDecodePolicy/62a8dced0efc9d72 (0.01s) 241s --- PASS: FuzzDecodePolicy/68c1564da597fea0 (0.00s) 241s --- PASS: FuzzDecodePolicy/69603dec84f1482b (0.00s) 241s --- PASS: FuzzDecodePolicy/6960c361007d8825 (0.00s) 241s --- PASS: FuzzDecodePolicy/699e9d8d0197487d (0.00s) 241s --- PASS: FuzzDecodePolicy/6ccb1b379873af9f (0.00s) 241s --- PASS: FuzzDecodePolicy/6d1b1e240f60f6c9 (0.00s) 241s --- PASS: FuzzDecodePolicy/6d3215f003388cf1 (0.00s) 241s --- PASS: FuzzDecodePolicy/6d817b46e0caad15 (0.00s) 241s --- PASS: FuzzDecodePolicy/6dc2686e428754f3 (0.00s) 241s --- PASS: FuzzDecodePolicy/6ddc8b3bed7c0e39 (0.00s) 241s --- PASS: FuzzDecodePolicy/6e0990202f9b9d55 (0.00s) 241s --- PASS: FuzzDecodePolicy/6e1da4d6ea90bc7a (0.00s) 241s --- PASS: FuzzDecodePolicy/6f0e2fcef25f63cf (0.00s) 241s --- PASS: FuzzDecodePolicy/72cca4222533d089 (0.00s) 241s --- PASS: FuzzDecodePolicy/731d3b5bde9cc690 (0.00s) 241s --- PASS: FuzzDecodePolicy/7361de35bf70bf17 (0.00s) 241s --- PASS: FuzzDecodePolicy/749f16c9bc3cc87e (0.00s) 241s --- PASS: FuzzDecodePolicy/74ac7250a3338978 (0.00s) 241s --- PASS: FuzzDecodePolicy/758383ad78d1ddd4 (0.00s) 241s --- PASS: FuzzDecodePolicy/76f1ccb3afa04e6e (0.00s) 241s --- PASS: FuzzDecodePolicy/795ceb881d4221e3 (0.00s) 241s --- PASS: FuzzDecodePolicy/7b60c5de747214b6 (0.06s) 241s --- PASS: FuzzDecodePolicy/7bc7f7ba36ff22f5 (0.00s) 241s --- PASS: FuzzDecodePolicy/7f3faed21426db2f (0.00s) 241s --- PASS: FuzzDecodePolicy/82a803231677d0f5 (0.00s) 241s --- PASS: FuzzDecodePolicy/837bc22f260799fd (0.00s) 241s --- PASS: FuzzDecodePolicy/85315bd4891f6c1e (0.00s) 241s --- PASS: FuzzDecodePolicy/867b5ab9e5d21aea (0.00s) 241s --- PASS: FuzzDecodePolicy/888de5c9e80ce3b0 (0.01s) 241s --- PASS: FuzzDecodePolicy/8a61b9487446d726 (0.00s) 241s --- PASS: FuzzDecodePolicy/8b0f0dee6f9a48fd (0.00s) 241s --- PASS: FuzzDecodePolicy/8e8f4e91b7c5bfd0 (0.00s) 241s --- PASS: FuzzDecodePolicy/8f19b0f96affeba8 (0.00s) 241s --- PASS: FuzzDecodePolicy/9334c46469323973 (0.00s) 241s --- PASS: FuzzDecodePolicy/9604c69b88bc6151 (0.00s) 241s --- PASS: FuzzDecodePolicy/963211680af6bd1a (0.00s) 241s --- PASS: FuzzDecodePolicy/972db90b4d6a1d5b (0.00s) 241s --- PASS: FuzzDecodePolicy/985ec3cbf457896a (0.00s) 241s --- PASS: FuzzDecodePolicy/997536fa86bbbc34 (0.00s) 241s --- PASS: FuzzDecodePolicy/9acd70418e457d18 (0.00s) 241s --- PASS: FuzzDecodePolicy/9b0a4105f1089a20 (0.00s) 241s --- PASS: FuzzDecodePolicy/9d8cdc0719c46928 (0.00s) 241s --- PASS: FuzzDecodePolicy/9e6f333572766a4b (0.00s) 241s --- PASS: FuzzDecodePolicy/9e943f761adfbbd0 (0.00s) 241s --- PASS: FuzzDecodePolicy/a1698d53f5c4d82d (0.00s) 241s --- PASS: FuzzDecodePolicy/a1841a4689867471 (0.00s) 241s --- PASS: FuzzDecodePolicy/a26ca284000eeff9 (0.00s) 241s --- PASS: FuzzDecodePolicy/a552164bb872fda4 (0.00s) 241s --- PASS: FuzzDecodePolicy/a9c5e443bf44c80d (0.00s) 241s --- PASS: FuzzDecodePolicy/ac277569a745611f (0.00s) 241s --- PASS: FuzzDecodePolicy/ac53c3dce7a4706d (0.00s) 241s --- PASS: FuzzDecodePolicy/ada28ad70c7345f1 (0.00s) 241s --- PASS: FuzzDecodePolicy/adb9a13c291b7e8c (0.00s) 241s --- PASS: FuzzDecodePolicy/aeb9d5c55731dae0 (0.00s) 241s --- PASS: FuzzDecodePolicy/af71c7d394bbf535 (0.00s) 241s --- PASS: FuzzDecodePolicy/b0ecd34477c6628e (0.00s) 241s --- PASS: FuzzDecodePolicy/b1585b9aa01c16b3 (0.00s) 241s --- PASS: FuzzDecodePolicy/b6264d058ed4028a (0.00s) 241s --- PASS: FuzzDecodePolicy/b6790bea1e752c32 (0.00s) 241s --- PASS: FuzzDecodePolicy/b741e8aa6c8179ba (0.00s) 241s --- PASS: FuzzDecodePolicy/b9032509681e867b (0.00s) 241s --- PASS: FuzzDecodePolicy/bb684f658455e982 (0.00s) 241s --- PASS: FuzzDecodePolicy/bc6ddfc82e38438b (0.00s) 241s --- PASS: FuzzDecodePolicy/bf4f46d3858edb39 (0.00s) 241s --- PASS: FuzzDecodePolicy/bfdd1bd65b5f5c04 (0.00s) 241s --- PASS: FuzzDecodePolicy/c01841582b4cdc2f (0.00s) 241s --- PASS: FuzzDecodePolicy/c340eca55c3c30e3 (0.00s) 241s --- PASS: FuzzDecodePolicy/c39235a2f77e92fd (0.00s) 241s --- PASS: FuzzDecodePolicy/c4d9def3916de265 (0.00s) 241s --- PASS: FuzzDecodePolicy/c610d176a1726c39 (0.00s) 241s --- PASS: FuzzDecodePolicy/ca683af05a78b772 (0.00s) 241s --- PASS: FuzzDecodePolicy/cac340cbf4f81f48 (0.00s) 241s --- PASS: FuzzDecodePolicy/ccdaead0f44dc069 (0.00s) 241s --- PASS: FuzzDecodePolicy/ce8467c12ac1478e (0.00s) 241s --- PASS: FuzzDecodePolicy/cebcbd67b0b51d54 (0.00s) 241s --- PASS: FuzzDecodePolicy/cf318b520a8e55be (0.00s) 241s --- PASS: FuzzDecodePolicy/cf592b0a6a725d1c (0.00s) 241s --- PASS: FuzzDecodePolicy/d0b8dc40737b3ff0 (0.00s) 241s --- PASS: FuzzDecodePolicy/d2969c8e25b51895 (0.00s) 241s --- PASS: FuzzDecodePolicy/d4e956bdff66867a (0.00s) 241s --- PASS: FuzzDecodePolicy/d5b932675c6ca808 (0.00s) 241s --- PASS: FuzzDecodePolicy/dac7bf5435c51dea (0.00s) 241s --- PASS: FuzzDecodePolicy/dddc8d06ef526aba (0.00s) 241s --- PASS: FuzzDecodePolicy/e3065cb3ac7c0f78 (0.00s) 241s --- PASS: FuzzDecodePolicy/e4242a66193c4579 (0.00s) 241s --- PASS: FuzzDecodePolicy/e4a4780eb4ee185b (0.00s) 241s --- PASS: FuzzDecodePolicy/e5b22ed07e48d3fb (0.00s) 241s --- PASS: FuzzDecodePolicy/e7e4a84593481e49 (0.00s) 241s --- PASS: FuzzDecodePolicy/e8030826b4125cbb (0.00s) 241s --- PASS: FuzzDecodePolicy/e923261af5ebad81 (0.00s) 241s --- PASS: FuzzDecodePolicy/ea426f6b8bedc4d6 (0.00s) 241s --- PASS: FuzzDecodePolicy/ead723bc16638dcb (0.00s) 241s --- PASS: FuzzDecodePolicy/f131b8f78f028a54 (0.00s) 241s --- PASS: FuzzDecodePolicy/f1c1d58ecbe0d6dd (0.00s) 241s --- PASS: FuzzDecodePolicy/f3313a9f40c82a87 (0.00s) 241s --- PASS: FuzzDecodePolicy/f4f490e788a76488 (0.00s) 241s --- PASS: FuzzDecodePolicy/fa7acaf11cff6812 (0.00s) 241s --- PASS: FuzzDecodePolicy/fb991a0182b5fe4d (0.00s) 241s --- PASS: FuzzDecodePolicy/fc0deb922246d3b7 (0.00s) 241s --- PASS: FuzzDecodePolicy/fccd118f10988218 (0.00s) 241s --- PASS: FuzzDecodePolicy/fe9d2018570dc6c6 (0.06s) 241s --- PASS: FuzzDecodePolicy/ffd2d2b4544a818d (0.00s) 241s --- PASS: FuzzDecodePolicy/ffd60d90486b3974 (0.00s) 241s --- PASS: FuzzDecodePolicy/regression-test-input-333 (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/ad/registry 0.443s 241s === RUN TestNew 241s === PAUSE TestNew 241s === CONT TestNew 241s === RUN TestNew/Unknown_backend_defaults_to_sssd 241s === PAUSE TestNew/Unknown_backend_defaults_to_sssd 241s === RUN TestNew/Select_winbind_backend_explicitly 241s === PAUSE TestNew/Select_winbind_backend_explicitly 241s === RUN TestNew/Error_on_failure_to_create_cache_directory 241s === PAUSE TestNew/Error_on_failure_to_create_cache_directory 241s === RUN TestNew/Error_on_ad.New_prevents_adsysservice_creation 241s === PAUSE TestNew/Error_on_ad.New_prevents_adsysservice_creation 241s === RUN TestNew/New_and_Quit_succeeds_and_defaults_to_sssd,_first_run 241s === PAUSE TestNew/New_and_Quit_succeeds_and_defaults_to_sssd,_first_run 241s === RUN TestNew/Adsys_directory_can_already_exists 241s === PAUSE TestNew/Adsys_directory_can_already_exists 241s === RUN TestNew/Select_sssd_backend_explicitly 241s === PAUSE TestNew/Select_sssd_backend_explicitly 241s === RUN TestNew/Error_on_failure_to_create_run_directory 241s === PAUSE TestNew/Error_on_failure_to_create_run_directory 241s === RUN TestNew/Error_on_nonexistent_sssd.conf 241s === PAUSE TestNew/Error_on_nonexistent_sssd.conf 241s === CONT TestNew/Unknown_backend_defaults_to_sssd 241s === CONT TestNew/Error_on_nonexistent_sssd.conf 241s === CONT TestNew/Error_on_failure_to_create_run_directory 241s time="2025-10-31T03:46:55Z" level=warning msg="Unknown configured backend \"unknown-backend\". Defaulting to sssd." 241s === CONT TestNew/Select_sssd_backend_explicitly 241s === CONT TestNew/Adsys_directory_can_already_exists 241s === CONT TestNew/New_and_Quit_succeeds_and_defaults_to_sssd,_first_run 241s === CONT TestNew/Error_on_ad.New_prevents_adsysservice_creation 241s === CONT TestNew/Error_on_failure_to_create_cache_directory 241s === CONT TestNew/Select_winbind_backend_explicitly 241s time="2025-10-31T03:46:55Z" level=warning msg="could not get online status for domain \"example.com\": status code 6" 241s --- PASS: TestNew (0.00s) 241s --- PASS: TestNew/Error_on_nonexistent_sssd.conf (0.00s) 241s --- PASS: TestNew/Error_on_failure_to_create_run_directory (0.00s) 241s --- PASS: TestNew/Unknown_backend_defaults_to_sssd (0.01s) 241s --- PASS: TestNew/Select_sssd_backend_explicitly (0.01s) 241s --- PASS: TestNew/Adsys_directory_can_already_exists (0.01s) 241s --- PASS: TestNew/Error_on_ad.New_prevents_adsysservice_creation (0.00s) 241s --- PASS: TestNew/New_and_Quit_succeeds_and_defaults_to_sssd,_first_run (0.01s) 241s --- PASS: TestNew/Error_on_failure_to_create_cache_directory (0.00s) 241s --- PASS: TestNew/Select_winbind_backend_explicitly (0.01s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/adsysservice 0.121s 241s === RUN TestIsAllowed 241s === PAUSE TestIsAllowed 241s === RUN TestPeerCredsInfoAuthType 241s === PAUSE TestPeerCredsInfoAuthType 241s === RUN TestServerPeerCredsHandshake 241s === PAUSE TestServerPeerCredsHandshake 241s === RUN TestServerPeerCredsInvalidSocket 241s === PAUSE TestServerPeerCredsInvalidSocket 241s === RUN TestIsAllowedFromContext 241s === PAUSE TestIsAllowedFromContext 241s === RUN TestIsAllowedFromContextWithoutPeer 241s === PAUSE TestIsAllowedFromContextWithoutPeer 241s === RUN TestIsAllowedFromContextWithInvalidPeerCreds 241s === PAUSE TestIsAllowedFromContextWithInvalidPeerCreds 241s === RUN TestIsAllowedFromContextWithoutUserKey 241s === PAUSE TestIsAllowedFromContextWithoutUserKey 241s === CONT TestIsAllowed 241s === CONT TestIsAllowedFromContext 241s === RUN TestIsAllowedFromContext/Valid_process_and_ACK 241s === PAUSE TestIsAllowedFromContext/Valid_process_and_ACK 241s === RUN TestIsAllowedFromContext/Valid_process_and_NACK 241s === PAUSE TestIsAllowedFromContext/Valid_process_and_NACK 241s === RUN TestIsAllowedFromContext/Extract_current_user_action_from_request 241s === PAUSE TestIsAllowedFromContext/Extract_current_user_action_from_request 241s === RUN TestIsAllowedFromContext/Extract_other_user_action_from_request 241s === PAUSE TestIsAllowedFromContext/Extract_other_user_action_from_request 241s === RUN TestIsAllowedFromContext/Unauthorizes_when_user_lookup_returns_an_error 241s === PAUSE TestIsAllowedFromContext/Unauthorizes_when_user_lookup_returns_an_error 241s === RUN TestIsAllowedFromContext/Unauthorizes_when_user_has_invalid_uid 241s === PAUSE TestIsAllowedFromContext/Unauthorizes_when_user_has_invalid_uid 241s === RUN TestIsAllowedFromContext/Root_is_always_authorized 241s === PAUSE TestIsAllowedFromContext/Root_is_always_authorized 241s === CONT TestIsAllowedFromContextWithoutUserKey 241s === RUN TestIsAllowed/Root_is_always_authorized 241s === PAUSE TestIsAllowed/Root_is_always_authorized 241s === RUN TestIsAllowed/Process_doesn't_exists 241s === PAUSE TestIsAllowed/Process_doesn't_exists 241s === RUN TestIsAllowed/Invalid_process_stat_file:_)_at_the_end 241s === PAUSE TestIsAllowed/Invalid_process_stat_file:_)_at_the_end 241s === RUN TestIsAllowed/User_Action_on_other_user_translates_to_Other_parameter_as_ID 241s === PAUSE TestIsAllowed/User_Action_on_other_user_translates_to_Other_parameter_as_ID 241s === RUN TestIsAllowed/Invalid_process_stat_file:_field_isn't_an_int 241s === PAUSE TestIsAllowed/Invalid_process_stat_file:_field_isn't_an_int 241s === RUN TestIsAllowed/Polkit_dbus_call_errors_out 241s === PAUSE TestIsAllowed/Polkit_dbus_call_errors_out 241s === RUN TestIsAllowed/ActionAlwaysAllowed_is_always_allowed 241s === PAUSE TestIsAllowed/ActionAlwaysAllowed_is_always_allowed 241s === RUN TestIsAllowed/User_Action_for_own_user_translates_to_Self_parameter_as_ID 241s === PAUSE TestIsAllowed/User_Action_for_own_user_translates_to_Self_parameter_as_ID 241s === RUN TestIsAllowed/Valid_process_and_ACK 241s === PAUSE TestIsAllowed/Valid_process_and_ACK 241s === RUN TestIsAllowed/Valid_process_and_NACK 241s === PAUSE TestIsAllowed/Valid_process_and_NACK 241s === RUN TestIsAllowed/Invalid_process_stat_file:_missing_) 241s === PAUSE TestIsAllowed/Invalid_process_stat_file:_missing_) 241s === RUN TestIsAllowed/Invalid_process_stat_file:_field_isn't_present 241s === PAUSE TestIsAllowed/Invalid_process_stat_file:_field_isn't_present 241s === CONT TestIsAllowedFromContextWithInvalidPeerCreds 241s --- PASS: TestIsAllowedFromContextWithoutUserKey (0.00s) 241s === CONT TestIsAllowedFromContextWithoutPeer 241s --- PASS: TestIsAllowedFromContextWithoutPeer (0.00s) 241s === CONT TestServerPeerCredsHandshake 241s --- PASS: TestServerPeerCredsHandshake (0.00s) 241s === CONT TestServerPeerCredsInvalidSocket 241s --- PASS: TestServerPeerCredsInvalidSocket (0.00s) 241s === CONT TestPeerCredsInfoAuthType 241s --- PASS: TestPeerCredsInfoAuthType (0.00s) 241s === CONT TestIsAllowedFromContext/Valid_process_and_ACK 241s === CONT TestIsAllowedFromContext/Root_is_always_authorized 241s === CONT TestIsAllowedFromContext/Unauthorizes_when_user_has_invalid_uid 241s === CONT TestIsAllowedFromContext/Unauthorizes_when_user_lookup_returns_an_error 241s === CONT TestIsAllowedFromContext/Extract_other_user_action_from_request 241s === CONT TestIsAllowedFromContext/Extract_current_user_action_from_request 241s === CONT TestIsAllowedFromContext/Valid_process_and_NACK 241s === CONT TestIsAllowed/Root_is_always_authorized 241s === CONT TestIsAllowed/Invalid_process_stat_file:_field_isn't_present 241s === CONT TestIsAllowed/Invalid_process_stat_file:_missing_) 241s --- PASS: TestIsAllowedFromContext (0.00s) 241s --- PASS: TestIsAllowedFromContext/Valid_process_and_ACK (0.00s) 241s --- PASS: TestIsAllowedFromContext/Root_is_always_authorized (0.00s) 241s --- PASS: TestIsAllowedFromContext/Unauthorizes_when_user_has_invalid_uid (0.00s) 241s --- PASS: TestIsAllowedFromContext/Unauthorizes_when_user_lookup_returns_an_error (0.00s) 241s --- PASS: TestIsAllowedFromContext/Extract_other_user_action_from_request (0.00s) 241s --- PASS: TestIsAllowedFromContext/Extract_current_user_action_from_request (0.00s) 241s --- PASS: TestIsAllowedFromContext/Valid_process_and_NACK (0.00s) 241s === CONT TestIsAllowed/Valid_process_and_NACK 241s === CONT TestIsAllowed/Valid_process_and_ACK 241s --- PASS: TestIsAllowedFromContextWithInvalidPeerCreds (0.00s) 241s === CONT TestIsAllowed/User_Action_for_own_user_translates_to_Self_parameter_as_ID 241s === CONT TestIsAllowed/ActionAlwaysAllowed_is_always_allowed 241s === CONT TestIsAllowed/Polkit_dbus_call_errors_out 241s === CONT TestIsAllowed/Invalid_process_stat_file:_field_isn't_an_int 241s === CONT TestIsAllowed/User_Action_on_other_user_translates_to_Other_parameter_as_ID 241s === CONT TestIsAllowed/Invalid_process_stat_file:_)_at_the_end 241s === CONT TestIsAllowed/Process_doesn't_exists 241s --- PASS: TestIsAllowed (0.00s) 241s --- PASS: TestIsAllowed/Root_is_always_authorized (0.00s) 241s --- PASS: TestIsAllowed/Invalid_process_stat_file:_field_isn't_present (0.00s) 241s --- PASS: TestIsAllowed/Invalid_process_stat_file:_missing_) (0.00s) 241s --- PASS: TestIsAllowed/Valid_process_and_NACK (0.00s) 241s --- PASS: TestIsAllowed/Valid_process_and_ACK (0.00s) 241s --- PASS: TestIsAllowed/ActionAlwaysAllowed_is_always_allowed (0.00s) 241s --- PASS: TestIsAllowed/User_Action_for_own_user_translates_to_Self_parameter_as_ID (0.00s) 241s --- PASS: TestIsAllowed/Polkit_dbus_call_errors_out (0.00s) 241s --- PASS: TestIsAllowed/User_Action_on_other_user_translates_to_Other_parameter_as_ID (0.00s) 241s --- PASS: TestIsAllowed/Invalid_process_stat_file:_)_at_the_end (0.00s) 241s --- PASS: TestIsAllowed/Invalid_process_stat_file:_field_isn't_an_int (0.00s) 241s --- PASS: TestIsAllowed/Process_doesn't_exists (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/authorizer 0.051s 241s === RUN TestNoCmd 241s === PAUSE TestNoCmd 241s === RUN TestZeroOrNArgs 241s === PAUSE TestZeroOrNArgs 241s === RUN TestNoValidArgs 241s === PAUSE TestNoValidArgs 241s === RUN TestRegisterAlias 241s === PAUSE TestRegisterAlias 241s === CONT TestNoCmd 241s --- PASS: TestNoCmd (0.00s) 241s === CONT TestRegisterAlias 241s --- PASS: TestRegisterAlias (0.00s) 241s === CONT TestNoValidArgs 241s --- PASS: TestNoValidArgs (0.00s) 241s === CONT TestZeroOrNArgs 241s === RUN TestZeroOrNArgs/Exactly_N_args 241s === PAUSE TestZeroOrNArgs/Exactly_N_args 241s === RUN TestZeroOrNArgs/Error_with_less_than_N_args 241s === PAUSE TestZeroOrNArgs/Error_with_less_than_N_args 241s === RUN TestZeroOrNArgs/Error_with_more_than_N_args 241s === PAUSE TestZeroOrNArgs/Error_with_more_than_N_args 241s === RUN TestZeroOrNArgs/Zero_args 241s === PAUSE TestZeroOrNArgs/Zero_args 241s === CONT TestZeroOrNArgs/Exactly_N_args 241s === CONT TestZeroOrNArgs/Zero_args 241s === CONT TestZeroOrNArgs/Error_with_more_than_N_args 241s === CONT TestZeroOrNArgs/Error_with_less_than_N_args 241s --- PASS: TestZeroOrNArgs (0.00s) 241s --- PASS: TestZeroOrNArgs/Exactly_N_args (0.00s) 241s --- PASS: TestZeroOrNArgs/Zero_args (0.00s) 241s --- PASS: TestZeroOrNArgs/Error_with_more_than_N_args (0.00s) 241s --- PASS: TestZeroOrNArgs/Error_with_less_than_N_args (0.00s) 241s PASS 241s ok github.com/ubuntu/adsys/internal/cmdhandler 0.012s 242s ? github.com/ubuntu/adsys/internal/consts [no test files] 247s ? github.com/ubuntu/adsys/internal/grpc/logstreamer/test [no test files] 252s === RUN TestSetVerboseMode 252s === RUN TestSetVerboseMode/Default_level_is_warning 252s === RUN TestSetVerboseMode/1_is_for_info 252s === RUN TestSetVerboseMode/2_is_for_debug 252s === RUN TestSetVerboseMode/3_is_debug_printing_callers 252s --- PASS: TestSetVerboseMode (0.00s) 252s --- PASS: TestSetVerboseMode/Default_level_is_warning (0.00s) 252s --- PASS: TestSetVerboseMode/1_is_for_info (0.00s) 252s --- PASS: TestSetVerboseMode/2_is_for_debug (0.00s) 252s --- PASS: TestSetVerboseMode/3_is_debug_printing_callers (0.00s) 252s === RUN TestInit 252s === RUN TestInit/Error_on_callback_returning_error_on_first_call 252s === RUN TestInit/Load_configuration,_no_file,_no_flag,_no_env 252s === RUN TestInit/Load_configuration_with_file 252s === RUN TestInit/No_config_flag_set_before_Init_is_call_is_ignored 252s === RUN TestInit/Environment_is_supported 252s === RUN TestInit/Configuration_file_overwritten 252s === RUN TestInit/Callback_in_error_on_refresh_only_prints_warning 252s time="2025-10-31T03:47:02Z" level=warning msg="Error while refreshing configuration: Error from callback" 252s === RUN TestInit/Load_configuration_from_executable_dir 252s === RUN TestInit/Configuration_changed_directly 252s === RUN TestInit/Configuration_file_created_after_Init()_is_not_taken_into_account 252s === RUN TestInit/Env_has_precedence_over_configuration 252s === RUN TestInit/Error_on_no_verbose_flag_set_before_Init_is_call 252s === RUN TestInit/Error_on_invalid_configuration_file 252s === RUN TestInit/Empty_configuration_file_is_supported 252s === RUN TestInit/Configuration_flag_on_subcommand,_not_in_config_dir,_init_on_subcommand 252s === RUN TestInit/Error_on_config_flag_points_to_unexisting_path 252s === RUN TestInit/Configuration_flag,_not_in_config_dir 252s === RUN TestInit/Configuration_flag_on_parent,_not_in_config_dir,_init_on_subcommand 252s === RUN TestInit/Flag_is_supported 252s === RUN TestInit/Flag_has_precedence_over_env 252s === RUN TestInit/Configuration_flag_has_precedence_over_local_file 252s --- PASS: TestInit (10.43s) 252s --- PASS: TestInit/Error_on_callback_returning_error_on_first_call (0.21s) 252s --- PASS: TestInit/Load_configuration,_no_file,_no_flag,_no_env (0.01s) 252s --- PASS: TestInit/Load_configuration_with_file (0.01s) 252s --- PASS: TestInit/No_config_flag_set_before_Init_is_call_is_ignored (0.01s) 252s --- PASS: TestInit/Environment_is_supported (0.00s) 252s --- PASS: TestInit/Configuration_file_overwritten (2.02s) 252s --- PASS: TestInit/Callback_in_error_on_refresh_only_prints_warning (2.02s) 252s --- PASS: TestInit/Load_configuration_from_executable_dir (0.01s) 252s --- PASS: TestInit/Configuration_changed_directly (2.02s) 252s --- PASS: TestInit/Configuration_file_created_after_Init()_is_not_taken_into_account (4.04s) 252s --- PASS: TestInit/Env_has_precedence_over_configuration (0.05s) 252s --- PASS: TestInit/Error_on_no_verbose_flag_set_before_Init_is_call (0.01s) 252s --- PASS: TestInit/Error_on_invalid_configuration_file (0.00s) 252s --- PASS: TestInit/Empty_configuration_file_is_supported (0.00s) 252s --- PASS: TestInit/Configuration_flag_on_subcommand,_not_in_config_dir,_init_on_subcommand (0.00s) 252s --- PASS: TestInit/Error_on_config_flag_points_to_unexisting_path (0.00s) 252s --- PASS: TestInit/Configuration_flag,_not_in_config_dir (0.00s) 252s --- PASS: TestInit/Configuration_flag_on_parent,_not_in_config_dir,_init_on_subcommand (0.00s) 252s --- PASS: TestInit/Flag_is_supported (0.00s) 252s --- PASS: TestInit/Flag_has_precedence_over_env (0.00s) 252s --- PASS: TestInit/Configuration_flag_has_precedence_over_local_file (0.01s) 252s === RUN TestLoadConfig 252s === PAUSE TestLoadConfig 252s === CONT TestLoadConfig 252s === RUN TestLoadConfig/Load_configuration_deserialize_its 252s === PAUSE TestLoadConfig/Load_configuration_deserialize_its 252s === RUN TestLoadConfig/Empty_configuration_is_supported 252s === PAUSE TestLoadConfig/Empty_configuration_is_supported 252s === CONT TestLoadConfig/Load_configuration_deserialize_its 252s === CONT TestLoadConfig/Empty_configuration_is_supported 252s --- PASS: TestLoadConfig (0.00s) 252s --- PASS: TestLoadConfig/Load_configuration_deserialize_its (0.00s) 252s --- PASS: TestLoadConfig/Empty_configuration_is_supported (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/config 10.453s 252s === RUN TestConfigFileFromArgs 252s === PAUSE TestConfigFileFromArgs 252s === RUN TestDirsFromConfigFile 252s === PAUSE TestDirsFromConfigFile 252s === RUN TestWriteConfig 252s === RUN TestWriteConfig/Error_on_empty_dirs 252s === RUN TestWriteConfig/With_relative_config_path 252s === RUN TestWriteConfig/With_nested_config_path 252s === RUN TestWriteConfig/Error_on_absent_dirs 252s --- PASS: TestWriteConfig (0.00s) 252s --- PASS: TestWriteConfig/Error_on_empty_dirs (0.00s) 252s --- PASS: TestWriteConfig/With_relative_config_path (0.00s) 252s --- PASS: TestWriteConfig/With_nested_config_path (0.00s) 252s --- PASS: TestWriteConfig/Error_on_absent_dirs (0.00s) 252s === CONT TestConfigFileFromArgs 252s === RUN TestConfigFileFromArgs/Short_config_argument 252s === PAUSE TestConfigFileFromArgs/Short_config_argument 252s === RUN TestConfigFileFromArgs/Short_config_argument_with_quotes 252s === PAUSE TestConfigFileFromArgs/Short_config_argument_with_quotes 252s === RUN TestConfigFileFromArgs/Error_on_empty_args 252s === PAUSE TestConfigFileFromArgs/Error_on_empty_args 252s === RUN TestConfigFileFromArgs/Error_on_no_config_argument 252s === PAUSE TestConfigFileFromArgs/Error_on_no_config_argument 252s === RUN TestConfigFileFromArgs/Error_on_config_argument_with_no_value 252s === CONT TestDirsFromConfigFile 252s === RUN TestDirsFromConfigFile/No_dirs_in_config_file 252s === PAUSE TestDirsFromConfigFile/No_dirs_in_config_file 252s === RUN TestDirsFromConfigFile/Config_dirs_is_not_an_array 252s === PAUSE TestDirsFromConfigFile/Config_dirs_is_not_an_array 252s === RUN TestDirsFromConfigFile/Config_dirs_is_an_array 252s === PAUSE TestDirsFromConfigFile/Config_dirs_is_an_array 252s === RUN TestDirsFromConfigFile/No_config_file 252s === PAUSE TestDirsFromConfigFile/No_config_file 252s === RUN TestDirsFromConfigFile/Empty_config_file 252s === PAUSE TestDirsFromConfigFile/Empty_config_file 252s === CONT TestDirsFromConfigFile/No_dirs_in_config_file 252s === PAUSE TestConfigFileFromArgs/Error_on_config_argument_with_no_value 252s === CONT TestConfigFileFromArgs/Short_config_argument 252s === CONT TestDirsFromConfigFile/Empty_config_file 252s === CONT TestDirsFromConfigFile/No_config_file 252s === CONT TestDirsFromConfigFile/Config_dirs_is_an_array 252s === CONT TestConfigFileFromArgs/Error_on_no_config_argument 252s === CONT TestDirsFromConfigFile/Config_dirs_is_not_an_array 252s === CONT TestConfigFileFromArgs/Error_on_empty_args 252s === CONT TestConfigFileFromArgs/Error_on_config_argument_with_no_value 252s === CONT TestConfigFileFromArgs/Short_config_argument_with_quotes 252s --- PASS: TestConfigFileFromArgs (0.00s) 252s --- PASS: TestConfigFileFromArgs/Short_config_argument (0.00s) 252s --- PASS: TestConfigFileFromArgs/Error_on_no_config_argument (0.00s) 252s --- PASS: TestConfigFileFromArgs/Error_on_empty_args (0.00s) 252s --- PASS: TestConfigFileFromArgs/Error_on_config_argument_with_no_value (0.00s) 252s --- PASS: TestConfigFileFromArgs/Short_config_argument_with_quotes (0.00s) 252s --- PASS: TestDirsFromConfigFile (0.00s) 252s --- PASS: TestDirsFromConfigFile/No_dirs_in_config_file (0.00s) 252s --- PASS: TestDirsFromConfigFile/Empty_config_file (0.00s) 252s --- PASS: TestDirsFromConfigFile/No_config_file (0.00s) 252s --- PASS: TestDirsFromConfigFile/Config_dirs_is_an_array (0.00s) 252s --- PASS: TestDirsFromConfigFile/Config_dirs_is_not_an_array (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/config/watchd 0.033s 252s === RUN TestStartStop 252s === PAUSE TestStartStop 252s === RUN TestStopBeforeServe 252s === PAUSE TestStopBeforeServe 252s === RUN TestChangeSocket 252s === PAUSE TestChangeSocket 252s === RUN TestSocketActivation 252s === PAUSE TestSocketActivation 252s === RUN TestUseSocketIgnoredWithSocketActivation 252s === PAUSE TestUseSocketIgnoredWithSocketActivation 252s === RUN TestSdNotifier 252s === PAUSE TestSdNotifier 252s === RUN TestFailingOption 252s === PAUSE TestFailingOption 252s === RUN TestCannotCreateSocket 252s === PAUSE TestCannotCreateSocket 252s === RUN TestServerStartListenTimeout 252s === PAUSE TestServerStartListenTimeout 252s === RUN TestServerDontTimeoutWithActiveRequest 252s === PAUSE TestServerDontTimeoutWithActiveRequest 252s === RUN TestServerDontTimeoutWithMultipleActiveRequests 252s === PAUSE TestServerDontTimeoutWithMultipleActiveRequests 252s === RUN TestServerChangeTimeout 252s === PAUSE TestServerChangeTimeout 252s === RUN TestServerDoubleQuit 252s === PAUSE TestServerDoubleQuit 252s === CONT TestStartStop 252s === CONT TestCannotCreateSocket 252s --- PASS: TestCannotCreateSocket (0.00s) 252s === CONT TestServerDoubleQuit 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestStartStop2373289760/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestServerDoubleQuit535734002/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s --- PASS: TestServerDoubleQuit (0.01s) 252s === CONT TestServerChangeTimeout 252s --- PASS: TestStartStop (0.01s) 252s === CONT TestServerDontTimeoutWithMultipleActiveRequests 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestServerChangeTimeout2919067201/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestServerDontTimeoutWithMultipleActiveRequests2938613807/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s --- PASS: TestServerChangeTimeout (0.05s) 252s === CONT TestServerDontTimeoutWithActiveRequest 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestServerDontTimeoutWithActiveRequest1277369110/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s --- PASS: TestServerDontTimeoutWithMultipleActiveRequests (0.11s) 252s === CONT TestServerStartListenTimeout 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestServerStartListenTimeout3502714714/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s --- PASS: TestServerStartListenTimeout (0.01s) 252s === CONT TestUseSocketIgnoredWithSocketActivation 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestUseSocketIgnoredWithSocketActivation1985640355/001/socket" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s --- PASS: TestUseSocketIgnoredWithSocketActivation (0.02s) 252s === CONT TestFailingOption 252s --- PASS: TestFailingOption (0.00s) 252s === CONT TestSdNotifier 252s === RUN TestSdNotifier/Sends_signal 252s === PAUSE TestSdNotifier/Sends_signal 252s === RUN TestSdNotifier/Doesn't_fail_when_not_under_systemd 252s === PAUSE TestSdNotifier/Doesn't_fail_when_not_under_systemd 252s === RUN TestSdNotifier/Error_when_notifier_fails 252s === PAUSE TestSdNotifier/Error_when_notifier_fails 252s === CONT TestChangeSocket 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestChangeSocket492506231/001/test.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestChangeSocket492506231/001/test2.sock" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s --- PASS: TestServerDontTimeoutWithActiveRequest (0.11s) 252s === CONT TestSocketActivation 252s === RUN TestSocketActivation/Error_when_Listeners()_fails 252s === PAUSE TestSocketActivation/Error_when_Listeners()_fails 252s === RUN TestSocketActivation/Success_with_one_socket 252s === PAUSE TestSocketActivation/Success_with_one_socket 252s === RUN TestSocketActivation/Error_when_provided_with_many_sockets 252s === PAUSE TestSocketActivation/Error_when_provided_with_many_sockets 252s === CONT TestStopBeforeServe 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s --- PASS: TestStopBeforeServe (0.00s) 252s === CONT TestSdNotifier/Sends_signal 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestSdNotifierSends_signal485133994/001/socket" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s --- PASS: TestChangeSocket (0.02s) 252s === CONT TestSdNotifier/Error_when_notifier_fails 252s === CONT TestSdNotifier/Doesn't_fail_when_not_under_systemd 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestSdNotifierDoesnt_fail_when_not_under_systemd396560255/001/socket" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s === CONT TestSocketActivation/Error_when_Listeners()_fails 252s === CONT TestSocketActivation/Error_when_provided_with_many_sockets 252s === CONT TestSocketActivation/Success_with_one_socket 252s time="2025-10-31T03:46:59Z" level=info msg="Serving on /tmp/TestSocketActivationSuccess_with_one_socket2602706330/001/sock1" 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s --- PASS: TestSdNotifier (0.00s) 252s --- PASS: TestSdNotifier/Error_when_notifier_fails (0.00s) 252s --- PASS: TestSdNotifier/Sends_signal (0.01s) 252s --- PASS: TestSdNotifier/Doesn't_fail_when_not_under_systemd (0.01s) 252s time="2025-10-31T03:46:59Z" level=info msg="Stopping daemon requested." 252s time="2025-10-31T03:46:59Z" level=info msg="Wait for active requests to close." 252s --- PASS: TestSocketActivation (0.00s) 252s --- PASS: TestSocketActivation/Error_when_Listeners()_fails (0.00s) 252s --- PASS: TestSocketActivation/Error_when_provided_with_many_sockets (0.00s) 252s --- PASS: TestSocketActivation/Success_with_one_socket (0.01s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/daemon 0.218s 252s === RUN TestCleanDirectory 252s === PAUSE TestCleanDirectory 252s === RUN TestCleanDirectoryNoDirectoryExists 252s === PAUSE TestCleanDirectoryNoDirectoryExists 252s === RUN TestCleanDirectoryCantRemoveDirectory 252s === PAUSE TestCleanDirectoryCantRemoveDirectory 252s === RUN TestInstallOnlyMode 252s --- PASS: TestInstallOnlyMode (0.00s) 252s === RUN TestDestDirectory 252s --- PASS: TestDestDirectory (0.00s) 252s === CONT TestCleanDirectory 252s === CONT TestCleanDirectoryCantRemoveDirectory 252s --- PASS: TestCleanDirectoryCantRemoveDirectory (0.00s) 252s === CONT TestCleanDirectoryNoDirectoryExists 252s --- PASS: TestCleanDirectory (0.00s) 252s --- PASS: TestCleanDirectoryNoDirectoryExists (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/generators 0.012s 252s === RUN TestNoNotification 252s === PAUSE TestNoNotification 252s === RUN TestNewConnectionNotification 252s === PAUSE TestNewConnectionNotification 252s === RUN TestDoneConnectionNotification 252s === PAUSE TestDoneConnectionNotification 252s === RUN TestErrorFromHandlerReturned 252s === PAUSE TestErrorFromHandlerReturned 252s === RUN TestErrorOnNilStream 252s === PAUSE TestErrorOnNilStream 252s === CONT TestNoNotification 252s --- PASS: TestNoNotification (0.00s) 252s === CONT TestErrorFromHandlerReturned 252s --- PASS: TestErrorFromHandlerReturned (0.00s) 252s === CONT TestNewConnectionNotification 252s --- PASS: TestNewConnectionNotification (0.00s) 252s === CONT TestDoneConnectionNotification 252s --- PASS: TestDoneConnectionNotification (0.00s) 252s === CONT TestErrorOnNilStream 252s --- PASS: TestErrorOnNilStream (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/grpc/connectionnotify 0.017s 252s === RUN TestActiveConnection 252s === PAUSE TestActiveConnection 252s === RUN TestTimeoutOnInactiveConnection 252s === PAUSE TestTimeoutOnInactiveConnection 252s === RUN TestCancelOnClientSide 252s === PAUSE TestCancelOnClientSide 252s === RUN TestClientInterceptorFailed 252s === PAUSE TestClientInterceptorFailed 252s === RUN TestRecvMessageError 252s === PAUSE TestRecvMessageError 252s === CONT TestActiveConnection 252s === CONT TestClientInterceptorFailed 252s --- PASS: TestClientInterceptorFailed (0.00s) 252s === CONT TestCancelOnClientSide 252s --- PASS: TestCancelOnClientSide (0.00s) 252s === CONT TestTimeoutOnInactiveConnection 252s --- PASS: TestTimeoutOnInactiveConnection (0.05s) 252s === CONT TestRecvMessageError 252s --- PASS: TestRecvMessageError (0.00s) 252s --- PASS: TestActiveConnection (0.15s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/grpc/contextidler 0.171s 252s === RUN TestFormat 252s === PAUSE TestFormat 252s === CONT TestFormat 252s === RUN TestFormat/GRPC_Deadline_errors_don’t_print_status_nor_daemon_nor_message 252s === PAUSE TestFormat/GRPC_Deadline_errors_don’t_print_status_nor_daemon_nor_message 252s === RUN TestFormat/GRPC_Unknown_errors_don’t_print_status_and_daemon 252s === PAUSE TestFormat/GRPC_Unknown_errors_don’t_print_status_and_daemon 252s === RUN TestFormat/GRPC_Random_errors_prints_status_and_message 252s === PAUSE TestFormat/GRPC_Random_errors_prints_status_and_message 252s === RUN TestFormat/Nil_returns_nil 252s === PAUSE TestFormat/Nil_returns_nil 252s === RUN TestFormat/Non_GRPC_errors_are_returned_as_is 252s === PAUSE TestFormat/Non_GRPC_errors_are_returned_as_is 252s === RUN TestFormat/GRPC_Unavailable_errors_prints_daemon_name 252s === PAUSE TestFormat/GRPC_Unavailable_errors_prints_daemon_name 252s === CONT TestFormat/GRPC_Deadline_errors_don’t_print_status_nor_daemon_nor_message 252s === CONT TestFormat/Nil_returns_nil 252s === CONT TestFormat/GRPC_Random_errors_prints_status_and_message 252s === CONT TestFormat/GRPC_Unavailable_errors_prints_daemon_name 252s === CONT TestFormat/Non_GRPC_errors_are_returned_as_is 252s === CONT TestFormat/GRPC_Unknown_errors_don’t_print_status_and_daemon 252s --- PASS: TestFormat (0.00s) 252s --- PASS: TestFormat/Nil_returns_nil (0.00s) 252s --- PASS: TestFormat/GRPC_Deadline_errors_don’t_print_status_nor_daemon_nor_message (0.00s) 252s --- PASS: TestFormat/GRPC_Random_errors_prints_status_and_message (0.00s) 252s --- PASS: TestFormat/Non_GRPC_errors_are_returned_as_is (0.00s) 252s --- PASS: TestFormat/GRPC_Unavailable_errors_prints_daemon_name (0.00s) 252s --- PASS: TestFormat/GRPC_Unknown_errors_don’t_print_status_and_daemon (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/grpc/grpcerror 0.011s 252s === RUN TestStreamServer 252s === PAUSE TestStreamServer 252s === RUN TestStreamClient 252s === PAUSE TestStreamClient 252s === CONT TestStreamServer 252s === CONT TestStreamClient 252s --- PASS: TestStreamServer (0.00s) 252s --- PASS: TestStreamClient (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/grpc/interceptorschain 0.065s 252s === RUN TestChildRecvMsgAndHandlerCalled 252s === PAUSE TestChildRecvMsgAndHandlerCalled 252s === CONT TestChildRecvMsgAndHandlerCalled 252s === RUN TestChildRecvMsgAndHandlerCalled/Error_when_RecvMsg_errors_out 252s === PAUSE TestChildRecvMsgAndHandlerCalled/Error_when_RecvMsg_errors_out 252s === RUN TestChildRecvMsgAndHandlerCalled/Handler_and_RecvMsg_are_called 252s === PAUSE TestChildRecvMsgAndHandlerCalled/Handler_and_RecvMsg_are_called 252s === RUN TestChildRecvMsgAndHandlerCalled/Info_being_nil_has_no_impact 252s === PAUSE TestChildRecvMsgAndHandlerCalled/Info_being_nil_has_no_impact 252s === RUN TestChildRecvMsgAndHandlerCalled/Error_when_handler_fails_out 252s === PAUSE TestChildRecvMsgAndHandlerCalled/Error_when_handler_fails_out 252s === CONT TestChildRecvMsgAndHandlerCalled/Error_when_RecvMsg_errors_out 252s === CONT TestChildRecvMsgAndHandlerCalled/Info_being_nil_has_no_impact 252s === CONT TestChildRecvMsgAndHandlerCalled/Handler_and_RecvMsg_are_called 252s === CONT TestChildRecvMsgAndHandlerCalled/Error_when_handler_fails_out 252s time="2025-10-31T03:47:02Z" level=info msg="Error sent to client: Failing handler" 252s --- PASS: TestChildRecvMsgAndHandlerCalled (0.00s) 252s --- PASS: TestChildRecvMsgAndHandlerCalled/Error_when_RecvMsg_errors_out (0.00s) 252s --- PASS: TestChildRecvMsgAndHandlerCalled/Info_being_nil_has_no_impact (0.00s) 252s --- PASS: TestChildRecvMsgAndHandlerCalled/Handler_and_RecvMsg_are_called (0.00s) 252s --- PASS: TestChildRecvMsgAndHandlerCalled/Error_when_handler_fails_out (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/grpc/logconnections 0.022s 252s === RUN TestRecvLogMsg 252s === PAUSE TestRecvLogMsg 252s === RUN TestAddStreamToForwardLocalLogs 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:086692]]" 252s time="2025-10-31T03:47:03Z" level=warning msg=something 252s --- PASS: TestAddStreamToForwardLocalLogs (0.00s) 252s === RUN TestAddStreamToForwardOtherStream 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:842117]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:441657]]" 252s --- PASS: TestAddStreamToForwardOtherStream (0.00s) 252s === RUN TestAddStreamToForwardAfterClientIsConnected 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:607397]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:413336]]" 252s --- PASS: TestAddStreamToForwardAfterClientIsConnected (0.00s) 252s === RUN TestAddStreamToForwardDisconnect 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:088369]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:744630]]" 252s --- PASS: TestAddStreamToForwardDisconnect (0.00s) 252s === RUN TestAddStreamToForwardTwoClients 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:409452]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:828727]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:583709]]" 252s --- PASS: TestAddStreamToForwardTwoClients (0.00s) 252s === RUN TestAddStreamToForwardWithListenerCaller 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:545855]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:310463]]" 252s --- PASS: TestAddStreamToForwardWithListenerCaller (0.00s) 252s === RUN TestAddStreamMultipleForwarders 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:720240]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:830227]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:319531]]" 252s --- PASS: TestAddStreamMultipleForwarders (0.00s) 252s === RUN TestAddStreamMultipleForwardersOneWithCaller 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:759623]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:203074]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:089327]]" 252s --- PASS: TestAddStreamMultipleForwardersOneWithCaller (0.00s) 252s === RUN TestAddStreamToForwardFailSend 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:234799]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:335169]]" 252s time="2025-10-31T03:47:03Z" level=warning msg="Couldn't send log to one or more listener: SendMsg failed" 252s --- PASS: TestAddStreamToForwardFailSend (0.00s) 252s === RUN TestRemoveAllStreams 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:189642]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:100554]]" 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:822581]]" 252s time="2025-10-31T03:47:03Z" level=warning msg="[[123456:822581]] else" 252s --- PASS: TestRemoveAllStreams (0.00s) 252s === RUN TestLogWarningOnly 252s === PAUSE TestLogWarningOnly 252s === RUN TestMultipleLogs 252s === PAUSE TestMultipleLogs 252s === RUN TestAllLogLevels 252s === PAUSE TestAllLogLevels 252s === RUN TestDebugSentToRemoteEvenIfLocalIsWarning 252s === PAUSE TestDebugSentToRemoteEvenIfLocalIsWarning 252s === RUN TestLogWarningWithLocalCaller 252s === PAUSE TestLogWarningWithLocalCaller 252s === RUN TestLogWarningWithRemoteCaller 252s === PAUSE TestLogWarningWithRemoteCaller 252s === RUN TestLogWithNoCaller 252s === PAUSE TestLogWithNoCaller 252s === RUN TestSetReportCaller 252s === RUN TestSetReportCaller/Report_caller 252s === RUN TestSetReportCaller/Disable_caller 252s --- PASS: TestSetReportCaller (0.00s) 252s --- PASS: TestSetReportCaller/Report_caller (0.00s) 252s --- PASS: TestSetReportCaller/Disable_caller (0.00s) 252s === RUN TestLogSendingFail 252s === PAUSE TestLogSendingFail 252s === RUN TestLogStreamsAreSeparated 252s === PAUSE TestLogStreamsAreSeparated 252s === RUN TestLogAddHook 252s time="2025-10-31T03:47:03Z" level=info 252s --- PASS: TestLogAddHook (0.00s) 252s === RUN TestStreamServerInterceptor 252s === PAUSE TestStreamServerInterceptor 252s === RUN TestStreamServerInterceptorSendLogsFails 252s === PAUSE TestStreamServerInterceptorSendLogsFails 252s === RUN TestStreamServerInterceptorLoggerInvalidMetadata 252s === PAUSE TestStreamServerInterceptorLoggerInvalidMetadata 252s === CONT TestRecvLogMsg 252s === CONT TestLogWithNoCaller 252s === RUN TestRecvLogMsg/One_message,_no_log 252s === PAUSE TestRecvLogMsg/One_message,_no_log 252s === RUN TestRecvLogMsg/One_log_(and_one_closing_empty_message) 252s === PAUSE TestRecvLogMsg/One_log_(and_one_closing_empty_message) 252s === RUN TestRecvLogMsg/Two_logs_with_different_debug_level 252s === PAUSE TestRecvLogMsg/Two_logs_with_different_debug_level 252s === RUN TestRecvLogMsg/Log_with_caller 252s === PAUSE TestRecvLogMsg/Log_with_caller 252s === RUN TestRecvLogMsg/One_message_with_error,_no_log,_error_is_preserved 252s === PAUSE TestRecvLogMsg/One_message_with_error,_no_log,_error_is_preserved 252s === RUN TestRecvLogMsg/No_caller_when_not_requested 252s === PAUSE TestRecvLogMsg/No_caller_when_not_requested 252s === RUN TestRecvLogMsg/No_caller_on_any_logs 252s === PAUSE TestRecvLogMsg/No_caller_on_any_logs 252s === RUN TestRecvLogMsg/Logs_and_then_message_with_error,_error_is_preserved 252s === PAUSE TestRecvLogMsg/Logs_and_then_message_with_error,_error_is_preserved 252s === RUN TestRecvLogMsg/Unknown_log_level_triggers_a_client_error_(protocole_issue) 252s === PAUSE TestRecvLogMsg/Unknown_log_level_triggers_a_client_error_(protocole_issue) 252s === RUN TestRecvLogMsg/Invalid_object_passed_to_RecvMsg_is_gracefully_skipped 252s === PAUSE TestRecvLogMsg/Invalid_object_passed_to_RecvMsg_is_gracefully_skipped 252s === CONT TestRecvLogMsg/One_message,_no_log 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:264162]]" 252s --- PASS: TestLogWithNoCaller (0.00s) 252s === CONT TestStreamServerInterceptorLoggerInvalidMetadata 252s === RUN TestStreamServerInterceptorLoggerInvalidMetadata/Missing_caller_key 252s === PAUSE TestStreamServerInterceptorLoggerInvalidMetadata/Missing_caller_key 252s === CONT TestLogWarningWithRemoteCaller 252s === RUN TestStreamServerInterceptorLoggerInvalidMetadata/Caller_key_is_not_a_boolean 252s === PAUSE TestStreamServerInterceptorLoggerInvalidMetadata/Caller_key_is_not_a_boolean 252s === RUN TestStreamServerInterceptorLoggerInvalidMetadata/Multiple_log_metas 252s === PAUSE TestStreamServerInterceptorLoggerInvalidMetadata/Multiple_log_metas 252s === RUN TestStreamServerInterceptorLoggerInvalidMetadata/No_meta_sent 252s === PAUSE TestStreamServerInterceptorLoggerInvalidMetadata/No_meta_sent 252s === RUN TestStreamServerInterceptorLoggerInvalidMetadata/Missing_client_ID 252s === PAUSE TestStreamServerInterceptorLoggerInvalidMetadata/Missing_client_ID 252s === CONT TestStreamServerInterceptorLoggerInvalidMetadata/Missing_caller_key 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:498764]]" 252s --- PASS: TestLogWarningWithRemoteCaller (0.00s) 252s === CONT TestStreamServerInterceptorSendLogsFails 252s time="2025-10-31T03:47:03Z" level=warning msg="[[123456:162018]] Couldn't send initial connection log to client" 252s === CONT TestStreamServerInterceptor 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:771128]]" 252s --- PASS: TestStreamServerInterceptor (0.00s) 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:162018]]" 252s === CONT TestLogStreamsAreSeparated 252s --- PASS: TestStreamServerInterceptorSendLogsFails (0.00s) 252s === CONT TestLogSendingFail 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:628245]]" 252s --- PASS: TestLogSendingFail (0.00s) 252s === CONT TestStreamServerInterceptorLoggerInvalidMetadata/Missing_client_ID 252s === CONT TestStreamServerInterceptorLoggerInvalidMetadata/No_meta_sent 252s === CONT TestStreamServerInterceptorLoggerInvalidMetadata/Multiple_log_metas 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:612519]]" 252s === CONT TestStreamServerInterceptorLoggerInvalidMetadata/Caller_key_is_not_a_boolean 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:071638]]" 252s --- PASS: TestLogStreamsAreSeparated (0.00s) 252s === CONT TestRecvLogMsg/Unknown_log_level_triggers_a_client_error_(protocole_issue) 252s === CONT TestLogWarningWithLocalCaller 252s --- PASS: TestStreamServerInterceptorLoggerInvalidMetadata (0.00s) 252s --- PASS: TestStreamServerInterceptorLoggerInvalidMetadata/Missing_caller_key (0.00s) 252s --- PASS: TestStreamServerInterceptorLoggerInvalidMetadata/Missing_client_ID (0.00s) 252s --- PASS: TestStreamServerInterceptorLoggerInvalidMetadata/No_meta_sent (0.00s) 252s --- PASS: TestStreamServerInterceptorLoggerInvalidMetadata/Multiple_log_metas (0.00s) 252s --- PASS: TestStreamServerInterceptorLoggerInvalidMetadata/Caller_key_is_not_a_boolean (0.00s) 252s === CONT TestDebugSentToRemoteEvenIfLocalIsWarning 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:438038]]" 252s --- PASS: TestLogWarningWithLocalCaller (0.00s) 252s === CONT TestAllLogLevels 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:884425]]" 252s --- PASS: TestDebugSentToRemoteEvenIfLocalIsWarning (0.00s) 252s === CONT TestMultipleLogs 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:340810]]" 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:351989]]" 252s --- PASS: TestAllLogLevels (0.00s) 252s === CONT TestLogWarningOnly 252s --- PASS: TestMultipleLogs (0.00s) 252s === CONT TestRecvLogMsg/Invalid_object_passed_to_RecvMsg_is_gracefully_skipped 252s === CONT TestRecvLogMsg/One_message_with_error,_no_log,_error_is_preserved 252s Failed to fire hook: hook fired 252s time="2025-10-31T03:47:03Z" level=info msg="New connection from client [[123456:653166]]" 252s === CONT TestRecvLogMsg/Logs_and_then_message_with_error,_error_is_preserved 252s --- PASS: TestLogWarningOnly (0.00s) 252s === CONT TestRecvLogMsg/No_caller_on_any_logs 252s === CONT TestRecvLogMsg/No_caller_when_not_requested 252s === CONT TestRecvLogMsg/Two_logs_with_different_debug_level 252s === CONT TestRecvLogMsg/Log_with_caller 252s === CONT TestRecvLogMsg/One_log_(and_one_closing_empty_message) 252s --- PASS: TestRecvLogMsg (0.00s) 252s --- PASS: TestRecvLogMsg/One_message,_no_log (0.00s) 252s --- PASS: TestRecvLogMsg/Unknown_log_level_triggers_a_client_error_(protocole_issue) (0.00s) 252s --- PASS: TestRecvLogMsg/Invalid_object_passed_to_RecvMsg_is_gracefully_skipped (0.00s) 252s --- PASS: TestRecvLogMsg/One_message_with_error,_no_log,_error_is_preserved (0.00s) 252s --- PASS: TestRecvLogMsg/Logs_and_then_message_with_error,_error_is_preserved (0.00s) 252s --- PASS: TestRecvLogMsg/No_caller_when_not_requested (0.00s) 252s --- PASS: TestRecvLogMsg/No_caller_on_any_logs (0.00s) 252s --- PASS: TestRecvLogMsg/Log_with_caller (0.00s) 252s --- PASS: TestRecvLogMsg/One_log_(and_one_closing_empty_message) (0.00s) 252s --- PASS: TestRecvLogMsg/Two_logs_with_different_debug_level (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/grpc/logstreamer 0.029s 252s === RUN TestEventLogHook 252s === RUN TestEventLogHook/error_level 252s time="2025-10-31T03:47:04Z" level=error msg="Error msg" 252s === RUN TestEventLogHook/warn_level 252s time="2025-10-31T03:47:04Z" level=warning msg="Warning msg" 252s time="2025-10-31T03:47:04Z" level=error msg="Error msg" 252s === RUN TestEventLogHook/info_level 252s time="2025-10-31T03:47:04Z" level=info msg="Info msg" 252s time="2025-10-31T03:47:04Z" level=warning msg="Warning msg" 252s time="2025-10-31T03:47:04Z" level=error msg="Error msg" 252s === RUN TestEventLogHook/debug_level 252s time="2025-10-31T03:47:04Z" level=debug msg="Debug msg" 252s time="2025-10-31T03:47:04Z" level=info msg="Info msg" 252s time="2025-10-31T03:47:04Z" level=warning msg="Warning msg" 252s time="2025-10-31T03:47:04Z" level=error msg="Error msg" 252s --- PASS: TestEventLogHook (0.00s) 252s --- PASS: TestEventLogHook/error_level (0.00s) 252s --- PASS: TestEventLogHook/warn_level (0.00s) 252s --- PASS: TestEventLogHook/info_level (0.00s) 252s --- PASS: TestEventLogHook/debug_level (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/loghooks 0.008s 252s === RUN TestFormat 252s === PAUSE TestFormat 252s === RUN TestApplyPolicies 252s === RUN TestApplyPolicies/Error_when_applying_proxy_policy 252s === RUN TestApplyPolicies/Second_call_with_no_rules_deletes_everything 252s time="2025-10-31T03:47:05Z" level=info msg="Unloading policies for hostname (machine: true)" 252s === RUN TestApplyPolicies/Second_call_with_no_subscription_don't_remove_scripts_if_session_hasn’t_ended 252s time="2025-10-31T03:47:05Z" level=info msg="Applying policies for hostname (machine: true)" 252s time="2025-10-31T03:47:05Z" level=warning msg="Rules from the following policy types will be filtered out as the machine is not enrolled to Ubuntu Pro: privilege, scripts, mount, apparmor, proxy, certificate" 252s time="2025-10-31T03:47:05Z" level=info msg="\"/tmp/TestApplyPoliciesSecond_call_with_no_subscription_dont_remove_scripts_if_session_hasnt_ended1311227193/001/run/adsys/machine/scripts/.running\" already exists, a session is already running, ignoring." 252s === RUN TestApplyPolicies/Error_when_applying_dconf_policy 252s === RUN TestApplyPolicies/Error_when_applying_apparmor_policy 252s === RUN TestApplyPolicies/Succeed 252s === RUN TestApplyPolicies/Second_call_with_no_rules_don't_remove_scripts_if_session_hasn’t_ended 252s time="2025-10-31T03:47:05Z" level=info msg="Unloading policies for hostname (machine: true)" 252s time="2025-10-31T03:47:05Z" level=info msg="\"/tmp/TestApplyPoliciesSecond_call_with_no_rules_dont_remove_scripts_if_session_hasnt_ended1095256172/001/run/adsys/machine/scripts/.running\" already exists, a session is already running, ignoring." 252s === RUN TestApplyPolicies/Error_when_applying_scripts_policy 252s === RUN TestApplyPolicies/Succeed_if_checking_for_backend_online_status_returns_an_error 252s === RUN TestApplyPolicies/Second_call_with_no_subscription_should_remove_everything_but_dconf_content 252s time="2025-10-31T03:47:05Z" level=info msg="Applying policies for hostname (machine: true)" 252s time="2025-10-31T03:47:05Z" level=warning msg="Rules from the following policy types will be filtered out as the machine is not enrolled to Ubuntu Pro: privilege, scripts, mount, apparmor, proxy, certificate" 252s === RUN TestApplyPolicies/Error_when_applying_certificate_policy 252s === RUN TestApplyPolicies/No_subscription_is_only_dconf_content 252s === RUN TestApplyPolicies/Error_when_applying_privilege_policy 252s === RUN TestApplyPolicies/Error_when_applying_mount_policy 252s --- PASS: TestApplyPolicies (0.18s) 252s --- PASS: TestApplyPolicies/Error_when_applying_proxy_policy (0.01s) 252s --- PASS: TestApplyPolicies/Second_call_with_no_rules_deletes_everything (0.02s) 252s --- PASS: TestApplyPolicies/Second_call_with_no_subscription_don't_remove_scripts_if_session_hasn’t_ended (0.02s) 252s --- PASS: TestApplyPolicies/Error_when_applying_dconf_policy (0.00s) 252s --- PASS: TestApplyPolicies/Error_when_applying_apparmor_policy (0.01s) 252s --- PASS: TestApplyPolicies/Succeed (0.02s) 252s --- PASS: TestApplyPolicies/Second_call_with_no_rules_don't_remove_scripts_if_session_hasn’t_ended (0.02s) 252s --- PASS: TestApplyPolicies/Error_when_applying_scripts_policy (0.01s) 252s --- PASS: TestApplyPolicies/Succeed_if_checking_for_backend_online_status_returns_an_error (0.02s) 252s --- PASS: TestApplyPolicies/Second_call_with_no_subscription_should_remove_everything_but_dconf_content (0.02s) 252s --- PASS: TestApplyPolicies/Error_when_applying_certificate_policy (0.01s) 252s --- PASS: TestApplyPolicies/No_subscription_is_only_dconf_content (0.01s) 252s --- PASS: TestApplyPolicies/Error_when_applying_privilege_policy (0.01s) 252s --- PASS: TestApplyPolicies/Error_when_applying_mount_policy (0.01s) 252s === RUN TestDumpPolicies 252s === PAUSE TestDumpPolicies 252s === RUN TestLastUpdateFor 252s === PAUSE TestLastUpdateFor 252s === RUN TestGetSubscriptionState 252s === RUN TestGetSubscriptionState/Returns_enablement_status_(enabled) 252s === RUN TestGetSubscriptionState/Returns_enablement_status_(disabled) 252s --- PASS: TestGetSubscriptionState (0.01s) 252s --- PASS: TestGetSubscriptionState/Returns_enablement_status_(enabled) (0.00s) 252s --- PASS: TestGetSubscriptionState/Returns_enablement_status_(disabled) (0.00s) 252s === RUN TestNew 252s === PAUSE TestNew 252s === RUN TestNewFromCache 252s === PAUSE TestNewFromCache 252s === RUN TestSave 252s === PAUSE TestSave 252s === RUN TestCachePolicies 252s === PAUSE TestCachePolicies 252s === RUN TestSaveAssetsTo 252s === PAUSE TestSaveAssetsTo 252s === RUN TestCompressAssets 252s === PAUSE TestCompressAssets 252s === RUN TestGetUniqueRules 252s === PAUSE TestGetUniqueRules 252s === CONT TestFormat 252s === CONT TestSave 252s === RUN TestFormat/GPO_with_rules 252s === PAUSE TestFormat/GPO_with_rules 252s === RUN TestSave/With_assets 252s === PAUSE TestSave/With_assets 252s === RUN TestSave/Existing_policies_cache_is_refreshed 252s === PAUSE TestSave/Existing_policies_cache_is_refreshed 252s === RUN TestSave/Save_assets_on_existing_opened_file_does_not_segfault 252s === RUN TestFormat/GPO_with_rules,_appending_to_existing_treated_key 252s === PAUSE TestFormat/GPO_with_rules,_appending_to_existing_treated_key 252s === RUN TestFormat/GPO_with_rules,_override_displayed 252s === PAUSE TestFormat/GPO_with_rules,_override_displayed 252s === RUN TestFormat/GPO_with_rules,_override_disabled_key 252s === PAUSE TestFormat/GPO_with_rules,_override_disabled_key 252s === RUN TestFormat/GPO_and_assets_with_rules,_appending_to_same_key_do_not_add_to_processed_rules 252s === PAUSE TestFormat/GPO_and_assets_with_rules,_appending_to_same_key_do_not_add_to_processed_rules 252s === RUN TestFormat/GPO_and_assets_with_rules,_append_is_overridden_after_a_topmost_override 252s === PAUSE TestFormat/GPO_and_assets_with_rules,_append_is_overridden_after_a_topmost_override 252s === RUN TestFormat/GPO_summary 252s === PAUSE TestFormat/GPO_summary 252s === RUN TestFormat/GPO_with_rules,_override_hidden 252s === PAUSE TestSave/Save_assets_on_existing_opened_file_does_not_segfault 252s === RUN TestSave/Error_on_can’t_write_to_policies_base_dir 252s === PAUSE TestSave/Error_on_can’t_write_to_policies_base_dir 252s === RUN TestSave/gpos_only 252s === PAUSE TestSave/gpos_only 252s === RUN TestSave/Existing_assets_cache_is_refreshed 252s === PAUSE TestSave/Existing_assets_cache_is_refreshed 252s === RUN TestSave/Existing_cache_with_assets,_new_cache_with_no_assets 252s === PAUSE TestFormat/GPO_with_rules,_override_hidden 252s === RUN TestFormat/GPO_with_rules_and_overrides,_no_rules_processed 252s === PAUSE TestSave/Existing_cache_with_assets,_new_cache_with_no_assets 252s === PAUSE TestFormat/GPO_with_rules_and_overrides,_no_rules_processed 252s === RUN TestSave/Destdir_does_not_exists 252s === PAUSE TestSave/Destdir_does_not_exists 252s === CONT TestNewFromCache 252s === RUN TestSave/Can_refresh_on_existing_read_only_asset_file 252s === RUN TestNewFromCache/gpos_only 252s === PAUSE TestSave/Can_refresh_on_existing_read_only_asset_file 252s === RUN TestSave/Error_on_can’t_write_to_dest_dir 252s === PAUSE TestNewFromCache/gpos_only 252s === PAUSE TestSave/Error_on_can’t_write_to_dest_dir 252s === RUN TestNewFromCache/With_assets 252s === PAUSE TestNewFromCache/With_assets 252s === RUN TestNewFromCache/Error_on_invalid_policies_cache 252s === RUN TestSave/Error_on_can’t_remove_existing_assets 252s === PAUSE TestSave/Error_on_can’t_remove_existing_assets 252s === PAUSE TestNewFromCache/Error_on_invalid_policies_cache 252s === RUN TestNewFromCache/Error_on_invalid_assets_db 252s === PAUSE TestNewFromCache/Error_on_invalid_assets_db 252s === RUN TestNewFromCache/Error_on_no_policies_cache 252s === PAUSE TestNewFromCache/Error_on_no_policies_cache 252s === CONT TestLastUpdateFor 252s === CONT TestNew 252s === RUN TestNew/Error_on_invalid_assets_db 252s === PAUSE TestNew/Error_on_invalid_assets_db 252s === RUN TestNew/Error_on_assets_db_does_not_exists 252s === PAUSE TestNew/Error_on_assets_db_does_not_exists 252s === RUN TestNew/gpos_only 252s === PAUSE TestNew/gpos_only 252s === RUN TestNew/With_assets 252s === PAUSE TestNew/With_assets 252s === RUN TestNew/No_gpos 252s === PAUSE TestNew/No_gpos 252s === CONT TestDumpPolicies 252s === RUN TestLastUpdateFor/Returns_machine's_last_update_time 252s === PAUSE TestLastUpdateFor/Returns_machine's_last_update_time 252s === RUN TestLastUpdateFor/Returns_user's_last_update_time 252s === PAUSE TestLastUpdateFor/Returns_user's_last_update_time 252s === RUN TestLastUpdateFor/Target_is_ignored_for_machine_request 252s === PAUSE TestLastUpdateFor/Target_is_ignored_for_machine_request 252s === RUN TestLastUpdateFor/Error_when_target_does_not_exist 252s === PAUSE TestLastUpdateFor/Error_when_target_does_not_exist 252s === CONT TestCompressAssets 252s === RUN TestCompressAssets/No_db 252s === PAUSE TestCompressAssets/No_db 252s === RUN TestCompressAssets/Existing_db 252s === PAUSE TestCompressAssets/Existing_db 252s === RUN TestCompressAssets/Error_on_can’t_remove_existing_db 252s === PAUSE TestCompressAssets/Error_on_can’t_remove_existing_db 252s === RUN TestCompressAssets/Error_on_non_existing_directory 252s === PAUSE TestCompressAssets/Error_on_non_existing_directory 252s === CONT TestGetUniqueRules 252s === RUN TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_first 252s === PAUSE TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_first 252s === RUN TestGetUniqueRules/Mix_meta_on_GPOs,_furthest_policy_entry_is_append,_closest_is_override 252s === PAUSE TestGetUniqueRules/Mix_meta_on_GPOs,_furthest_policy_entry_is_append,_closest_is_override 252s === RUN TestGetUniqueRules/One_GPO 252s === PAUSE TestGetUniqueRules/One_GPO 252s === RUN TestGetUniqueRules/Multiple_domains,_different_GPOs 252s === PAUSE TestGetUniqueRules/Multiple_domains,_different_GPOs 252s === RUN TestGetUniqueRules/Two_policies,_with_reversed_overrides 252s === PAUSE TestGetUniqueRules/Two_policies,_with_reversed_overrides 252s === RUN TestGetUniqueRules/Two_policies,_no_overrides 252s === PAUSE TestGetUniqueRules/Two_policies,_no_overrides 252s === RUN TestGetUniqueRules/Disabled_value_is_overridden 252s === PAUSE TestGetUniqueRules/Disabled_value_is_overridden 252s === RUN TestGetUniqueRules/Append_policy_entry,_one_GPO 252s === PAUSE TestGetUniqueRules/Append_policy_entry,_one_GPO 252s === RUN TestGetUniqueRules/Append_policy_entry,_multiple_GPOs 252s === PAUSE TestGetUniqueRules/Append_policy_entry,_multiple_GPOs 252s === RUN TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_second 252s === PAUSE TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_second 252s === RUN TestGetUniqueRules/Disabled_value_overrides_non_disabled_one 252s === PAUSE TestGetUniqueRules/Disabled_value_overrides_non_disabled_one 252s === RUN TestGetUniqueRules/More_policies,_with_multiple_overrides 252s === PAUSE TestGetUniqueRules/More_policies,_with_multiple_overrides 252s === RUN TestGetUniqueRules/Append_policy_entry,_one_GPO,_disabled_key_is_ignored 252s === PAUSE TestGetUniqueRules/Append_policy_entry,_one_GPO,_disabled_key_is_ignored 252s === RUN TestGetUniqueRules/Order_key_ascii 252s === PAUSE TestGetUniqueRules/Order_key_ascii 252s === RUN TestGetUniqueRules/Multiple_domains,_same_GPOs 252s === PAUSE TestGetUniqueRules/Multiple_domains,_same_GPOs 252s === RUN TestGetUniqueRules/Same_key_in_different_domains_are_kept_separated 252s === PAUSE TestGetUniqueRules/Same_key_in_different_domains_are_kept_separated 252s === RUN TestGetUniqueRules/Two_policies,_with_overrides 252s === PAUSE TestGetUniqueRules/Two_policies,_with_overrides 252s === RUN TestGetUniqueRules/Two_policies,_no_overrides,_reversed 252s === PAUSE TestGetUniqueRules/Two_policies,_no_overrides,_reversed 252s === RUN TestGetUniqueRules/Append_policy_entry,_closest_meta_wins 252s === PAUSE TestGetUniqueRules/Append_policy_entry,_closest_meta_wins 252s === RUN TestGetUniqueRules/Mix_meta_on_GPOs,_closest_policy_entry_is_append,_furthest_override_is_ignored 252s === PAUSE TestGetUniqueRules/Mix_meta_on_GPOs,_closest_policy_entry_is_append,_furthest_override_is_ignored 252s === CONT TestSaveAssetsTo 252s === RUN TestSaveAssetsTo/Error_on_unexisting_relSrc_in_cache 252s === PAUSE TestSaveAssetsTo/Error_on_unexisting_relSrc_in_cache 252s === RUN TestSaveAssetsTo/Error_on_empty_relSrc 252s === PAUSE TestSaveAssetsTo/Error_on_empty_relSrc 252s === RUN TestSaveAssetsTo/Sub_directory_ending_with_slash 252s === PAUSE TestSaveAssetsTo/Sub_directory_ending_with_slash 252s === RUN TestSaveAssetsTo/File 252s === PAUSE TestSaveAssetsTo/File 252s === RUN TestSaveAssetsTo/Error_on_no_assets 252s === PAUSE TestSaveAssetsTo/Error_on_no_assets 252s === RUN TestSaveAssetsTo/Error_on_read_only_dest 252s === PAUSE TestSaveAssetsTo/Error_on_read_only_dest 252s === RUN TestSaveAssetsTo/Error_on_file_read_only_existing_in_dest 252s === PAUSE TestSaveAssetsTo/Error_on_file_read_only_existing_in_dest 252s === RUN TestSaveAssetsTo/Error_on_dest_already_exists 252s === PAUSE TestSaveAssetsTo/Error_on_dest_already_exists 252s === RUN TestSaveAssetsTo/Error_on_can't_chown_to_user 252s === PAUSE TestSaveAssetsTo/Error_on_can't_chown_to_user 252s === RUN TestSaveAssetsTo/Chown_directories_and_files_when_requested 252s === PAUSE TestSaveAssetsTo/Chown_directories_and_files_when_requested 252s === RUN TestSaveAssetsTo/All 252s === PAUSE TestSaveAssetsTo/All 252s === RUN TestSaveAssetsTo/Sub_directory 252s === PAUSE TestSaveAssetsTo/Sub_directory 252s === CONT TestCachePolicies 252s === RUN TestDumpPolicies/Multiple_GPOs_with_rules,_override,_shown 252s === PAUSE TestDumpPolicies/Multiple_GPOs_with_rules,_override,_shown 252s === RUN TestDumpPolicies/Same_GPO_Machine_and_User_with_rules_and_overrides 252s === PAUSE TestDumpPolicies/Same_GPO_Machine_and_User_with_rules_and_overrides 252s === RUN TestDumpPolicies/Multiple_GPOs 252s === PAUSE TestDumpPolicies/Multiple_GPOs 252s === RUN TestDumpPolicies/One_GPO_with_rules 252s === PAUSE TestDumpPolicies/One_GPO_with_rules 252s === RUN TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_hidden 252s === PAUSE TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_hidden 252s === RUN TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_shown 252s === PAUSE TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_shown 252s === RUN TestDumpPolicies/Same_GPO_Machine_and_User 252s === PAUSE TestDumpPolicies/Same_GPO_Machine_and_User 252s === RUN TestDumpPolicies/Same_GPO_Machine_and_User_with_rules 252s === PAUSE TestDumpPolicies/Same_GPO_Machine_and_User_with_rules 252s === RUN TestDumpPolicies/Error_on_missing_machine_cache_when_targeting_user 252s === PAUSE TestDumpPolicies/Error_on_missing_machine_cache_when_targeting_user 252s === RUN TestDumpPolicies/Machine_only_GPO_with_rules 252s === PAUSE TestDumpPolicies/Machine_only_GPO_with_rules 252s === RUN TestDumpPolicies/One_GPO_User_+_Machine 252s === PAUSE TestDumpPolicies/One_GPO_User_+_Machine 252s === RUN TestDumpPolicies/Multiple_GPOs_with_rules,_override_hidden 252s === PAUSE TestDumpPolicies/Multiple_GPOs_with_rules,_override_hidden 252s === RUN TestDumpPolicies/One_GPO_User 252s === PAUSE TestDumpPolicies/One_GPO_User 252s === RUN TestDumpPolicies/Multiple_GPOs_with_rules,_no_override 252s === PAUSE TestDumpPolicies/Multiple_GPOs_with_rules,_no_override 252s === RUN TestDumpPolicies/Error_on_missing_target_cache 252s === PAUSE TestDumpPolicies/Error_on_missing_target_cache 252s === RUN TestDumpPolicies/One_GPO_Machine 252s === PAUSE TestDumpPolicies/One_GPO_Machine 252s === CONT TestFormat/GPO_with_rules 252s === CONT TestFormat/GPO_and_assets_with_rules,_append_is_overridden_after_a_topmost_override 252s === CONT TestFormat/GPO_with_rules_and_overrides,_no_rules_processed 252s === CONT TestFormat/GPO_with_rules,_override_hidden 252s --- PASS: TestCachePolicies (0.00s) 252s === CONT TestFormat/GPO_summary 252s === CONT TestFormat/GPO_with_rules,_override_disabled_key 252s === CONT TestFormat/GPO_and_assets_with_rules,_appending_to_same_key_do_not_add_to_processed_rules 252s === CONT TestFormat/GPO_with_rules,_override_displayed 252s === CONT TestFormat/GPO_with_rules,_appending_to_existing_treated_key 252s === CONT TestSave/With_assets 252s --- PASS: TestFormat (0.00s) 252s --- PASS: TestFormat/GPO_with_rules (0.00s) 252s --- PASS: TestFormat/GPO_and_assets_with_rules,_append_is_overridden_after_a_topmost_override (0.00s) 252s --- PASS: TestFormat/GPO_with_rules_and_overrides,_no_rules_processed (0.00s) 252s --- PASS: TestFormat/GPO_with_rules,_override_hidden (0.00s) 252s --- PASS: TestFormat/GPO_summary (0.00s) 252s --- PASS: TestFormat/GPO_with_rules,_override_disabled_key (0.00s) 252s --- PASS: TestFormat/GPO_with_rules,_override_displayed (0.00s) 252s --- PASS: TestFormat/GPO_and_assets_with_rules,_appending_to_same_key_do_not_add_to_processed_rules (0.00s) 252s --- PASS: TestFormat/GPO_with_rules,_appending_to_existing_treated_key (0.00s) 252s === CONT TestSave/Existing_cache_with_assets,_new_cache_with_no_assets 252s === CONT TestNewFromCache/gpos_only 252s === CONT TestSave/Existing_assets_cache_is_refreshed 252s === CONT TestSave/gpos_only 252s === CONT TestSave/Error_on_can’t_write_to_policies_base_dir 252s === CONT TestSave/Save_assets_on_existing_opened_file_does_not_segfault 252s === CONT TestSave/Existing_policies_cache_is_refreshed 252s === CONT TestSave/Error_on_can’t_remove_existing_assets 252s === CONT TestSave/Error_on_can’t_write_to_dest_dir 252s === CONT TestSave/Can_refresh_on_existing_read_only_asset_file 252s === CONT TestSave/Destdir_does_not_exists 252s === CONT TestNewFromCache/Error_on_invalid_assets_db 252s --- PASS: TestSave (0.00s) 252s --- PASS: TestSave/With_assets (0.00s) 252s --- PASS: TestSave/Existing_cache_with_assets,_new_cache_with_no_assets (0.00s) 252s --- PASS: TestSave/gpos_only (0.00s) 252s --- PASS: TestSave/Existing_assets_cache_is_refreshed (0.00s) 252s --- PASS: TestSave/Error_on_can’t_write_to_policies_base_dir (0.00s) 252s --- PASS: TestSave/Existing_policies_cache_is_refreshed (0.00s) 252s --- PASS: TestSave/Save_assets_on_existing_opened_file_does_not_segfault (0.00s) 252s --- PASS: TestSave/Error_on_can’t_write_to_dest_dir (0.00s) 252s --- PASS: TestSave/Error_on_can’t_remove_existing_assets (0.00s) 252s --- PASS: TestSave/Can_refresh_on_existing_read_only_asset_file (0.00s) 252s --- PASS: TestSave/Destdir_does_not_exists (0.00s) 252s === CONT TestNewFromCache/Error_on_no_policies_cache 252s === CONT TestNewFromCache/Error_on_invalid_policies_cache 252s === CONT TestNewFromCache/With_assets 252s === CONT TestNew/Error_on_invalid_assets_db 252s === CONT TestNew/With_assets 252s === CONT TestNew/No_gpos 252s === CONT TestNew/gpos_only 252s === CONT TestNew/Error_on_assets_db_does_not_exists 252s --- PASS: TestNew (0.00s) 252s --- PASS: TestNew/Error_on_invalid_assets_db (0.00s) 252s --- PASS: TestNew/With_assets (0.01s) 252s --- PASS: TestNew/No_gpos (0.00s) 252s --- PASS: TestNew/gpos_only (0.00s) 252s --- PASS: TestNew/Error_on_assets_db_does_not_exists (0.00s) 252s === CONT TestLastUpdateFor/Returns_machine's_last_update_time 252s --- PASS: TestNewFromCache (0.00s) 252s --- PASS: TestNewFromCache/gpos_only (0.00s) 252s --- PASS: TestNewFromCache/Error_on_invalid_assets_db (0.00s) 252s --- PASS: TestNewFromCache/Error_on_no_policies_cache (0.00s) 252s --- PASS: TestNewFromCache/Error_on_invalid_policies_cache (0.00s) 252s --- PASS: TestNewFromCache/With_assets (0.01s) 252s === CONT TestCompressAssets/No_db 252s === CONT TestLastUpdateFor/Error_when_target_does_not_exist 252s time="2025-10-31T03:47:06Z" level=info msg="Get policies last update time \"autopkgtest\" (machine: true)" 252s === CONT TestLastUpdateFor/Target_is_ignored_for_machine_request 252s time="2025-10-31T03:47:06Z" level=info msg="Get policies last update time \"does_not_exit\" (machine: false)" 252s === CONT TestLastUpdateFor/Returns_user's_last_update_time 252s time="2025-10-31T03:47:06Z" level=info msg="Get policies last update time \"does_not_exit\" (machine: true)" 252s === CONT TestCompressAssets/Error_on_can’t_remove_existing_db 252s === CONT TestCompressAssets/Error_on_non_existing_directory 252s === CONT TestCompressAssets/Existing_db 252s time="2025-10-31T03:47:06Z" level=info msg="Get policies last update time \"user\" (machine: false)" 252s --- PASS: TestLastUpdateFor (0.00s) 252s --- PASS: TestLastUpdateFor/Returns_machine's_last_update_time (0.10s) 252s --- PASS: TestLastUpdateFor/Error_when_target_does_not_exist (0.10s) 252s --- PASS: TestLastUpdateFor/Target_is_ignored_for_machine_request (0.10s) 252s --- PASS: TestLastUpdateFor/Returns_user's_last_update_time (0.10s) 252s === CONT TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_first 252s === CONT TestGetUniqueRules/Disabled_value_overrides_non_disabled_one 252s === CONT TestGetUniqueRules/Mix_meta_on_GPOs,_closest_policy_entry_is_append,_furthest_override_is_ignored 252s === CONT TestGetUniqueRules/Append_policy_entry,_closest_meta_wins 252s === CONT TestGetUniqueRules/Two_policies,_no_overrides,_reversed 252s === CONT TestGetUniqueRules/Two_policies,_with_overrides 252s === CONT TestGetUniqueRules/Same_key_in_different_domains_are_kept_separated 252s === CONT TestGetUniqueRules/Multiple_domains,_same_GPOs 252s === CONT TestGetUniqueRules/Order_key_ascii 252s === CONT TestGetUniqueRules/Append_policy_entry,_one_GPO,_disabled_key_is_ignored 252s === CONT TestGetUniqueRules/More_policies,_with_multiple_overrides 252s === CONT TestGetUniqueRules/Two_policies,_no_overrides 252s === CONT TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_second 252s === CONT TestGetUniqueRules/Append_policy_entry,_multiple_GPOs 252s === CONT TestGetUniqueRules/Append_policy_entry,_one_GPO 252s === CONT TestGetUniqueRules/Disabled_value_is_overridden 252s === CONT TestGetUniqueRules/Multiple_domains,_different_GPOs 252s === CONT TestGetUniqueRules/Two_policies,_with_reversed_overrides 252s === CONT TestGetUniqueRules/One_GPO 252s === CONT TestGetUniqueRules/Mix_meta_on_GPOs,_furthest_policy_entry_is_append,_closest_is_override 252s --- PASS: TestGetUniqueRules (0.00s) 252s --- PASS: TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_first (0.00s) 252s --- PASS: TestGetUniqueRules/Disabled_value_overrides_non_disabled_one (0.00s) 252s --- PASS: TestGetUniqueRules/Mix_meta_on_GPOs,_closest_policy_entry_is_append,_furthest_override_is_ignored (0.00s) 252s --- PASS: TestGetUniqueRules/Append_policy_entry,_closest_meta_wins (0.00s) 252s --- PASS: TestGetUniqueRules/Two_policies,_no_overrides,_reversed (0.00s) 252s --- PASS: TestGetUniqueRules/Two_policies,_with_overrides (0.00s) 252s --- PASS: TestGetUniqueRules/Same_key_in_different_domains_are_kept_separated (0.00s) 252s --- PASS: TestGetUniqueRules/Multiple_domains,_same_GPOs (0.00s) 252s --- PASS: TestGetUniqueRules/Order_key_ascii (0.00s) 252s --- PASS: TestGetUniqueRules/Append_policy_entry,_one_GPO,_disabled_key_is_ignored (0.00s) 252s --- PASS: TestGetUniqueRules/More_policies,_with_multiple_overrides (0.00s) 252s --- PASS: TestGetUniqueRules/Two_policies,_no_overrides (0.00s) 252s --- PASS: TestGetUniqueRules/Append_policy_entry,_multiple_GPOs,_disabled_key_is_ignored,_second (0.00s) 252s --- PASS: TestGetUniqueRules/Append_policy_entry,_multiple_GPOs (0.00s) 252s --- PASS: TestGetUniqueRules/Append_policy_entry,_one_GPO (0.00s) 252s --- PASS: TestGetUniqueRules/Disabled_value_is_overridden (0.00s) 252s --- PASS: TestGetUniqueRules/Multiple_domains,_different_GPOs (0.00s) 252s --- PASS: TestGetUniqueRules/Two_policies,_with_reversed_overrides (0.00s) 252s --- PASS: TestGetUniqueRules/One_GPO (0.00s) 252s --- PASS: TestGetUniqueRules/Mix_meta_on_GPOs,_furthest_policy_entry_is_append,_closest_is_override (0.00s) 252s === CONT TestSaveAssetsTo/Error_on_unexisting_relSrc_in_cache 252s === CONT TestSaveAssetsTo/Error_on_file_read_only_existing_in_dest 252s === CONT TestSaveAssetsTo/Sub_directory 252s --- PASS: TestCompressAssets (0.00s) 252s --- PASS: TestCompressAssets/No_db (0.01s) 252s --- PASS: TestCompressAssets/Error_on_can’t_remove_existing_db (0.00s) 252s --- PASS: TestCompressAssets/Error_on_non_existing_directory (0.00s) 252s --- PASS: TestCompressAssets/Existing_db (0.01s) 252s === CONT TestSaveAssetsTo/All 252s === CONT TestSaveAssetsTo/Chown_directories_and_files_when_requested 252s === CONT TestSaveAssetsTo/Error_on_can't_chown_to_user 252s === CONT TestSaveAssetsTo/Error_on_dest_already_exists 252s === CONT TestSaveAssetsTo/File 252s === CONT TestSaveAssetsTo/Error_on_read_only_dest 252s === CONT TestSaveAssetsTo/Error_on_no_assets 252s === CONT TestSaveAssetsTo/Sub_directory_ending_with_slash 252s === CONT TestSaveAssetsTo/Error_on_empty_relSrc 252s === CONT TestDumpPolicies/Multiple_GPOs_with_rules,_override,_shown 252s --- PASS: TestSaveAssetsTo (0.00s) 252s --- PASS: TestSaveAssetsTo/Error_on_unexisting_relSrc_in_cache (0.00s) 252s --- PASS: TestSaveAssetsTo/Error_on_file_read_only_existing_in_dest (0.00s) 252s --- PASS: TestSaveAssetsTo/Sub_directory (0.00s) 252s --- PASS: TestSaveAssetsTo/All (0.01s) 252s --- PASS: TestSaveAssetsTo/Error_on_can't_chown_to_user (0.00s) 252s --- PASS: TestSaveAssetsTo/Error_on_dest_already_exists (0.00s) 252s --- PASS: TestSaveAssetsTo/Chown_directories_and_files_when_requested (0.01s) 252s --- PASS: TestSaveAssetsTo/File (0.00s) 252s --- PASS: TestSaveAssetsTo/Error_on_read_only_dest (0.00s) 252s --- PASS: TestSaveAssetsTo/Error_on_no_assets (0.00s) 252s --- PASS: TestSaveAssetsTo/Error_on_empty_relSrc (0.00s) 252s --- PASS: TestSaveAssetsTo/Sub_directory_ending_with_slash (0.00s) 252s === CONT TestDumpPolicies/One_GPO_Machine 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/Error_on_missing_target_cache 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for autopkgtest" 252s === CONT TestDumpPolicies/Multiple_GPOs_with_rules,_no_override 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s time="2025-10-31T03:47:06Z" level=info msg="User \"user\" not found on cache." 252s === CONT TestDumpPolicies/One_GPO_User 252s === CONT TestDumpPolicies/Multiple_GPOs_with_rules,_override_hidden 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/One_GPO_User_+_Machine 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/Machine_only_GPO_with_rules 252s === CONT TestDumpPolicies/Error_on_missing_machine_cache_when_targeting_user 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for autopkgtest" 252s === CONT TestDumpPolicies/Same_GPO_Machine_and_User_with_rules 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/Same_GPO_Machine_and_User 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_shown 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_hidden 252s === CONT TestDumpPolicies/One_GPO_with_rules 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s === CONT TestDumpPolicies/Multiple_GPOs 252s === CONT TestDumpPolicies/Same_GPO_Machine_and_User_with_rules_and_overrides 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s time="2025-10-31T03:47:06Z" level=info msg="Dumping policies for user" 252s --- PASS: TestDumpPolicies (0.00s) 252s --- PASS: TestDumpPolicies/Multiple_GPOs_with_rules,_override,_shown (0.00s) 252s --- PASS: TestDumpPolicies/One_GPO_Machine (0.00s) 252s --- PASS: TestDumpPolicies/Multiple_GPOs_with_rules,_no_override (0.00s) 252s --- PASS: TestDumpPolicies/Error_on_missing_target_cache (0.00s) 252s --- PASS: TestDumpPolicies/One_GPO_User (0.00s) 252s --- PASS: TestDumpPolicies/Multiple_GPOs_with_rules,_override_hidden (0.00s) 252s --- PASS: TestDumpPolicies/One_GPO_User_+_Machine (0.00s) 252s --- PASS: TestDumpPolicies/Machine_only_GPO_with_rules (0.00s) 252s --- PASS: TestDumpPolicies/Error_on_missing_machine_cache_when_targeting_user (0.00s) 252s --- PASS: TestDumpPolicies/Same_GPO_Machine_and_User_with_rules (0.00s) 252s --- PASS: TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_shown (0.00s) 252s --- PASS: TestDumpPolicies/Same_GPO_Machine_and_User (0.00s) 252s --- PASS: TestDumpPolicies/Overrides_between_machine_and_user_GPOs,_hidden (0.00s) 252s --- PASS: TestDumpPolicies/One_GPO_with_rules (0.00s) 252s --- PASS: TestDumpPolicies/Multiple_GPOs (0.00s) 252s --- PASS: TestDumpPolicies/Same_GPO_Machine_and_User_with_rules_and_overrides (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/policies 0.504s 252s === RUN TestApplyPolicy 252s === PAUSE TestApplyPolicy 252s === RUN TestMockApparmorParser 252s --- PASS: TestMockApparmorParser (0.00s) 252s === CONT TestApplyPolicy 252s === RUN TestApplyPolicy/Computer,_duplicated_profiles 252s === PAUSE TestApplyPolicy/Computer,_duplicated_profiles 252s === RUN TestApplyPolicy/Computer,_blank_line_profiles 252s === PAUSE TestApplyPolicy/Computer,_blank_line_profiles 252s === RUN TestApplyPolicy/Computer,_previous_profiles_are_unloaded 252s === PAUSE TestApplyPolicy/Computer,_previous_profiles_are_unloaded 252s === RUN TestApplyPolicy/Error_on_file_as_a_directory 252s === PAUSE TestApplyPolicy/Error_on_file_as_a_directory 252s === RUN TestApplyPolicy/User,_no_machine_profiles 252s === PAUSE TestApplyPolicy/User,_no_machine_profiles 252s === RUN TestApplyPolicy/User,_error_on_multiple_profiles 252s === PAUSE TestApplyPolicy/User,_error_on_multiple_profiles 252s === RUN TestApplyPolicy/Error_on_unloading_old_profiles_failing 252s === PAUSE TestApplyPolicy/Error_on_unloading_old_profiles_failing 252s === RUN TestApplyPolicy/Computer,_one_profile 252s === PAUSE TestApplyPolicy/Computer,_one_profile 252s === RUN TestApplyPolicy/Error_on_removing_unused_assets_after_dump 252s === PAUSE TestApplyPolicy/Error_on_removing_unused_assets_after_dump 252s === RUN TestApplyPolicy/Computer,_multiple_profiles, 252s === PAUSE TestApplyPolicy/Computer,_multiple_profiles, 252s === RUN TestApplyPolicy/Computer,_profiles_with_whitespace 252s === PAUSE TestApplyPolicy/Computer,_profiles_with_whitespace 252s === RUN TestApplyPolicy/Computer,_only_blank_profiles 252s === PAUSE TestApplyPolicy/Computer,_only_blank_profiles 252s === RUN TestApplyPolicy/Error_on_absent_profile 252s === PAUSE TestApplyPolicy/Error_on_absent_profile 252s === RUN TestApplyPolicy/Error_on_read-only_.new_directory 252s === PAUSE TestApplyPolicy/Error_on_read-only_.new_directory 252s === RUN TestApplyPolicy/No_apparmor_parser_and_no_entries 252s === PAUSE TestApplyPolicy/No_apparmor_parser_and_no_entries 252s === RUN TestApplyPolicy/Error_on_unloading_all_profiles_failing 252s === PAUSE TestApplyPolicy/Error_on_unloading_all_profiles_failing 252s === RUN TestApplyPolicy/Error_on_absent_loaded_policies_file 252s === PAUSE TestApplyPolicy/Error_on_absent_loaded_policies_file 252s === RUN TestApplyPolicy/Error_on_preprocessing_new_profiles_failing 252s === PAUSE TestApplyPolicy/Error_on_preprocessing_new_profiles_failing 252s === RUN TestApplyPolicy/Error_on_save_assets_dumping_failing 252s === PAUSE TestApplyPolicy/Error_on_save_assets_dumping_failing 252s === RUN TestApplyPolicy/Existing_.old_directory_is_removed 252s === PAUSE TestApplyPolicy/Existing_.old_directory_is_removed 252s === RUN TestApplyPolicy/No_profiles,_existing_rules_are_removed 252s === PAUSE TestApplyPolicy/No_profiles,_existing_rules_are_removed 252s === RUN TestApplyPolicy/User,_error_on_invalid_user_profile,_delete_previous 252s === PAUSE TestApplyPolicy/User,_error_on_invalid_user_profile,_delete_previous 252s === RUN TestApplyPolicy/Error_on_read-only_machine_directory,_no_entries 252s === PAUSE TestApplyPolicy/Error_on_read-only_machine_directory,_no_entries 252s === RUN TestApplyPolicy/Error_on_read-only_machine_directory 252s === PAUSE TestApplyPolicy/Error_on_read-only_machine_directory 252s === RUN TestApplyPolicy/Error_on_read-only_.old_directory 252s === PAUSE TestApplyPolicy/Error_on_read-only_.old_directory 252s === RUN TestApplyPolicy/User,_valid_mapping,_unchanged_content 252s === PAUSE TestApplyPolicy/User,_valid_mapping,_unchanged_content 252s === RUN TestApplyPolicy/User,_no_user_profiles,_machine_profiles_are_unloaded 252s === PAUSE TestApplyPolicy/User,_no_user_profiles,_machine_profiles_are_unloaded 252s === RUN TestApplyPolicy/User,_error_on_empty_user_profile 252s === PAUSE TestApplyPolicy/User,_error_on_empty_user_profile 252s === RUN TestApplyPolicy/User,_error_on_save_assets_failing 252s === PAUSE TestApplyPolicy/User,_error_on_save_assets_failing 252s === RUN TestApplyPolicy/Error_on_preprocessing_old_profiles_failing 252s === PAUSE TestApplyPolicy/Error_on_preprocessing_old_profiles_failing 252s === RUN TestApplyPolicy/No_apparmor_parser_and_entries 252s === PAUSE TestApplyPolicy/No_apparmor_parser_and_entries 252s === RUN TestApplyPolicy/Error_on_loading_profiles_failing 252s === PAUSE TestApplyPolicy/Error_on_loading_profiles_failing 252s === RUN TestApplyPolicy/Computer,_user_policies_are_unloaded 252s === PAUSE TestApplyPolicy/Computer,_user_policies_are_unloaded 252s === RUN TestApplyPolicy/Read-only_root_directory_and_no_entries 252s === PAUSE TestApplyPolicy/Read-only_root_directory_and_no_entries 252s === RUN TestApplyPolicy/Computer,_whitespace-only_value 252s === PAUSE TestApplyPolicy/Computer,_whitespace-only_value 252s === RUN TestApplyPolicy/Unexpected_entry_key 252s === PAUSE TestApplyPolicy/Unexpected_entry_key 252s === RUN TestApplyPolicy/User,_valid_mapping 252s === PAUSE TestApplyPolicy/User,_valid_mapping 252s === RUN TestApplyPolicy/Error_on_read-only_root_directory_with_entries 252s === PAUSE TestApplyPolicy/Error_on_read-only_root_directory_with_entries 252s === RUN TestApplyPolicy/Existing_.new_directory_is_removed 252s === PAUSE TestApplyPolicy/Existing_.new_directory_is_removed 252s === RUN TestApplyPolicy/Error_on_profile_being_a_directory 252s === PAUSE TestApplyPolicy/Error_on_profile_being_a_directory 252s === RUN TestApplyPolicy/No_profiles,_apparmor_directory_absent 252s === PAUSE TestApplyPolicy/No_profiles,_apparmor_directory_absent 252s === RUN TestApplyPolicy/User,_no_entries,_existing_user_profile_is_deleted 252s === PAUSE TestApplyPolicy/User,_no_entries,_existing_user_profile_is_deleted 252s === RUN TestApplyPolicy/User,_error_on_overwriting_profile_contents 252s === PAUSE TestApplyPolicy/User,_error_on_overwriting_profile_contents 252s === RUN TestApplyPolicy/User,_error_on_invalid_user_profile,_restore_previous 252s === PAUSE TestApplyPolicy/User,_error_on_invalid_user_profile,_restore_previous 252s === CONT TestApplyPolicy/Computer,_duplicated_profiles 252s === CONT TestApplyPolicy/User,_no_user_profiles,_machine_profiles_are_unloaded 252s === CONT TestApplyPolicy/User,_valid_mapping,_unchanged_content 252s === CONT TestApplyPolicy/Error_on_read-only_.old_directory 252s === CONT TestApplyPolicy/Error_on_read-only_machine_directory 252s === CONT TestApplyPolicy/Error_on_read-only_machine_directory,_no_entries 252s === CONT TestApplyPolicy/User,_error_on_invalid_user_profile,_delete_previous 252s === CONT TestApplyPolicy/No_profiles,_existing_rules_are_removed 252s === CONT TestApplyPolicy/Existing_.old_directory_is_removed 252s === CONT TestApplyPolicy/Error_on_save_assets_dumping_failing 252s === CONT TestApplyPolicy/Error_on_preprocessing_new_profiles_failing 252s === CONT TestApplyPolicy/Error_on_absent_loaded_policies_file 252s === CONT TestApplyPolicy/Error_on_unloading_all_profiles_failing 252s === CONT TestApplyPolicy/No_apparmor_parser_and_no_entries 252s time="2025-10-31T03:47:07Z" level=warning msg="Apparmor is not available on this system: exec: \"this-definitely-does-not-exist\": executable file not found in $PATH" 252s === CONT TestApplyPolicy/Error_on_read-only_.new_directory 252s === CONT TestApplyPolicy/Error_on_absent_profile 252s === CONT TestApplyPolicy/Computer,_only_blank_profiles 252s === CONT TestApplyPolicy/Computer,_profiles_with_whitespace 252s === CONT TestApplyPolicy/Computer,_multiple_profiles, 252s === CONT TestApplyPolicy/Error_on_removing_unused_assets_after_dump 252s time="2025-10-31T03:47:07Z" level=warning msg="Couldn't remove new apparmor directory: unlinkat /tmp/TestApplyPolicyError_on_removing_unused_assets_after_dump4167773286/001/machine/users/confined_user: permission denied" 252s time="2025-10-31T03:47:07Z" level=warning msg="Couldn't restore previous apparmor directory: rename /tmp/TestApplyPolicyError_on_removing_unused_assets_after_dump4167773286/001/machine.old /tmp/TestApplyPolicyError_on_removing_unused_assets_after_dump4167773286/001/machine: file exists" 252s === CONT TestApplyPolicy/Computer,_one_profile 252s === CONT TestApplyPolicy/Error_on_unloading_old_profiles_failing 252s === CONT TestApplyPolicy/User,_error_on_multiple_profiles 252s === CONT TestApplyPolicy/User,_no_machine_profiles 252s time="2025-10-31T03:47:07Z" level=warning msg="No apparmor machine profiles configured for this machine, skipping reload" 252s === CONT TestApplyPolicy/Error_on_file_as_a_directory 252s === CONT TestApplyPolicy/Computer,_previous_profiles_are_unloaded 252s === CONT TestApplyPolicy/Computer,_blank_line_profiles 252s === CONT TestApplyPolicy/Unexpected_entry_key 252s === CONT TestApplyPolicy/User,_error_on_invalid_user_profile,_restore_previous 252s === CONT TestApplyPolicy/User,_error_on_overwriting_profile_contents 252s === CONT TestApplyPolicy/User,_no_entries,_existing_user_profile_is_deleted 252s === CONT TestApplyPolicy/No_profiles,_apparmor_directory_absent 252s === CONT TestApplyPolicy/Error_on_profile_being_a_directory 252s === CONT TestApplyPolicy/Existing_.new_directory_is_removed 252s === CONT TestApplyPolicy/Error_on_read-only_root_directory_with_entries 252s === CONT TestApplyPolicy/User,_valid_mapping 252s === CONT TestApplyPolicy/Error_on_loading_profiles_failing 252s === CONT TestApplyPolicy/Computer,_whitespace-only_value 252s === CONT TestApplyPolicy/Read-only_root_directory_and_no_entries 252s === CONT TestApplyPolicy/Computer,_user_policies_are_unloaded 252s === CONT TestApplyPolicy/Error_on_preprocessing_old_profiles_failing 252s === CONT TestApplyPolicy/No_apparmor_parser_and_entries 252s === CONT TestApplyPolicy/User,_error_on_save_assets_failing 252s === CONT TestApplyPolicy/User,_error_on_empty_user_profile 252s --- PASS: TestApplyPolicy (0.00s) 252s --- PASS: TestApplyPolicy/Computer,_duplicated_profiles (0.03s) 252s --- PASS: TestApplyPolicy/User,_no_user_profiles,_machine_profiles_are_unloaded (0.03s) 252s --- PASS: TestApplyPolicy/User,_valid_mapping,_unchanged_content (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_read-only_.old_directory (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_read-only_machine_directory,_no_entries (0.02s) 252s --- PASS: TestApplyPolicy/User,_error_on_invalid_user_profile,_delete_previous (0.01s) 252s --- PASS: TestApplyPolicy/Error_on_read-only_machine_directory (0.04s) 252s --- PASS: TestApplyPolicy/No_profiles,_existing_rules_are_removed (0.02s) 252s --- PASS: TestApplyPolicy/Error_on_save_assets_dumping_failing (0.00s) 252s --- PASS: TestApplyPolicy/Existing_.old_directory_is_removed (0.02s) 252s --- PASS: TestApplyPolicy/Error_on_absent_loaded_policies_file (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_preprocessing_new_profiles_failing (0.01s) 252s --- PASS: TestApplyPolicy/No_apparmor_parser_and_no_entries (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_read-only_.new_directory (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_absent_profile (0.00s) 252s --- PASS: TestApplyPolicy/Computer,_only_blank_profiles (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_unloading_all_profiles_failing (0.02s) 252s --- PASS: TestApplyPolicy/Computer,_profiles_with_whitespace (0.02s) 252s --- PASS: TestApplyPolicy/Error_on_removing_unused_assets_after_dump (0.00s) 252s --- PASS: TestApplyPolicy/Computer,_multiple_profiles, (0.02s) 252s --- PASS: TestApplyPolicy/Computer,_one_profile (0.03s) 252s --- PASS: TestApplyPolicy/User,_error_on_multiple_profiles (0.00s) 252s --- PASS: TestApplyPolicy/User,_no_machine_profiles (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_file_as_a_directory (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_unloading_old_profiles_failing (0.04s) 252s --- PASS: TestApplyPolicy/Computer,_blank_line_profiles (0.02s) 252s --- PASS: TestApplyPolicy/Unexpected_entry_key (0.00s) 252s --- PASS: TestApplyPolicy/User,_error_on_invalid_user_profile,_restore_previous (0.01s) 252s --- PASS: TestApplyPolicy/User,_error_on_overwriting_profile_contents (0.00s) 252s --- PASS: TestApplyPolicy/User,_no_entries,_existing_user_profile_is_deleted (0.00s) 252s --- PASS: TestApplyPolicy/No_profiles,_apparmor_directory_absent (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_profile_being_a_directory (0.00s) 252s --- PASS: TestApplyPolicy/Computer,_previous_profiles_are_unloaded (0.05s) 252s --- PASS: TestApplyPolicy/Error_on_read-only_root_directory_with_entries (0.00s) 252s --- PASS: TestApplyPolicy/User,_valid_mapping (0.01s) 252s --- PASS: TestApplyPolicy/Existing_.new_directory_is_removed (0.02s) 252s --- PASS: TestApplyPolicy/Computer,_whitespace-only_value (0.00s) 252s --- PASS: TestApplyPolicy/Read-only_root_directory_and_no_entries (0.00s) 252s --- PASS: TestApplyPolicy/Error_on_loading_profiles_failing (0.02s) 252s --- PASS: TestApplyPolicy/Error_on_preprocessing_old_profiles_failing (0.01s) 252s --- PASS: TestApplyPolicy/No_apparmor_parser_and_entries (0.00s) 252s --- PASS: TestApplyPolicy/User,_error_on_save_assets_failing (0.00s) 252s --- PASS: TestApplyPolicy/Computer,_user_policies_are_unloaded (0.03s) 252s --- PASS: TestApplyPolicy/User,_error_on_empty_user_profile (0.00s) 252s PASS 252s ok github.com/ubuntu/adsys/internal/policies/apparmor 0.296s 254s ? github.com/ubuntu/adsys/internal/policies/entry [no test files] 254s === RUN TestCertAutoenrollScript 254s === RUN TestCertAutoenrollScript/Enroll_with_certmonger_not_installed 254s === RUN TestCertAutoenrollScript/Error_on_invalid_flags 254s === RUN TestCertAutoenrollScript/Enroll_with_simple_configuration_and_debug_enabled 254s === RUN TestCertAutoenrollScript/Enroll_with_valid_advanced_configuration 254s === RUN TestCertAutoenrollScript/Error_on_read-only_path 254s === RUN TestCertAutoenrollScript/Error_on_invalid_JSON_keys 254s === RUN TestCertAutoenrollScript/Error_on_invalid_JSON_structure 254s === RUN TestCertAutoenrollScript/Error_on_enroll_failure 254s === RUN TestCertAutoenrollScript/Error_on_unenroll_failure 254s === RUN TestCertAutoenrollScript/Enroll_with_cepces_not_installed 254s === RUN TestCertAutoenrollScript/Error_on_missing_arguments 254s === RUN TestCertAutoenrollScript/Unenroll 254s === RUN TestCertAutoenrollScript/Error_on_invalid_JSON 254s === RUN TestCertAutoenrollScript/Enroll_with_simple_configuration 254s === RUN TestCertAutoenrollScript/Enroll_with_empty_advanced_configuration 254s --- PASS: TestCertAutoenrollScript (1.80s) 254s --- PASS: TestCertAutoenrollScript/Enroll_with_certmonger_not_installed (0.07s) 254s --- PASS: TestCertAutoenrollScript/Error_on_invalid_flags (0.07s) 254s --- PASS: TestCertAutoenrollScript/Enroll_with_simple_configuration_and_debug_enabled (0.07s) 254s --- PASS: TestCertAutoenrollScript/Enroll_with_valid_advanced_configuration (0.07s) 254s --- PASS: TestCertAutoenrollScript/Error_on_read-only_path (0.17s) 254s --- PASS: TestCertAutoenrollScript/Error_on_invalid_JSON_keys (0.17s) 254s --- PASS: TestCertAutoenrollScript/Error_on_invalid_JSON_structure (0.17s) 254s --- PASS: TestCertAutoenrollScript/Error_on_enroll_failure (0.25s) 254s --- PASS: TestCertAutoenrollScript/Error_on_unenroll_failure (0.22s) 254s --- PASS: TestCertAutoenrollScript/Enroll_with_cepces_not_installed (0.07s) 254s --- PASS: TestCertAutoenrollScript/Error_on_missing_arguments (0.07s) 254s --- PASS: TestCertAutoenrollScript/Unenroll (0.07s) 254s --- PASS: TestCertAutoenrollScript/Error_on_invalid_JSON (0.17s) 254s --- PASS: TestCertAutoenrollScript/Enroll_with_simple_configuration (0.07s) 254s --- PASS: TestCertAutoenrollScript/Enroll_with_empty_advanced_configuration (0.08s) 254s === RUN TestApplyPolicy 254s === RUN TestApplyPolicy/Computer,_no_entries 254s === RUN TestApplyPolicy/Computer,_configured_to_enroll,_advanced_configuration 254s time="2025-10-31T03:47:10Z" level=info msg="Certificate autoenrollment script ran successfully\n" 254s === RUN TestApplyPolicy/Computer,_configured_to_unenroll 254s time="2025-10-31T03:47:10Z" level=info msg="Certificate autoenrollment script ran successfully\n" 254s === RUN TestApplyPolicy/User,_autoenroll_not_supported 254s === RUN TestApplyPolicy/Error_on_invalid_advanced_configuration_value 254s === RUN TestApplyPolicy/Computer,_no_entries,_Samba_cache_present 254s time="2025-10-31T03:47:10Z" level=info msg="Certificate autoenrollment script ran successfully\n" 254s === RUN TestApplyPolicy/Computer,_autoenroll_disabled 254s === RUN TestApplyPolicy/Computer,_domain_is_offline 254s === RUN TestApplyPolicy/Computer,_configured_to_enroll 254s time="2025-10-31T03:47:10Z" level=info msg="Certificate autoenrollment script ran successfully\n" 254s === RUN TestApplyPolicy/Error_on_autoenroll_script_failure 254s === RUN TestApplyPolicy/Error_on_invalid_autoenroll_value 254s --- PASS: TestApplyPolicy (0.05s) 254s --- PASS: TestApplyPolicy/Computer,_no_entries (0.00s) 254s --- PASS: TestApplyPolicy/Computer,_configured_to_enroll,_advanced_configuration (0.01s) 254s --- PASS: TestApplyPolicy/Computer,_configured_to_unenroll (0.01s) 254s --- PASS: TestApplyPolicy/User,_autoenroll_not_supported (0.00s) 254s --- PASS: TestApplyPolicy/Error_on_invalid_advanced_configuration_value (0.00s) 254s --- PASS: TestApplyPolicy/Computer,_no_entries,_Samba_cache_present (0.01s) 254s --- PASS: TestApplyPolicy/Computer,_autoenroll_disabled (0.00s) 254s --- PASS: TestApplyPolicy/Computer,_domain_is_offline (0.00s) 254s --- PASS: TestApplyPolicy/Computer,_configured_to_enroll (0.01s) 254s --- PASS: TestApplyPolicy/Error_on_autoenroll_script_failure (0.01s) 254s --- PASS: TestApplyPolicy/Error_on_invalid_autoenroll_value (0.00s) 254s === RUN TestMockAutoenrollScript 254s --- PASS: TestMockAutoenrollScript (0.00s) 254s PASS 254s ok github.com/ubuntu/adsys/internal/policies/certificate 1.889s 254s === RUN TestNormalize 254s === PAUSE TestNormalize 254s === RUN TestApplyPolicy 254s === PAUSE TestApplyPolicy 254s === CONT TestNormalize 254s === RUN TestNormalize/off_transformed_to_boolean 254s === PAUSE TestNormalize/off_transformed_to_boolean 254s === RUN TestNormalize/as_with_weird_composition_inception_will_be_quoted 254s === PAUSE TestNormalize/as_with_weird_composition_inception_will_be_quoted 254s === RUN TestNormalize/as_with_empty_quoted_can_lead_to_unexpect_result 254s === CONT TestApplyPolicy 254s === PAUSE TestNormalize/as_with_empty_quoted_can_lead_to_unexpect_result 254s === RUN TestNormalize/yes_transformed_to_boolean 254s === PAUSE TestNormalize/yes_transformed_to_boolean 254s === RUN TestNormalize/simple_boolean_false 254s === PAUSE TestNormalize/simple_boolean_false 254s === RUN TestNormalize/unmanaged_types_are_returned_as_is 254s === PAUSE TestNormalize/unmanaged_types_are_returned_as_is 254s === RUN TestNormalize/as_with_leading_and_ending_spaces_and__[] 254s === PAUSE TestNormalize/as_with_leading_and_ending_spaces_and__[] 254s === RUN TestNormalize/Multi-lines_as_with_spaces_inside 254s === PAUSE TestNormalize/Multi-lines_as_with_spaces_inside 254s === RUN TestNormalize/Multi-lines_as_with_explicit_empty_element 254s === PAUSE TestNormalize/Multi-lines_as_with_explicit_empty_element 254s === RUN TestNormalize/ai_empty_elements_separated_with_commas_are_kept 254s === RUN TestApplyPolicy/New_user 254s === PAUSE TestApplyPolicy/New_user 254s === RUN TestApplyPolicy/Mixing_sections_and_keys_still_groups_sections 254s === PAUSE TestApplyPolicy/Mixing_sections_and_keys_still_groups_sections 254s === RUN TestApplyPolicy/Quoted_b 254s === PAUSE TestApplyPolicy/Quoted_b 254s === RUN TestApplyPolicy/Error_on_invalid_type 254s === PAUSE TestApplyPolicy/Error_on_invalid_type 254s === RUN TestApplyPolicy/Update_existing_profile_without_needed_db_append_them 254s === PAUSE TestApplyPolicy/Update_existing_profile_without_needed_db_append_them 254s === RUN TestApplyPolicy/Update_existing_profile_with_wrong_order_appends_them_in_correct_order 254s === PAUSE TestApplyPolicy/Update_existing_profile_with_wrong_order_appends_them_in_correct_order 254s === RUN TestApplyPolicy/Update_existing_profile_eliminates_adsys_DB_repetitions 254s === PAUSE TestApplyPolicy/Update_existing_profile_eliminates_adsys_DB_repetitions 254s === RUN TestApplyPolicy/Machine_updates_with_different_value 254s === PAUSE TestApplyPolicy/Machine_updates_with_different_value 254s === RUN TestApplyPolicy/Update_machine_disabled_key_with_value 254s === PAUSE TestApplyPolicy/Update_machine_disabled_key_with_value 254s === RUN TestApplyPolicy/No_update_when_no_change 254s === PAUSE TestApplyPolicy/No_update_when_no_change 254s === RUN TestApplyPolicy/Missing_machine_compiled_db_for_machine 254s === PAUSE TestNormalize/ai_empty_elements_separated_with_commas_are_kept 254s === RUN TestNormalize/Multi-lines_ai_with_spaces_inside 254s === PAUSE TestApplyPolicy/Missing_machine_compiled_db_for_machine 254s === RUN TestApplyPolicy/Missing_machine_compiled_db_for_user 254s === PAUSE TestApplyPolicy/Missing_machine_compiled_db_for_user 254s === RUN TestApplyPolicy/Update_existing_correct_profile_with_trailing_spaces_are_removed 254s === PAUSE TestApplyPolicy/Update_existing_correct_profile_with_trailing_spaces_are_removed 254s === RUN TestApplyPolicy/Update_existing_profile_without_needed_db,_trailine_lines_are_removed 254s === PAUSE TestApplyPolicy/Update_existing_profile_without_needed_db,_trailine_lines_are_removed 254s === PAUSE TestNormalize/Multi-lines_ai_with_spaces_inside 254s === RUN TestApplyPolicy/User_updates_with_different_value 254s === PAUSE TestApplyPolicy/User_updates_with_different_value 254s === RUN TestApplyPolicy/Error_on_invalid_ai 254s === RUN TestNormalize/as_without_ending_] 254s === PAUSE TestNormalize/as_without_ending_] 254s === RUN TestNormalize/as_partially_quoted_unbalanced_start_can_lead_to_unexpect_result 254s === PAUSE TestNormalize/as_partially_quoted_unbalanced_start_can_lead_to_unexpect_result 254s === RUN TestNormalize/ai_with_spaces_inside 254s === PAUSE TestNormalize/ai_with_spaces_inside 254s === RUN TestNormalize/empty_quoted_string 254s === PAUSE TestNormalize/empty_quoted_string 254s === RUN TestNormalize/one_escaped_quote 254s === PAUSE TestNormalize/one_escaped_quote 254s === RUN TestNormalize/string_with_multiple_backslashes_escaped_quotes 254s === PAUSE TestNormalize/string_with_multiple_backslashes_escaped_quotes 254s === RUN TestNormalize/simple_boolean_true 254s === PAUSE TestApplyPolicy/Error_on_invalid_ai 254s === RUN TestApplyPolicy/Error_on_invalid_value_for_unnormalized_type 254s === PAUSE TestApplyPolicy/Error_on_invalid_value_for_unnormalized_type 254s === RUN TestApplyPolicy/Error_when_machine_db_does_not_exist 254s === PAUSE TestApplyPolicy/Error_when_machine_db_does_not_exist 254s === RUN TestApplyPolicy/Multiple_sections_with_disabled_keys 254s === PAUSE TestApplyPolicy/Multiple_sections_with_disabled_keys 254s === RUN TestApplyPolicy/Normalized_canonical_form_for_each_supported_key 254s === PAUSE TestApplyPolicy/Normalized_canonical_form_for_each_supported_key 254s === RUN TestApplyPolicy/Unquoted_string 254s === PAUSE TestApplyPolicy/Unquoted_string 254s === RUN TestApplyPolicy/User_updates_existing_value 254s === PAUSE TestApplyPolicy/User_updates_existing_value 254s === RUN TestApplyPolicy/Multiple_keys_same_category 254s === PAUSE TestApplyPolicy/Multiple_keys_same_category 254s === RUN TestApplyPolicy/Multiple_sections 254s === PAUSE TestApplyPolicy/Multiple_sections 254s === RUN TestApplyPolicy/No_surrounding_brackets_ai 254s === PAUSE TestApplyPolicy/No_surrounding_brackets_ai 254s === RUN TestApplyPolicy/No_surrounding_brackets_multiple_ai 254s === PAUSE TestApplyPolicy/No_surrounding_brackets_multiple_ai 254s === RUN TestApplyPolicy/No_policy_still_generates_a_valid_db 254s === PAUSE TestNormalize/simple_boolean_true 254s === RUN TestNormalize/as_without_leading_[ 254s === PAUSE TestNormalize/as_without_leading_[ 254s === RUN TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_after_[]_are_ignored 254s === PAUSE TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_after_[]_are_ignored 254s === RUN TestNormalize/as_partially_quoted_with_comma_can_lead_to_unexpected_result 254s === PAUSE TestNormalize/as_partially_quoted_with_comma_can_lead_to_unexpected_result 254s === RUN TestNormalize/ai_without_ending_] 254s === PAUSE TestApplyPolicy/No_policy_still_generates_a_valid_db 254s === RUN TestApplyPolicy/Update_existing_correct_profile_stays_unchanged 254s === PAUSE TestApplyPolicy/Update_existing_correct_profile_stays_unchanged 254s === RUN TestApplyPolicy/Update_existing_profile_with_partial_db_append_them_without_repetition 254s === PAUSE TestApplyPolicy/Update_existing_profile_with_partial_db_append_them_without_repetition 254s === RUN TestApplyPolicy/Multi-lines_as 254s === PAUSE TestApplyPolicy/Multi-lines_as 254s === RUN TestApplyPolicy/Invalid_as_is_too_robust_to_produce_defaulting_values 254s === PAUSE TestApplyPolicy/Invalid_as_is_too_robust_to_produce_defaulting_values 254s === RUN TestApplyPolicy/Missing_user_compiled_db_for_user 254s === PAUSE TestApplyPolicy/Missing_user_compiled_db_for_user 254s === RUN TestApplyPolicy/No_surrounding_brackets_unquoted_as 254s === PAUSE TestNormalize/ai_without_ending_] 254s === RUN TestNormalize/empty_unquoted_string 254s === PAUSE TestApplyPolicy/No_surrounding_brackets_unquoted_as 254s === RUN TestApplyPolicy/No_surrounding_brackets_quoted_as 254s === PAUSE TestApplyPolicy/No_surrounding_brackets_quoted_as 254s === RUN TestApplyPolicy/Machine_updates_key_is_now_disabled 254s === PAUSE TestApplyPolicy/Machine_updates_key_is_now_disabled 254s === RUN TestApplyPolicy/No_surrounding_brackets_unquoted_multiple_as 254s === PAUSE TestApplyPolicy/No_surrounding_brackets_unquoted_multiple_as 254s === RUN TestApplyPolicy/No_surrounding_brackets_quoted_multiple_as 254s === PAUSE TestApplyPolicy/No_surrounding_brackets_quoted_multiple_as 254s === RUN TestApplyPolicy/Multi-lines_ai 254s === PAUSE TestApplyPolicy/Multi-lines_ai 254s === RUN TestApplyPolicy/Do_not_update_other_files_from_db 254s === PAUSE TestApplyPolicy/Do_not_update_other_files_from_db 254s === RUN TestApplyPolicy/Do_not_interfere_with_other_user_profile 254s === PAUSE TestApplyPolicy/Do_not_interfere_with_other_user_profile 254s === RUN TestApplyPolicy/Error_on_empty_meta 254s === PAUSE TestApplyPolicy/Error_on_empty_meta 254s === RUN TestApplyPolicy/Update_user_disabled_key_with_value 254s === PAUSE TestApplyPolicy/Update_user_disabled_key_with_value 254s === RUN TestApplyPolicy/First_boot 254s === PAUSE TestApplyPolicy/First_boot 254s === RUN TestApplyPolicy/Quoted_i 254s === PAUSE TestApplyPolicy/Quoted_i 254s === RUN TestApplyPolicy/Multi-lines_ai_mixed_with_comma 254s === PAUSE TestApplyPolicy/Multi-lines_ai_mixed_with_comma 254s === RUN TestApplyPolicy/User_updates_key_is_now_disabled 254s === PAUSE TestApplyPolicy/User_updates_key_is_now_disabled 254s === RUN TestApplyPolicy/Machine_updates_existing_value 254s === PAUSE TestApplyPolicy/Machine_updates_existing_value 254s === RUN TestApplyPolicy/Multi-lines_as_mixed_with_comma 254s === PAUSE TestApplyPolicy/Multi-lines_as_mixed_with_comma 254s === CONT TestApplyPolicy/New_user 254s === PAUSE TestNormalize/empty_unquoted_string 254s === RUN TestNormalize/string_with_two_backslashes_don’t_escape_quotes 254s === PAUSE TestNormalize/string_with_two_backslashes_don’t_escape_quotes 254s === RUN TestNormalize/y_transformed_to_boolean 254s === PAUSE TestNormalize/y_transformed_to_boolean 254s === RUN TestNormalize/n_transformed_to_boolean 254s === PAUSE TestNormalize/n_transformed_to_boolean 254s === RUN TestNormalize/simple_unquoted_as 254s === PAUSE TestNormalize/simple_unquoted_as 254s === RUN TestNormalize/Multi-lines_as_with_leading_and_trailing_brackets 254s === PAUSE TestNormalize/Multi-lines_as_with_leading_and_trailing_brackets 254s === RUN TestNormalize/Multi-lines_ai_with_consecutive_empty_lines_strips_empty_element 254s === PAUSE TestNormalize/Multi-lines_ai_with_consecutive_empty_lines_strips_empty_element 254s === RUN TestNormalize/one_quote 254s === PAUSE TestNormalize/one_quote 254s === RUN TestNormalize/string_with_escaped_quotes 254s === PAUSE TestNormalize/string_with_escaped_quotes 254s === RUN TestNormalize/as_with_spaces_inside 254s === PAUSE TestNormalize/as_with_spaces_inside 254s === RUN TestNormalize/as_wrongly_quoted_will_consider_comma_as_part_of_the_string 254s === PAUSE TestNormalize/as_wrongly_quoted_will_consider_comma_as_part_of_the_string 254s === RUN TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_are_ignored 254s === PAUSE TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_are_ignored 254s === RUN TestNormalize/Multi-lines_ai_with_leading_and_trailing_brackets 254s === PAUSE TestNormalize/Multi-lines_ai_with_leading_and_trailing_brackets 254s === RUN TestNormalize/unquoted_string_with_quotes 254s === PAUSE TestNormalize/unquoted_string_with_quotes 254s === RUN TestNormalize/as_with_leading_and_ending_spaces_and_no_[] 254s === PAUSE TestNormalize/as_with_leading_and_ending_spaces_and_no_[] 254s === RUN TestNormalize/as_simple_quoted_as_with_spaces 254s === PAUSE TestNormalize/as_simple_quoted_as_with_spaces 254s === RUN TestNormalize/as_partially_quoted_can_lead_to_unexpect_result 254s === PAUSE TestNormalize/as_partially_quoted_can_lead_to_unexpect_result 254s === RUN TestNormalize/Multi-lines_as_with_consecutive_empty_lines_strip_empty_elements 254s === PAUSE TestNormalize/Multi-lines_as_with_consecutive_empty_lines_strip_empty_elements 254s === RUN TestNormalize/ai_without_leading_[ 254s === PAUSE TestNormalize/ai_without_leading_[ 254s === RUN TestNormalize/ai_with_leading_and_ending_spaces_and__[] 254s === PAUSE TestNormalize/ai_with_leading_and_ending_spaces_and__[] 254s === RUN TestNormalize/on_transformed_to_boolean 254s === PAUSE TestNormalize/on_transformed_to_boolean 254s === RUN TestNormalize/Multi-lines_as_with_quoted_','_is_supported 254s === PAUSE TestNormalize/Multi-lines_as_with_quoted_','_is_supported 254s === RUN TestNormalize/Multi-lines_as_with_all_unquoted_','_will_split 254s === PAUSE TestNormalize/Multi-lines_as_with_all_unquoted_','_will_split 254s === RUN TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_before_[]_are_ignored 254s === PAUSE TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_before_[]_are_ignored 254s === RUN TestNormalize/simple_ai 254s === PAUSE TestNormalize/simple_ai 254s === RUN TestNormalize/Multi-lines_as_with_empty_lines_strips_empty_elements 254s === PAUSE TestNormalize/Multi-lines_as_with_empty_lines_strips_empty_elements 254s === RUN TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_are_ignored 254s === PAUSE TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_are_ignored 254s === RUN TestNormalize/Multi-lines_ai 254s === PAUSE TestNormalize/Multi-lines_ai 254s === RUN TestNormalize/weird_case_true 254s === PAUSE TestNormalize/weird_case_true 254s === RUN TestNormalize/with_spaces 254s === PAUSE TestNormalize/with_spaces 254s === RUN TestNormalize/no_transformed_to_boolean 254s === PAUSE TestNormalize/no_transformed_to_boolean 254s === RUN TestNormalize/as_partially_quoted_unbalanced_end_can_lead_to_unexpect_result 254s === PAUSE TestNormalize/as_partially_quoted_unbalanced_end_can_lead_to_unexpect_result 254s === RUN TestNormalize/Multi-lines_as_quoted 254s === PAUSE TestNormalize/Multi-lines_as_quoted 254s === RUN TestNormalize/quoted_string_with_quotes 254s === PAUSE TestNormalize/quoted_string_with_quotes 254s === RUN TestNormalize/weird_case_false 254s === PAUSE TestNormalize/weird_case_false 254s === RUN TestNormalize/simple_quoted_as 254s === PAUSE TestNormalize/simple_quoted_as 254s === RUN TestNormalize/non_supported_is_reported_as_is 254s === PAUSE TestNormalize/non_supported_is_reported_as_is 254s === RUN TestNormalize/simple_as_with_no_spaces 254s === PAUSE TestNormalize/simple_as_with_no_spaces 254s === RUN TestNormalize/as_empty_elements_separated_with_commas_are_kept 254s === PAUSE TestNormalize/as_empty_elements_separated_with_commas_are_kept 254s === RUN TestNormalize/simple_ai_with_no_spaces 254s === PAUSE TestNormalize/simple_ai_with_no_spaces 254s === RUN TestNormalize/Multi-lines_ai_with_all_unquoted_','_will_split 254s === PAUSE TestNormalize/Multi-lines_ai_with_all_unquoted_','_will_split 254s === RUN TestNormalize/simple_quoted_string 254s === PAUSE TestNormalize/simple_quoted_string 254s === RUN TestNormalize/simple_unquoted_string 254s === PAUSE TestNormalize/simple_unquoted_string 254s === RUN TestNormalize/Multi-lines_as_and_single_line_mix,_quoted 254s === PAUSE TestNormalize/Multi-lines_as_and_single_line_mix,_quoted 254s === RUN TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_before_[]_are_ignored 254s === PAUSE TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_before_[]_are_ignored 254s === RUN TestNormalize/Multi-lines_as_unquoted 254s === PAUSE TestNormalize/Multi-lines_as_unquoted 254s === RUN TestNormalize/Multi-lines_as_and_single_line_mix,_unquoted 254s === PAUSE TestNormalize/Multi-lines_as_and_single_line_mix,_unquoted 254s === RUN TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_after_[]_are_ignored 254s === PAUSE TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_after_[]_are_ignored 254s === RUN TestNormalize/ai_with_leading_and_ending_spaces_and_no_[] 254s === PAUSE TestNormalize/ai_with_leading_and_ending_spaces_and_no_[] 254s === RUN TestNormalize/Multi-lines_ai_with_empty_lines_strips_empty_element 254s === PAUSE TestNormalize/Multi-lines_ai_with_empty_lines_strips_empty_element 254s === CONT TestNormalize/off_transformed_to_boolean 254s === CONT TestNormalize/Multi-lines_ai_with_empty_lines_strips_empty_element 254s === CONT TestNormalize/ai_with_leading_and_ending_spaces_and_no_[] 254s === CONT TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_after_[]_are_ignored 254s === CONT TestNormalize/Multi-lines_as_and_single_line_mix,_unquoted 254s === CONT TestNormalize/Multi-lines_as_unquoted 254s === CONT TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_before_[]_are_ignored 254s === CONT TestNormalize/Multi-lines_as_and_single_line_mix,_quoted 254s === CONT TestNormalize/simple_unquoted_string 254s === CONT TestNormalize/simple_quoted_string 254s === CONT TestNormalize/Multi-lines_ai_with_all_unquoted_','_will_split 254s === CONT TestNormalize/simple_ai_with_no_spaces 254s === CONT TestNormalize/as_empty_elements_separated_with_commas_are_kept 254s === CONT TestNormalize/simple_as_with_no_spaces 254s === CONT TestNormalize/non_supported_is_reported_as_is 254s === CONT TestNormalize/simple_quoted_as 254s === CONT TestNormalize/weird_case_false 254s === CONT TestNormalize/quoted_string_with_quotes 254s === CONT TestNormalize/Multi-lines_as_quoted 254s === CONT TestNormalize/as_partially_quoted_unbalanced_end_can_lead_to_unexpect_result 254s === CONT TestNormalize/no_transformed_to_boolean 254s === CONT TestNormalize/with_spaces 254s === CONT TestNormalize/weird_case_true 254s === CONT TestNormalize/Multi-lines_ai 254s === CONT TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_are_ignored 254s === CONT TestNormalize/Multi-lines_as_with_empty_lines_strips_empty_elements 254s === CONT TestNormalize/simple_ai 254s === CONT TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_before_[]_are_ignored 254s === CONT TestNormalize/Multi-lines_as_with_all_unquoted_','_will_split 254s === CONT TestNormalize/Multi-lines_as_with_quoted_','_is_supported 254s === CONT TestNormalize/on_transformed_to_boolean 254s === CONT TestNormalize/ai_with_leading_and_ending_spaces_and__[] 254s === CONT TestNormalize/ai_without_leading_[ 254s === CONT TestNormalize/Multi-lines_as_with_consecutive_empty_lines_strip_empty_elements 254s === CONT TestNormalize/as_partially_quoted_can_lead_to_unexpect_result 254s === CONT TestNormalize/as_simple_quoted_as_with_spaces 254s === CONT TestNormalize/as_with_leading_and_ending_spaces_and_no_[] 254s === CONT TestNormalize/unquoted_string_with_quotes 254s === CONT TestNormalize/Multi-lines_ai_with_leading_and_trailing_brackets 254s === CONT TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_are_ignored 254s === CONT TestNormalize/as_wrongly_quoted_will_consider_comma_as_part_of_the_string 254s === CONT TestNormalize/as_with_spaces_inside 254s === CONT TestNormalize/string_with_escaped_quotes 254s === CONT TestNormalize/one_quote 254s === CONT TestNormalize/Multi-lines_ai_with_consecutive_empty_lines_strips_empty_element 254s === CONT TestNormalize/Multi-lines_as_with_leading_and_trailing_brackets 254s === CONT TestNormalize/simple_unquoted_as 254s === CONT TestNormalize/n_transformed_to_boolean 254s === CONT TestNormalize/y_transformed_to_boolean 254s === CONT TestNormalize/string_with_two_backslashes_don’t_escape_quotes 254s === CONT TestNormalize/empty_unquoted_string 254s === CONT TestNormalize/ai_without_ending_] 254s === CONT TestNormalize/as_partially_quoted_with_comma_can_lead_to_unexpected_result 254s === CONT TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_after_[]_are_ignored 254s === CONT TestNormalize/as_without_leading_[ 254s === CONT TestNormalize/simple_boolean_true 254s === CONT TestNormalize/string_with_multiple_backslashes_escaped_quotes 254s === CONT TestNormalize/one_escaped_quote 254s === CONT TestNormalize/empty_quoted_string 254s === CONT TestNormalize/ai_with_spaces_inside 254s === CONT TestNormalize/as_partially_quoted_unbalanced_start_can_lead_to_unexpect_result 254s === CONT TestNormalize/as_without_ending_] 254s === CONT TestNormalize/Multi-lines_ai_with_spaces_inside 254s === CONT TestNormalize/ai_empty_elements_separated_with_commas_are_kept 254s === CONT TestNormalize/Multi-lines_as_with_explicit_empty_element 254s === CONT TestNormalize/Multi-lines_as_with_spaces_inside 254s === CONT TestNormalize/as_with_leading_and_ending_spaces_and__[] 254s === CONT TestNormalize/unmanaged_types_are_returned_as_is 254s === CONT TestNormalize/simple_boolean_false 254s === CONT TestNormalize/yes_transformed_to_boolean 254s === CONT TestNormalize/as_with_empty_quoted_can_lead_to_unexpect_result 254s === CONT TestNormalize/as_with_weird_composition_inception_will_be_quoted 254s --- PASS: TestNormalize (0.00s) 254s --- PASS: TestNormalize/off_transformed_to_boolean (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_empty_lines_strips_empty_element (0.00s) 254s --- PASS: TestNormalize/ai_with_leading_and_ending_spaces_and_no_[] (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_after_[]_are_ignored (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_and_single_line_mix,_unquoted (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_unquoted (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_before_[]_are_ignored (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_and_single_line_mix,_quoted (0.00s) 254s --- PASS: TestNormalize/simple_unquoted_string (0.00s) 254s --- PASS: TestNormalize/simple_quoted_string (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_all_unquoted_','_will_split (0.00s) 254s --- PASS: TestNormalize/simple_ai_with_no_spaces (0.00s) 254s --- PASS: TestNormalize/as_empty_elements_separated_with_commas_are_kept (0.00s) 254s --- PASS: TestNormalize/simple_as_with_no_spaces (0.00s) 254s --- PASS: TestNormalize/non_supported_is_reported_as_is (0.00s) 254s --- PASS: TestNormalize/simple_quoted_as (0.00s) 254s --- PASS: TestNormalize/weird_case_false (0.00s) 254s --- PASS: TestNormalize/quoted_string_with_quotes (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_quoted (0.00s) 254s --- PASS: TestNormalize/as_partially_quoted_unbalanced_end_can_lead_to_unexpect_result (0.00s) 254s --- PASS: TestNormalize/no_transformed_to_boolean (0.00s) 254s --- PASS: TestNormalize/with_spaces (0.00s) 254s --- PASS: TestNormalize/weird_case_true (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_are_ignored (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_empty_lines_strips_empty_elements (0.00s) 254s --- PASS: TestNormalize/simple_ai (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_leading_or_trailing_empty_lines_before_[]_are_ignored (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_all_unquoted_','_will_split (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_quoted_','_is_supported (0.00s) 254s --- PASS: TestNormalize/on_transformed_to_boolean (0.00s) 254s --- PASS: TestNormalize/ai_with_leading_and_ending_spaces_and__[] (0.00s) 254s --- PASS: TestNormalize/ai_without_leading_[ (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_consecutive_empty_lines_strip_empty_elements (0.00s) 254s --- PASS: TestNormalize/as_partially_quoted_can_lead_to_unexpect_result (0.00s) 254s --- PASS: TestNormalize/as_simple_quoted_as_with_spaces (0.00s) 254s --- PASS: TestNormalize/as_with_leading_and_ending_spaces_and_no_[] (0.00s) 254s --- PASS: TestNormalize/unquoted_string_with_quotes (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_leading_and_trailing_brackets (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_are_ignored (0.00s) 254s --- PASS: TestNormalize/as_wrongly_quoted_will_consider_comma_as_part_of_the_string (0.00s) 254s --- PASS: TestNormalize/as_with_spaces_inside (0.00s) 254s --- PASS: TestNormalize/string_with_escaped_quotes (0.00s) 254s --- PASS: TestNormalize/one_quote (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_consecutive_empty_lines_strips_empty_element (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_leading_and_trailing_brackets (0.00s) 254s --- PASS: TestNormalize/simple_unquoted_as (0.00s) 254s --- PASS: TestNormalize/n_transformed_to_boolean (0.00s) 254s --- PASS: TestNormalize/y_transformed_to_boolean (0.00s) 254s --- PASS: TestNormalize/string_with_two_backslashes_don’t_escape_quotes (0.00s) 254s --- PASS: TestNormalize/empty_unquoted_string (0.00s) 254s --- PASS: TestNormalize/ai_without_ending_] (0.00s) 254s --- PASS: TestNormalize/as_partially_quoted_with_comma_can_lead_to_unexpected_result (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_leading_or_trailing_empty_lines_after_[]_are_ignored (0.00s) 254s --- PASS: TestNormalize/as_without_leading_[ (0.00s) 254s --- PASS: TestNormalize/simple_boolean_true (0.00s) 254s --- PASS: TestNormalize/string_with_multiple_backslashes_escaped_quotes (0.00s) 254s --- PASS: TestNormalize/one_escaped_quote (0.00s) 254s --- PASS: TestNormalize/empty_quoted_string (0.00s) 254s --- PASS: TestNormalize/ai_with_spaces_inside (0.00s) 254s --- PASS: TestNormalize/as_partially_quoted_unbalanced_start_can_lead_to_unexpect_result (0.00s) 254s --- PASS: TestNormalize/as_without_ending_] (0.00s) 254s --- PASS: TestNormalize/Multi-lines_ai_with_spaces_inside (0.00s) 254s --- PASS: TestNormalize/ai_empty_elements_separated_with_commas_are_kept (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_explicit_empty_element (0.00s) 254s --- PASS: TestNormalize/Multi-lines_as_with_spaces_inside (0.00s) 254s --- PASS: TestNormalize/as_with_leading_and_ending_spaces_and__[] (0.00s) 254s --- PASS: TestNormalize/unmanaged_types_are_returned_as_is (0.00s) 254s --- PASS: TestNormalize/simple_boolean_false (0.00s) 254s --- PASS: TestNormalize/yes_transformed_to_boolean (0.00s) 254s --- PASS: TestNormalize/as_with_empty_quoted_can_lead_to_unexpect_result (0.00s) 254s --- PASS: TestNormalize/as_with_weird_composition_inception_will_be_quoted (0.00s) 254s === CONT TestApplyPolicy/No_surrounding_brackets_ai 254s === CONT TestApplyPolicy/Multiple_sections 254s === CONT TestApplyPolicy/Multiple_keys_same_category 254s === CONT TestApplyPolicy/Multi-lines_as_mixed_with_comma 254s === CONT TestApplyPolicy/User_updates_existing_value 254s === CONT TestApplyPolicy/Machine_updates_existing_value 254s === CONT TestApplyPolicy/User_updates_key_is_now_disabled 254s === CONT TestApplyPolicy/Unquoted_string 254s === CONT TestApplyPolicy/Normalized_canonical_form_for_each_supported_key 254s === CONT TestApplyPolicy/Multi-lines_ai_mixed_with_comma 254s === CONT TestApplyPolicy/Quoted_i 254s === CONT TestApplyPolicy/First_boot 254s === CONT TestApplyPolicy/Multiple_sections_with_disabled_keys 254s === CONT TestApplyPolicy/Error_when_machine_db_does_not_exist 254s === CONT TestApplyPolicy/Update_user_disabled_key_with_value 254s === CONT TestApplyPolicy/Error_on_empty_meta 254s === CONT TestApplyPolicy/Do_not_interfere_with_other_user_profile 254s === CONT TestApplyPolicy/Do_not_update_other_files_from_db 254s === CONT TestApplyPolicy/Multi-lines_ai 254s === CONT TestApplyPolicy/No_surrounding_brackets_quoted_multiple_as 254s === CONT TestApplyPolicy/No_surrounding_brackets_unquoted_multiple_as 254s === CONT TestApplyPolicy/Machine_updates_key_is_now_disabled 254s === CONT TestApplyPolicy/No_surrounding_brackets_quoted_as 254s === CONT TestApplyPolicy/No_surrounding_brackets_unquoted_as 254s === CONT TestApplyPolicy/Missing_user_compiled_db_for_user 254s === CONT TestApplyPolicy/Invalid_as_is_too_robust_to_produce_defaulting_values 254s === CONT TestApplyPolicy/Multi-lines_as 254s === CONT TestApplyPolicy/Update_existing_profile_with_partial_db_append_them_without_repetition 254s === CONT TestApplyPolicy/Update_existing_correct_profile_stays_unchanged 254s === CONT TestApplyPolicy/No_policy_still_generates_a_valid_db 254s === CONT TestApplyPolicy/No_surrounding_brackets_multiple_ai 254s === CONT TestApplyPolicy/No_update_when_no_change 254s === CONT TestApplyPolicy/Error_on_invalid_value_for_unnormalized_type 254s === CONT TestApplyPolicy/Error_on_invalid_ai 254s === CONT TestApplyPolicy/User_updates_with_different_value 254s === CONT TestApplyPolicy/Update_existing_profile_without_needed_db,_trailine_lines_are_removed 254s === CONT TestApplyPolicy/Update_existing_correct_profile_with_trailing_spaces_are_removed 254s === CONT TestApplyPolicy/Missing_machine_compiled_db_for_user 254s === CONT TestApplyPolicy/Missing_machine_compiled_db_for_machine 254s === CONT TestApplyPolicy/Update_existing_profile_with_wrong_order_appends_them_in_correct_order 254s === CONT TestApplyPolicy/Update_machine_disabled_key_with_value 254s === CONT TestApplyPolicy/Machine_updates_with_different_value 254s === CONT TestApplyPolicy/Update_existing_profile_eliminates_adsys_DB_repetitions 254s === CONT TestApplyPolicy/Error_on_invalid_type 254s === CONT TestApplyPolicy/Update_existing_profile_without_needed_db_append_them 254s === CONT TestApplyPolicy/Quoted_b 254s === CONT TestApplyPolicy/Mixing_sections_and_keys_still_groups_sections 254s --- PASS: TestApplyPolicy (0.00s) 254s --- PASS: TestApplyPolicy/New_user (0.01s) 254s --- PASS: TestApplyPolicy/Multiple_sections (0.00s) 254s --- PASS: TestApplyPolicy/No_surrounding_brackets_ai (0.01s) 254s --- PASS: TestApplyPolicy/Multiple_keys_same_category (0.00s) 254s --- PASS: TestApplyPolicy/Multi-lines_as_mixed_with_comma (0.00s) 254s --- PASS: TestApplyPolicy/Machine_updates_existing_value (0.00s) 254s --- PASS: TestApplyPolicy/User_updates_existing_value (0.00s) 254s --- PASS: TestApplyPolicy/Unquoted_string (0.00s) 254s --- PASS: TestApplyPolicy/User_updates_key_is_now_disabled (0.01s) 254s --- PASS: TestApplyPolicy/Multi-lines_ai_mixed_with_comma (0.00s) 254s --- PASS: TestApplyPolicy/Quoted_i (0.00s) 254s --- PASS: TestApplyPolicy/Normalized_canonical_form_for_each_supported_key (0.01s) 254s --- PASS: TestApplyPolicy/Multiple_sections_with_disabled_keys (0.00s) 254s --- PASS: TestApplyPolicy/First_boot (0.00s) 254s --- PASS: TestApplyPolicy/Update_user_disabled_key_with_value (0.00s) 254s --- PASS: TestApplyPolicy/Error_when_machine_db_does_not_exist (0.00s) 254s --- PASS: TestApplyPolicy/Do_not_interfere_with_other_user_profile (0.00s) 254s --- PASS: TestApplyPolicy/Error_on_empty_meta (0.00s) 254s --- PASS: TestApplyPolicy/Multi-lines_ai (0.01s) 254s --- PASS: TestApplyPolicy/Do_not_update_other_files_from_db (0.01s) 254s --- PASS: TestApplyPolicy/No_surrounding_brackets_unquoted_multiple_as (0.00s) 254s --- PASS: TestApplyPolicy/No_surrounding_brackets_quoted_multiple_as (0.01s) 254s --- PASS: TestApplyPolicy/Machine_updates_key_is_now_disabled (0.00s) 254s --- PASS: TestApplyPolicy/No_surrounding_brackets_quoted_as (0.00s) 254s --- PASS: TestApplyPolicy/No_surrounding_brackets_unquoted_as (0.00s) 254s --- PASS: TestApplyPolicy/Missing_user_compiled_db_for_user (0.00s) 254s --- PASS: TestApplyPolicy/Invalid_as_is_too_robust_to_produce_defaulting_values (0.00s) 254s --- PASS: TestApplyPolicy/Multi-lines_as (0.00s) 254s --- PASS: TestApplyPolicy/Update_existing_profile_with_partial_db_append_them_without_repetition (0.00s) 254s --- PASS: TestApplyPolicy/Update_existing_correct_profile_stays_unchanged (0.00s) 254s --- PASS: TestApplyPolicy/No_surrounding_brackets_multiple_ai (0.00s) 254s --- PASS: TestApplyPolicy/No_policy_still_generates_a_valid_db (0.01s) 254s --- PASS: TestApplyPolicy/No_update_when_no_change (0.00s) 254s --- PASS: TestApplyPolicy/Error_on_invalid_value_for_unnormalized_type (0.00s) 254s --- PASS: TestApplyPolicy/Error_on_invalid_ai (0.00s) 254s --- PASS: TestApplyPolicy/User_updates_with_different_value (0.00s) 254s --- PASS: TestApplyPolicy/Update_existing_correct_profile_with_trailing_spaces_are_removed (0.00s) 254s --- PASS: TestApplyPolicy/Missing_machine_compiled_db_for_user (0.00s) 254s --- PASS: TestApplyPolicy/Missing_machine_compiled_db_for_machine (0.00s) 254s --- PASS: TestApplyPolicy/Update_existing_profile_without_needed_db,_trailine_lines_are_removed (0.01s) 254s --- PASS: TestApplyPolicy/Update_machine_disabled_key_with_value (0.00s) 254s --- PASS: TestApplyPolicy/Update_existing_profile_with_wrong_order_appends_them_in_correct_order (0.00s) 254s --- PASS: TestApplyPolicy/Update_existing_profile_eliminates_adsys_DB_repetitions (0.00s) 254s --- PASS: TestApplyPolicy/Machine_updates_with_different_value (0.00s) 254s --- PASS: TestApplyPolicy/Error_on_invalid_type (0.01s) 254s --- PASS: TestApplyPolicy/Update_existing_profile_without_needed_db_append_them (0.01s) 254s --- PASS: TestApplyPolicy/Quoted_b (0.01s) 254s --- PASS: TestApplyPolicy/Mixing_sections_and_keys_still_groups_sections (0.00s) 254s PASS 254s ok github.com/ubuntu/adsys/internal/policies/dconf 0.144s 255s === RUN TestApplyPolicy 255s === PAUSE TestApplyPolicy 255s === CONT TestApplyPolicy 255s === RUN TestApplyPolicy/dconf_policy 255s === PAUSE TestApplyPolicy/dconf_policy 255s === CONT TestApplyPolicy/dconf_policy 255s --- PASS: TestApplyPolicy (0.00s) 255s --- PASS: TestApplyPolicy/dconf_policy (0.00s) 255s PASS 255s ok github.com/ubuntu/adsys/internal/policies/gdm 0.039s 258s === RUN TestParseEntryValues 258s === PAUSE TestParseEntryValues 258s === RUN TestWriteFileWithUIDGID 258s === PAUSE TestWriteFileWithUIDGID 258s === RUN TestCreateUnits 258s === PAUSE TestCreateUnits 258s === RUN TestNew 258s === PAUSE TestNew 258s === RUN TestApplyPolicy 258s === PAUSE TestApplyPolicy 258s === CONT TestParseEntryValues 258s === RUN TestParseEntryValues/Parse_values_from_entry_with_kerberos_auth_tags 258s === PAUSE TestParseEntryValues/Parse_values_from_entry_with_kerberos_auth_tags 258s === RUN TestParseEntryValues/Returns_empty_slice_if_the_entry_is_empty 258s === PAUSE TestParseEntryValues/Returns_empty_slice_if_the_entry_is_empty 258s === RUN TestParseEntryValues/Error_when_parsing_entry_with_badly_formatted_values 258s === PAUSE TestParseEntryValues/Error_when_parsing_entry_with_badly_formatted_values 258s === RUN TestParseEntryValues/Parse_values_from_entry_with_one_value 258s === PAUSE TestParseEntryValues/Parse_values_from_entry_with_one_value 258s === RUN TestParseEntryValues/Parse_values_from_entry_with_multiple_values 258s === PAUSE TestParseEntryValues/Parse_values_from_entry_with_multiple_values 258s === RUN TestParseEntryValues/Parse_values_from_entry_with_repeated_values 258s === PAUSE TestParseEntryValues/Parse_values_from_entry_with_repeated_values 258s === RUN TestParseEntryValues/Parse_values_trimming_whitespaces 258s === PAUSE TestParseEntryValues/Parse_values_trimming_whitespaces 258s === RUN TestParseEntryValues/Parse_values_trimming_sequential_linebreaks 258s === PAUSE TestParseEntryValues/Parse_values_trimming_sequential_linebreaks 258s === CONT TestParseEntryValues/Parse_values_from_entry_with_kerberos_auth_tags 258s === CONT TestApplyPolicy 258s === RUN TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_a_disabled_entry 258s === PAUSE TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_a_disabled_entry 258s === RUN TestApplyPolicy/User,_mount_file_is_updated_on_refreshing_policy_with_an_entry_with_multiple_values 258s === PAUSE TestApplyPolicy/User,_mount_file_is_updated_on_refreshing_policy_with_an_entry_with_multiple_values 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag 258s === RUN TestApplyPolicy/Creates_only_dirs_when_trying_to_apply_policy_with_no_entries 258s === PAUSE TestApplyPolicy/Creates_only_dirs_when_trying_to_apply_policy_with_no_entries 258s === RUN TestApplyPolicy/Error_when_cleaning_up_user_policy_with_no_entries_and_path_already_exists_as_a_directory 258s === PAUSE TestApplyPolicy/Error_when_cleaning_up_user_policy_with_no_entries_and_path_already_exists_as_a_directory 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_with_kerberos_auth_tags 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_with_kerberos_auth_tags 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_trimming_sequential_linebreaks 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_trimming_sequential_linebreaks 258s === RUN TestApplyPolicy/Error_when_updating_policy_and_system_mount_unit_to_remove_is_a_dir 258s === PAUSE TestApplyPolicy/Error_when_updating_policy_and_system_mount_unit_to_remove_is_a_dir 258s === RUN TestApplyPolicy/User,_does_nothing_if_the_entry_is_disabled 258s === PAUSE TestApplyPolicy/User,_does_nothing_if_the_entry_is_disabled 258s === RUN TestApplyPolicy/Error_when_cleaning_up_user_policy_with_invalid_user 258s === PAUSE TestApplyPolicy/Error_when_cleaning_up_user_policy_with_invalid_user 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_tagged_values 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_tagged_values 258s === RUN TestApplyPolicy/User,_creates_only_dirs_if_there_are_no_entries 258s === PAUSE TestApplyPolicy/User,_creates_only_dirs_if_there_are_no_entries 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_tagged_values 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_tagged_values 258s === RUN TestApplyPolicy/System,_only_emit_a_warning_when_stopping_previous_units_fails 258s === PAUSE TestApplyPolicy/System,_only_emit_a_warning_when_stopping_previous_units_fails 258s === RUN TestApplyPolicy/Error_when_user_is_not_found 258s === PAUSE TestApplyPolicy/Error_when_user_is_not_found 258s === RUN TestApplyPolicy/System,_does_nothing_if_the_entry_is_empty 258s === PAUSE TestApplyPolicy/System,_does_nothing_if_the_entry_is_empty 258s === RUN TestApplyPolicy/System,_does_nothing_if_there_are_no_entries 258s === PAUSE TestApplyPolicy/System,_does_nothing_if_there_are_no_entries 258s === RUN TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_disabled_entry 258s === PAUSE TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_disabled_entry 258s === RUN TestApplyPolicy/Error_when_entry_is_errored 258s === PAUSE TestApplyPolicy/Error_when_entry_is_errored 258s === RUN TestApplyPolicy/Error_when_users-userDir_has_invalid_permissions 258s === PAUSE TestApplyPolicy/Error_when_users-userDir_has_invalid_permissions 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag 258s === RUN TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_no_entries 258s === PAUSE TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_no_entries 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_multiple_values 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_multiple_values 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_trimming_whitespaces 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_trimming_whitespaces 258s === RUN TestApplyPolicy/Error_when_creating_units_with_bad_entry_values 258s === PAUSE TestApplyPolicy/Error_when_creating_units_with_bad_entry_values 258s === RUN TestApplyPolicy/Error_when_mounts_file_path_already_exists_as_a_directory 258s === PAUSE TestApplyPolicy/Error_when_mounts_file_path_already_exists_as_a_directory 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_values 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_values 258s === RUN TestApplyPolicy/Error_when_user_has_invalid_gid 258s === PAUSE TestApplyPolicy/Error_when_user_has_invalid_gid 258s === RUN TestApplyPolicy/Error_when_user_has_invalid_uid 258s === PAUSE TestApplyPolicy/Error_when_user_has_invalid_uid 258s === RUN TestApplyPolicy/Error_when_enabling_new_units_fails 258s === PAUSE TestApplyPolicy/Error_when_enabling_new_units_fails 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_filtering_out_unsupported_keys 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_filtering_out_unsupported_keys 258s === RUN TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_no_entries 258s === PAUSE TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_no_entries 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_filtering_out_unsupported_keys 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_filtering_out_unsupported_keys 258s === RUN TestApplyPolicy/System,_only_emit_a_warning_when_starting_new_units_fails 258s === PAUSE TestApplyPolicy/System,_only_emit_a_warning_when_starting_new_units_fails 258s === RUN TestApplyPolicy/Error_when_applying_policy_and_system_mount_unit_already_exists_as_dir 258s === PAUSE TestApplyPolicy/Error_when_applying_policy_and_system_mount_unit_already_exists_as_dir 258s === RUN TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_an_empty_entry 258s === PAUSE TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_an_empty_entry 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_values 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_values 258s === CONT TestParseEntryValues/Parse_values_trimming_whitespaces 258s === CONT TestNew 258s === RUN TestNew/Error_when_systemUnitDir_has_invalid_permissions 258s === PAUSE TestNew/Error_when_systemUnitDir_has_invalid_permissions 258s === RUN TestNew/Creates_manager_successfully 258s === PAUSE TestNew/Creates_manager_successfully 258s === RUN TestNew/Error_when_runDir_has_invalid_permissions 258s === PAUSE TestNew/Error_when_runDir_has_invalid_permissions 258s === CONT TestCreateUnits 258s === RUN TestCreateUnits/Write_single_unit 258s === PAUSE TestCreateUnits/Write_single_unit 258s === RUN TestCreateUnits/Write_multiple_units 258s === PAUSE TestCreateUnits/Write_multiple_units 258s === RUN TestCreateUnits/Write_krb5_tagged_unit 258s === PAUSE TestCreateUnits/Write_krb5_tagged_unit 258s === CONT TestWriteFileWithUIDGID 258s === RUN TestWriteFileWithUIDGID/Error_when_path_already_exists_as_a_directory 258s === PAUSE TestWriteFileWithUIDGID/Error_when_path_already_exists_as_a_directory 258s === RUN TestWriteFileWithUIDGID/Write_file_with_current_user_ownership 258s === PAUSE TestWriteFileWithUIDGID/Write_file_with_current_user_ownership 258s === RUN TestWriteFileWithUIDGID/Error_when_invalid_uid 258s === PAUSE TestWriteFileWithUIDGID/Error_when_invalid_uid 258s === RUN TestWriteFileWithUIDGID/Error_when_invalid_gid 258s === PAUSE TestWriteFileWithUIDGID/Error_when_invalid_gid 258s === RUN TestWriteFileWithUIDGID/Error_when_writing_on_a_dir_with_invalid_permissions 258s === PAUSE TestWriteFileWithUIDGID/Error_when_writing_on_a_dir_with_invalid_permissions 258s === CONT TestParseEntryValues/Parse_values_trimming_sequential_linebreaks 258s === CONT TestParseEntryValues/Parse_values_from_entry_with_one_value 258s === CONT TestParseEntryValues/Parse_values_from_entry_with_repeated_values 258s === CONT TestParseEntryValues/Parse_values_from_entry_with_multiple_values 258s === CONT TestParseEntryValues/Error_when_parsing_entry_with_badly_formatted_values 258s === CONT TestParseEntryValues/Returns_empty_slice_if_the_entry_is_empty 258s --- PASS: TestParseEntryValues (0.00s) 258s --- PASS: TestParseEntryValues/Parse_values_from_entry_with_kerberos_auth_tags (0.00s) 258s --- PASS: TestParseEntryValues/Parse_values_trimming_whitespaces (0.00s) 258s --- PASS: TestParseEntryValues/Parse_values_trimming_sequential_linebreaks (0.00s) 258s --- PASS: TestParseEntryValues/Parse_values_from_entry_with_one_value (0.00s) 258s --- PASS: TestParseEntryValues/Parse_values_from_entry_with_repeated_values (0.00s) 258s --- PASS: TestParseEntryValues/Parse_values_from_entry_with_multiple_values (0.00s) 258s --- PASS: TestParseEntryValues/Error_when_parsing_entry_with_badly_formatted_values (0.00s) 258s --- PASS: TestParseEntryValues/Returns_empty_slice_if_the_entry_is_empty (0.00s) 258s === CONT TestNew/Error_when_systemUnitDir_has_invalid_permissions 258s === CONT TestCreateUnits/Write_single_unit 258s === CONT TestNew/Error_when_runDir_has_invalid_permissions 258s === RUN TestApplyPolicy/Error_when_applying_system_policy_and_the_entry_is_errored 258s === PAUSE TestApplyPolicy/Error_when_applying_system_policy_and_the_entry_is_errored 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_multiple_values 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_multiple_values 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_trimming_sequential_linebreaks 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_trimming_sequential_linebreaks 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_trimming_whitespaces 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_trimming_whitespaces 258s === RUN TestApplyPolicy/System,_mount_units_are_updated_on_refreshing_policy_with_an_entry_with_multiple_values 258s === PAUSE TestApplyPolicy/System,_mount_units_are_updated_on_refreshing_policy_with_an_entry_with_multiple_values 258s === RUN TestApplyPolicy/Error_when_trying_to_update_policy_with_badly_formatted_entry 258s === PAUSE TestApplyPolicy/Error_when_trying_to_update_policy_with_badly_formatted_entry 258s === RUN TestApplyPolicy/Error_when_daemon-reload_fails 258s === PAUSE TestApplyPolicy/Error_when_daemon-reload_fails 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_with_kerberos_tagged_values 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_with_kerberos_tagged_values 258s === RUN TestApplyPolicy/System,_mount_units_are_added_on_refreshing_policy_with_some_matching_values 258s === PAUSE TestApplyPolicy/System,_mount_units_are_added_on_refreshing_policy_with_some_matching_values 258s === RUN TestApplyPolicy/Error_when_cleaning_up_user_policy_with_empty_entry_and_path_already_exists_as_a_directory 258s === PAUSE TestApplyPolicy/Error_when_cleaning_up_user_policy_with_empty_entry_and_path_already_exists_as_a_directory 258s === RUN TestApplyPolicy/Error_when_applying_policy_with_entry_containing_badly_formatted_value 258s === PAUSE TestApplyPolicy/Error_when_applying_policy_with_entry_containing_badly_formatted_value 258s === RUN TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_one_value 258s === PAUSE TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_one_value 258s === RUN TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_one_value 258s === PAUSE TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_one_value 258s === RUN TestApplyPolicy/System,_does_nothing_if_the_entry_is_disabled 258s === PAUSE TestApplyPolicy/System,_does_nothing_if_the_entry_is_disabled 258s === RUN TestApplyPolicy/User,_creates_only_dirs_if_the_entry_is_empty 258s === PAUSE TestApplyPolicy/User,_creates_only_dirs_if_the_entry_is_empty 258s === RUN TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_an_empty_entry 258s === PAUSE TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_an_empty_entry 258s === RUN TestApplyPolicy/Creates_only_dirs_when_trying_to_policy_with_unsupported_key 258s === PAUSE TestApplyPolicy/Creates_only_dirs_when_trying_to_policy_with_unsupported_key 258s === RUN TestApplyPolicy/Error_when_disabling_units_for_clean_up_fails 258s === PAUSE TestApplyPolicy/Error_when_disabling_units_for_clean_up_fails 258s === CONT TestNew/Creates_manager_successfully 258s === CONT TestWriteFileWithUIDGID/Error_when_path_already_exists_as_a_directory 258s --- PASS: TestNew (0.00s) 258s --- PASS: TestNew/Error_when_systemUnitDir_has_invalid_permissions (0.00s) 258s --- PASS: TestNew/Creates_manager_successfully (0.00s) 258s --- PASS: TestNew/Error_when_runDir_has_invalid_permissions (0.00s) 258s === CONT TestCreateUnits/Write_krb5_tagged_unit 258s === CONT TestWriteFileWithUIDGID/Error_when_writing_on_a_dir_with_invalid_permissions 258s === CONT TestCreateUnits/Write_multiple_units 258s --- PASS: TestCreateUnits (0.00s) 258s --- PASS: TestCreateUnits/Write_single_unit (0.00s) 258s --- PASS: TestCreateUnits/Write_krb5_tagged_unit (0.00s) 258s --- PASS: TestCreateUnits/Write_multiple_units (0.00s) 258s === CONT TestWriteFileWithUIDGID/Error_when_invalid_gid 258s === CONT TestWriteFileWithUIDGID/Error_when_invalid_uid 258s === CONT TestWriteFileWithUIDGID/Write_file_with_current_user_ownership 258s === CONT TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_a_disabled_entry 258s --- PASS: TestWriteFileWithUIDGID (0.00s) 258s --- PASS: TestWriteFileWithUIDGID/Error_when_path_already_exists_as_a_directory (0.00s) 258s --- PASS: TestWriteFileWithUIDGID/Error_when_writing_on_a_dir_with_invalid_permissions (0.00s) 258s --- PASS: TestWriteFileWithUIDGID/Error_when_invalid_uid (0.00s) 258s --- PASS: TestWriteFileWithUIDGID/Write_file_with_current_user_ownership (0.00s) 258s --- PASS: TestWriteFileWithUIDGID/Error_when_invalid_gid (0.00s) 258s === CONT TestApplyPolicy/Error_when_disabling_units_for_clean_up_fails 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/Creates_only_dirs_when_trying_to_policy_with_unsupported_key 258s === CONT TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_an_empty_entry 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_creates_only_dirs_if_the_entry_is_empty 258s === CONT TestApplyPolicy/System,_does_nothing_if_the_entry_is_disabled 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_one_value 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_one_value 258s === CONT TestApplyPolicy/Error_when_applying_policy_with_entry_containing_badly_formatted_value 258s === CONT TestApplyPolicy/Error_when_cleaning_up_user_policy_with_empty_entry_and_path_already_exists_as_a_directory 258s === CONT TestApplyPolicy/System,_mount_units_are_added_on_refreshing_policy_with_some_matching_values 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_with_kerberos_tagged_values 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath2.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-otherdomain.com-mount-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-yetanotherdomain.com-mount_path-mount-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-fuse-completelydifferent.com-different-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-krb_domain.com-mount-krb_path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-authenticated.com-authenticated-mount.mount\": failed to start unit" 258s === CONT TestApplyPolicy/Error_when_daemon-reload_fails 258s === CONT TestApplyPolicy/Error_when_trying_to_update_policy_with_badly_formatted_entry 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/System,_mount_units_are_updated_on_refreshing_policy_with_an_entry_with_multiple_values 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_trimming_whitespaces 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath2.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-otherdomain.com-mount-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-yetanotherdomain.com-mount_path-mount-path.mount\": failed to start unit" 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_trimming_sequential_linebreaks 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_multiple_values 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath2.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-otherdomain.com-mount-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-yetanotherdomain.com-mount_path-mount-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mounpath.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-otherdomain.com-mount-path.mount\": failed to start unit" 258s === CONT TestApplyPolicy/Error_when_applying_system_policy_and_the_entry_is_errored 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_values 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-single.com-mnt.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-anotherone.com-mnt.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-rpt-repeated.com-repeatedmount.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_an_empty_entry 258s === CONT TestApplyPolicy/Error_when_applying_policy_and_system_mount_unit_already_exists_as_dir 258s === CONT TestApplyPolicy/System,_only_emit_a_warning_when_starting_new_units_fails 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_filtering_out_unsupported_keys 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_no_entries 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_filtering_out_unsupported_keys 258s === CONT TestApplyPolicy/Error_when_enabling_new_units_fails 258s === CONT TestApplyPolicy/Error_when_user_has_invalid_uid 258s === CONT TestApplyPolicy/Error_when_user_has_invalid_gid 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_values 258s === CONT TestApplyPolicy/Error_when_mounts_file_path_already_exists_as_a_directory 258s === CONT TestApplyPolicy/Error_when_creating_units_with_bad_entry_values 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_trimming_whitespaces 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-otherdomain.com-mount-path.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-yetanotherdomain.com-path-mount.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_multiple_values 258s === CONT TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_no_entries 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag 258s time="2025-10-31T03:47:14Z" level=warning msg="The location \"[krb5]nfs://domain/untagged_first\" was already set up to be mounted with different options or authentication. The first provided value \"nfs://domain/untagged_first\" will be used instead." 258s time="2025-10-31T03:47:14Z" level=warning msg="The location \"nfs://domain/tagged_first\" was already set up to be mounted with different options or authentication. The first provided value \"[krb5]nfs://domain/tagged_first\" will be used instead." 258s === CONT TestApplyPolicy/Error_when_users-userDir_has_invalid_permissions 258s === CONT TestApplyPolicy/Error_when_entry_is_errored 258s === CONT TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_disabled_entry 258s === CONT TestApplyPolicy/System,_does_nothing_if_there_are_no_entries 258s === CONT TestApplyPolicy/System,_does_nothing_if_the_entry_is_empty 258s === CONT TestApplyPolicy/Error_when_user_is_not_found 258s === CONT TestApplyPolicy/System,_only_emit_a_warning_when_stopping_previous_units_fails 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="Failed to stop unit \"adsys-protocol-domain.com-mountpath.mount\": failed to stop unit" 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_tagged_values 258s === CONT TestApplyPolicy/User,_creates_only_dirs_if_there_are_no_entries 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_tagged_values 258s === CONT TestApplyPolicy/Error_when_cleaning_up_user_policy_with_invalid_user 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-rpt-repeated.com-repeatedmount.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-cifs-single.com-mnt.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-anotherone.com-mnt.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_does_nothing_if_the_entry_is_disabled 258s === CONT TestApplyPolicy/Error_when_updating_policy_and_system_mount_unit_to_remove_is_a_dir 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-protocol-domain.com-mountpath.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_trimming_sequential_linebreaks 258s === CONT TestApplyPolicy/User,_successfully_apply_policy_with_kerberos_auth_tags 258s === CONT TestApplyPolicy/Error_when_cleaning_up_user_policy_with_no_entries_and_path_already_exists_as_a_directory 258s === CONT TestApplyPolicy/Creates_only_dirs_when_trying_to_apply_policy_with_no_entries 258s === CONT TestApplyPolicy/System,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag 258s time="2025-10-31T03:47:14Z" level=warning msg="The location \"[krb5]nfs://domain/untagged_first\" was already set up to be mounted with different options or authentication. The first provided value \"nfs://domain/untagged_first\" will be used instead." 258s time="2025-10-31T03:47:14Z" level=warning msg="The location \"nfs://domain/tagged_first\" was already set up to be mounted with different options or authentication. The first provided value \"[krb5]nfs://domain/tagged_first\" will be used instead." 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-domain-tagged_first.mount\": failed to start unit" 258s time="2025-10-31T03:47:14Z" level=warning msg="failed to start unit \"adsys-nfs-domain-untagged_first.mount\": failed to start unit" 258s === CONT TestApplyPolicy/User,_mount_file_is_updated_on_refreshing_policy_with_an_entry_with_multiple_values 258s --- PASS: TestApplyPolicy (0.00s) 258s --- PASS: TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_a_disabled_entry (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_disabling_units_for_clean_up_fails (0.00s) 258s --- PASS: TestApplyPolicy/Creates_only_dirs_when_trying_to_policy_with_unsupported_key (0.00s) 258s --- PASS: TestApplyPolicy/User,_creates_only_dirs_if_the_entry_is_empty (0.00s) 258s --- PASS: TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_an_empty_entry (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_one_value (0.00s) 258s --- PASS: TestApplyPolicy/System,_does_nothing_if_the_entry_is_disabled (0.01s) 258s --- PASS: TestApplyPolicy/Error_when_applying_policy_with_entry_containing_badly_formatted_value (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_one_value (0.01s) 258s --- PASS: TestApplyPolicy/Error_when_cleaning_up_user_policy_with_empty_entry_and_path_already_exists_as_a_directory (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_with_kerberos_tagged_values (0.00s) 258s --- PASS: TestApplyPolicy/System,_mount_units_are_added_on_refreshing_policy_with_some_matching_values (0.01s) 258s --- PASS: TestApplyPolicy/Error_when_daemon-reload_fails (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_trying_to_update_policy_with_badly_formatted_entry (0.00s) 258s --- PASS: TestApplyPolicy/System,_mount_units_are_updated_on_refreshing_policy_with_an_entry_with_multiple_values (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_trimming_whitespaces (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_trimming_sequential_linebreaks (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_multiple_values (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_values (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_applying_system_policy_and_the_entry_is_errored (0.01s) 258s --- PASS: TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_an_empty_entry (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_applying_policy_and_system_mount_unit_already_exists_as_dir (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_filtering_out_unsupported_keys (0.00s) 258s --- PASS: TestApplyPolicy/System,_only_emit_a_warning_when_starting_new_units_fails (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_filtering_out_unsupported_keys (0.00s) 258s --- PASS: TestApplyPolicy/User,_mount_file_is_removed_on_refreshing_policy_with_no_entries (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_user_has_invalid_uid (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_enabling_new_units_fails (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_user_has_invalid_gid (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_mounts_file_path_already_exists_as_a_directory (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_creating_units_with_bad_entry_values (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_trimming_whitespaces (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_values (0.01s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_multiple_values (0.00s) 258s --- PASS: TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_no_entries (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_users-userDir_has_invalid_permissions (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_entry_is_errored (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag (0.00s) 258s --- PASS: TestApplyPolicy/System,_does_nothing_if_there_are_no_entries (0.00s) 258s --- PASS: TestApplyPolicy/System,_does_nothing_if_the_entry_is_empty (0.00s) 258s --- PASS: TestApplyPolicy/System,_mount_units_are_removed_on_refreshing_policy_with_disabled_entry (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_user_is_not_found (0.00s) 258s --- PASS: TestApplyPolicy/System,_only_emit_a_warning_when_stopping_previous_units_fails (0.00s) 258s --- PASS: TestApplyPolicy/User,_creates_only_dirs_if_there_are_no_entries (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_for_entry_with_repeated_tagged_values (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_for_entry_with_repeated_tagged_values (0.00s) 258s --- PASS: TestApplyPolicy/User,_does_nothing_if_the_entry_is_disabled (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_cleaning_up_user_policy_with_invalid_user (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_updating_policy_and_system_mount_unit_to_remove_is_a_dir (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_trimming_sequential_linebreaks (0.00s) 258s --- PASS: TestApplyPolicy/Creates_only_dirs_when_trying_to_apply_policy_with_no_entries (0.00s) 258s --- PASS: TestApplyPolicy/User,_successfully_apply_policy_with_kerberos_auth_tags (0.00s) 258s --- PASS: TestApplyPolicy/System,_successfully_apply_policy_prioritizing_the_first_value_found,_despite_the_tag (0.00s) 258s --- PASS: TestApplyPolicy/Error_when_cleaning_up_user_policy_with_no_entries_and_path_already_exists_as_a_directory (0.01s) 258s --- PASS: TestApplyPolicy/User,_mount_file_is_updated_on_refreshing_policy_with_an_entry_with_multiple_values (0.00s) 258s PASS 258s ok github.com/ubuntu/adsys/internal/policies/mount 0.132s 258s === RUN TestSplitAndNormalizeUsersAndGroups 258s === PAUSE TestSplitAndNormalizeUsersAndGroups 258s === RUN TestPolkitAdminIdentitiesFromConf 258s === PAUSE TestPolkitAdminIdentitiesFromConf 258s === RUN TestPolkitAdminIdentitiesFromRules 258s === PAUSE TestPolkitAdminIdentitiesFromRules 258s === RUN TestApplyPolicy 258s === PAUSE TestApplyPolicy 258s === CONT TestSplitAndNormalizeUsersAndGroups 258s === CONT TestPolkitAdminIdentitiesFromRules 258s === RUN TestPolkitAdminIdentitiesFromRules/No_previous_admin_identities_but_regular_directory_structure 258s === PAUSE TestPolkitAdminIdentitiesFromRules/No_previous_admin_identities_but_regular_directory_structure 258s === RUN TestPolkitAdminIdentitiesFromRules/Directory_instead_of_a_conf_file_is_ignored 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Directory_instead_of_a_conf_file_is_ignored 258s === RUN TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_from_lower_ascii_file 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_from_lower_ascii_file 258s === RUN TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_ignoring_adsys 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_ignoring_adsys 258s === RUN TestPolkitAdminIdentitiesFromRules/Prioritize_lower_ascii_file_even_if_on_second_directory 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Prioritize_lower_ascii_file_even_if_on_second_directory 258s === RUN TestPolkitAdminIdentitiesFromRules/Returns_an_empty_string_if_directory_does_not_exists 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Returns_an_empty_string_if_directory_does_not_exists 258s === RUN TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities 258s === RUN TestPolkitAdminIdentitiesFromRules/Consider_only_first_returned_value 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Consider_only_first_returned_value 258s === RUN TestPolkitAdminIdentitiesFromRules/Prioritize_first_specified_directory_if_files_have_same_ascii 258s === PAUSE TestPolkitAdminIdentitiesFromRules/Prioritize_first_specified_directory_if_files_have_same_ascii 258s === CONT TestPolkitAdminIdentitiesFromRules/No_previous_admin_identities_but_regular_directory_structure 258s === CONT TestApplyPolicy 258s === RUN TestApplyPolicy/No_client_AD_admins 258s === PAUSE TestApplyPolicy/No_client_AD_admins 258s === RUN TestApplyPolicy/Disallow_local_admins 258s === PAUSE TestApplyPolicy/Disallow_local_admins 258s === RUN TestApplyPolicy/Set_client_group_admins 258s === PAUSE TestApplyPolicy/Set_client_group_admins 258s === RUN TestApplyPolicy/Error_on_writing_to_polkit_subdirectory_creation 258s === PAUSE TestApplyPolicy/Error_on_writing_to_polkit_subdirectory_creation 258s === RUN TestApplyPolicy/Error_if_can’t_rename_to_destination_for_polkit_conf_file 258s === PAUSE TestApplyPolicy/Error_if_can’t_rename_to_destination_for_polkit_conf_file 258s === RUN TestApplyPolicy/Error_on_writing_to_sudoers_file 258s === PAUSE TestApplyPolicy/Error_on_writing_to_sudoers_file 258s === RUN TestApplyPolicy/Error_on_creating_sudoers_and_polkit_base_directory 258s === PAUSE TestApplyPolicy/Error_on_creating_sudoers_and_polkit_base_directory 258s === RUN TestApplyPolicy/Error_if_can’t_rename_to_destination_for_sudoers_file 258s === PAUSE TestApplyPolicy/Error_if_can’t_rename_to_destination_for_sudoers_file 258s === RUN TestApplyPolicy/No_rules_still_overwrite_those_files 258s === PAUSE TestApplyPolicy/No_rules_still_overwrite_those_files 258s === RUN TestApplyPolicy/Empty_client_AD_admins 258s === PAUSE TestApplyPolicy/Empty_client_AD_admins 258s === RUN TestApplyPolicy/Assume_old_polkit_if_cant_read_system_reserved_path 258s === PAUSE TestApplyPolicy/Assume_old_polkit_if_cant_read_system_reserved_path 258s === RUN TestApplyPolicy/Error_on_writing_to_polkit_conf_file 258s === PAUSE TestApplyPolicy/Error_on_writing_to_polkit_conf_file 258s === RUN TestApplyPolicy/No_rules_and_no_existing_history_means_no_files 258s === PAUSE TestApplyPolicy/No_rules_and_no_existing_history_means_no_files 258s === RUN TestApplyPolicy/Set_client_mixed_with_users_and_group_admins 258s === PAUSE TestApplyPolicy/Set_client_mixed_with_users_and_group_admins 258s === RUN TestApplyPolicy/Allow_local_admins_without_previous_local_admin_conf_and_set_client_admins 258s === PAUSE TestApplyPolicy/Allow_local_admins_without_previous_local_admin_conf_and_set_client_admins 258s === RUN TestApplyPolicy/Not_a_computer 258s === PAUSE TestApplyPolicy/Not_a_computer 258s === RUN TestApplyPolicy/Allow_local_admins_with_no_other_rules_is_a_noop 258s === PAUSE TestApplyPolicy/Allow_local_admins_with_no_other_rules_is_a_noop 258s === RUN TestApplyPolicy/Set_client_multiple_users_admins 258s === PAUSE TestApplyPolicy/Set_client_multiple_users_admins 258s === RUN TestApplyPolicy/Disallow_local_admins_and_set_client_admins 258s === PAUSE TestApplyPolicy/Disallow_local_admins_and_set_client_admins 258s === RUN TestApplyPolicy/Don't_overwrite_other_existing_files 258s === PAUSE TestApplyPolicy/Don't_overwrite_other_existing_files 258s === RUN TestApplyPolicy/Set_client_user_admins 258s === PAUSE TestApplyPolicy/Set_client_user_admins 258s === RUN TestApplyPolicy/Disallow_local_admins_with_previous_local_admin_conf_and_set_client_admins 258s === PAUSE TestApplyPolicy/Disallow_local_admins_with_previous_local_admin_conf_and_set_client_admins 258s === RUN TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_and_set_client_admins 258s === PAUSE TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_and_set_client_admins 258s === RUN TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(with_adsys_file)_and_set_client_admins 258s === PAUSE TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(with_adsys_file)_and_set_client_admins 258s === RUN TestApplyPolicy/Overwrite_existing_sudoers_file 258s === PAUSE TestApplyPolicy/Overwrite_existing_sudoers_file 258s === RUN TestApplyPolicy/Overwrite_existing_polkit_file 258s === PAUSE TestApplyPolicy/Overwrite_existing_polkit_file 258s === RUN TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(simple)_and_set_client_admins 258s === PAUSE TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(simple)_and_set_client_admins 258s === RUN TestApplyPolicy/Create_on_new_polkit_version_and_remove_old_file 258s === PAUSE TestApplyPolicy/Create_on_new_polkit_version_and_remove_old_file 258s === CONT TestApplyPolicy/No_client_AD_admins 258s === RUN TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_EOL 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_EOL 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_[ 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_[ 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_] 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_] 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_| 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_| 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_> 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_> 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_= 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_= 258s === RUN TestSplitAndNormalizeUsersAndGroups/Multiple_values_separated_by_comma 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Multiple_values_separated_by_comma 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_% 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_% 258s === RUN TestSplitAndNormalizeUsersAndGroups/Group_one_value 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Group_one_value 258s === RUN TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_a_mix_of_comma_and_EOL 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_a_mix_of_comma_and_EOL 258s === RUN TestSplitAndNormalizeUsersAndGroups/User_name_with_space 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/User_name_with_space 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_* 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_* 258s === RUN TestSplitAndNormalizeUsersAndGroups/Empty_value_with_comma 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Empty_value_with_comma 258s === RUN TestSplitAndNormalizeUsersAndGroups/Simple_one_value 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Simple_one_value 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_/ 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_/ 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_? 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_? 258s === RUN TestSplitAndNormalizeUsersAndGroups/Don’t_strip_first_%_but_others 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Don’t_strip_first_%_but_others 258s === RUN TestSplitAndNormalizeUsersAndGroups/Empty_value 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Empty_value 258s === RUN TestSplitAndNormalizeUsersAndGroups/Handle_domain\user 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Handle_domain\user 258s === RUN TestSplitAndNormalizeUsersAndGroups/Multiple_\_only_handling_first_one_and_ignore_others 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Multiple_\_only_handling_first_one_and_ignore_others 258s === RUN TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_comma 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_comma 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_: 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_: 258s === RUN TestSplitAndNormalizeUsersAndGroups/Empty_value_with_EOL 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Empty_value_with_EOL 258s === RUN TestSplitAndNormalizeUsersAndGroups/Multiple_values_separated_by_EOL 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Multiple_values_separated_by_EOL 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_< 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_< 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_empty_values 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_empty_values 258s === RUN TestSplitAndNormalizeUsersAndGroups/Strip_any_; 258s === PAUSE TestSplitAndNormalizeUsersAndGroups/Strip_any_; 258s === CONT TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_EOL 258s === CONT TestPolkitAdminIdentitiesFromConf 258s === RUN TestPolkitAdminIdentitiesFromConf/Directory_instead_of_a_conf_file_is_ignored 258s === PAUSE TestPolkitAdminIdentitiesFromConf/Directory_instead_of_a_conf_file_is_ignored 258s === RUN TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities 258s === PAUSE TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities 258s === RUN TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_from_highest_ascii_file 258s === PAUSE TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_from_highest_ascii_file 258s === RUN TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_ignoring_adsys 258s === PAUSE TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_ignoring_adsys 258s === RUN TestPolkitAdminIdentitiesFromConf/No_previous_admin_identities_but_regular_directory_structure 258s === PAUSE TestPolkitAdminIdentitiesFromConf/No_previous_admin_identities_but_regular_directory_structure 258s === RUN TestPolkitAdminIdentitiesFromConf/Returns_an_empty_string_if_directory_does_not_exists 258s === PAUSE TestPolkitAdminIdentitiesFromConf/Returns_an_empty_string_if_directory_does_not_exists 258s === CONT TestPolkitAdminIdentitiesFromConf/Directory_instead_of_a_conf_file_is_ignored 258s === CONT TestSplitAndNormalizeUsersAndGroups/Strip_any_; 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"u;s;er@domain\" to \"user@domain\": Invalid characters or domain\\user format" 258s === CONT TestSplitAndNormalizeUsersAndGroups/Strip_empty_values 258s === CONT TestSplitAndNormalizeUsersAndGroups/Strip_any_< 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"u 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"u>s>er@domain\" to \"user@domain\": Invalid characters or domain\\user format" 258s === CONT TestSplitAndNormalizeUsersAndGroups/Strip_any_| 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"u|s|er@domain\" to \"user@domain\": Invalid characters or domain\\user format" 258s === CONT TestSplitAndNormalizeUsersAndGroups/Strip_any_] 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"u]s]er@domain\" to \"user@domain\": Invalid characters or domain\\user format" 258s === CONT TestSplitAndNormalizeUsersAndGroups/Strip_any_[ 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"u[s]er@domain\" to \"user@domain\": Invalid characters or domain\\user format" 258s --- PASS: TestSplitAndNormalizeUsersAndGroups (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_EOL (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_; (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_empty_values (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_< (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Multiple_values_separated_by_EOL (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Empty_value_with_EOL (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_: (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_consecutives_comma (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Multiple_\_only_handling_first_one_and_ignore_others (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Handle_domain\user (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Empty_value (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Don’t_strip_first_%_but_others (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_? (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_/ (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Simple_one_value (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Empty_value_with_comma (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_* (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/User_name_with_space (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Multiple_values_with_a_mix_of_comma_and_EOL (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Group_one_value (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_% (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Multiple_values_separated_by_comma (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_= (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_> (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_| (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_] (0.00s) 258s --- PASS: TestSplitAndNormalizeUsersAndGroups/Strip_any_[ (0.00s) 258s === CONT TestPolkitAdminIdentitiesFromRules/Prioritize_first_specified_directory_if_files_have_same_ascii 258s === CONT TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities 258s === CONT TestPolkitAdminIdentitiesFromRules/Returns_an_empty_string_if_directory_does_not_exists 258s === CONT TestPolkitAdminIdentitiesFromRules/Prioritize_lower_ascii_file_even_if_on_second_directory 258s === CONT TestPolkitAdminIdentitiesFromRules/Consider_only_first_returned_value 258s === CONT TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_ignoring_adsys 258s === CONT TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_from_lower_ascii_file 258s === CONT TestPolkitAdminIdentitiesFromRules/Directory_instead_of_a_conf_file_is_ignored 258s === CONT TestApplyPolicy/Create_on_new_polkit_version_and_remove_old_file 258s --- PASS: TestPolkitAdminIdentitiesFromRules (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/No_previous_admin_identities_but_regular_directory_structure (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Prioritize_first_specified_directory_if_files_have_same_ascii (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Returns_an_empty_string_if_directory_does_not_exists (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Consider_only_first_returned_value (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_ignoring_adsys (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Fetch_previous_admin_identities_from_lower_ascii_file (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Directory_instead_of_a_conf_file_is_ignored (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromRules/Prioritize_lower_ascii_file_even_if_on_second_directory (0.00s) 258s === CONT TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(simple)_and_set_client_admins 258s === CONT TestApplyPolicy/Overwrite_existing_polkit_file 258s === CONT TestApplyPolicy/Overwrite_existing_sudoers_file 258s === CONT TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(with_adsys_file)_and_set_client_admins 258s === CONT TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_and_set_client_admins 258s === CONT TestApplyPolicy/Disallow_local_admins_with_previous_local_admin_conf_and_set_client_admins 258s === CONT TestApplyPolicy/Set_client_user_admins 258s === CONT TestApplyPolicy/Don't_overwrite_other_existing_files 258s === CONT TestApplyPolicy/Disallow_local_admins_and_set_client_admins 258s === CONT TestApplyPolicy/Set_client_multiple_users_admins 258s time="2025-10-31T03:47:14Z" level=warning msg="Changed user or group \"domain\\\\bob\" to \"bob@domain\": Invalid characters or domain\\user format" 258s === CONT TestApplyPolicy/Allow_local_admins_with_no_other_rules_is_a_noop 258s === CONT TestApplyPolicy/Not_a_computer 258s === CONT TestApplyPolicy/Allow_local_admins_without_previous_local_admin_conf_and_set_client_admins 258s === CONT TestApplyPolicy/Set_client_mixed_with_users_and_group_admins 258s === CONT TestApplyPolicy/No_rules_and_no_existing_history_means_no_files 258s === CONT TestApplyPolicy/Error_on_writing_to_polkit_conf_file 258s === CONT TestApplyPolicy/Assume_old_polkit_if_cant_read_system_reserved_path 258s === CONT TestApplyPolicy/Empty_client_AD_admins 258s === CONT TestApplyPolicy/No_rules_still_overwrite_those_files 258s === CONT TestApplyPolicy/Error_if_can’t_rename_to_destination_for_sudoers_file 258s === CONT TestApplyPolicy/Error_on_creating_sudoers_and_polkit_base_directory 258s === CONT TestApplyPolicy/Error_on_writing_to_sudoers_file 258s === CONT TestApplyPolicy/Error_if_can’t_rename_to_destination_for_polkit_conf_file 258s === CONT TestApplyPolicy/Error_on_writing_to_polkit_subdirectory_creation 258s === CONT TestApplyPolicy/Set_client_group_admins 258s === CONT TestApplyPolicy/Disallow_local_admins 258s === CONT TestPolkitAdminIdentitiesFromConf/Returns_an_empty_string_if_directory_does_not_exists 258s === CONT TestPolkitAdminIdentitiesFromConf/No_previous_admin_identities_but_regular_directory_structure 258s === CONT TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_from_highest_ascii_file 258s === CONT TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities 258s === CONT TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_ignoring_adsys 258s --- PASS: TestApplyPolicy (0.00s) 258s --- PASS: TestApplyPolicy/No_client_AD_admins (0.00s) 258s --- PASS: TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(simple)_and_set_client_admins (0.00s) 258s --- PASS: TestApplyPolicy/Create_on_new_polkit_version_and_remove_old_file (0.01s) 258s --- PASS: TestApplyPolicy/Overwrite_existing_polkit_file (0.00s) 258s --- PASS: TestApplyPolicy/Overwrite_existing_sudoers_file (0.00s) 258s --- PASS: TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_(with_adsys_file)_and_set_client_admins (0.00s) 258s --- PASS: TestApplyPolicy/Allow_local_admins_with_previous_local_admin_conf_and_set_client_admins (0.00s) 258s --- PASS: TestApplyPolicy/Set_client_user_admins (0.00s) 258s --- PASS: TestApplyPolicy/Disallow_local_admins_and_set_client_admins (0.00s) 258s --- PASS: TestApplyPolicy/Don't_overwrite_other_existing_files (0.00s) 258s --- PASS: TestApplyPolicy/Set_client_multiple_users_admins (0.00s) 258s --- PASS: TestApplyPolicy/Allow_local_admins_with_no_other_rules_is_a_noop (0.00s) 258s --- PASS: TestApplyPolicy/Not_a_computer (0.00s) 258s --- PASS: TestApplyPolicy/Allow_local_admins_without_previous_local_admin_conf_and_set_client_admins (0.00s) 258s --- PASS: TestApplyPolicy/Disallow_local_admins_with_previous_local_admin_conf_and_set_client_admins (0.01s) 258s --- PASS: TestApplyPolicy/No_rules_and_no_existing_history_means_no_files (0.00s) 258s --- PASS: TestApplyPolicy/Set_client_mixed_with_users_and_group_admins (0.00s) 258s --- PASS: TestApplyPolicy/Error_on_writing_to_polkit_conf_file (0.00s) 258s --- PASS: TestApplyPolicy/Assume_old_polkit_if_cant_read_system_reserved_path (0.00s) 258s --- PASS: TestApplyPolicy/No_rules_still_overwrite_those_files (0.00s) 258s --- PASS: TestApplyPolicy/Error_if_can’t_rename_to_destination_for_sudoers_file (0.00s) 258s --- PASS: TestApplyPolicy/Error_on_creating_sudoers_and_polkit_base_directory (0.00s) 258s --- PASS: TestApplyPolicy/Empty_client_AD_admins (0.00s) 258s --- PASS: TestApplyPolicy/Error_if_can’t_rename_to_destination_for_polkit_conf_file (0.00s) 258s --- PASS: TestApplyPolicy/Error_on_writing_to_sudoers_file (0.00s) 258s --- PASS: TestApplyPolicy/Disallow_local_admins (0.00s) 258s --- PASS: TestApplyPolicy/Set_client_group_admins (0.00s) 258s --- PASS: TestApplyPolicy/Error_on_writing_to_polkit_subdirectory_creation (0.01s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf/Directory_instead_of_a_conf_file_is_ignored (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf/Returns_an_empty_string_if_directory_does_not_exists (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf/No_previous_admin_identities_but_regular_directory_structure (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_from_highest_ascii_file (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities (0.00s) 258s --- PASS: TestPolkitAdminIdentitiesFromConf/Fetch_previous_admin_identities_ignoring_adsys (0.00s) 258s PASS 258s ok github.com/ubuntu/adsys/internal/policies/privilege 0.077s 259s === RUN TestApplyPolicy 259s === PAUSE TestApplyPolicy 259s === RUN TestWarnOnUnsupportedKeys 259s --- PASS: TestWarnOnUnsupportedKeys (0.00s) 259s === RUN TestWarnOnMissingDBusService 259s --- PASS: TestWarnOnMissingDBusService (0.00s) 259s === CONT TestApplyPolicy 259s === RUN TestApplyPolicy/Computer,_all_entries_set 259s === PAUSE TestApplyPolicy/Computer,_all_entries_set 259s === RUN TestApplyPolicy/User,_non-empty_entries 259s === PAUSE TestApplyPolicy/User,_non-empty_entries 259s === RUN TestApplyPolicy/Error_when_D-Bus_call_fails 259s === PAUSE TestApplyPolicy/Error_when_D-Bus_call_fails 259s === RUN TestApplyPolicy/Computer,_no_entries 259s === PAUSE TestApplyPolicy/Computer,_no_entries 259s === RUN TestApplyPolicy/Computer,_no_entries,_D-Bus_call_error 259s === PAUSE TestApplyPolicy/Computer,_no_entries,_D-Bus_call_error 259s === RUN TestApplyPolicy/User,_no_entries 259s === PAUSE TestApplyPolicy/User,_no_entries 259s === RUN TestApplyPolicy/Computer,_single_enabled_entry 259s === PAUSE TestApplyPolicy/Computer,_single_enabled_entry 259s === RUN TestApplyPolicy/Computer,_single_disabled_entry 259s === PAUSE TestApplyPolicy/Computer,_single_disabled_entry 259s === CONT TestApplyPolicy/Computer,_all_entries_set 259s === CONT TestApplyPolicy/Computer,_no_entries,_D-Bus_call_error 259s === CONT TestApplyPolicy/Computer,_single_enabled_entry 259s === CONT TestApplyPolicy/User,_no_entries 259s === CONT TestApplyPolicy/Error_when_D-Bus_call_fails 259s === CONT TestApplyPolicy/Computer,_no_entries 259s === CONT TestApplyPolicy/User,_non-empty_entries 259s === CONT TestApplyPolicy/Computer,_single_disabled_entry 259s --- PASS: TestApplyPolicy (0.01s) 259s --- PASS: TestApplyPolicy/Computer,_no_entries,_D-Bus_call_error (0.00s) 259s --- PASS: TestApplyPolicy/Computer,_single_enabled_entry (0.00s) 259s --- PASS: TestApplyPolicy/User,_no_entries (0.00s) 259s --- PASS: TestApplyPolicy/Error_when_D-Bus_call_fails (0.00s) 259s --- PASS: TestApplyPolicy/Computer,_no_entries (0.00s) 259s --- PASS: TestApplyPolicy/User,_non-empty_entries (0.00s) 259s --- PASS: TestApplyPolicy/Computer,_all_entries_set (0.00s) 259s --- PASS: TestApplyPolicy/Computer,_single_disabled_entry (0.00s) 259s PASS 259s ok github.com/ubuntu/adsys/internal/policies/proxy 0.030s 260s === RUN TestNew 260s === PAUSE TestNew 260s === RUN TestApplyPolicy 260s === PAUSE TestApplyPolicy 260s === RUN TestRunScripts 260s === PAUSE TestRunScripts 260s === CONT TestNew 260s === RUN TestNew/create_manager 260s === PAUSE TestNew/create_manager 260s === RUN TestNew/error_on_read_only_rundir 260s === CONT TestRunScripts 260s === RUN TestRunScripts/error_on_not_ready_for_execution 260s === PAUSE TestRunScripts/error_on_not_ready_for_execution 260s === RUN TestRunScripts/multiple_scripts_are_run_in_order 260s === PAUSE TestRunScripts/multiple_scripts_are_run_in_order 260s === RUN TestRunScripts/scripts_that_are_not_executable_are_skipped 260s === PAUSE TestRunScripts/scripts_that_are_not_executable_are_skipped 260s === RUN TestRunScripts/keeps_running_flag_after_non_machine_shutdown 260s === PAUSE TestRunScripts/keeps_running_flag_after_non_machine_shutdown 260s === RUN TestRunScripts/error_on_order_file_not_existing 260s === PAUSE TestRunScripts/error_on_order_file_not_existing 260s === RUN TestRunScripts/one_script 260s === PAUSE TestRunScripts/one_script 260s === RUN TestRunScripts/script_directory_without_shutdown_order_has_no_session_running_flag_after_machine_shutdown 260s === PAUSE TestRunScripts/script_directory_without_shutdown_order_has_no_session_running_flag_after_machine_shutdown 260s === RUN TestRunScripts/spaces_and_empty_lines_are_skipped 260s === PAUSE TestRunScripts/spaces_and_empty_lines_are_skipped 260s === RUN TestRunScripts/still_executes_without_existing_running_flag_on_machine_shutdown 260s === PAUSE TestRunScripts/still_executes_without_existing_running_flag_on_machine_shutdown 260s === RUN TestRunScripts/allow_order_file_missing 260s === PAUSE TestRunScripts/allow_order_file_missing 260s === RUN TestRunScripts/scripts_not_listed_are_not_run 260s === PAUSE TestRunScripts/scripts_not_listed_are_not_run 260s === RUN TestRunScripts/scripts_referenced_in_subdirectories 260s === PAUSE TestRunScripts/scripts_referenced_in_subdirectories 260s === RUN TestRunScripts/has_no_session_running_flag_after_user_logoff 260s === PAUSE TestRunScripts/has_no_session_running_flag_after_user_logoff 260s === RUN TestRunScripts/still_executes_without_existing_running_flag_on_user_logoff 260s === PAUSE TestRunScripts/still_executes_without_existing_running_flag_on_user_logoff 260s === RUN TestRunScripts/script_directory_without_logoff_order_has_no_session_running_flag_after_user_logoff 260s === PAUSE TestRunScripts/script_directory_without_logoff_order_has_no_session_running_flag_after_user_logoff 260s === RUN TestRunScripts/keeps_running_flag_after_non_user_logoff 260s === PAUSE TestRunScripts/keeps_running_flag_after_non_user_logoff 260s === RUN TestRunScripts/has_no_session_running_flag_after_machine_shutdown 260s === PAUSE TestRunScripts/has_no_session_running_flag_after_machine_shutdown 260s === RUN TestRunScripts/error_on_argument_not_a_file 260s === PAUSE TestRunScripts/error_on_argument_not_a_file 260s === CONT TestRunScripts/error_on_not_ready_for_execution 260s === PAUSE TestNew/error_on_read_only_rundir 260s === CONT TestNew/create_manager 260s === CONT TestApplyPolicy 260s === RUN TestApplyPolicy/Error_on_invalid_UID 260s === PAUSE TestApplyPolicy/Error_on_invalid_UID 260s === RUN TestApplyPolicy/Error_on_running_start_script_that_runs_systemctl_and_systemctl_fails 260s === PAUSE TestApplyPolicy/Error_on_running_start_script_that_runs_systemctl_and_systemctl_fails 260s === RUN TestApplyPolicy/No_entries_update_existing_non_ready_folder 260s === PAUSE TestApplyPolicy/No_entries_update_existing_non_ready_folder 260s === RUN TestApplyPolicy/One_script 260s === PAUSE TestApplyPolicy/One_script 260s === RUN TestApplyPolicy/Subfolder_with_same_script_name 260s === PAUSE TestApplyPolicy/Subfolder_with_same_script_name 260s === RUN TestApplyPolicy/Computer,_no_systemctl_with_other_directory_than_startup 260s === PAUSE TestApplyPolicy/Computer,_no_systemctl_with_other_directory_than_startup 260s === RUN TestApplyPolicy/Error_on_script_does_not_exist 260s === PAUSE TestApplyPolicy/Error_on_script_does_not_exist 260s === RUN TestApplyPolicy/Destination_is_already_ready_but_not_in_session,_refreshing 260s === PAUSE TestApplyPolicy/Destination_is_already_ready_but_not_in_session,_refreshing 260s === RUN TestApplyPolicy/User_lookup_failing_does_not_impact_machine_update 260s === PAUSE TestApplyPolicy/User_lookup_failing_does_not_impact_machine_update 260s === RUN TestApplyPolicy/Error_on_users_run_directory_Read_Only 260s === PAUSE TestApplyPolicy/Error_on_users_run_directory_Read_Only 260s === RUN TestApplyPolicy/Empty_entries_are_discared 260s === PAUSE TestApplyPolicy/Empty_entries_are_discared 260s === RUN TestApplyPolicy/Startup_script_for_computer_runs_systemctl_(systemctl_success) 260s === PAUSE TestApplyPolicy/Startup_script_for_computer_runs_systemctl_(systemctl_success) 260s === RUN TestApplyPolicy/Error_on_save_assets_dumping_failing 260s === PAUSE TestApplyPolicy/Error_on_save_assets_dumping_failing 260s === RUN TestApplyPolicy/No_entries_is_an_empty_folder 260s === PAUSE TestApplyPolicy/No_entries_is_an_empty_folder 260s === RUN TestApplyPolicy/One_directory,_multiple_scripts_in_order 260s === PAUSE TestApplyPolicy/One_directory,_multiple_scripts_in_order 260s === RUN TestApplyPolicy/Multiple_directories: 260s === PAUSE TestApplyPolicy/Multiple_directories: 260s === RUN TestApplyPolicy/Same_script_is_used_multiple_times 260s === PAUSE TestApplyPolicy/Same_script_is_used_multiple_times 260s === RUN TestApplyPolicy/Subfolder_with_script 260s === PAUSE TestApplyPolicy/Subfolder_with_script 260s === RUN TestApplyPolicy/Error_on_user_lookup_failing 260s === PAUSE TestApplyPolicy/Error_on_user_lookup_failing 260s === RUN TestApplyPolicy/Destination_is_already_running,_no_change 260s === PAUSE TestApplyPolicy/Destination_is_already_running,_no_change 260s === RUN TestApplyPolicy/Destination_is_not_ready,_refreshing 260s === PAUSE TestApplyPolicy/Destination_is_not_ready,_refreshing 260s === RUN TestApplyPolicy/Systemctl_failing_does_not_impact_user_scripts_update 260s === PAUSE TestApplyPolicy/Systemctl_failing_does_not_impact_user_scripts_update 260s === RUN TestApplyPolicy/Error_on_subfolder_listed 260s === PAUSE TestApplyPolicy/Error_on_subfolder_listed 260s === RUN TestApplyPolicy/Error_on_invalid_GID 260s === PAUSE TestApplyPolicy/Error_on_invalid_GID 260s === CONT TestRunScripts/error_on_argument_not_a_file 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptserror_on_not_ready_for_execution1426981812/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/has_no_session_running_flag_after_machine_shutdown 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptserror_on_argument_not_a_file3208298227/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/keeps_running_flag_after_non_user_logoff 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptskeeps_running_flag_after_non_user_logoff841445536/001/machine/foo/scripts/logoff\"" 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptshas_no_session_running_flag_after_machine_shutdown43751664/001/machine/foo/scripts/shutdown\"" 260s === CONT TestRunScripts/script_directory_without_logoff_order_has_no_session_running_flag_after_user_logoff 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsscript_directory_without_logoff_order_has_no_session_running_flag_after_user_logoff2241488035/001/users/foo/scripts/logoff\"" 260s time="2025-10-31T03:47:15Z" level=info msg="\"/tmp/TestRunScriptsscript_directory_without_logoff_order_has_no_session_running_flag_after_user_logoff2241488035/001/users/foo/scripts/logoff\" doesn't exist, but allowed to be missing, skipping" 260s === CONT TestRunScripts/still_executes_without_existing_running_flag_on_user_logoff 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsstill_executes_without_existing_running_flag_on_user_logoff3891195752/001/users/foo/scripts/logoff\"" 260s === CONT TestRunScripts/has_no_session_running_flag_after_user_logoff 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptshas_no_session_running_flag_after_user_logoff1305258319/001/users/foo/scripts/logoff\"" 260s === CONT TestRunScripts/scripts_referenced_in_subdirectories 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsscripts_referenced_in_subdirectories4171929792/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/scripts_not_listed_are_not_run 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsscripts_not_listed_are_not_run2948480535/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/allow_order_file_missing 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsallow_order_file_missing375106597/001/users/foo/scripts/s\"" 260s time="2025-10-31T03:47:15Z" level=info msg="\"/tmp/TestRunScriptsallow_order_file_missing375106597/001/users/foo/scripts/s\" doesn't exist, but allowed to be missing, skipping" 260s === CONT TestRunScripts/still_executes_without_existing_running_flag_on_machine_shutdown 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsstill_executes_without_existing_running_flag_on_machine_shutdown1189181386/001/machine/foo/scripts/shutdown\"" 260s === CONT TestRunScripts/spaces_and_empty_lines_are_skipped 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsspaces_and_empty_lines_are_skipped360272573/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/script_directory_without_shutdown_order_has_no_session_running_flag_after_machine_shutdown 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsscript_directory_without_shutdown_order_has_no_session_running_flag_after_machine_shutdown935756916/001/machine/foo/scripts/shutdown\"" 260s time="2025-10-31T03:47:15Z" level=info msg="\"/tmp/TestRunScriptsscript_directory_without_shutdown_order_has_no_session_running_flag_after_machine_shutdown935756916/001/machine/foo/scripts/shutdown\" doesn't exist, but allowed to be missing, skipping" 260s === CONT TestRunScripts/one_script 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsone_script3719816513/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/error_on_order_file_not_existing 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptserror_on_order_file_not_existing1910560484/001/users/foo/scripts/s\"" 260s === CONT TestRunScripts/keeps_running_flag_after_non_machine_shutdown 260s === CONT TestRunScripts/scripts_that_are_not_executable_are_skipped 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsscripts_that_are_not_executable_are_skipped1590294825/001/users/foo/scripts/s\"" 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptskeeps_running_flag_after_non_machine_shutdown2160085062/001/users/foo/scripts/shutdown\"" 260s time="2025-10-31T03:47:15Z" level=warning msg="\"/tmp/TestRunScriptsscripts_that_are_not_executable_are_skipped1590294825/001/users/foo/scripts/scripts/notexecutable.sh\" failed to run\nfork/exec /tmp/TestRunScriptsscripts_that_are_not_executable_are_skipped1590294825/001/users/foo/scripts/scripts/notexecutable.sh: permission denied" 260s === CONT TestRunScripts/multiple_scripts_are_run_in_order 260s time="2025-10-31T03:47:15Z" level=info msg="Calling RunScripts on \"/tmp/TestRunScriptsmultiple_scripts_are_run_in_order305797050/001/users/foo/scripts/s\"" 260s === CONT TestApplyPolicy/Error_on_invalid_UID 260s === CONT TestNew/error_on_read_only_rundir 260s --- PASS: TestNew (0.00s) 260s --- PASS: TestNew/create_manager (0.00s) 260s --- PASS: TestNew/error_on_read_only_rundir (0.00s) 260s === CONT TestApplyPolicy/Error_on_save_assets_dumping_failing 260s === CONT TestApplyPolicy/Error_on_invalid_GID 260s === CONT TestApplyPolicy/Error_on_subfolder_listed 260s === CONT TestApplyPolicy/Systemctl_failing_does_not_impact_user_scripts_update 260s === CONT TestApplyPolicy/Destination_is_not_ready,_refreshing 260s === CONT TestApplyPolicy/Destination_is_already_running,_no_change 260s time="2025-10-31T03:47:15Z" level=info msg="\"/tmp/TestApplyPolicyDestination_is_already_running,_no_change1169514813/001/machine/scripts/.running\" already exists, a session is already running, ignoring." 260s === CONT TestApplyPolicy/Error_on_user_lookup_failing 260s === CONT TestApplyPolicy/Subfolder_with_script 260s === CONT TestApplyPolicy/Same_script_is_used_multiple_times 260s === CONT TestApplyPolicy/Multiple_directories: 260s === CONT TestApplyPolicy/One_directory,_multiple_scripts_in_order 260s === CONT TestApplyPolicy/No_entries_is_an_empty_folder 260s === CONT TestApplyPolicy/Error_on_script_does_not_exist 260s === CONT TestApplyPolicy/Startup_script_for_computer_runs_systemctl_(systemctl_success) 260s time="2025-10-31T03:47:15Z" level=info msg="Running machine startup scripts" 260s === CONT TestApplyPolicy/Empty_entries_are_discared 260s === CONT TestApplyPolicy/Error_on_users_run_directory_Read_Only 260s === CONT TestApplyPolicy/User_lookup_failing_does_not_impact_machine_update 260s --- PASS: TestRunScripts (0.00s) 260s --- PASS: TestRunScripts/error_on_not_ready_for_execution (0.00s) 260s --- PASS: TestRunScripts/error_on_argument_not_a_file (0.00s) 260s --- PASS: TestRunScripts/has_no_session_running_flag_after_machine_shutdown (0.04s) 260s --- PASS: TestRunScripts/script_directory_without_logoff_order_has_no_session_running_flag_after_user_logoff (0.00s) 260s --- PASS: TestRunScripts/keeps_running_flag_after_non_user_logoff (0.06s) 260s --- PASS: TestRunScripts/has_no_session_running_flag_after_user_logoff (0.04s) 260s --- PASS: TestRunScripts/still_executes_without_existing_running_flag_on_user_logoff (0.07s) 260s --- PASS: TestRunScripts/scripts_not_listed_are_not_run (0.04s) 260s --- PASS: TestRunScripts/allow_order_file_missing (0.00s) 260s --- PASS: TestRunScripts/scripts_referenced_in_subdirectories (0.06s) 260s --- PASS: TestRunScripts/spaces_and_empty_lines_are_skipped (0.03s) 260s --- PASS: TestRunScripts/script_directory_without_shutdown_order_has_no_session_running_flag_after_machine_shutdown (0.00s) 260s --- PASS: TestRunScripts/still_executes_without_existing_running_flag_on_machine_shutdown (0.05s) 260s --- PASS: TestRunScripts/one_script (0.02s) 260s --- PASS: TestRunScripts/error_on_order_file_not_existing (0.01s) 260s --- PASS: TestRunScripts/scripts_that_are_not_executable_are_skipped (0.06s) 260s --- PASS: TestRunScripts/keeps_running_flag_after_non_machine_shutdown (0.10s) 260s --- PASS: TestRunScripts/multiple_scripts_are_run_in_order (0.10s) 260s === CONT TestApplyPolicy/Destination_is_already_ready_but_not_in_session,_refreshing 260s === CONT TestApplyPolicy/One_script 260s === CONT TestApplyPolicy/Computer,_no_systemctl_with_other_directory_than_startup 260s === CONT TestApplyPolicy/Subfolder_with_same_script_name 260s === CONT TestApplyPolicy/No_entries_update_existing_non_ready_folder 260s === CONT TestApplyPolicy/Error_on_running_start_script_that_runs_systemctl_and_systemctl_fails 260s time="2025-10-31T03:47:16Z" level=info msg="Running machine startup scripts" 260s --- PASS: TestApplyPolicy (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_invalid_UID (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_save_assets_dumping_failing (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_invalid_GID (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_subfolder_listed (0.00s) 260s --- PASS: TestApplyPolicy/Systemctl_failing_does_not_impact_user_scripts_update (0.01s) 260s --- PASS: TestApplyPolicy/Destination_is_not_ready,_refreshing (0.01s) 260s --- PASS: TestApplyPolicy/Destination_is_already_running,_no_change (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_user_lookup_failing (0.00s) 260s --- PASS: TestApplyPolicy/Subfolder_with_script (0.01s) 260s --- PASS: TestApplyPolicy/Same_script_is_used_multiple_times (0.01s) 260s --- PASS: TestApplyPolicy/Multiple_directories: (0.00s) 260s --- PASS: TestApplyPolicy/One_directory,_multiple_scripts_in_order (0.00s) 260s --- PASS: TestApplyPolicy/No_entries_is_an_empty_folder (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_script_does_not_exist (0.00s) 260s --- PASS: TestApplyPolicy/Startup_script_for_computer_runs_systemctl_(systemctl_success) (0.00s) 260s --- PASS: TestApplyPolicy/Empty_entries_are_discared (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_users_run_directory_Read_Only (0.00s) 260s --- PASS: TestApplyPolicy/User_lookup_failing_does_not_impact_machine_update (0.00s) 260s --- PASS: TestApplyPolicy/One_script (0.00s) 260s --- PASS: TestApplyPolicy/Destination_is_already_ready_but_not_in_session,_refreshing (0.01s) 260s --- PASS: TestApplyPolicy/Computer,_no_systemctl_with_other_directory_than_startup (0.01s) 260s --- PASS: TestApplyPolicy/No_entries_update_existing_non_ready_folder (0.00s) 260s --- PASS: TestApplyPolicy/Error_on_running_start_script_that_runs_systemctl_and_systemctl_fails (0.00s) 260s --- PASS: TestApplyPolicy/Subfolder_with_same_script_name (0.01s) 260s PASS 260s ok github.com/ubuntu/adsys/internal/policies/scripts 0.407s 260s === RUN TestExclusiveLockExec 260s --- PASS: TestExclusiveLockExec (0.01s) 260s === RUN TestExclusiveLockSmb 260s --- PASS: TestExclusiveLockSmb (0.01s) 260s === RUN TestMultipleExecLocksOnlyReleaseOnLast 260s --- PASS: TestMultipleExecLocksOnlyReleaseOnLast (0.01s) 260s === RUN TestMultipleSmbLocksOnlyReleaseOnLast 260s --- PASS: TestMultipleSmbLocksOnlyReleaseOnLast (0.01s) 260s PASS 260s ok github.com/ubuntu/adsys/internal/smbsafe 0.058s 260s === RUN TestAddStdoutForwarder 260s --- PASS: TestAddStdoutForwarder (0.00s) 260s === RUN TestAddStderrForwarder 260s --- PASS: TestAddStderrForwarder (0.00s) 260s === RUN TestAddStdoutForwarderEnsureStderrNoPolluted 260s --- PASS: TestAddStdoutForwarderEnsureStderrNoPolluted (0.00s) 260s === RUN TestAddForwarderAndDisconnect 260s --- PASS: TestAddForwarderAndDisconnect (0.00s) 260s === RUN TestAddForwardersGraduallyAndDisconnect 260s --- PASS: TestAddForwardersGraduallyAndDisconnect (0.01s) 260s === RUN TestAddForwarderDifferentWriterStdoutStderr 260s --- PASS: TestAddForwarderDifferentWriterStdoutStderr (0.00s) 260s === RUN TestAddForwarderSameWriterStdoutStderr 260s --- PASS: TestAddForwarderSameWriterStdoutStderr (0.00s) 260s === RUN TestAddStdoutForwarderWithBlockedStdout 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to write to regular output: write |1: file already closed" 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to write to regular output: write |1: file already closed" 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to write to regular output: write |1: file already closed" 260s --- PASS: TestAddStdoutForwarderWithBlockedStdout (0.01s) 260s === RUN TestAddStderrForwarderWithBlockedStderr 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to write to regular output: write |1: file already closed" 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to write to regular output: write |1: file already closed" 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to write to regular output: write |1: file already closed" 260s --- PASS: TestAddStderrForwarderWithBlockedStderr (0.01s) 260s === RUN TestAddStdoutForwarderOneWithFailingForwarder 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to forward log: Error from failedWriter" 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to forward log: Error from failedWriter" 260s time="2025-10-31T03:47:16Z" level=warning msg="Failed to forward log: Error from failedWriter" 260s --- PASS: TestAddStdoutForwarderOneWithFailingForwarder (0.01s) 260s PASS 260s ok github.com/ubuntu/adsys/internal/stdforward 0.060s 261s ? github.com/ubuntu/adsys/internal/testutils [no test files] 261s ? github.com/ubuntu/adsys/internal/watchdservice [no test files] 261s === RUN TestManageUnit 261s === PAUSE TestManageUnit 261s === RUN TestDaemonReload 261s === PAUSE TestDaemonReload 261s === CONT TestManageUnit 261s === CONT TestDaemonReload 261s === RUN TestManageUnit/Start_unit_that_exists 261s === PAUSE TestManageUnit/Start_unit_that_exists 261s === RUN TestManageUnit/Enable_unit_that_exists 261s === PAUSE TestManageUnit/Enable_unit_that_exists 261s === RUN TestManageUnit/Error_when_starting_unit_that_doesn't_exist 261s === PAUSE TestManageUnit/Error_when_starting_unit_that_doesn't_exist 261s === RUN TestManageUnit/Error_when_starting_failing_unit 261s === PAUSE TestManageUnit/Error_when_starting_failing_unit 261s === RUN TestManageUnit/Error_when_enabling_unit_that_doesn't_exist 261s === PAUSE TestManageUnit/Error_when_enabling_unit_that_doesn't_exist 261s === RUN TestManageUnit/Stop_unit_that_exists 261s === PAUSE TestManageUnit/Stop_unit_that_exists 261s === RUN TestManageUnit/Disable_unit_that_exists 261s === PAUSE TestManageUnit/Disable_unit_that_exists 261s === RUN TestManageUnit/Error_when_stopping_unit_that_doesn't_exist 261s === PAUSE TestManageUnit/Error_when_stopping_unit_that_doesn't_exist 261s === RUN TestManageUnit/Error_when_stopping_failing_unit 261s === PAUSE TestManageUnit/Error_when_stopping_failing_unit 261s === RUN TestManageUnit/Error_when_disabling_unit_that_doesn't_exist 261s === PAUSE TestManageUnit/Error_when_disabling_unit_that_doesn't_exist 261s === CONT TestManageUnit/Start_unit_that_exists 261s === CONT TestManageUnit/Disable_unit_that_exists 261s --- PASS: TestDaemonReload (0.01s) 261s === CONT TestManageUnit/Error_when_disabling_unit_that_doesn't_exist 261s === CONT TestManageUnit/Error_when_stopping_failing_unit 261s === CONT TestManageUnit/Error_when_stopping_unit_that_doesn't_exist 261s === CONT TestManageUnit/Error_when_starting_failing_unit 261s === CONT TestManageUnit/Stop_unit_that_exists 261s === CONT TestManageUnit/Error_when_enabling_unit_that_doesn't_exist 261s === CONT TestManageUnit/Error_when_starting_unit_that_doesn't_exist 261s === CONT TestManageUnit/Enable_unit_that_exists 261s --- PASS: TestManageUnit (0.00s) 261s --- PASS: TestManageUnit/Start_unit_that_exists (0.00s) 261s --- PASS: TestManageUnit/Disable_unit_that_exists (0.00s) 261s --- PASS: TestManageUnit/Error_when_disabling_unit_that_doesn't_exist (0.00s) 261s --- PASS: TestManageUnit/Error_when_stopping_unit_that_doesn't_exist (0.00s) 261s --- PASS: TestManageUnit/Error_when_stopping_failing_unit (0.00s) 261s --- PASS: TestManageUnit/Stop_unit_that_exists (0.00s) 261s --- PASS: TestManageUnit/Error_when_starting_failing_unit (0.00s) 261s --- PASS: TestManageUnit/Error_when_enabling_unit_that_doesn't_exist (0.00s) 261s --- PASS: TestManageUnit/Error_when_starting_unit_that_doesn't_exist (0.00s) 261s --- PASS: TestManageUnit/Enable_unit_that_exists (0.00s) 261s PASS 261s ok github.com/ubuntu/adsys/internal/systemd 0.064s 262s === RUN TestInteractiveInput 262s === RUN TestInteractiveInput/Submit_with_default_config 262s === RUN TestInteractiveInput/Initial_view 262s === RUN TestInteractiveInput/Config_file_is_absent_and_input_is_relative 262s === RUN TestInteractiveInput/Config_file_is_absent_and_input_is_a_dir 262s === RUN TestInteractiveInput/Found_installed_service,_config_not_overridden 262s === RUN TestInteractiveInput/Dot_and_double_dot_directory_inputs_are_normalized 262s === RUN TestInteractiveInput/Directory_is_a_file,_block_input 262s === RUN TestInteractiveInput/No_directories,_focus_on_dir_input 262s === RUN TestInteractiveInput/Submit_with_duplicate_directories 262s === RUN TestInteractiveInput/Other_navigation_tests 262s === RUN TestInteractiveInput/Existing_config_file_is_passed_in_and_is_empty_or_has_no_directories 262s === RUN TestInteractiveInput/Config_file_is_absent_and_input_is_absolute 262s === RUN TestInteractiveInput/Directory_exists 262s === RUN TestInteractiveInput/Multiple_existing_directories,_can_cycle_between_the_inputs 262s === RUN TestInteractiveInput/Multiple_existing_directories,_can_delete_them 262s === RUN TestInteractiveInput/Submit_with_double_dot_directories_is_normalized 262s === RUN TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories,_not_all_which_exist_on_the_system 262s === RUN TestInteractiveInput/Submit_with_fresh_config_in_nested_directory 262s === RUN TestInteractiveInput/Config_file_exists 262s === RUN TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories_which_exist_on_the_system 262s === RUN TestInteractiveInput/Found_installed_service,_config_overridden 262s === RUN TestInteractiveInput/Directory_does_not_exist,_block_input 262s === RUN TestInteractiveInput/Submit_with_fresh_config_in_current_directory 262s === RUN TestInteractiveInput/Submit_with_directory_as_config_input 262s === RUN TestInteractiveInput/Submit_with_dot_directories_is_normalized 262s --- PASS: TestInteractiveInput (0.06s) 262s --- PASS: TestInteractiveInput/Submit_with_default_config (0.00s) 262s --- PASS: TestInteractiveInput/Initial_view (0.00s) 262s --- PASS: TestInteractiveInput/Config_file_is_absent_and_input_is_relative (0.00s) 262s --- PASS: TestInteractiveInput/Config_file_is_absent_and_input_is_a_dir (0.00s) 262s --- PASS: TestInteractiveInput/Found_installed_service,_config_not_overridden (0.00s) 262s --- PASS: TestInteractiveInput/Dot_and_double_dot_directory_inputs_are_normalized (0.00s) 262s --- PASS: TestInteractiveInput/Directory_is_a_file,_block_input (0.00s) 262s --- PASS: TestInteractiveInput/No_directories,_focus_on_dir_input (0.00s) 262s --- PASS: TestInteractiveInput/Submit_with_duplicate_directories (0.00s) 262s --- PASS: TestInteractiveInput/Other_navigation_tests (0.00s) 262s --- PASS: TestInteractiveInput/Existing_config_file_is_passed_in_and_is_empty_or_has_no_directories (0.00s) 262s --- PASS: TestInteractiveInput/Config_file_is_absent_and_input_is_absolute (0.00s) 262s --- PASS: TestInteractiveInput/Directory_exists (0.00s) 262s --- PASS: TestInteractiveInput/Multiple_existing_directories,_can_cycle_between_the_inputs (0.01s) 262s --- PASS: TestInteractiveInput/Multiple_existing_directories,_can_delete_them (0.00s) 262s --- PASS: TestInteractiveInput/Submit_with_double_dot_directories_is_normalized (0.00s) 262s --- PASS: TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories,_not_all_which_exist_on_the_system (0.00s) 262s --- PASS: TestInteractiveInput/Submit_with_fresh_config_in_nested_directory (0.00s) 262s --- PASS: TestInteractiveInput/Config_file_exists (0.00s) 262s --- PASS: TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories_which_exist_on_the_system (0.00s) 262s --- PASS: TestInteractiveInput/Found_installed_service,_config_overridden (0.00s) 262s --- PASS: TestInteractiveInput/Directory_does_not_exist,_block_input (0.00s) 262s --- PASS: TestInteractiveInput/Submit_with_fresh_config_in_current_directory (0.00s) 262s --- PASS: TestInteractiveInput/Submit_with_directory_as_config_input (0.00s) 262s --- PASS: TestInteractiveInput/Submit_with_dot_directories_is_normalized (0.00s) 262s === RUN TestInteractiveInstall 262s watchdtui_test.go:408: Test has to be run as root, skipping... 262s --- SKIP: TestInteractiveInstall (0.00s) 262s === RUN TestInteractiveUpdate 262s watchdtui_test.go:456: Test has to be run as root, skipping... 262s --- SKIP: TestInteractiveUpdate (0.00s) 262s PASS 262s ok github.com/ubuntu/adsys/internal/watchdtui 0.103s 263s ? github.com/ubuntu/adsys/po [no test files] 263s ? github.com/ubuntu/adsys/policies [no test files] 267s === RUN TestWatchDirectory 267s === PAUSE TestWatchDirectory 267s === RUN TestRefreshGracePeriod 267s === PAUSE TestRefreshGracePeriod 267s === RUN TestUpdateDirs 267s === PAUSE TestUpdateDirs 267s === RUN TestUpdateDirsFailing 267s === PAUSE TestUpdateDirsFailing 267s === RUN TestUpdateDirsWithEmptyDirSlice 267s === PAUSE TestUpdateDirsWithEmptyDirSlice 267s === RUN TestUpdateDirsOnStoppedWatcher 267s === PAUSE TestUpdateDirsOnStoppedWatcher 267s === RUN TestStopWithoutStart 267s === PAUSE TestStopWithoutStart 267s === CONT TestWatchDirectory 267s === RUN TestWatchDirectory/No_update,_existing_gpt.ini 267s === PAUSE TestWatchDirectory/No_update,_existing_gpt.ini 267s === RUN TestWatchDirectory/Updating_gpt.ini_is_a_no-op 267s === PAUSE TestWatchDirectory/Updating_gpt.ini_is_a_no-op 267s === RUN TestWatchDirectory/Remove_file 267s === PAUSE TestWatchDirectory/Remove_file 267s === RUN TestWatchDirectory/New_subdir 267s === PAUSE TestWatchDirectory/New_subdir 267s === RUN TestWatchDirectory/Multiple_nested_subdirectories,_only_update_nested_file 267s === PAUSE TestWatchDirectory/Multiple_nested_subdirectories,_only_update_nested_file 267s === RUN TestWatchDirectory/Multiple_directories,_only_one_is_updated 267s === PAUSE TestWatchDirectory/Multiple_directories,_only_one_is_updated 267s === RUN TestWatchDirectory/Multiple_directories_with_different_versions,_all_updated 267s === PAUSE TestWatchDirectory/Multiple_directories_with_different_versions,_all_updated 267s === RUN TestWatchDirectory/Update_with_existing_gpt.ini 267s === PAUSE TestWatchDirectory/Update_with_existing_gpt.ini 267s === RUN TestWatchDirectory/Error_on_non_existing_directory 267s === PAUSE TestWatchDirectory/Error_on_non_existing_directory 267s === RUN TestWatchDirectory/Nested_new_subdirs 267s === PAUSE TestWatchDirectory/Nested_new_subdirs 267s === RUN TestWatchDirectory/Combined_case 267s === PAUSE TestWatchDirectory/Combined_case 267s === RUN TestWatchDirectory/Error_on_updating_malformed_GPT.ini 267s === PAUSE TestWatchDirectory/Error_on_updating_malformed_GPT.ini 267s === RUN TestWatchDirectory/No_update,_no_gpt.ini 267s === PAUSE TestWatchDirectory/No_update,_no_gpt.ini 267s === RUN TestWatchDirectory/Update_existing_file 267s === PAUSE TestWatchDirectory/Update_existing_file 267s === RUN TestWatchDirectory/Rename_file 267s === PAUSE TestWatchDirectory/Rename_file 267s === RUN TestWatchDirectory/Rename_file_and_update 267s === PAUSE TestWatchDirectory/Rename_file_and_update 267s === RUN TestWatchDirectory/New_file,_subdir 267s === PAUSE TestWatchDirectory/New_file,_subdir 267s === RUN TestWatchDirectory/Multiple_nested_subdirectories 267s === PAUSE TestWatchDirectory/Multiple_nested_subdirectories 267s === RUN TestWatchDirectory/New_subdir_without_file 267s === PAUSE TestWatchDirectory/New_subdir_without_file 267s === RUN TestWatchDirectory/New_file,_no_gpt.ini 267s === PAUSE TestWatchDirectory/New_file,_no_gpt.ini 267s === RUN TestWatchDirectory/Remove_root_directory 267s === PAUSE TestWatchDirectory/Remove_root_directory 267s === RUN TestWatchDirectory/Existing_file,_subdir 267s === PAUSE TestWatchDirectory/Existing_file,_subdir 267s === RUN TestWatchDirectory/Error_on_listing_no_directory 267s === PAUSE TestWatchDirectory/Error_on_listing_no_directory 267s === CONT TestWatchDirectory/No_update,_existing_gpt.ini 267s === CONT TestWatchDirectory/Rename_file_and_update 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryNo_update,_existing_gpt.ini1358065288/001/one_file and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNo_update,_existing_gpt.ini1358065288/001/one_file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNo_update,_existing_gpt.ini1358065288/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNo_update,_existing_gpt.ini1358065288/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: RENAME \"/tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file/alreadyexists.bak\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file/alreadyexists.bak\"" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryRename_file_and_update4242930040/001/one_file/GPT.INI" 267s === CONT TestWatchDirectory/Rename_file 267s === CONT TestWatchDirectory/Update_existing_file 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryRename_file1302752757/001/one_file and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRename_file1302752757/001/one_file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRename_file1302752757/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRename_file1302752757/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: RENAME \"/tmp/TestWatchDirectoryRename_file1302752757/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryRename_file1302752757/001/one_file/alreadyexists.bak\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryRename_file1302752757/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryUpdate_existing_file628904156/001/one_file/GPT.INI" 267s === CONT TestWatchDirectory/No_update,_no_gpt.ini 267s === CONT TestWatchDirectory/Error_on_updating_malformed_GPT.ini 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryNo_update,_no_gpt.ini4272862204/001/no_gpt and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNo_update,_no_gpt.ini4272862204/001/no_gpt" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNo_update,_no_gpt.ini4272862204/001/no_gpt/testfile" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed/new\"" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=warning msg="Failed to bump /tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed/GPT.INI version: can't bump version for /tmp/TestWatchDirectoryError_on_updating_malformed_GPT.ini3123878734/001/malformed/GPT.INI: strconv.ParseInt: parsing \"??\": invalid syntax" 267s === CONT TestWatchDirectory/Combined_case 267s === CONT TestWatchDirectory/Nested_new_subdirs 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/dir\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/dir and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/dir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/dir/file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/otherdir\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/otherdir and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/otherdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/otherdir/subdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/otherdir/subdir/file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/alreadyexistsDir/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/otherdir\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/otherdir and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/otherdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/otherdir/subdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/otherdir/subdir/file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/newdir\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/newdir\"" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryNested_new_subdirs451127191/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:19Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryCombined_case132042821/001/withsubdir/GPT.INI" 267s === CONT TestWatchDirectory/Error_on_non_existing_directory 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryError_on_non_existing_directory1983077262/001/doesnotexist and children" 267s === CONT TestWatchDirectory/Update_with_existing_gpt.ini 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file" 267s === CONT TestWatchDirectory/Multiple_directories_with_different_versions,_all_updated 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir and children" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:19Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file/new\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:19Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryUpdate_with_existing_gpt.ini2617142082/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryMultiple_directories_with_different_versions,_all_updated2566615613/001/withsubdir/GPT.INI" 267s === CONT TestWatchDirectory/Multiple_directories,_only_one_is_updated 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/one_file and children" 267s === CONT TestWatchDirectory/Multiple_nested_subdirectories,_only_update_nested_file 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/one_file" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryMultiple_directories,_only_one_is_updated3291702489/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryMultiple_nested_subdirectories,_only_update_nested_file1717292666/001/withsubdir/alreadyexistsDir/GPT.INI" 267s === CONT TestWatchDirectory/New_subdir 267s === CONT TestWatchDirectory/Remove_file 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: CHMOD \"/tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Failed to remove watcher on \"/tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists\": fsnotify: can't remove non-existent watch: /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Failed to remove watcher on \"/tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists\": fsnotify: can't remove non-existent watch: /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/dir\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/dir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/dir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/dir/file" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryRemove_file3285420309/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryNew_subdir573650402/001/withsubdir/GPT.INI" 267s === CONT TestWatchDirectory/Updating_gpt.ini_is_a_no-op 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestWatchDirectoryUpdating_gpt.ini_is_a_no-op1833932797/001/one_file and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdating_gpt.ini_is_a_no-op1833932797/001/one_file" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdating_gpt.ini_is_a_no-op1833932797/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestWatchDirectoryUpdating_gpt.ini_is_a_no-op1833932797/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryUpdating_gpt.ini_is_a_no-op1833932797/001/one_file/GPT.INI\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryUpdating_gpt.ini_is_a_no-op1833932797/001/one_file/GPT.INI\"" 267s === CONT TestStopWithoutStart 267s --- PASS: TestStopWithoutStart (0.00s) 267s === CONT TestUpdateDirsOnStoppedWatcher 267s time="2025-10-31T03:47:20Z" level=debug msg="Updating directories to [/tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir]" 267s time="2025-10-31T03:47:20Z" level=warning msg="Error stopping watcher: the service is already stopping or not running" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestUpdateDirsOnStoppedWatcher526628381/001/curdir/GPT.INI" 267s === CONT TestUpdateDirsWithEmptyDirSlice 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsWithEmptyDirSlice792932190/001/watchdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Updating directories to []" 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s --- PASS: TestUpdateDirsWithEmptyDirSlice (0.01s) 267s === CONT TestUpdateDirsFailing 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestUpdateDirsFailing24192519/001/remove and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/remove" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/remove/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestUpdateDirsFailing24192519/001/keep and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/keep" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/keep/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Updating directories to [/tmp/TestUpdateDirsFailing24192519/001/keep unexisting]" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirsFailing24192519/001/remove/alreadyexists\"" 267s --- PASS: TestUpdateDirsOnStoppedWatcher (0.21s) 267s === CONT TestUpdateDirs 267s time="2025-10-31T03:47:20Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestUpdateDirsFailing24192519/001/keep/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=info msg="Bumping version for /tmp/TestUpdateDirsFailing24192519/001/remove/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestUpdateDirs4131336114/001/remove and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/remove" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/remove/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/remove/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/remove/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/remove/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/remove/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching /tmp/TestUpdateDirs4131336114/001/keep and children" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexistsDir" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:20Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/remove/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/remove/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/remove/alreadyexists\"" 267s time="2025-10-31T03:47:20Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/remove/alreadyexists\"" 267s --- PASS: TestUpdateDirsFailing (0.22s) 267s === CONT TestRefreshGracePeriod 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestRefreshGracePeriod3664580354/001/withsubdir and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestRefreshGracePeriod3664580354/001/withsubdir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestRefreshGracePeriod3664580354/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Updating directories to [/tmp/TestUpdateDirs4131336114/001/keep /tmp/TestUpdateDirs4131336114/001/add]" 267s time="2025-10-31T03:47:21Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:21Z" level=info msg="Bumping version for /tmp/TestUpdateDirs4131336114/001/remove/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestUpdateDirs4131336114/001/keep and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexistsDir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/keep/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestUpdateDirs4131336114/001/add and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/add" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/add/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/add/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/add/alreadyexistsDir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/add/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestUpdateDirs4131336114/001/add/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/keep/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/add/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/add/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/add/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestUpdateDirs4131336114/001/add/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:21Z" level=info msg="Bumping version for /tmp/TestUpdateDirs4131336114/001/keep/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=info msg="Bumping version for /tmp/TestUpdateDirs4131336114/001/add/GPT.INI" 267s --- PASS: TestUpdateDirs (0.53s) 267s === CONT TestWatchDirectory/Error_on_listing_no_directory 267s === CONT TestWatchDirectory/Existing_file,_subdir 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:21Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryExisting_file,_subdir2941774013/001/withsubdir/GPT.INI" 267s === CONT TestWatchDirectory/Remove_root_directory 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: CHMOD \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Failed to remove watcher on \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists\": fsnotify: can't remove non-existent watch: /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Failed to remove watcher on \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists\": fsnotify: can't remove non-existent watch: /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: CHMOD \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: REMOVE \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Failed to remove watcher on \"/tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file\": fsnotify: can't remove non-existent watch: /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:21Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:21Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=info msg="error loading ini contents: open /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI: no such file or directory, creating a new file" 267s time="2025-10-31T03:47:21Z" level=warning msg="Failed to bump /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI version: can't bump version for /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI: open /tmp/TestWatchDirectoryRemove_root_directory2505966933/001/one_file/GPT.INI: no such file or directory" 267s === CONT TestWatchDirectory/New_file,_no_gpt.ini 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt/testfile" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt/new\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt/new\"" 267s time="2025-10-31T03:47:21Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:21Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=info msg="error loading ini contents: open /tmp/TestWatchDirectoryNew_file,_no_gpt.ini113077077/001/no_gpt/GPT.INI: no such file or directory, creating a new file" 267s === CONT TestWatchDirectory/New_subdir_without_file 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir and children" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:21Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/newsubdir\"" 267s time="2025-10-31T03:47:21Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/newsubdir\"" 267s time="2025-10-31T03:47:22Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:22Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryNew_subdir_without_file4055674785/001/withsubdir/GPT.INI" 267s === CONT TestWatchDirectory/Multiple_nested_subdirectories 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir and children" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir and children" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/new\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/new\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/alreadyexists\"" 267s time="2025-10-31T03:47:22Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:22Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryMultiple_nested_subdirectories2403473923/001/withsubdir/alreadyexistsDir/GPT.INI" 267s === CONT TestWatchDirectory/New_file,_subdir 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir and children" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/alreadyexists" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/alreadyexistsDir" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/alreadyexistsDir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=debug msg="Watching: /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/alreadyexistsDir/alreadyexists" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: CREATE \"/tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/alreadyexistsDir/new\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/alreadyexistsDir/new\"" 267s time="2025-10-31T03:47:22Z" level=info msg="Watcher stopped" 267s time="2025-10-31T03:47:22Z" level=info msg="Bumping version for /tmp/TestWatchDirectoryNew_file,_subdir2060287084/001/withsubdir/GPT.INI" 267s --- PASS: TestWatchDirectory (0.00s) 267s --- PASS: TestWatchDirectory/No_update,_existing_gpt.ini (0.29s) 267s --- PASS: TestWatchDirectory/Rename_file_and_update (0.29s) 267s --- PASS: TestWatchDirectory/Rename_file (0.21s) 267s --- PASS: TestWatchDirectory/Update_existing_file (0.21s) 267s --- PASS: TestWatchDirectory/Error_on_updating_malformed_GPT.ini (0.21s) 267s --- PASS: TestWatchDirectory/No_update,_no_gpt.ini (0.21s) 267s --- PASS: TestWatchDirectory/Nested_new_subdirs (0.21s) 267s --- PASS: TestWatchDirectory/Error_on_non_existing_directory (0.00s) 267s --- PASS: TestWatchDirectory/Combined_case (0.22s) 267s --- PASS: TestWatchDirectory/Update_with_existing_gpt.ini (0.22s) 267s --- PASS: TestWatchDirectory/Multiple_directories_with_different_versions,_all_updated (0.22s) 267s --- PASS: TestWatchDirectory/Multiple_directories,_only_one_is_updated (0.22s) 267s --- PASS: TestWatchDirectory/Multiple_nested_subdirectories,_only_update_nested_file (0.22s) 267s --- PASS: TestWatchDirectory/Remove_file (0.21s) 267s --- PASS: TestWatchDirectory/New_subdir (0.22s) 267s --- PASS: TestWatchDirectory/Updating_gpt.ini_is_a_no-op (0.21s) 267s --- PASS: TestWatchDirectory/Error_on_listing_no_directory (0.00s) 267s --- PASS: TestWatchDirectory/Existing_file,_subdir (0.21s) 267s --- PASS: TestWatchDirectory/Remove_root_directory (0.21s) 267s --- PASS: TestWatchDirectory/New_file,_no_gpt.ini (0.21s) 267s --- PASS: TestWatchDirectory/New_subdir_without_file (0.21s) 267s --- PASS: TestWatchDirectory/Multiple_nested_subdirectories (0.22s) 267s --- PASS: TestWatchDirectory/New_file,_subdir (0.21s) 267s time="2025-10-31T03:47:22Z" level=info msg="Bumping version for /tmp/TestRefreshGracePeriod3664580354/001/withsubdir/GPT.INI" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/GPT.INI\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/GPT.INI\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/GPT.INI\"" 267s time="2025-10-31T03:47:22Z" level=debug msg="Got event: WRITE \"/tmp/TestRefreshGracePeriod3664580354/001/withsubdir/GPT.INI\"" 267s time="2025-10-31T03:47:22Z" level=info msg="Watcher stopped" 267s --- PASS: TestRefreshGracePeriod (1.97s) 267s PASS 267s ok github.com/ubuntu/adsys/internal/watcher 4.004s 267s autopkgtest [03:47:23]: test command1: -----------------------] 268s command1 PASS 268s autopkgtest [03:47:24]: test command1: - - - - - - - - - - results - - - - - - - - - - 268s autopkgtest [03:47:24]: test command2: preparing testbed 269s Reading package lists... 269s Building dependency tree... 269s Reading state information... 270s Starting pkgProblemResolver with broken count: 0 270s Starting 2 pkgProblemResolver with broken count: 0 270s Done 271s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 271s autopkgtest [03:47:27]: test command2: ./debian/tests/test sudo 271s autopkgtest [03:47:27]: test command2: [----------------------- 271s Running root tests... 447s === RUN TestRunFailsWhenServiceIsRunning 447s --- PASS: TestRunFailsWhenServiceIsRunning (5.95s) 447s === RUN TestRunWithForceWhenServiceIsRunning 447s time="2025-10-31T03:48:25Z" level=warning msg="another instance of the adwatchd service is already running" 447s --- PASS: TestRunWithForceWhenServiceIsRunning (6.08s) 447s === RUN TestRunWithNoDirs 447s === PAUSE TestRunWithNoDirs 447s === RUN TestRunReactsToConfigUpdates 447s time="2025-10-31T03:48:26Z" level=warning msg="Service binary path does not match executable path\nService binary path: /tmp/go-build1448920248/b397/watchdtui.test\nCurrent executable path: /tmp/go-build1448920248/b001/integration_tests.test" 447s time="2025-10-31T03:48:26Z" level=warning msg="failed to update directories: failed to change directories to watch: can't update directories to watch: need at least one directory to watch" 447s time="2025-10-31T03:48:26Z" level=info msg="/tmp/autopkgtest.Rd2JAX/build.iFU/src/internal/watchdservice/watchdservice.go:127 (*WatchdService).UpdateDirs() Updating directories to watch" 447s time="2025-10-31T03:48:26Z" level=debug msg="/tmp/autopkgtest.Rd2JAX/build.iFU/src/internal/watcher/watcher.go:170 (*Watcher).UpdateDirs() Updating directories to [non-existent-dir]" 447s time="2025-10-31T03:48:26Z" level=warning msg="/tmp/autopkgtest.Rd2JAX/build.iFU/src/cmd/adwatchd/commands/main.go:125 New.func1.1() failed to update directories: failed to change directories to watch: can't update directories to watch: directory \"non-existent-dir\" does not exist" 447s time="2025-10-31T03:48:26Z" level=info msg="/tmp/autopkgtest.Rd2JAX/build.iFU/src/internal/watcher/watcher.go:300 (*Watcher).watch() Watcher stopped" 447s --- PASS: TestRunReactsToConfigUpdates (0.41s) 447s === RUN TestServiceStateChange 447s === RUN TestServiceStateChange/uninstall 447s === RUN TestServiceStateChange/start_multiple_times 447s === RUN TestServiceStateChange/start_and_stop 447s === RUN TestServiceStateChange/start_and_restart 447s === RUN TestServiceStateChange/uninstall_and_start 447s === RUN TestServiceStateChange/start 447s === RUN TestServiceStateChange/install 447s === RUN TestServiceStateChange/uninstall_multiple_times 447s === RUN TestServiceStateChange/uninstall_and_install 447s === RUN TestServiceStateChange/stop_multiple_times 447s === RUN TestServiceStateChange/restart 447s === RUN TestServiceStateChange/uninstall_and_restart 447s === RUN TestServiceStateChange/start_and_uninstall 447s === RUN TestServiceStateChange/uninstall_and_stop 447s --- PASS: TestServiceStateChange (102.93s) 447s --- PASS: TestServiceStateChange/uninstall (6.98s) 447s --- PASS: TestServiceStateChange/start_multiple_times (6.93s) 447s --- PASS: TestServiceStateChange/start_and_stop (6.92s) 447s --- PASS: TestServiceStateChange/start_and_restart (6.97s) 447s --- PASS: TestServiceStateChange/uninstall_and_start (6.94s) 447s --- PASS: TestServiceStateChange/start (6.95s) 447s --- PASS: TestServiceStateChange/install (6.90s) 447s --- PASS: TestServiceStateChange/uninstall_multiple_times (6.90s) 447s --- PASS: TestServiceStateChange/uninstall_and_install (12.78s) 447s --- PASS: TestServiceStateChange/stop_multiple_times (6.89s) 447s --- PASS: TestServiceStateChange/restart (6.95s) 447s --- PASS: TestServiceStateChange/uninstall_and_restart (6.96s) 447s --- PASS: TestServiceStateChange/start_and_uninstall (6.95s) 447s --- PASS: TestServiceStateChange/uninstall_and_stop (6.90s) 447s === RUN TestServiceStartWithABadDir 447s adwatchd_service_test.go:94: 447s --- SKIP: TestServiceStartWithABadDir (0.00s) 447s === RUN TestInstall 447s --- PASS: TestInstall (5.88s) 447s === RUN TestCreateAndUpdateGPT 447s === PAUSE TestCreateAndUpdateGPT 447s === RUN TestServiceStatusContainsCorrectDirs 447s adwatchd_service_test.go:202: This test is Windows-only 447s --- SKIP: TestServiceStatusContainsCorrectDirs (0.00s) 447s === RUN TestServiceConfigFlagUsage 447s === RUN TestServiceConfigFlagUsage/status 447s Usage: 447s adwatchd service status [flags] 447s 447s Flags: 447s -h, --help help for status 447s 447s Global Flags: 447s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 447s 447s === RUN TestServiceConfigFlagUsage/install 447s === RUN TestServiceConfigFlagUsage/start 447s Usage: 447s adwatchd service start [flags] 447s 447s Flags: 447s -h, --help help for start 447s 447s Global Flags: 447s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 447s 447s === RUN TestServiceConfigFlagUsage/restart 447s Usage: 447s adwatchd service restart [flags] 447s 447s Flags: 447s -h, --help help for restart 447s 447s Global Flags: 447s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 447s 447s === RUN TestServiceConfigFlagUsage/uninstall 447s Usage: 447s adwatchd service uninstall [flags] 447s 447s Flags: 447s -h, --help help for uninstall 447s 447s Global Flags: 447s -v, --verbose count issue INFO (-v), DEBUG (-vv) or DEBUG with caller (-vvv) output 447s 447s --- PASS: TestServiceConfigFlagUsage (0.01s) 447s --- PASS: TestServiceConfigFlagUsage/status (0.00s) 447s --- PASS: TestServiceConfigFlagUsage/install (0.00s) 447s --- PASS: TestServiceConfigFlagUsage/start (0.00s) 447s --- PASS: TestServiceConfigFlagUsage/restart (0.00s) 447s --- PASS: TestServiceConfigFlagUsage/uninstall (0.00s) 447s === RUN TestServiceWithNoNameFails 447s --- PASS: TestServiceWithNoNameFails (0.00s) 447s === RUN TestNoArgumentsStartsTUI 447s --- PASS: TestNoArgumentsStartsTUI (0.10s) 447s === CONT TestRunWithNoDirs 447s === CONT TestCreateAndUpdateGPT 447s --- PASS: TestRunWithNoDirs (0.00s) 447s --- PASS: TestCreateAndUpdateGPT (7.51s) 447s PASS 447s ok github.com/ubuntu/adsys/cmd/adwatchd/integration_tests 128.915s 447s === RUN TestInteractiveInput 447s === RUN TestInteractiveInput/Config_file_is_absent_and_input_is_a_dir 447s === RUN TestInteractiveInput/Directory_is_a_file,_block_input 447s === RUN TestInteractiveInput/Submit_with_default_config 447s === RUN TestInteractiveInput/Config_file_is_absent_and_input_is_relative 447s === RUN TestInteractiveInput/Multiple_existing_directories,_can_delete_them 447s === RUN TestInteractiveInput/Submit_with_fresh_config_in_current_directory 447s === RUN TestInteractiveInput/Submit_with_directory_as_config_input 447s === RUN TestInteractiveInput/Directory_does_not_exist,_block_input 447s === RUN TestInteractiveInput/Multiple_existing_directories,_can_cycle_between_the_inputs 447s === RUN TestInteractiveInput/Submit_with_fresh_config_in_nested_directory 447s === RUN TestInteractiveInput/Initial_view 447s === RUN TestInteractiveInput/Config_file_exists 447s === RUN TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories_which_exist_on_the_system 447s === RUN TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories,_not_all_which_exist_on_the_system 447s === RUN TestInteractiveInput/Found_installed_service,_config_not_overridden 447s === RUN TestInteractiveInput/Other_navigation_tests 447s === RUN TestInteractiveInput/No_directories,_focus_on_dir_input 447s === RUN TestInteractiveInput/Submit_with_duplicate_directories 447s === RUN TestInteractiveInput/Submit_with_dot_directories_is_normalized 447s === RUN TestInteractiveInput/Existing_config_file_is_passed_in_and_is_empty_or_has_no_directories 447s === RUN TestInteractiveInput/Config_file_is_absent_and_input_is_absolute 447s === RUN TestInteractiveInput/Found_installed_service,_config_overridden 447s === RUN TestInteractiveInput/Directory_exists 447s === RUN TestInteractiveInput/Dot_and_double_dot_directory_inputs_are_normalized 447s === RUN TestInteractiveInput/Submit_with_double_dot_directories_is_normalized 447s --- PASS: TestInteractiveInput (0.03s) 447s --- PASS: TestInteractiveInput/Config_file_is_absent_and_input_is_a_dir (0.00s) 447s --- PASS: TestInteractiveInput/Directory_is_a_file,_block_input (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_default_config (0.00s) 447s --- PASS: TestInteractiveInput/Config_file_is_absent_and_input_is_relative (0.00s) 447s --- PASS: TestInteractiveInput/Multiple_existing_directories,_can_delete_them (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_fresh_config_in_current_directory (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_directory_as_config_input (0.00s) 447s --- PASS: TestInteractiveInput/Directory_does_not_exist,_block_input (0.00s) 447s --- PASS: TestInteractiveInput/Multiple_existing_directories,_can_cycle_between_the_inputs (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_fresh_config_in_nested_directory (0.00s) 447s --- PASS: TestInteractiveInput/Initial_view (0.00s) 447s --- PASS: TestInteractiveInput/Config_file_exists (0.00s) 447s --- PASS: TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories_which_exist_on_the_system (0.00s) 447s --- PASS: TestInteractiveInput/Existing_config_file_is_passed_in_and_contains_directories,_not_all_which_exist_on_the_system (0.00s) 447s --- PASS: TestInteractiveInput/Found_installed_service,_config_not_overridden (0.00s) 447s --- PASS: TestInteractiveInput/Other_navigation_tests (0.00s) 447s --- PASS: TestInteractiveInput/No_directories,_focus_on_dir_input (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_duplicate_directories (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_dot_directories_is_normalized (0.00s) 447s --- PASS: TestInteractiveInput/Existing_config_file_is_passed_in_and_is_empty_or_has_no_directories (0.00s) 447s --- PASS: TestInteractiveInput/Config_file_is_absent_and_input_is_absolute (0.00s) 447s --- PASS: TestInteractiveInput/Found_installed_service,_config_overridden (0.00s) 447s --- PASS: TestInteractiveInput/Directory_exists (0.00s) 447s --- PASS: TestInteractiveInput/Dot_and_double_dot_directory_inputs_are_normalized (0.00s) 447s --- PASS: TestInteractiveInput/Submit_with_double_dot_directories_is_normalized (0.00s) 447s === RUN TestInteractiveInstall 447s time="2025-10-31T03:48:15Z" level=info msg="Installing watcher service" 447s time="2025-10-31T03:48:21Z" level=info msg="Uninstalling watcher service" 447s --- PASS: TestInteractiveInstall (6.86s) 447s === RUN TestInteractiveUpdate 447s === RUN TestInteractiveUpdate/Change_directories,_same_config_file 447s time="2025-10-31T03:48:22Z" level=info msg="Installing watcher service" 447s time="2025-10-31T03:48:29Z" level=info msg="Uninstalling watcher service" 447s === RUN TestInteractiveUpdate/Change_directories,_different_config_file 447s time="2025-10-31T03:48:30Z" level=info msg="Installing watcher service" 447s time="2025-10-31T03:48:36Z" level=info msg="Uninstalling watcher service" 447s time="2025-10-31T03:48:36Z" level=info msg="Installing watcher service" 447s time="2025-10-31T03:48:43Z" level=info msg="Uninstalling watcher service" 447s --- PASS: TestInteractiveUpdate (21.75s) 447s --- PASS: TestInteractiveUpdate/Change_directories,_same_config_file (7.90s) 447s --- PASS: TestInteractiveUpdate/Change_directories,_different_config_file (13.85s) 447s PASS 447s ok github.com/ubuntu/adsys/internal/watchdtui 28.659s 447s autopkgtest [03:50:23]: test command2: -----------------------] 448s command2 PASS 448s autopkgtest [03:50:24]: test command2: - - - - - - - - - - results - - - - - - - - - - 448s autopkgtest [03:50:24]: @@@@@@@@@@@@@@@@@@@@ summary 448s command1 PASS 448s command2 PASS