0s autopkgtest [17:00:37]: starting date and time: 2024-11-02 17:00:37+0000 0s autopkgtest [17:00:37]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [17:00:37]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.ru38dyff/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:liburi-perl --apt-upgrade sqitch --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=liburi-perl/5.30-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@lcy02-55.secgroup --name adt-plucky-amd64-sqitch-20241102-170037-juju-7f2275-prod-proposed-migration-environment-15-d556bb86-514e-48cf-8681-c98104533083 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 57s autopkgtest [17:01:34]: testbed dpkg architecture: amd64 57s autopkgtest [17:01:34]: testbed apt version: 2.9.8 57s autopkgtest [17:01:34]: @@@@@@@@@@@@@@@@@@@@ test bed setup 57s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 57s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 57s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [175 kB] 57s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [40.4 kB] 57s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [2484 kB] 57s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [235 kB] 57s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [163 kB] 57s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 57s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [1857 kB] 57s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [926 kB] 57s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [68.4 kB] 57s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [22.0 kB] 58s Fetched 6085 kB in 1s (11.0 MB/s) 58s Reading package lists... 59s Reading package lists... 59s Building dependency tree... 59s Reading state information... 59s Calculating upgrade... 60s The following packages will be upgraded: 60s python3-zipp 60s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 60s Need to get 10.1 kB of archives. 60s After this operation, 2048 B disk space will be freed. 60s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-zipp all 3.20.2-1 [10.1 kB] 60s Fetched 10.1 kB in 0s (614 kB/s) 60s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 75323 files and directories currently installed.) 60s Preparing to unpack .../python3-zipp_3.20.2-1_all.deb ... 60s Unpacking python3-zipp (3.20.2-1) over (3.20.0-1) ... 60s Setting up python3-zipp (3.20.2-1) ... 61s Reading package lists... 61s Building dependency tree... 61s Reading state information... 61s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 61s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 61s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 61s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 61s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 62s Reading package lists... 62s Reading package lists... 63s Building dependency tree... 63s Reading state information... 63s Calculating upgrade... 63s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 63s Reading package lists... 63s Building dependency tree... 63s Reading state information... 64s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 64s autopkgtest [17:01:41]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024 64s autopkgtest [17:01:41]: @@@@@@@@@@@@@@@@@@@@ apt-source sqitch 65s Get:1 http://ftpmaster.internal/ubuntu plucky/universe sqitch 1.4.1-1 (dsc) [3728 B] 65s Get:2 http://ftpmaster.internal/ubuntu plucky/universe sqitch 1.4.1-1 (tar) [641 kB] 65s Get:3 http://ftpmaster.internal/ubuntu plucky/universe sqitch 1.4.1-1 (diff) [6120 B] 65s gpgv: Signature made Thu Feb 8 23:51:53 2024 UTC 65s gpgv: using RSA key D1E1316E93A760A8104D85FABB3A68018649AA06 65s gpgv: Can't check signature: No public key 65s dpkg-source: warning: cannot verify inline signature for ./sqitch_1.4.1-1.dsc: no acceptable signature found 65s autopkgtest [17:01:42]: testing package sqitch version 1.4.1-1 65s autopkgtest [17:01:42]: build not needed 65s autopkgtest [17:01:42]: test autodep8-perl-build-deps: preparing testbed 66s Reading package lists... 66s Building dependency tree... 66s Reading state information... 66s Starting pkgProblemResolver with broken count: 0 66s Starting 2 pkgProblemResolver with broken count: 0 67s Done 67s The following additional packages will be installed: 67s autoconf autodep8 automake autopoint autotools-dev build-essential cpp 67s cpp-14 cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu dctrl-tools debhelper 67s debugedit dh-autoreconf dh-strip-nondeterminism dwz g++ g++-14 67s g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 67s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu gettext intltool-debian 67s libalgorithm-backoff-perl libalgorithm-c3-perl libalgorithm-diff-perl 67s libappconfig-perl libarchive-zip-perl libasan8 libb-hooks-endofscope-perl 67s libb-hooks-op-check-perl libcapture-tiny-perl libcc1-0 libclass-c3-perl 67s libclass-data-inheritable-perl libclass-inspector-perl 67s libclass-method-modifiers-perl libclass-singleton-perl 67s libclass-xsaccessor-perl libclone-choose-perl libclone-perl 67s libconfig-gitlike-perl libdata-optlist-perl libdatetime-locale-perl 67s libdatetime-perl libdatetime-timezone-perl libdbd-pg-perl 67s libdbd-sqlite3-perl libdbi-perl libdebhelper-perl libdevel-callchecker-perl 67s libdevel-stacktrace-perl libdynaloader-functions-perl libencode-locale-perl 67s libeval-closure-perl libexception-class-perl libexporter-tiny-perl 67s libfile-sharedir-perl libfile-stripnondeterminism-perl libfile-which-perl 67s libgcc-14-dev libgomp1 libhash-merge-perl libhwasan0 libimport-into-perl 67s libintl-perl libio-pager-perl libipc-run3-perl libipc-system-simple-perl 67s libisl23 libitm1 liblist-moreutils-perl liblist-moreutils-xs-perl liblsan0 67s libmodule-build-perl libmodule-implementation-perl libmodule-runtime-perl 67s libmoo-perl libmoox-types-mooselike-perl libmpc3 libmro-compat-perl 67s libnamespace-autoclean-perl libnamespace-clean-perl libpackage-stash-perl 67s libparams-classify-perl libparams-util-perl 67s libparams-validationcompiler-perl libpath-class-perl 67s libperlio-utf8-strict-perl libpod-parser-perl libpq5 libquadmath0 67s libreturn-multilevel-perl librole-tiny-perl libspecio-perl libstdc++-14-dev 67s libstring-formatter-perl libstring-shellquote-perl libsub-exporter-perl 67s libsub-exporter-progressive-perl libsub-identify-perl libsub-install-perl 67s libsub-name-perl libsub-quote-perl libsub-uplevel-perl libsuper-perl 67s libtemplate-perl libtemplate-tiny-perl libterm-readkey-perl 67s libtest-deep-perl libtest-dir-perl libtest-exception-perl libtest-exit-perl 67s libtest-file-contents-perl libtest-file-perl libtest-mockmodule-perl 67s libtest-mockobject-perl libtest-nowarnings-perl libtest-warn-perl 67s libtext-diff-perl libthrowable-perl libtool libtry-tiny-perl libtsan2 67s libtype-tiny-perl libtype-tiny-xs-perl libubsan1 libuniversal-can-perl 67s libuniversal-isa-perl liburi-db-perl liburi-nested-perl liburi-perl 67s libvariable-magic-perl libxstring-perl m4 pkg-perl-autopkgtest po-debconf 67s postgresql-client postgresql-client-16 postgresql-client-common sqitch 67s sqlite3 67s Suggested packages: 67s autoconf-archive gnu-standards autoconf-doc cpp-doc gcc-14-locales 67s cpp-14-doc debtags dh-make g++-multilib g++-14-multilib gcc-14-doc 67s gcc-multilib manpages-dev flex bison gdb gcc-doc gcc-14-multilib 67s gdb-x86-64-linux-gnu gettext-doc libasprintf-dev libgettextpo-dev 67s libmldbm-perl libnet-daemon-perl libsql-statement-perl 67s libmoox-types-mooselike-numeric-perl libmoox-types-setobject-perl 67s libscalar-number-perl libtest-fatal-perl libstdc++-14-doc 67s libtemplate-plugin-gd-perl libtemplate-plugin-xml-perl libtool-doc gfortran 67s | fortran95-compiler gcj-jdk libdevel-lexalias-perl libbusiness-isbn-perl 67s libmime-base32-perl libregexp-ipv6-perl libwww-perl m4-doc libmail-box-perl 67s postgresql-16 postgresql-doc-16 sqlite3-doc 67s Recommended packages: 67s libalgorithm-diff-xs-perl libclass-c3-xs-perl libdevel-lexalias-perl 67s libarchive-cpio-perl libintl-xs-perl libmodule-signature-perl 67s libpod-readme-perl libsoftware-license-perl libpackage-stash-xs-perl 67s libscope-upper-perl libref-util-perl libltdl-dev libmail-sendmail-perl 67s The following NEW packages will be installed: 67s autoconf autodep8 automake autopkgtest-satdep autopoint autotools-dev 67s build-essential cpp cpp-14 cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu 67s dctrl-tools debhelper debugedit dh-autoreconf dh-strip-nondeterminism dwz 67s g++ g++-14 g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 67s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu gettext intltool-debian 67s libalgorithm-backoff-perl libalgorithm-c3-perl libalgorithm-diff-perl 67s libappconfig-perl libarchive-zip-perl libasan8 libb-hooks-endofscope-perl 67s libb-hooks-op-check-perl libcapture-tiny-perl libcc1-0 libclass-c3-perl 67s libclass-data-inheritable-perl libclass-inspector-perl 67s libclass-method-modifiers-perl libclass-singleton-perl 67s libclass-xsaccessor-perl libclone-choose-perl libclone-perl 67s libconfig-gitlike-perl libdata-optlist-perl libdatetime-locale-perl 67s libdatetime-perl libdatetime-timezone-perl libdbd-pg-perl 67s libdbd-sqlite3-perl libdbi-perl libdebhelper-perl libdevel-callchecker-perl 67s libdevel-stacktrace-perl libdynaloader-functions-perl libencode-locale-perl 67s libeval-closure-perl libexception-class-perl libexporter-tiny-perl 67s libfile-sharedir-perl libfile-stripnondeterminism-perl libfile-which-perl 67s libgcc-14-dev libgomp1 libhash-merge-perl libhwasan0 libimport-into-perl 67s libintl-perl libio-pager-perl libipc-run3-perl libipc-system-simple-perl 67s libisl23 libitm1 liblist-moreutils-perl liblist-moreutils-xs-perl liblsan0 67s libmodule-build-perl libmodule-implementation-perl libmodule-runtime-perl 67s libmoo-perl libmoox-types-mooselike-perl libmpc3 libmro-compat-perl 67s libnamespace-autoclean-perl libnamespace-clean-perl libpackage-stash-perl 67s libparams-classify-perl libparams-util-perl 67s libparams-validationcompiler-perl libpath-class-perl 67s libperlio-utf8-strict-perl libpod-parser-perl libpq5 libquadmath0 67s libreturn-multilevel-perl librole-tiny-perl libspecio-perl libstdc++-14-dev 67s libstring-formatter-perl libstring-shellquote-perl libsub-exporter-perl 67s libsub-exporter-progressive-perl libsub-identify-perl libsub-install-perl 67s libsub-name-perl libsub-quote-perl libsub-uplevel-perl libsuper-perl 67s libtemplate-perl libtemplate-tiny-perl libterm-readkey-perl 67s libtest-deep-perl libtest-dir-perl libtest-exception-perl libtest-exit-perl 67s libtest-file-contents-perl libtest-file-perl libtest-mockmodule-perl 67s libtest-mockobject-perl libtest-nowarnings-perl libtest-warn-perl 67s libtext-diff-perl libthrowable-perl libtool libtry-tiny-perl libtsan2 67s libtype-tiny-perl libtype-tiny-xs-perl libubsan1 libuniversal-can-perl 67s libuniversal-isa-perl liburi-db-perl liburi-nested-perl liburi-perl 67s libvariable-magic-perl libxstring-perl m4 pkg-perl-autopkgtest po-debconf 67s postgresql-client postgresql-client-16 postgresql-client-common sqitch 67s sqlite3 67s 0 upgraded, 146 newly installed, 0 to remove and 0 not upgraded. 67s Need to get 80.8 MB/80.8 MB of archives. 67s After this operation, 293 MB of additional disk space will be used. 67s Get:1 /tmp/autopkgtest.vsPEeX/1-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [1120 B] 67s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 m4 amd64 1.4.19-4build1 [244 kB] 67s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 autoconf all 2.72-3 [382 kB] 67s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 dctrl-tools amd64 2.24-3build3 [106 kB] 67s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 autodep8 all 0.28+nmu1ubuntu1 [13.7 kB] 67s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 autotools-dev all 20220109.1 [44.9 kB] 67s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 automake all 1:1.16.5-1.3ubuntu1 [558 kB] 67s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 autopoint all 0.22.5-2 [616 kB] 67s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libisl23 amd64 0.27-1 [685 kB] 67s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libmpc3 amd64 1.3.1-1build2 [55.3 kB] 67s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14-x86-64-linux-gnu amd64 14.2.0-7ubuntu1 [11.9 MB] 67s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14 amd64 14.2.0-7ubuntu1 [1026 B] 67s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [5452 B] 67s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp amd64 4:14.1.0-2ubuntu1 [22.4 kB] 67s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libcc1-0 amd64 14.2.0-7ubuntu1 [47.6 kB] 67s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-7ubuntu1 [148 kB] 67s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libitm1 amd64 14.2.0-7ubuntu1 [29.1 kB] 67s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libasan8 amd64 14.2.0-7ubuntu1 [2998 kB] 67s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsan0 amd64 14.2.0-7ubuntu1 [1316 kB] 67s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 libtsan2 amd64 14.2.0-7ubuntu1 [2733 kB] 67s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libubsan1 amd64 14.2.0-7ubuntu1 [1177 kB] 67s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 libhwasan0 amd64 14.2.0-7ubuntu1 [1634 kB] 67s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libquadmath0 amd64 14.2.0-7ubuntu1 [153 kB] 67s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libgcc-14-dev amd64 14.2.0-7ubuntu1 [2814 kB] 67s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14-x86-64-linux-gnu amd64 14.2.0-7ubuntu1 [23.4 MB] 67s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14 amd64 14.2.0-7ubuntu1 [526 kB] 67s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [1214 B] 67s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc amd64 4:14.1.0-2ubuntu1 [5000 B] 67s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 libstdc++-14-dev amd64 14.2.0-7ubuntu1 [2503 kB] 67s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14-x86-64-linux-gnu amd64 14.2.0-7ubuntu1 [13.4 MB] 68s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14 amd64 14.2.0-7ubuntu1 [19.8 kB] 68s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [966 B] 68s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 g++ amd64 4:14.1.0-2ubuntu1 [1100 B] 68s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 68s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 libdebhelper-perl all 13.20ubuntu1 [94.2 kB] 68s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libtool all 2.4.7-7build1 [166 kB] 68s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 dh-autoreconf all 20 [16.1 kB] 68s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 libarchive-zip-perl all 1.68-1 [90.2 kB] 68s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [20.1 kB] 68s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 dh-strip-nondeterminism all 1.14.0-1 [5058 B] 68s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 debugedit amd64 1:5.1-1 [46.9 kB] 68s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 dwz amd64 0.15-1build6 [115 kB] 68s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.22.5-2 [948 kB] 68s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 68s Get:45 http://ftpmaster.internal/ubuntu plucky/main amd64 po-debconf all 1.0.21+nmu1 [233 kB] 68s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 debhelper all 13.20ubuntu1 [893 kB] 68s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 libalgorithm-backoff-perl all 0.010-1 [37.3 kB] 68s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 libalgorithm-c3-perl all 0.11-2 [10.2 kB] 68s Get:49 http://ftpmaster.internal/ubuntu plucky/main amd64 libalgorithm-diff-perl all 1.201-1 [41.8 kB] 68s Get:50 http://ftpmaster.internal/ubuntu plucky/main amd64 libappconfig-perl all 1.71-2.3 [64.8 kB] 68s Get:51 http://ftpmaster.internal/ubuntu plucky/main amd64 libb-hooks-op-check-perl amd64 0.22-3build2 [9624 B] 68s Get:52 http://ftpmaster.internal/ubuntu plucky/main amd64 libdynaloader-functions-perl all 0.004-1 [11.4 kB] 68s Get:53 http://ftpmaster.internal/ubuntu plucky/main amd64 libdevel-callchecker-perl amd64 0.009-1build1 [14.2 kB] 68s Get:54 http://ftpmaster.internal/ubuntu plucky/main amd64 libparams-classify-perl amd64 0.015-2build6 [20.1 kB] 68s Get:55 http://ftpmaster.internal/ubuntu plucky/main amd64 libmodule-runtime-perl all 0.016-2 [16.4 kB] 68s Get:56 http://ftpmaster.internal/ubuntu plucky/main amd64 libtry-tiny-perl all 0.31-2 [20.8 kB] 68s Get:57 http://ftpmaster.internal/ubuntu plucky/main amd64 libmodule-implementation-perl all 0.09-2 [12.0 kB] 68s Get:58 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-exporter-progressive-perl all 0.001013-3 [6718 B] 68s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 libvariable-magic-perl amd64 0.64-1build1 [36.3 kB] 68s Get:60 http://ftpmaster.internal/ubuntu plucky/main amd64 libb-hooks-endofscope-perl all 0.28-1 [15.8 kB] 68s Get:61 http://ftpmaster.internal/ubuntu plucky/main amd64 libcapture-tiny-perl all 0.48-2 [20.2 kB] 68s Get:62 http://ftpmaster.internal/ubuntu plucky/universe amd64 libclass-c3-perl all 0.35-2 [18.4 kB] 68s Get:63 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-data-inheritable-perl all 0.08-3 [8084 B] 68s Get:64 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-inspector-perl all 1.36-3 [15.4 kB] 68s Get:65 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-method-modifiers-perl all 2.15-1 [16.1 kB] 68s Get:66 http://ftpmaster.internal/ubuntu plucky/universe amd64 libclass-singleton-perl all 1.6-2 [11.5 kB] 68s Get:67 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-xsaccessor-perl amd64 1.19-4build5 [33.0 kB] 68s Get:68 http://ftpmaster.internal/ubuntu plucky/universe amd64 libclone-choose-perl all 0.010-2 [7738 B] 68s Get:69 http://ftpmaster.internal/ubuntu plucky/main amd64 libclone-perl amd64 0.47-1 [10.7 kB] 68s Get:70 http://ftpmaster.internal/ubuntu plucky/main amd64 libimport-into-perl all 1.002005-2 [10.7 kB] 68s Get:71 http://ftpmaster.internal/ubuntu plucky/main amd64 librole-tiny-perl all 2.002004-1 [16.3 kB] 68s Get:72 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-quote-perl all 2.006008-1ubuntu1 [20.7 kB] 68s Get:73 http://ftpmaster.internal/ubuntu plucky/main amd64 libmoo-perl all 2.005005-1 [47.4 kB] 68s Get:74 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmoox-types-mooselike-perl all 0.29-2 [16.7 kB] 68s Get:75 http://ftpmaster.internal/ubuntu plucky/universe amd64 libconfig-gitlike-perl all 1.18-2 [33.8 kB] 68s Get:76 http://ftpmaster.internal/ubuntu plucky/main amd64 libparams-util-perl amd64 1.102-3build1 [21.4 kB] 68s Get:77 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-install-perl all 0.929-1 [9764 B] 68s Get:78 http://ftpmaster.internal/ubuntu plucky/main amd64 libdata-optlist-perl all 0.114-1 [9708 B] 68s Get:79 http://ftpmaster.internal/ubuntu plucky/main amd64 libdbi-perl amd64 1.645-1 [828 kB] 68s Get:80 http://ftpmaster.internal/ubuntu plucky/main amd64 libpq5 amd64 17.0-1 [249 kB] 68s Get:81 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdbd-pg-perl amd64 3.18.0-1build4 [192 kB] 68s Get:82 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdbd-sqlite3-perl amd64 1.74-1build4 [162 kB] 68s Get:83 http://ftpmaster.internal/ubuntu plucky/main amd64 libdevel-stacktrace-perl all 2.0500-1 [22.1 kB] 68s Get:84 http://ftpmaster.internal/ubuntu plucky/main amd64 libencode-locale-perl all 1.05-3 [11.6 kB] 68s Get:85 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-exporter-perl all 0.990-1 [49.0 kB] 68s Get:86 http://ftpmaster.internal/ubuntu plucky/universe amd64 libeval-closure-perl all 0.14-3 [10.1 kB] 68s Get:87 http://ftpmaster.internal/ubuntu plucky/main amd64 libexception-class-perl all 1.45-1 [28.6 kB] 68s Get:88 http://ftpmaster.internal/ubuntu plucky/main amd64 libexporter-tiny-perl all 1.006002-1 [36.8 kB] 68s Get:89 http://ftpmaster.internal/ubuntu plucky/main amd64 libfile-sharedir-perl all 1.118-3 [14.0 kB] 68s Get:90 http://ftpmaster.internal/ubuntu plucky/main amd64 libfile-which-perl all 1.27-2 [12.5 kB] 68s Get:91 http://ftpmaster.internal/ubuntu plucky/universe amd64 libhash-merge-perl all 0.302-1 [13.0 kB] 68s Get:92 http://ftpmaster.internal/ubuntu plucky/main amd64 libintl-perl all 1.33-1build4 [703 kB] 68s Get:93 http://ftpmaster.internal/ubuntu plucky/main amd64 libterm-readkey-perl amd64 2.38-2build5 [23.2 kB] 68s Get:94 http://ftpmaster.internal/ubuntu plucky/universe amd64 libio-pager-perl all 2.10-1 [50.5 kB] 68s Get:95 http://ftpmaster.internal/ubuntu plucky/main amd64 libipc-system-simple-perl all 1.30-2 [22.3 kB] 68s Get:96 http://ftpmaster.internal/ubuntu plucky/universe amd64 liblist-moreutils-xs-perl amd64 0.430-4build1 [42.9 kB] 68s Get:97 http://ftpmaster.internal/ubuntu plucky/universe amd64 liblist-moreutils-perl all 0.430-2 [38.2 kB] 68s Get:98 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmodule-build-perl all 0.423400-2 [200 kB] 68s Get:99 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmro-compat-perl all 0.15-2 [10.1 kB] 68s Get:100 http://ftpmaster.internal/ubuntu plucky/main amd64 libpackage-stash-perl all 0.40-1 [19.5 kB] 68s Get:101 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-identify-perl amd64 0.14-3build4 [9904 B] 68s Get:102 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-name-perl amd64 0.27-1build4 [10.9 kB] 68s Get:103 http://ftpmaster.internal/ubuntu plucky/main amd64 libnamespace-clean-perl all 0.27-2 [14.0 kB] 68s Get:104 http://ftpmaster.internal/ubuntu plucky/universe amd64 libnamespace-autoclean-perl all 0.29-2 [11.7 kB] 68s Get:105 http://ftpmaster.internal/ubuntu plucky/universe amd64 libparams-validationcompiler-perl all 0.31-1 [28.3 kB] 68s Get:106 http://ftpmaster.internal/ubuntu plucky/universe amd64 libpath-class-perl all 0.37-4 [36.8 kB] 68s Get:107 http://ftpmaster.internal/ubuntu plucky/main amd64 libperlio-utf8-strict-perl amd64 0.010-1build4 [11.1 kB] 68s Get:108 http://ftpmaster.internal/ubuntu plucky/main amd64 libpod-parser-perl all 1.67-1 [80.6 kB] 68s Get:109 http://ftpmaster.internal/ubuntu plucky/universe amd64 libreturn-multilevel-perl all 0.08-1 [7784 B] 68s Get:110 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxstring-perl amd64 0.005-2build4 [7940 B] 68s Get:111 http://ftpmaster.internal/ubuntu plucky/universe amd64 libspecio-perl all 0.48-1 [137 kB] 68s Get:112 http://ftpmaster.internal/ubuntu plucky/universe amd64 libstring-formatter-perl all 1.235-1 [21.3 kB] 68s Get:113 http://ftpmaster.internal/ubuntu plucky/main amd64 libstring-shellquote-perl all 1.04-3 [11.3 kB] 68s Get:114 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsub-uplevel-perl all 0.2800-3 [11.6 kB] 68s Get:115 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsuper-perl all 1.20190531-1 [10.4 kB] 68s Get:116 http://ftpmaster.internal/ubuntu plucky/main amd64 libtemplate-perl amd64 2.27-1build11 [498 kB] 68s Get:117 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtemplate-tiny-perl all 1.14-2 [11.0 kB] 68s Get:118 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-deep-perl all 1.204-1 [47.1 kB] 68s Get:119 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-dir-perl all 1.16-3 [10.4 kB] 68s Get:120 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-exception-perl all 0.43-3 [13.4 kB] 68s Get:121 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-exit-perl all 0.11-2 [6444 B] 68s Get:122 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtext-diff-perl all 1.45-2 [25.6 kB] 68s Get:123 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-file-contents-perl all 0.242-1 [9360 B] 68s Get:124 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-file-perl all 1.993-1 [20.7 kB] 68s Get:125 http://ftpmaster.internal/ubuntu plucky/universe amd64 libuniversal-can-perl all 1.20140328-3 [10.7 kB] 68s Get:126 http://ftpmaster.internal/ubuntu plucky/universe amd64 libuniversal-isa-perl all 1.20171012-3 [7866 B] 68s Get:127 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-mockobject-perl all 1.20200122-4 [23.4 kB] 68s Get:128 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-nowarnings-perl all 1.06-2 [10.1 kB] 68s Get:129 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-warn-perl all 0.37-2 [12.6 kB] 68s Get:130 http://ftpmaster.internal/ubuntu plucky/universe amd64 libthrowable-perl all 1.001-2 [14.2 kB] 68s Get:131 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtype-tiny-perl all 2.004000-1 [354 kB] 68s Get:132 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtype-tiny-xs-perl amd64 0.025-2build1 [25.0 kB] 68s Get:133 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 liburi-perl all 5.30-1 [94.4 kB] 68s Get:134 http://ftpmaster.internal/ubuntu plucky/universe amd64 liburi-nested-perl all 0.10-4 [7926 B] 68s Get:135 http://ftpmaster.internal/ubuntu plucky/universe amd64 liburi-db-perl all 0.22-1 [20.2 kB] 68s Get:136 http://ftpmaster.internal/ubuntu plucky/main amd64 postgresql-client-common all 262 [36.7 kB] 68s Get:137 http://ftpmaster.internal/ubuntu plucky/main amd64 postgresql-client-16 amd64 16.4-3 [1278 kB] 68s Get:138 http://ftpmaster.internal/ubuntu plucky/main amd64 postgresql-client all 16+262 [11.8 kB] 68s Get:139 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdatetime-locale-perl all 1:1.41-1 [3193 kB] 68s Get:140 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdatetime-timezone-perl all 1:2.62-1+2024a [262 kB] 68s Get:141 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdatetime-perl amd64 2:1.65-1build3 [95.8 kB] 68s Get:142 http://ftpmaster.internal/ubuntu plucky/main amd64 libipc-run3-perl all 0.049-1 [28.8 kB] 68s Get:143 http://ftpmaster.internal/ubuntu plucky/main amd64 sqlite3 amd64 3.46.1-1 [151 kB] 68s Get:144 http://ftpmaster.internal/ubuntu plucky/universe amd64 sqitch all 1.4.1-1 [609 kB] 68s Get:145 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtest-mockmodule-perl all 0.178.0-1 [12.9 kB] 68s Get:146 http://ftpmaster.internal/ubuntu plucky/universe amd64 pkg-perl-autopkgtest all 0.79 [18.5 kB] 68s Fetched 80.8 MB in 1s (120 MB/s) 68s Selecting previously unselected package m4. 68s (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 ... 75323 files and directories currently installed.) 68s Preparing to unpack .../000-m4_1.4.19-4build1_amd64.deb ... 68s Unpacking m4 (1.4.19-4build1) ... 68s Selecting previously unselected package autoconf. 68s Preparing to unpack .../001-autoconf_2.72-3_all.deb ... 68s Unpacking autoconf (2.72-3) ... 68s Selecting previously unselected package dctrl-tools. 68s Preparing to unpack .../002-dctrl-tools_2.24-3build3_amd64.deb ... 68s Unpacking dctrl-tools (2.24-3build3) ... 68s Selecting previously unselected package autodep8. 68s Preparing to unpack .../003-autodep8_0.28+nmu1ubuntu1_all.deb ... 68s Unpacking autodep8 (0.28+nmu1ubuntu1) ... 68s Selecting previously unselected package autotools-dev. 68s Preparing to unpack .../004-autotools-dev_20220109.1_all.deb ... 68s Unpacking autotools-dev (20220109.1) ... 68s Selecting previously unselected package automake. 68s Preparing to unpack .../005-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 68s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 68s Selecting previously unselected package autopoint. 68s Preparing to unpack .../006-autopoint_0.22.5-2_all.deb ... 68s Unpacking autopoint (0.22.5-2) ... 68s Selecting previously unselected package libisl23:amd64. 69s Preparing to unpack .../007-libisl23_0.27-1_amd64.deb ... 69s Unpacking libisl23:amd64 (0.27-1) ... 69s Selecting previously unselected package libmpc3:amd64. 69s Preparing to unpack .../008-libmpc3_1.3.1-1build2_amd64.deb ... 69s Unpacking libmpc3:amd64 (1.3.1-1build2) ... 69s Selecting previously unselected package cpp-14-x86-64-linux-gnu. 69s Preparing to unpack .../009-cpp-14-x86-64-linux-gnu_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking cpp-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package cpp-14. 69s Preparing to unpack .../010-cpp-14_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking cpp-14 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package cpp-x86-64-linux-gnu. 69s Preparing to unpack .../011-cpp-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 69s Unpacking cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 69s Selecting previously unselected package cpp. 69s Preparing to unpack .../012-cpp_4%3a14.1.0-2ubuntu1_amd64.deb ... 69s Unpacking cpp (4:14.1.0-2ubuntu1) ... 69s Selecting previously unselected package libcc1-0:amd64. 69s Preparing to unpack .../013-libcc1-0_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libcc1-0:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libgomp1:amd64. 69s Preparing to unpack .../014-libgomp1_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libgomp1:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libitm1:amd64. 69s Preparing to unpack .../015-libitm1_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libitm1:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libasan8:amd64. 69s Preparing to unpack .../016-libasan8_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libasan8:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package liblsan0:amd64. 69s Preparing to unpack .../017-liblsan0_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking liblsan0:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libtsan2:amd64. 69s Preparing to unpack .../018-libtsan2_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libtsan2:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libubsan1:amd64. 69s Preparing to unpack .../019-libubsan1_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libubsan1:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libhwasan0:amd64. 69s Preparing to unpack .../020-libhwasan0_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libhwasan0:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libquadmath0:amd64. 69s Preparing to unpack .../021-libquadmath0_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libquadmath0:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package libgcc-14-dev:amd64. 69s Preparing to unpack .../022-libgcc-14-dev_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking libgcc-14-dev:amd64 (14.2.0-7ubuntu1) ... 69s Selecting previously unselected package gcc-14-x86-64-linux-gnu. 69s Preparing to unpack .../023-gcc-14-x86-64-linux-gnu_14.2.0-7ubuntu1_amd64.deb ... 69s Unpacking gcc-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 70s Selecting previously unselected package gcc-14. 70s Preparing to unpack .../024-gcc-14_14.2.0-7ubuntu1_amd64.deb ... 70s Unpacking gcc-14 (14.2.0-7ubuntu1) ... 70s Selecting previously unselected package gcc-x86-64-linux-gnu. 70s Preparing to unpack .../025-gcc-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 70s Unpacking gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 70s Selecting previously unselected package gcc. 70s Preparing to unpack .../026-gcc_4%3a14.1.0-2ubuntu1_amd64.deb ... 70s Unpacking gcc (4:14.1.0-2ubuntu1) ... 70s Selecting previously unselected package libstdc++-14-dev:amd64. 70s Preparing to unpack .../027-libstdc++-14-dev_14.2.0-7ubuntu1_amd64.deb ... 70s Unpacking libstdc++-14-dev:amd64 (14.2.0-7ubuntu1) ... 70s Selecting previously unselected package g++-14-x86-64-linux-gnu. 70s Preparing to unpack .../028-g++-14-x86-64-linux-gnu_14.2.0-7ubuntu1_amd64.deb ... 70s Unpacking g++-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 70s Selecting previously unselected package g++-14. 70s Preparing to unpack .../029-g++-14_14.2.0-7ubuntu1_amd64.deb ... 70s Unpacking g++-14 (14.2.0-7ubuntu1) ... 70s Selecting previously unselected package g++-x86-64-linux-gnu. 70s Preparing to unpack .../030-g++-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 70s Unpacking g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 70s Selecting previously unselected package g++. 70s Preparing to unpack .../031-g++_4%3a14.1.0-2ubuntu1_amd64.deb ... 70s Unpacking g++ (4:14.1.0-2ubuntu1) ... 70s Selecting previously unselected package build-essential. 70s Preparing to unpack .../032-build-essential_12.10ubuntu1_amd64.deb ... 70s Unpacking build-essential (12.10ubuntu1) ... 70s Selecting previously unselected package libdebhelper-perl. 70s Preparing to unpack .../033-libdebhelper-perl_13.20ubuntu1_all.deb ... 70s Unpacking libdebhelper-perl (13.20ubuntu1) ... 70s Selecting previously unselected package libtool. 70s Preparing to unpack .../034-libtool_2.4.7-7build1_all.deb ... 70s Unpacking libtool (2.4.7-7build1) ... 70s Selecting previously unselected package dh-autoreconf. 70s Preparing to unpack .../035-dh-autoreconf_20_all.deb ... 70s Unpacking dh-autoreconf (20) ... 70s Selecting previously unselected package libarchive-zip-perl. 70s Preparing to unpack .../036-libarchive-zip-perl_1.68-1_all.deb ... 70s Unpacking libarchive-zip-perl (1.68-1) ... 70s Selecting previously unselected package libfile-stripnondeterminism-perl. 70s Preparing to unpack .../037-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... 70s Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... 70s Selecting previously unselected package dh-strip-nondeterminism. 70s Preparing to unpack .../038-dh-strip-nondeterminism_1.14.0-1_all.deb ... 70s Unpacking dh-strip-nondeterminism (1.14.0-1) ... 71s Selecting previously unselected package debugedit. 71s Preparing to unpack .../039-debugedit_1%3a5.1-1_amd64.deb ... 71s Unpacking debugedit (1:5.1-1) ... 71s Selecting previously unselected package dwz. 71s Preparing to unpack .../040-dwz_0.15-1build6_amd64.deb ... 71s Unpacking dwz (0.15-1build6) ... 71s Selecting previously unselected package gettext. 71s Preparing to unpack .../041-gettext_0.22.5-2_amd64.deb ... 71s Unpacking gettext (0.22.5-2) ... 71s Selecting previously unselected package intltool-debian. 71s Preparing to unpack .../042-intltool-debian_0.35.0+20060710.6_all.deb ... 71s Unpacking intltool-debian (0.35.0+20060710.6) ... 71s Selecting previously unselected package po-debconf. 71s Preparing to unpack .../043-po-debconf_1.0.21+nmu1_all.deb ... 71s Unpacking po-debconf (1.0.21+nmu1) ... 71s Selecting previously unselected package debhelper. 71s Preparing to unpack .../044-debhelper_13.20ubuntu1_all.deb ... 71s Unpacking debhelper (13.20ubuntu1) ... 71s Selecting previously unselected package libalgorithm-backoff-perl. 71s Preparing to unpack .../045-libalgorithm-backoff-perl_0.010-1_all.deb ... 71s Unpacking libalgorithm-backoff-perl (0.010-1) ... 71s Selecting previously unselected package libalgorithm-c3-perl. 71s Preparing to unpack .../046-libalgorithm-c3-perl_0.11-2_all.deb ... 71s Unpacking libalgorithm-c3-perl (0.11-2) ... 71s Selecting previously unselected package libalgorithm-diff-perl. 71s Preparing to unpack .../047-libalgorithm-diff-perl_1.201-1_all.deb ... 71s Unpacking libalgorithm-diff-perl (1.201-1) ... 71s Selecting previously unselected package libappconfig-perl. 71s Preparing to unpack .../048-libappconfig-perl_1.71-2.3_all.deb ... 71s Unpacking libappconfig-perl (1.71-2.3) ... 71s Selecting previously unselected package libb-hooks-op-check-perl:amd64. 71s Preparing to unpack .../049-libb-hooks-op-check-perl_0.22-3build2_amd64.deb ... 71s Unpacking libb-hooks-op-check-perl:amd64 (0.22-3build2) ... 71s Selecting previously unselected package libdynaloader-functions-perl. 71s Preparing to unpack .../050-libdynaloader-functions-perl_0.004-1_all.deb ... 71s Unpacking libdynaloader-functions-perl (0.004-1) ... 71s Selecting previously unselected package libdevel-callchecker-perl:amd64. 71s Preparing to unpack .../051-libdevel-callchecker-perl_0.009-1build1_amd64.deb ... 71s Unpacking libdevel-callchecker-perl:amd64 (0.009-1build1) ... 71s Selecting previously unselected package libparams-classify-perl:amd64. 71s Preparing to unpack .../052-libparams-classify-perl_0.015-2build6_amd64.deb ... 71s Unpacking libparams-classify-perl:amd64 (0.015-2build6) ... 71s Selecting previously unselected package libmodule-runtime-perl. 71s Preparing to unpack .../053-libmodule-runtime-perl_0.016-2_all.deb ... 71s Unpacking libmodule-runtime-perl (0.016-2) ... 71s Selecting previously unselected package libtry-tiny-perl. 71s Preparing to unpack .../054-libtry-tiny-perl_0.31-2_all.deb ... 71s Unpacking libtry-tiny-perl (0.31-2) ... 71s Selecting previously unselected package libmodule-implementation-perl. 71s Preparing to unpack .../055-libmodule-implementation-perl_0.09-2_all.deb ... 71s Unpacking libmodule-implementation-perl (0.09-2) ... 71s Selecting previously unselected package libsub-exporter-progressive-perl. 71s Preparing to unpack .../056-libsub-exporter-progressive-perl_0.001013-3_all.deb ... 71s Unpacking libsub-exporter-progressive-perl (0.001013-3) ... 71s Selecting previously unselected package libvariable-magic-perl. 71s Preparing to unpack .../057-libvariable-magic-perl_0.64-1build1_amd64.deb ... 71s Unpacking libvariable-magic-perl (0.64-1build1) ... 71s Selecting previously unselected package libb-hooks-endofscope-perl. 71s Preparing to unpack .../058-libb-hooks-endofscope-perl_0.28-1_all.deb ... 71s Unpacking libb-hooks-endofscope-perl (0.28-1) ... 71s Selecting previously unselected package libcapture-tiny-perl. 71s Preparing to unpack .../059-libcapture-tiny-perl_0.48-2_all.deb ... 71s Unpacking libcapture-tiny-perl (0.48-2) ... 71s Selecting previously unselected package libclass-c3-perl. 71s Preparing to unpack .../060-libclass-c3-perl_0.35-2_all.deb ... 71s Unpacking libclass-c3-perl (0.35-2) ... 71s Selecting previously unselected package libclass-data-inheritable-perl. 71s Preparing to unpack .../061-libclass-data-inheritable-perl_0.08-3_all.deb ... 71s Unpacking libclass-data-inheritable-perl (0.08-3) ... 71s Selecting previously unselected package libclass-inspector-perl. 71s Preparing to unpack .../062-libclass-inspector-perl_1.36-3_all.deb ... 71s Unpacking libclass-inspector-perl (1.36-3) ... 71s Selecting previously unselected package libclass-method-modifiers-perl. 71s Preparing to unpack .../063-libclass-method-modifiers-perl_2.15-1_all.deb ... 71s Unpacking libclass-method-modifiers-perl (2.15-1) ... 71s Selecting previously unselected package libclass-singleton-perl. 71s Preparing to unpack .../064-libclass-singleton-perl_1.6-2_all.deb ... 71s Unpacking libclass-singleton-perl (1.6-2) ... 71s Selecting previously unselected package libclass-xsaccessor-perl. 71s Preparing to unpack .../065-libclass-xsaccessor-perl_1.19-4build5_amd64.deb ... 71s Unpacking libclass-xsaccessor-perl (1.19-4build5) ... 71s Selecting previously unselected package libclone-choose-perl. 71s Preparing to unpack .../066-libclone-choose-perl_0.010-2_all.deb ... 71s Unpacking libclone-choose-perl (0.010-2) ... 71s Selecting previously unselected package libclone-perl:amd64. 71s Preparing to unpack .../067-libclone-perl_0.47-1_amd64.deb ... 71s Unpacking libclone-perl:amd64 (0.47-1) ... 71s Selecting previously unselected package libimport-into-perl. 71s Preparing to unpack .../068-libimport-into-perl_1.002005-2_all.deb ... 71s Unpacking libimport-into-perl (1.002005-2) ... 71s Selecting previously unselected package librole-tiny-perl. 71s Preparing to unpack .../069-librole-tiny-perl_2.002004-1_all.deb ... 71s Unpacking librole-tiny-perl (2.002004-1) ... 71s Selecting previously unselected package libsub-quote-perl. 71s Preparing to unpack .../070-libsub-quote-perl_2.006008-1ubuntu1_all.deb ... 71s Unpacking libsub-quote-perl (2.006008-1ubuntu1) ... 71s Selecting previously unselected package libmoo-perl. 71s Preparing to unpack .../071-libmoo-perl_2.005005-1_all.deb ... 71s Unpacking libmoo-perl (2.005005-1) ... 71s Selecting previously unselected package libmoox-types-mooselike-perl. 71s Preparing to unpack .../072-libmoox-types-mooselike-perl_0.29-2_all.deb ... 71s Unpacking libmoox-types-mooselike-perl (0.29-2) ... 71s Selecting previously unselected package libconfig-gitlike-perl. 71s Preparing to unpack .../073-libconfig-gitlike-perl_1.18-2_all.deb ... 71s Unpacking libconfig-gitlike-perl (1.18-2) ... 72s Selecting previously unselected package libparams-util-perl. 72s Preparing to unpack .../074-libparams-util-perl_1.102-3build1_amd64.deb ... 72s Unpacking libparams-util-perl (1.102-3build1) ... 72s Selecting previously unselected package libsub-install-perl. 72s Preparing to unpack .../075-libsub-install-perl_0.929-1_all.deb ... 72s Unpacking libsub-install-perl (0.929-1) ... 72s Selecting previously unselected package libdata-optlist-perl. 72s Preparing to unpack .../076-libdata-optlist-perl_0.114-1_all.deb ... 72s Unpacking libdata-optlist-perl (0.114-1) ... 72s Selecting previously unselected package libdbi-perl:amd64. 72s Preparing to unpack .../077-libdbi-perl_1.645-1_amd64.deb ... 72s Unpacking libdbi-perl:amd64 (1.645-1) ... 72s Selecting previously unselected package libpq5:amd64. 72s Preparing to unpack .../078-libpq5_17.0-1_amd64.deb ... 72s Unpacking libpq5:amd64 (17.0-1) ... 72s Selecting previously unselected package libdbd-pg-perl. 72s Preparing to unpack .../079-libdbd-pg-perl_3.18.0-1build4_amd64.deb ... 72s Unpacking libdbd-pg-perl (3.18.0-1build4) ... 72s Selecting previously unselected package libdbd-sqlite3-perl:amd64. 72s Preparing to unpack .../080-libdbd-sqlite3-perl_1.74-1build4_amd64.deb ... 72s Unpacking libdbd-sqlite3-perl:amd64 (1.74-1build4) ... 72s Selecting previously unselected package libdevel-stacktrace-perl. 72s Preparing to unpack .../081-libdevel-stacktrace-perl_2.0500-1_all.deb ... 72s Unpacking libdevel-stacktrace-perl (2.0500-1) ... 72s Selecting previously unselected package libencode-locale-perl. 72s Preparing to unpack .../082-libencode-locale-perl_1.05-3_all.deb ... 72s Unpacking libencode-locale-perl (1.05-3) ... 72s Selecting previously unselected package libsub-exporter-perl. 72s Preparing to unpack .../083-libsub-exporter-perl_0.990-1_all.deb ... 72s Unpacking libsub-exporter-perl (0.990-1) ... 72s Selecting previously unselected package libeval-closure-perl. 72s Preparing to unpack .../084-libeval-closure-perl_0.14-3_all.deb ... 72s Unpacking libeval-closure-perl (0.14-3) ... 72s Selecting previously unselected package libexception-class-perl. 72s Preparing to unpack .../085-libexception-class-perl_1.45-1_all.deb ... 72s Unpacking libexception-class-perl (1.45-1) ... 72s Selecting previously unselected package libexporter-tiny-perl. 72s Preparing to unpack .../086-libexporter-tiny-perl_1.006002-1_all.deb ... 72s Unpacking libexporter-tiny-perl (1.006002-1) ... 72s Selecting previously unselected package libfile-sharedir-perl. 72s Preparing to unpack .../087-libfile-sharedir-perl_1.118-3_all.deb ... 72s Unpacking libfile-sharedir-perl (1.118-3) ... 72s Selecting previously unselected package libfile-which-perl. 72s Preparing to unpack .../088-libfile-which-perl_1.27-2_all.deb ... 72s Unpacking libfile-which-perl (1.27-2) ... 72s Selecting previously unselected package libhash-merge-perl. 72s Preparing to unpack .../089-libhash-merge-perl_0.302-1_all.deb ... 72s Unpacking libhash-merge-perl (0.302-1) ... 72s Selecting previously unselected package libintl-perl. 72s Preparing to unpack .../090-libintl-perl_1.33-1build4_all.deb ... 72s Unpacking libintl-perl (1.33-1build4) ... 72s Selecting previously unselected package libterm-readkey-perl. 72s Preparing to unpack .../091-libterm-readkey-perl_2.38-2build5_amd64.deb ... 72s Unpacking libterm-readkey-perl (2.38-2build5) ... 72s Selecting previously unselected package libio-pager-perl. 72s Preparing to unpack .../092-libio-pager-perl_2.10-1_all.deb ... 72s Unpacking libio-pager-perl (2.10-1) ... 72s Selecting previously unselected package libipc-system-simple-perl. 72s Preparing to unpack .../093-libipc-system-simple-perl_1.30-2_all.deb ... 72s Unpacking libipc-system-simple-perl (1.30-2) ... 72s Selecting previously unselected package liblist-moreutils-xs-perl. 72s Preparing to unpack .../094-liblist-moreutils-xs-perl_0.430-4build1_amd64.deb ... 72s Unpacking liblist-moreutils-xs-perl (0.430-4build1) ... 72s Selecting previously unselected package liblist-moreutils-perl. 72s Preparing to unpack .../095-liblist-moreutils-perl_0.430-2_all.deb ... 72s Unpacking liblist-moreutils-perl (0.430-2) ... 72s Selecting previously unselected package libmodule-build-perl. 72s Preparing to unpack .../096-libmodule-build-perl_0.423400-2_all.deb ... 72s Adding 'diversion of /usr/bin/config_data to /usr/bin/config_data.diverted by libmodule-build-perl' 72s Adding 'diversion of /usr/share/man/man1/config_data.1.gz to /usr/share/man/man1/config_data.diverted.1.gz by libmodule-build-perl' 72s Unpacking libmodule-build-perl (0.423400-2) ... 72s Selecting previously unselected package libmro-compat-perl. 72s Preparing to unpack .../097-libmro-compat-perl_0.15-2_all.deb ... 72s Unpacking libmro-compat-perl (0.15-2) ... 72s Selecting previously unselected package libpackage-stash-perl. 72s Preparing to unpack .../098-libpackage-stash-perl_0.40-1_all.deb ... 72s Unpacking libpackage-stash-perl (0.40-1) ... 72s Selecting previously unselected package libsub-identify-perl. 72s Preparing to unpack .../099-libsub-identify-perl_0.14-3build4_amd64.deb ... 72s Unpacking libsub-identify-perl (0.14-3build4) ... 72s Selecting previously unselected package libsub-name-perl:amd64. 72s Preparing to unpack .../100-libsub-name-perl_0.27-1build4_amd64.deb ... 72s Unpacking libsub-name-perl:amd64 (0.27-1build4) ... 72s Selecting previously unselected package libnamespace-clean-perl. 72s Preparing to unpack .../101-libnamespace-clean-perl_0.27-2_all.deb ... 72s Unpacking libnamespace-clean-perl (0.27-2) ... 72s Selecting previously unselected package libnamespace-autoclean-perl. 72s Preparing to unpack .../102-libnamespace-autoclean-perl_0.29-2_all.deb ... 72s Unpacking libnamespace-autoclean-perl (0.29-2) ... 72s Selecting previously unselected package libparams-validationcompiler-perl. 73s Preparing to unpack .../103-libparams-validationcompiler-perl_0.31-1_all.deb ... 73s Unpacking libparams-validationcompiler-perl (0.31-1) ... 73s Selecting previously unselected package libpath-class-perl. 73s Preparing to unpack .../104-libpath-class-perl_0.37-4_all.deb ... 73s Unpacking libpath-class-perl (0.37-4) ... 73s Selecting previously unselected package libperlio-utf8-strict-perl. 73s Preparing to unpack .../105-libperlio-utf8-strict-perl_0.010-1build4_amd64.deb ... 73s Unpacking libperlio-utf8-strict-perl (0.010-1build4) ... 73s Selecting previously unselected package libpod-parser-perl. 73s Preparing to unpack .../106-libpod-parser-perl_1.67-1_all.deb ... 73s Adding 'diversion of /usr/bin/podselect to /usr/bin/podselect.bundled by libpod-parser-perl' 73s Adding 'diversion of /usr/share/man/man1/podselect.1.gz to /usr/share/man/man1/podselect.bundled.1.gz by libpod-parser-perl' 73s Unpacking libpod-parser-perl (1.67-1) ... 73s Selecting previously unselected package libreturn-multilevel-perl. 73s Preparing to unpack .../107-libreturn-multilevel-perl_0.08-1_all.deb ... 73s Unpacking libreturn-multilevel-perl (0.08-1) ... 73s Selecting previously unselected package libxstring-perl:amd64. 73s Preparing to unpack .../108-libxstring-perl_0.005-2build4_amd64.deb ... 73s Unpacking libxstring-perl:amd64 (0.005-2build4) ... 73s Selecting previously unselected package libspecio-perl. 73s Preparing to unpack .../109-libspecio-perl_0.48-1_all.deb ... 73s Unpacking libspecio-perl (0.48-1) ... 73s Selecting previously unselected package libstring-formatter-perl. 73s Preparing to unpack .../110-libstring-formatter-perl_1.235-1_all.deb ... 73s Unpacking libstring-formatter-perl (1.235-1) ... 73s Selecting previously unselected package libstring-shellquote-perl. 73s Preparing to unpack .../111-libstring-shellquote-perl_1.04-3_all.deb ... 73s Unpacking libstring-shellquote-perl (1.04-3) ... 73s Selecting previously unselected package libsub-uplevel-perl. 73s Preparing to unpack .../112-libsub-uplevel-perl_0.2800-3_all.deb ... 73s Unpacking libsub-uplevel-perl (0.2800-3) ... 73s Selecting previously unselected package libsuper-perl. 73s Preparing to unpack .../113-libsuper-perl_1.20190531-1_all.deb ... 73s Unpacking libsuper-perl (1.20190531-1) ... 73s Selecting previously unselected package libtemplate-perl. 73s Preparing to unpack .../114-libtemplate-perl_2.27-1build11_amd64.deb ... 73s Unpacking libtemplate-perl (2.27-1build11) ... 73s Selecting previously unselected package libtemplate-tiny-perl. 73s Preparing to unpack .../115-libtemplate-tiny-perl_1.14-2_all.deb ... 73s Unpacking libtemplate-tiny-perl (1.14-2) ... 73s Selecting previously unselected package libtest-deep-perl. 73s Preparing to unpack .../116-libtest-deep-perl_1.204-1_all.deb ... 73s Unpacking libtest-deep-perl (1.204-1) ... 73s Selecting previously unselected package libtest-dir-perl. 73s Preparing to unpack .../117-libtest-dir-perl_1.16-3_all.deb ... 73s Unpacking libtest-dir-perl (1.16-3) ... 73s Selecting previously unselected package libtest-exception-perl. 73s Preparing to unpack .../118-libtest-exception-perl_0.43-3_all.deb ... 73s Unpacking libtest-exception-perl (0.43-3) ... 73s Selecting previously unselected package libtest-exit-perl. 73s Preparing to unpack .../119-libtest-exit-perl_0.11-2_all.deb ... 73s Unpacking libtest-exit-perl (0.11-2) ... 73s Selecting previously unselected package libtext-diff-perl. 73s Preparing to unpack .../120-libtext-diff-perl_1.45-2_all.deb ... 73s Unpacking libtext-diff-perl (1.45-2) ... 73s Selecting previously unselected package libtest-file-contents-perl. 73s Preparing to unpack .../121-libtest-file-contents-perl_0.242-1_all.deb ... 73s Unpacking libtest-file-contents-perl (0.242-1) ... 73s Selecting previously unselected package libtest-file-perl. 73s Preparing to unpack .../122-libtest-file-perl_1.993-1_all.deb ... 73s Unpacking libtest-file-perl (1.993-1) ... 73s Selecting previously unselected package libuniversal-can-perl. 73s Preparing to unpack .../123-libuniversal-can-perl_1.20140328-3_all.deb ... 73s Unpacking libuniversal-can-perl (1.20140328-3) ... 73s Selecting previously unselected package libuniversal-isa-perl. 73s Preparing to unpack .../124-libuniversal-isa-perl_1.20171012-3_all.deb ... 73s Unpacking libuniversal-isa-perl (1.20171012-3) ... 73s Selecting previously unselected package libtest-mockobject-perl. 73s Preparing to unpack .../125-libtest-mockobject-perl_1.20200122-4_all.deb ... 73s Unpacking libtest-mockobject-perl (1.20200122-4) ... 73s Selecting previously unselected package libtest-nowarnings-perl. 73s Preparing to unpack .../126-libtest-nowarnings-perl_1.06-2_all.deb ... 73s Unpacking libtest-nowarnings-perl (1.06-2) ... 73s Selecting previously unselected package libtest-warn-perl. 73s Preparing to unpack .../127-libtest-warn-perl_0.37-2_all.deb ... 73s Unpacking libtest-warn-perl (0.37-2) ... 73s Selecting previously unselected package libthrowable-perl. 73s Preparing to unpack .../128-libthrowable-perl_1.001-2_all.deb ... 73s Unpacking libthrowable-perl (1.001-2) ... 73s Selecting previously unselected package libtype-tiny-perl. 73s Preparing to unpack .../129-libtype-tiny-perl_2.004000-1_all.deb ... 73s Unpacking libtype-tiny-perl (2.004000-1) ... 73s Selecting previously unselected package libtype-tiny-xs-perl:amd64. 73s Preparing to unpack .../130-libtype-tiny-xs-perl_0.025-2build1_amd64.deb ... 73s Unpacking libtype-tiny-xs-perl:amd64 (0.025-2build1) ... 73s Selecting previously unselected package liburi-perl. 73s Preparing to unpack .../131-liburi-perl_5.30-1_all.deb ... 73s Unpacking liburi-perl (5.30-1) ... 73s Selecting previously unselected package liburi-nested-perl. 73s Preparing to unpack .../132-liburi-nested-perl_0.10-4_all.deb ... 73s Unpacking liburi-nested-perl (0.10-4) ... 73s Selecting previously unselected package liburi-db-perl. 73s Preparing to unpack .../133-liburi-db-perl_0.22-1_all.deb ... 73s Unpacking liburi-db-perl (0.22-1) ... 73s Selecting previously unselected package postgresql-client-common. 73s Preparing to unpack .../134-postgresql-client-common_262_all.deb ... 73s Unpacking postgresql-client-common (262) ... 73s Selecting previously unselected package postgresql-client-16. 73s Preparing to unpack .../135-postgresql-client-16_16.4-3_amd64.deb ... 73s Unpacking postgresql-client-16 (16.4-3) ... 74s Selecting previously unselected package postgresql-client. 74s Preparing to unpack .../136-postgresql-client_16+262_all.deb ... 74s Unpacking postgresql-client (16+262) ... 74s Selecting previously unselected package libdatetime-locale-perl. 74s Preparing to unpack .../137-libdatetime-locale-perl_1%3a1.41-1_all.deb ... 74s Unpacking libdatetime-locale-perl (1:1.41-1) ... 74s Selecting previously unselected package libdatetime-timezone-perl. 74s Preparing to unpack .../138-libdatetime-timezone-perl_1%3a2.62-1+2024a_all.deb ... 74s Unpacking libdatetime-timezone-perl (1:2.62-1+2024a) ... 74s Selecting previously unselected package libdatetime-perl. 74s Preparing to unpack .../139-libdatetime-perl_2%3a1.65-1build3_amd64.deb ... 74s Unpacking libdatetime-perl (2:1.65-1build3) ... 74s Selecting previously unselected package libipc-run3-perl. 74s Preparing to unpack .../140-libipc-run3-perl_0.049-1_all.deb ... 74s Unpacking libipc-run3-perl (0.049-1) ... 74s Selecting previously unselected package sqlite3. 74s Preparing to unpack .../141-sqlite3_3.46.1-1_amd64.deb ... 74s Unpacking sqlite3 (3.46.1-1) ... 74s Selecting previously unselected package sqitch. 74s Preparing to unpack .../142-sqitch_1.4.1-1_all.deb ... 74s Unpacking sqitch (1.4.1-1) ... 74s Selecting previously unselected package libtest-mockmodule-perl. 74s Preparing to unpack .../143-libtest-mockmodule-perl_0.178.0-1_all.deb ... 74s Unpacking libtest-mockmodule-perl (0.178.0-1) ... 74s Selecting previously unselected package pkg-perl-autopkgtest. 74s Preparing to unpack .../144-pkg-perl-autopkgtest_0.79_all.deb ... 74s Unpacking pkg-perl-autopkgtest (0.79) ... 74s Selecting previously unselected package autopkgtest-satdep. 74s Preparing to unpack .../145-1-autopkgtest-satdep.deb ... 74s Unpacking autopkgtest-satdep (0) ... 74s Setting up postgresql-client-common (262) ... 74s Setting up libfile-which-perl (1.27-2) ... 74s Setting up libclass-inspector-perl (1.36-3) ... 74s Setting up libdynaloader-functions-perl (0.004-1) ... 74s Setting up libtest-deep-perl (1.204-1) ... 74s Setting up libclass-method-modifiers-perl (2.15-1) ... 74s Setting up libpath-class-perl (0.37-4) ... 74s Setting up libclone-perl:amd64 (0.47-1) ... 74s Setting up libalgorithm-diff-perl (1.201-1) ... 74s Setting up libarchive-zip-perl (1.68-1) ... 74s Setting up libsub-identify-perl (0.14-3build4) ... 74s Setting up libtest-file-perl (1.993-1) ... 74s Setting up libdebhelper-perl (13.20ubuntu1) ... 74s Setting up libalgorithm-backoff-perl (0.010-1) ... 74s Setting up libtry-tiny-perl (0.31-2) ... 74s Setting up libpq5:amd64 (17.0-1) ... 74s Setting up m4 (1.4.19-4build1) ... 74s Setting up libclone-choose-perl (0.010-2) ... 74s Setting up libclass-singleton-perl (1.6-2) ... 74s Setting up libencode-locale-perl (1.05-3) ... 74s Setting up libxstring-perl:amd64 (0.005-2build4) ... 74s Setting up libgomp1:amd64 (14.2.0-7ubuntu1) ... 74s Setting up libtest-nowarnings-perl (1.06-2) ... 74s Setting up libstring-shellquote-perl (1.04-3) ... 74s Setting up libsub-install-perl (0.929-1) ... 74s Setting up libmodule-build-perl (0.423400-2) ... 74s Setting up libuniversal-isa-perl (1.20171012-3) ... 74s Setting up autotools-dev (20220109.1) ... 74s Setting up libclass-data-inheritable-perl (0.08-3) ... 74s Setting up libalgorithm-c3-perl (0.11-2) ... 74s Setting up libtext-diff-perl (1.45-2) ... 74s Setting up libipc-system-simple-perl (1.30-2) ... 74s Setting up libperlio-utf8-strict-perl (0.010-1build4) ... 74s Setting up libquadmath0:amd64 (14.2.0-7ubuntu1) ... 74s Setting up libmpc3:amd64 (1.3.1-1build2) ... 74s Setting up libvariable-magic-perl (0.64-1build1) ... 74s Setting up libpod-parser-perl (1.67-1) ... 74s Setting up autopoint (0.22.5-2) ... 74s Setting up libb-hooks-op-check-perl:amd64 (0.22-3build2) ... 74s Setting up liblist-moreutils-xs-perl (0.430-4build1) ... 74s Setting up libparams-util-perl (1.102-3build1) ... 74s Setting up autoconf (2.72-3) ... 74s Setting up libsub-exporter-progressive-perl (0.001013-3) ... 74s Setting up libcapture-tiny-perl (0.48-2) ... 74s Setting up libreturn-multilevel-perl (0.08-1) ... 74s Setting up libubsan1:amd64 (14.2.0-7ubuntu1) ... 74s Setting up libsub-name-perl:amd64 (0.27-1build4) ... 74s Setting up libtype-tiny-xs-perl:amd64 (0.025-2build1) ... 74s Setting up dwz (0.15-1build6) ... 74s Setting up libhwasan0:amd64 (14.2.0-7ubuntu1) ... 74s Setting up libasan8:amd64 (14.2.0-7ubuntu1) ... 74s Setting up librole-tiny-perl (2.002004-1) ... 74s Setting up libintl-perl (1.33-1build4) ... 74s Setting up debugedit (1:5.1-1) ... 74s Setting up libipc-run3-perl (0.049-1) ... 74s Setting up libfile-sharedir-perl (1.118-3) ... 74s Setting up libsub-uplevel-perl (0.2800-3) ... 74s Setting up libsub-quote-perl (2.006008-1ubuntu1) ... 74s Setting up libdevel-stacktrace-perl (2.0500-1) ... 74s Setting up libclass-xsaccessor-perl (1.19-4build5) ... 74s Setting up libtemplate-tiny-perl (1.14-2) ... 74s Setting up libtsan2:amd64 (14.2.0-7ubuntu1) ... 74s Setting up libexporter-tiny-perl (1.006002-1) ... 74s Setting up libuniversal-can-perl (1.20140328-3) ... 74s Setting up libterm-readkey-perl (2.38-2build5) ... 74s Setting up libisl23:amd64 (0.27-1) ... 74s Setting up libtest-dir-perl (1.16-3) ... 74s Setting up libcc1-0:amd64 (14.2.0-7ubuntu1) ... 74s Setting up liburi-perl (5.30-1) ... 74s Setting up sqlite3 (3.46.1-1) ... 74s Setting up libappconfig-perl (1.71-2.3) ... 74s Setting up libdbi-perl:amd64 (1.645-1) ... 74s Setting up liblsan0:amd64 (14.2.0-7ubuntu1) ... 74s Setting up dctrl-tools (2.24-3build3) ... 74s Setting up libitm1:amd64 (14.2.0-7ubuntu1) ... 74s Setting up autodep8 (0.28+nmu1ubuntu1) ... 74s Setting up automake (1:1.16.5-1.3ubuntu1) ... 74s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 74s Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... 74s Setting up libtest-mockobject-perl (1.20200122-4) ... 74s Setting up libio-pager-perl (2.10-1) ... 74s Setting up libsuper-perl (1.20190531-1) ... 74s Setting up gettext (0.22.5-2) ... 74s Setting up libtest-mockmodule-perl (0.178.0-1) ... 74s Setting up libtest-exit-perl (0.11-2) ... 74s Setting up liblist-moreutils-perl (0.430-2) ... 74s Setting up libtest-warn-perl (0.37-2) ... 74s Setting up postgresql-client-16 (16.4-3) ... 75s update-alternatives: using /usr/share/postgresql/16/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 75s Setting up libhash-merge-perl (0.302-1) ... 75s Setting up libtype-tiny-perl (2.004000-1) ... 75s Setting up libtest-file-contents-perl (0.242-1) ... 75s Setting up liburi-nested-perl (0.10-4) ... 75s Setting up libdbd-pg-perl (3.18.0-1build4) ... 75s Setting up libexception-class-perl (1.45-1) ... 75s Setting up libclass-c3-perl (0.35-2) ... 75s Setting up libdevel-callchecker-perl:amd64 (0.009-1build1) ... 75s Setting up intltool-debian (0.35.0+20060710.6) ... 75s Setting up libtest-exception-perl (0.43-3) ... 75s Setting up liburi-db-perl (0.22-1) ... 75s Setting up libdata-optlist-perl (0.114-1) ... 75s Setting up cpp-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 75s Setting up pkg-perl-autopkgtest (0.79) ... 75s Setting up libtemplate-perl (2.27-1build11) ... 75s Setting up cpp-14 (14.2.0-7ubuntu1) ... 75s Setting up dh-strip-nondeterminism (1.14.0-1) ... 75s Setting up libdbd-sqlite3-perl:amd64 (1.74-1build4) ... 75s Setting up libmro-compat-perl (0.15-2) ... 75s Setting up libgcc-14-dev:amd64 (14.2.0-7ubuntu1) ... 75s Setting up libstdc++-14-dev:amd64 (14.2.0-7ubuntu1) ... 75s Setting up libsub-exporter-perl (0.990-1) ... 75s Setting up libeval-closure-perl (0.14-3) ... 75s Setting up cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 75s Setting up libparams-validationcompiler-perl (0.31-1) ... 75s Setting up postgresql-client (16+262) ... 75s Setting up po-debconf (1.0.21+nmu1) ... 75s Setting up libparams-classify-perl:amd64 (0.015-2build6) ... 75s Setting up libmodule-runtime-perl (0.016-2) ... 75s Setting up libstring-formatter-perl (1.235-1) ... 75s Setting up cpp (4:14.1.0-2ubuntu1) ... 75s Setting up gcc-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 75s Setting up gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 75s Setting up libmodule-implementation-perl (0.09-2) ... 75s Setting up libpackage-stash-perl (0.40-1) ... 75s Setting up libimport-into-perl (1.002005-2) ... 75s Setting up libmoo-perl (2.005005-1) ... 75s Setting up gcc-14 (14.2.0-7ubuntu1) ... 75s Setting up libspecio-perl (0.48-1) ... 75s Setting up g++-14-x86-64-linux-gnu (14.2.0-7ubuntu1) ... 75s Setting up g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 75s Setting up g++-14 (14.2.0-7ubuntu1) ... 75s Setting up libmoox-types-mooselike-perl (0.29-2) ... 75s Setting up libb-hooks-endofscope-perl (0.28-1) ... 75s Setting up libconfig-gitlike-perl (1.18-2) ... 75s Setting up libthrowable-perl (1.001-2) ... 75s Setting up libtool (2.4.7-7build1) ... 75s Setting up gcc (4:14.1.0-2ubuntu1) ... 75s Setting up dh-autoreconf (20) ... 75s Setting up libnamespace-clean-perl (0.27-2) ... 75s Setting up g++ (4:14.1.0-2ubuntu1) ... 75s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 75s Setting up build-essential (12.10ubuntu1) ... 75s Setting up libnamespace-autoclean-perl (0.29-2) ... 75s Setting up libdatetime-locale-perl (1:1.41-1) ... 75s Setting up libdatetime-timezone-perl (1:2.62-1+2024a) ... 75s Setting up debhelper (13.20ubuntu1) ... 75s Setting up libdatetime-perl (2:1.65-1build3) ... 75s Setting up sqitch (1.4.1-1) ... 75s Setting up autopkgtest-satdep (0) ... 75s Processing triggers for man-db (2.12.1-3) ... 77s Processing triggers for install-info (7.1.1-1) ... 77s Processing triggers for libc-bin (2.40-1ubuntu3) ... 81s (Reading database ... 83867 files and directories currently installed.) 81s Removing autopkgtest-satdep (0) ... 81s autopkgtest [17:01:58]: test autodep8-perl-build-deps: /usr/share/pkg-perl-autopkgtest/runner build-deps 81s autopkgtest [17:01:58]: test autodep8-perl-build-deps: [----------------------- 82s t/add.t ............. 82s 1..243 82s ok 1 - Load a sqitch sqitch object 82s ok 2 - 'add command' isa 'App::Sqitch::Command::add' 82s ok 3 - App::Sqitch::Command::add->can(...) 82s ok 4 - App::Sqitch::Command::add does ContextCommand 82s ok 5 - Options should be set up 82s ok 6 - Should parse options 82s ok 7 - Options should not conflict with core options 82s ok 8 - Should have default configuration with no config or opts 82s ok 9 - Should have get requires and conflicts options 82s ok 10 - Should set up template directory option 82s ok 11 - Should set up change name option 82s ok 12 - Should die if --template-directory does not exist 82s ok 13 - Missing directory ident should be "add" 82s ok 14 - Missing directory error message should be correct 82s ok 15 - Should die if --template-directory does is not a dir 82s ok 16 - In alid directory ident should be "add" 82s ok 17 - Invalid directory error message should be correct 82s ok 18 - Should set up template name option 82s ok 19 - Should have get template options 82s ok 20 - Variables should by default not be loaded from config 82s ok 21 - --set should be merged with config variables 82s ok 22 - --set should be override config variables 82s ok 23 - Requires should be an arrayref 82s ok 24 - Conflicts should be an arrayref 82s ok 25 - Notes should be an arrayref 82s ok 26 - Varibles should be a hashref 82s ok 27 - Default dir should be undef 82s ok 28 - Default temlate_name should be undef 82s ok 29 - Default with_scripts should be all true 82s ok 30 - Default templates should be empty 82s ok 31 - '_check_script' isa 'CODE' 82s ok 32 - _check_script should be okay with script 82s ok 33 - _check_script should die on nonexistent file 82s ok 34 - Nonexistent file ident should be "add" 82s ok 35 - Nonexistent file error message should be correct 82s ok 36 - _check_script should die on directory 82s ok 37 - Directory error ident should be "add" 82s ok 38 - Directory error message should be correct 82s ok 39 - Load another sqitch sqitch object 82s ok 40 - Create add with template config 82s ok 41 - Should load the config templates 82s ok 42 - Add object with template directory 82s ok 43 - Template name should be undef 82s ok 44 - Should find all pg templates in directory 82s ok 45 - Should find all sqlite templates in directory 82s ok 46 - Add object with template name 82s ok 47 - Should find all templates in user directory 82s ok 48 - Add object with another template name 82s ok 49 - Should find all templates in systsem directory 82s ok 50 - Add object with temporary template directory 82s ok 51 - Template dir files should override others 82s ok 52 - Add object with configured templates 82s ok 53 - Template dir files should override others 82s ok 54 - Add object requiring deploy template 82s ok 55 - Should get error for missing deploy template 82s ok 56 - Missing deploy template ident should be "add" 82s ok 57 - Missing deploy template message should be correct 82s ok 58 - Add object requiring revert template 82s ok 59 - Should get error for missing revert template 82s ok 60 - Missing revert template ident should be "add" 82s ok 61 - Missing revert template message should be correct 82s ok 62 - Add object requiring verify template 82s ok 63 - Should get error for missing verify template 82s ok 64 - Missing verify template ident should be "add" 82s ok 65 - Missing verify template message should be correct 82s ok 66 - _slurp() should load a reference to file contents 82s ok 67 - test-add/sqitch_change_test.sql does not exist 82s ok 68 - Create add command 82s ok 69 - Write out a script 82s ok 70 - test-add/sqitch_change_test.sql exists 82s ok 71 - The template should have been evaluated 82s ok 72 - Info should show $out created 82s ok 73 - Create add cmd with requires and conflicts 82s ok 74 - Write out a script with requires and conflicts 82s ok 75 - Info should show $out created 82s ok 76 - The template should have been evaluated with requires and conflicts 82s ok 77 - Info should show $out created 82s ok 78 - Should have warned about double extension 82s ok 79 - test-add/sqitch_change_test.sql does not exist 82s ok 80 - Create add command 82s ok 81 - Write out a script 82s ok 82 - test-add/sqitch_change_test.sql exists 82s ok 83 - The template should have been evaluated 82s ok 84 - Info should show $out created 82s ok 85 - Create add cmd with requires and conflicts 82s ok 86 - Write out a script with requires and conflicts 82s ok 87 - Info should show $out created 82s ok 88 - The template should have been evaluated with requires and conflicts 82s ok 89 - Info should show $out created 82s ok 90 - Should have warned about double extension 82s ok 91 - Create add command 82s ok 92 - Should get an exception on TT syntax error 82s ok 93 - TT exception ident should be "add" 82s ok 94 - TT exception message should include the original error message 82s ok 95 - Create another add with template_directory 82s ok 96 - Should not have "widgets_table" in plan 82s ok 97 - dir test-add/deploy does not exist 82s ok 98 - dir test-add/revert does not exist 82s ok 99 - dir test-add/verify does not exist 82s ok 100 - Add change "widgets_table" 82s ok 101 - 'Added change' isa 'App::Sqitch::Plan::Change' 82s ok 102 - Change name should be set 82s ok 103 - It should have no requires 82s ok 104 - It should have no conflicts 82s ok 105 - It should have prompted for a note 82s ok 106 - test-add/deploy/widgets_table.sql exists 82s ok 107 - test-add/revert/widgets_table.sql exists 82s ok 108 - test-add/verify/widgets_table.sql exists 82s ok 109 - Deploy script should look right 82s ok 110 - Revert script should look right 82s ok 111 - Verify script should look right 82s ok 112 - Info should have reported file creation 82s ok 113 - Create another add with template_directory and no verify script 82s ok 114 - test-add/deploy/foo_table.sql exists 82s ok 115 - test-add/revert/foo_table.sql does not exist 82s ok 116 - test-add/ferify/foo_table.sql does not exist 82s ok 117 - Should not have "foo_table" in plan 82s ok 118 - Add change "foo_table" 82s ok 119 - test-add/deploy/foo_table.sql exists 82s ok 120 - test-add/revert/foo_table.sql exists 82s ok 121 - test-add/ferify/foo_table.sql does not exist 82s ok 122 - '"foo_table" change' isa 'App::Sqitch::Plan::Change' 82s ok 123 - It should have prompted for a note 82s ok 124 - Change name should be set to "foo_table" 82s ok 125 - It should have requires 82s ok 126 - It should have conflicts 82s ok 127 - It should have a comment 82s ok 128 - Info should report skipping file and include dependencies 82s ok 129 - Should get an error on unkonwn argument 82s ok 130 - Unkown argument error ident should be "add" 82s ok 131 - Unknown argument error message should be correct 82s ok 132 - Should get an error for conflict with target name 82s ok 133 - Conflicting target error ident should be "add" 82s ok 134 - Conflicting target error message should be correct 82s ok 135 - No name arg or option should yield usage 82s ok 136 - No args should be passed to usage 82s ok 137 - No name arg or option should yield usage 82s ok 138 - No args should be passed to usage 82s ok 139 - No name arg or option should yield usage 82s ok 140 - No args should be passed to usage 82s ok 141 - Create another add with open_editor 82s ok 142 - Should not have "open_editor" in plan 82s ok 143 - Add change "open_editor" 82s ok 144 - 'Added change' isa 'App::Sqitch::Plan::Change' 82s ok 145 - Change name should be set 82s ok 146 - It should have prompted to edit sql files 82s ok 147 - test-add/deploy/open_editor.sql exists 82s ok 148 - test-add/revert/open_editor.sql exists 82s ok 149 - test-add/verify/open_editor.sql exists 82s ok 150 - Deploy script should look right 82s ok 151 - Revert script should look right 82s ok 152 - Verify script should look right 82s ok 153 - Info should have reported file creation 82s ok 154 - Create another add with custom script and no verify 82s ok 155 - Add change "custom_script" 82s ok 156 - 'Added change' isa 'App::Sqitch::Plan::Change' 82s ok 157 - Change name should be set 82s ok 158 - It should have no requires 82s ok 159 - It should have no conflicts 82s ok 160 - It should have prompted for a note 82s ok 161 - test-add/deploy/custom_script.sql exists 82s ok 162 - test-add/revert/custom_script.sql exists 82s ok 163 - test-add/whatev/custom_script.sql exists 82s ok 164 - test-add/verify/custom_script.sql does not exist 82s ok 165 - Deploy script should look right 82s ok 166 - Revert script should look right 82s ok 167 - Whatev script should look right 82s ok 168 - Whatev script should be based on the MySQL verify script 82s ok 169 - Info should have reported file creation 82s ok 170 - 'Added change in reloaded plan' isa 'App::Sqitch::Plan::Change' 82s ok 171 - Create another add with custom multiplan config 82s ok 172 - Should have three targets 82s ok 173 - Add change "widgets" to all plans 82s ok 174 - Should have "widgets" in pg plan 82s ok 175 - Should have "widgets" in sqlite plan 82s ok 176 - Should have "widgets" in mysql plan 82s ok 177 - pg/deploy/widgets.sql exists 82s ok 178 - pg/revert/widgets.sql exists 82s ok 179 - pg/verify/widgets.sql exists 82s ok 180 - sqlite/deploy/widgets.sql exists 82s ok 181 - sqlite/revert/widgets.sql exists 82s ok 182 - sqlite/verify/widgets.sql exists 82s ok 183 - mysql/deploy/widgets.sql exists 82s ok 184 - mysql/revert/widgets.sql exists 82s ok 185 - mysql/verify/widgets.sql exists 82s ok 186 - Info should have reported all script creations and plan updates 82s ok 187 - Should get an error for --all and a target arg 82s ok 188 - Mixed arguments error ident should be "add" 82s ok 189 - Mixed arguments error message should be correct 82s ok 190 - Create yet another add with custom multiplan config 82s ok 191 - Add change "choc" to the sqlite plan 82s ok 192 - Should still have three targets 82s ok 193 - Should not have "choc" in the pg plan 82s ok 194 - Should not have "choc" in the mysql plan 82s ok 195 - Should have "choc" in the sqlite plan 82s ok 196 - sqlite/deploy/choc.sql exists 82s ok 197 - sqlite/revert/choc.sql exists 82s ok 198 - sqlite/verify/choc.sql exists 82s ok 199 - pg/deploy/choc.sql does not exist 82s ok 200 - pg/revert/choc.sql does not exist 82s ok 201 - pg/verify/choc.sql does not exist 82s ok 202 - mysql/deploy/choc.sql does not exist 82s ok 203 - mysql/revert/choc.sql does not exist 82s ok 204 - mysql/verify/choc.sql does not exist 82s ok 205 - Info should have reported sqlite choc script creations and plan updates 82s ok 206 - Create another add with single plan, multi-target config 82s ok 207 - Should have two targets 82s ok 208 - Targets should use the same plan file 82s ok 209 - Add change "widgets" to all plans 82s ok 210 - Should have "widgets" in the plan 82s ok 211 - pg/deploy/widgets.sql exists 82s ok 212 - pg/revert/widgets.sql exists 82s ok 213 - pg/verify/widgets.sql exists 82s ok 214 - sqlite/deploy/widgets.sql exists 82s ok 215 - sqlite/revert/widgets.sql exists 82s ok 216 - sqlite/verify/widgets.sql exists 82s ok 217 - Should have the proper files listed in the note promt 82s ok 218 - Info should have reported all script creations and one plan update 82s ok 219 - Create another add with two targets, one top dir 82s ok 220 - Should have two targets 82s ok 221 - First target plan should be in pg.plan 82s ok 222 - Second target plan should be in sqlite.plan 82s ok 223 - Add change "widgets" to all plans 82s ok 224 - Should have "widgets" in pg plan 82s ok 225 - Should have "widgets" in sqlite plan 82s ok 226 - deploy/widgets.sql exists 82s ok 227 - revert/widgets.sql exists 82s ok 228 - verify/widgets.sql exists 82s ok 229 - Should have the proper files listed in the note promt 82s ok 230 - Info should have script creations and skips 82s ok 231 - App::Sqitch::Command::add->can(...) 82s ok 232 - Create a App::Sqitch::Command::add object again 82s ok 233 - Base _parse_opts should return the script config 82s ok 234 - _parse_opts() hould use options spec 82s ok 235 - _parse_opts() should parse options spec 82s ok 236 - Args array should be cleared of options 82s ok 237 - _parse_opts() should parse --set options 82s ok 238 - Args array should be cleared of options 82s ok 239 - _parse_opts() should parse --set options with repeting key 82s ok 240 - Args array should be cleared of options 82s ok 241 - _parse_opts() should parse --with, --without, and --user 82s ok 242 - Args array should be cleared of options 82s ok 243 - no warnings 82s ok 82s t/base.t ............ 82s 1..208 82s ok 1 - use App::Sqitch; 82s ok 2 - App::Sqitch->can(...) 82s ok 3 - 'A configured object' isa 'App::Sqitch' 82s ok 4 - Configured verbosity should override default 82s ok 5 - 'A configured object' isa 'App::Sqitch' 82s ok 6 - Verbosity option should override configuration 82s ok 7 - 'A new object' isa 'App::Sqitch' 82s ok 8 - Default verbosity should be 1 82s ok 9 - Should have default sysuser from system 82s ok 10 - Default user_name should be set from system 82s ok 11 - Default user_email should be set from system 82s ok 12 - 'Another new object' isa 'App::Sqitch' 82s ok 13 - SQITCH_ORIG_SYSUER should override system username 82s ok 14 - SQITCH_ORIG_FULLNAME should override system user full name 82s ok 15 - SQITCH_ORIG_EMAIL should override system-derived email 82s ok 16 - 'Another new object' isa 'App::Sqitch' 82s ok 17 - SQITCH_FULLNAME should override originating host user full name 82s ok 18 - SQITCH_EMAIL should override originating host email 82s ok 19 - Should get 0 from go() 82s ok 20 - 'Command' isa 'App::Sqitch::Command::help' 82s ok 21 - Extra args should be passed to execute 82s ok 22 - An object of class 'App::Sqitch' isa 'App::Sqitch' 82s ok 23 - Get the Sqitch config 82s ok 24 - Should have local config overriding user 82s ok 25 - Should fall back on user config 82s ok 26 - Should have read user name from configuration 82s ok 27 - Should have read user email from configuration 82s ok 28 - Should have no options 82s ok 29 - Should get 0 from go() again 82s ok 30 - An object of class 'App::Sqitch' isa 'App::Sqitch' 82s ok 31 - Should have read user name from environment 82s ok 32 - Should have read user email from environment 82s ok 33 - Go should return 2 on Sqitch exception 82s ok 34 - The error should have been vented 82s ok 35 - Should have no info output 82s ok 36 - Should have no emitted output 82s ok 37 - The stack trace should have been sent to trace 82s ok 38 - Go should return exitval on another exception 82s ok 39 - Both the message and the trace should have been vented 82s ok 40 - Should still have no info output 82s ok 41 - Should still have no emitted output 82s ok 42 - Nothing should have been traced 82s ok 43 - Go should return exitval on non-fatal exception 82s ok 44 - Should not have vented 82s ok 45 - Should have sent the message to message 82s ok 46 - Should still have no emitted output 82s ok 47 - Nothing should have been traced 82s ok 48 - Go should return 2 on a third Sqitch exception 82s ok 49 - Should have one thing vented 82s ok 50 - And it should include our message 82s ok 51 - Should again have no info output 82s ok 52 - Should still have no emitted output 82s ok 53 - Nothing should have been traced 82s ok 54 - editor should use $EDITOR 82s ok 55 - editor should prefer $VISUAL over $EDITOR 82s ok 56 - editor should prefer core.editor over $VISUAL 82s ok 57 - editor should prefer $SQITCH_EDITOR over $VISUAL 82s ok 58 - editor should use use parameter regardless of environment 82s ok 59 - editor fall back on vi when not Windows 82s ok 60 - pager program should be picked up from PAGER when SQITCH_PAGER and core.pager are not set 82s ok 61 - 'morez pager' isa 'IO::Handle' 82s ok 62 - Should be able to page 82s ok 63 - Should have paged with say() 82s ok 64 - Should be able to page literal 82s ok 65 - Should have paged with print() 82s ok 66 - SQITCH_PAGER should take precedence over PAGER 82s ok 67 - 'less -myway' isa 'IO::Handle' 82s ok 68 - `core.pager' setting should take precedence over PAGER when SQITCH_PAGER is not set. 82s ok 69 - 'morezz pager' isa 'IO::Handle' 82s ok 70 - SQITCH_PAGER should take precedence over both PAGER and the `core.pager' setting. 82s ok 71 - 'less -rules' isa 'IO::Handle' 82s ok 72 - trace should work 82s ok 73 - Should get no trace output for verbosity 2 82s ok 74 - trace_literal should work 82s ok 75 - Should get no trace_literal output for verbosity 2 82s ok 76 - debug should work 82s ok 77 - Should get no debug output for verbosity 1 82s ok 78 - debug_literal should work 82s ok 79 - Should get no debug_literal output for verbosity 1 82s ok 80 - info should work 82s ok 81 - Should get no info output for verbosity 0 82s ok 82 - info_literal should work 82s ok 83 - Should get no info_literal output for verbosity 0 82s ok 84 - comment should work 82s ok 85 - comment should work with verbosity 0 82s ok 86 - comment_literal should work 82s ok 87 - comment_literal should work with verbosity 0 82s ok 88 - emit should work 82s ok 89 - emit should work even with verbosity 0 82s ok 90 - emit_literal should work 82s ok 91 - emit_literal should work even with verbosity 0 82s ok 92 - warn should work 82s ok 93 - warn_literal should work 82s ok 94 - vent should work 82s ok 95 - vent_literal should work 82s ok 96 - App::Sqitch->can('run') 82s ok 97 - Should get success back from run echo 82s ok 98 - The echo script should have run 82s ok 99 - Nothing should have gone to STDERR 82s ok 100 - run die should, well, die 82s ok 101 - The die script should have its STDOUT ummolested 82s ok 102 - The die script should have its STDERR unmolested 82s ok 103 - App::Sqitch->can('shell') 82s ok 104 - Should get success back from shell echo 82s ok 105 - The echo script should have shell 82s ok 106 - Nothing should have gone to STDERR 82s ok 107 - shell die should, well, die 82s ok 108 - The die script should have its STDOUT ummolested 82s ok 109 - The die script should have its STDERR unmolested 82s ok 110 - quote_shell should work 82s ok 111 - App::Sqitch->can('capture') 82s ok 112 - The echo script output should have been returned 82s ok 113 - Should get an error if the command errors out 82s ok 114 - The die script STDERR should have passed through 82s ok 115 - App::Sqitch->can('probe') 82s ok 116 - Should have just chomped first line of output 82s ok 117 - App::Sqitch->can('spool') 82s ok 118 - Spool to read.pl 82s ok 119 - Data should have been sent to STDOUT by read.pl 82s ok 120 - Spool to read.pl 82s ok 121 - All data should have been sent to STDOUT by read.pl 82s ok 122 - Should get error when die.pl dies 82s ok 123 - Error ident should be "io" 82s ok 124 - The error message should be one of the I/O messages 82s ok 125 - The die script STDERR should have passed through 82s ok 126 - Should get an error for a bad command 82s ok 127 - Error ident should be "io" 82s ok 128 - Error message should be about inability to exec 82s ok 129 - Should get error for no prompt message 82s ok 130 - No prompt ident should be "DEV" 82s ok 131 - No prompt error message should be correct 82s ok 132 - Prompt should return input 82s ok 133 - Prompt should prompt 82s ok 134 - Prompt with default should return input 82s ok 135 - Prompt should prompt with default 82s ok 136 - Prompt with undef default should return input 82s ok 137 - Prompt should prompt with bracket for undef default 82s ok 138 - Prompt should return default for undef input 82s ok 139 - Prompt should show default when undef input 82s ok 140 - Prompt should return input for empty input 82s ok 141 - Prompt should show default when empty input 82s ok 142 - Should get error when uattended and no default 82s ok 143 - Unattended error ident should be "io" 82s ok 144 - Unattended error message should be correct 82s ok 145 - Prompt should return input 82s ok 146 - Prompt should show default as selected when unattended 82s ok 147 - Should get error for no ask_yes_no message 82s ok 148 - No ask_yes_no ident should be "DEV" 82s ok 149 - No ask_yes_no error message should be correct 82s ok 150 - ask_yes_no() should return true for "Yes" input 82s ok 151 - ask_yes_no() should prompt for "Yes" 82s ok 152 - ask_yes_no() should return true for "yes" input 82s ok 153 - ask_yes_no() should prompt for "yes" 82s ok 154 - ask_yes_no() should return true for "YES" input 82s ok 155 - ask_yes_no() should prompt for "YES" 82s ok 156 - ask_yes_no() should return true for "y" input 82s ok 157 - ask_yes_no() should prompt for "y" 82s ok 158 - ask_yes_no() should return true for "Ye" input 82s ok 159 - ask_yes_no() should prompt for "Ye" 82s ok 160 - ask_yes_no() should return false for "No" input 82s ok 161 - ask_yes_no() should prompt for "No" 82s ok 162 - ask_yes_no() should return false for "no" input 82s ok 163 - ask_yes_no() should prompt for "no" 82s ok 164 - ask_yes_no() should return false for "NO" input 82s ok 165 - ask_yes_no() should prompt for "NO" 82s ok 166 - ask_yes_no() should return false for "n" input 82s ok 167 - ask_yes_no() should prompt for "n" 82s ok 168 - ask_yes_no() should return false for "No" input 82s ok 169 - ask_yes_no() should prompt for "No" 82s ok 170 - ask_yes_no() should return true for true default 82s ok 171 - ask_yes_no() should prompt and show default "Yes" 82s ok 172 - ask_yes_no() should return false for false default 82s ok 173 - ask_yes_no() should prompt and show default "No" 82s ok 174 - Should get error for bad answers 82s ok 175 - Bad answers ident should be "IO" 82s ok 176 - Bad answers message should be correct 82s ok 177 - Should get error for no ask_y_n message 82s ok 178 - No ask_y_n ident should be "DEV" 82s ok 179 - No ask_y_n error message should be correct 82s ok 180 - Should get a deprecation warning from ask_y_n 82s ok 181 - Should get error for invalid ask_y_n default 82s ok 182 - Invalid ask_y_n default ident should be "DEV" 82s ok 183 - Invalid ask_y_n default error message should be correct 82s ok 184 - ask_y_n should return true for "y" input 82s ok 185 - ask_y_n() should prompt 82s ok 186 - ask_y_n should return false for "n" input 82s ok 187 - ask_y_n() should prompt for no 82s ok 188 - ask_y_n should return false for "N" input 82s ok 189 - ask_y_n() should prompt for no 82s ok 190 - ask_y_n should return true for "YE" input 82s ok 191 - ask_y_n() should prompt for yes 82s ok 192 - ask_y_n should return true default "Yes" 82s ok 193 - ask_y_n() should prompt and show default "Yes" 82s ok 194 - ask_y_n should return false default "No" 82s ok 195 - ask_y_n() should prompt and show default "No" 82s ok 196 - Should get error for bad answers 82s ok 197 - Bad answers ident should be "IO" 82s ok 198 - Bad answers message should be correct 82s ok 199 - _readline should work 82s ok 200 - _readline should return undef when unattended 82s ok 201 - Localied string should be valid UTF-8 82s ok 202 - Localied string should be decoded 82s ok 203 - Localied string should be valid UTF-8 82s ok 204 - Localied string should be decoded 82s ok 205 - _is_interactive should not die 82s ok 206 - _is_unattended should not die 82s ok 207 - _bn should work 82s ok 208 - no warnings 82s ok 83s t/blank.t ........... 83s 1..34 83s ok 1 - require App::Sqitch::Plan::Blank; 83s ok 2 - App::Sqitch::Plan::Blank->can(...) 83s ok 3 - An object of class 'App::Sqitch::Plan::Blank' isa 'App::Sqitch::Plan::Blank' 83s ok 4 - An object of class 'App::Sqitch::Plan::Blank' isa 'App::Sqitch::Plan::Line' 83s ok 5 - Name should format as "" 83s ok 6 - should stringify to "" 83s ok 7 - Create tag with more stuff 83s ok 8 - It should stringify correctly 83s ok 9 - Create a blank with newlines and backslashes in the note 83s ok 10 - The newlines and backslashe should not be escaped 83s ok 11 - The newlines and backslahs should be escaped by format_note 83s ok 12 - Create a blank with escapes 83s ok 13 - Note shoud be unescaped 83s ok 14 - Should trim Leading newlines from note 83s ok 15 - Should trim Leading line feeds from note 83s ok 16 - Should trim Trailing newlines from note 83s ok 17 - Should trim trailing line feeds from note 83s ok 18 - Should trim Leading and trailing vertical space from note 83s ok 19 - Should trim Leading and trailing newlines and spaces from note 83s ok 20 - Should have localized not prompt 83s ok 21 - Shell command should start with editor 83s ok 22 - Temp file should exist 83s ok 23 - Temp file contents should include prompt 83s ok 24 - Should get exception for no note text 83s ok 25 - No note error ident should be "plan" 83s ok 26 - No note error message should be correct 83s ok 27 - Exit val should be 1 83s ok 28 - Shell command should start with editor 83s ok 29 - Temp file should exist 83s ok 30 - Temp file contents should include prompt 83s ok 31 - Request note 83s ok 32 - Should have the edited note 83s ok 33 - The request should not prompt again 83s ok 34 - no warnings 83s ok 83s t/bundle.t .......... 83s 1..301 83s ok 1 - Load a sqitch object 83s ok 2 - 'bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 3 - App::Sqitch::Command::bundle->can(...) 83s ok 4 - App::Sqitch::Command::bundle does ContextCommand 83s ok 5 - Should have dest_dir option 83s ok 6 - Should parse options 83s ok 7 - Options should not conflict with core options 83s ok 8 - Default dest_dir should be bundle/ 83s ok 9 - Should have dest top dir 83s ok 10 - Default config should be empty 83s ok 11 - --dest_dir should be converted to a path object by configure() 83s ok 12 - --from and --to should be passed through configure 83s ok 13 - Load a sqitch object with top_dir 83s ok 14 - bundle.dest_dir config should be converted to a path object by configure() 83s ok 15 - 'another bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 16 - dest_dir should be "_build/sql" 83s ok 17 - Dest top dir should be _build/sql/sql/ 83s ok 18 - Dest deploy dir should be _build/sql/sql/deploy 83s ok 19 - Dest revert dir should be _build/sql/sql/revert 83s ok 20 - Dest verify dir should be _build/sql/sql/verify 83s ok 21 - Load a sqitch object with engine top_dir 83s ok 22 - 'engine bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 23 - dest_dir should again be "_build/sql" 83s ok 24 - Dest deploy dir should be _build/sql/engine/deploy 83s ok 25 - Dest revert dir should be _build/sql/engine/revert 83s ok 26 - Dest verify dir should be _build/sql/engine/verify 83s ok 27 - File delete.me/deploy/roles.sql should not exist 83s ok 28 - Copy sql/deploy/roles.sql to delete.me/deploy/roles.sql 83s ok 29 - File delete.me/deploy/roles.sql should now exist 83s ok 30 - delete.me/deploy/roles.sql and sql/deploy/roles.sql contents are the same 83s ok 31 - The mkdir and copy info should have been output 83s ok 32 - Copy sql/deploy/roles.sql to delete.me/deploy/roles.sql again 83s ok 33 - File delete.me/deploy/roles.sql should still exist 83s ok 34 - delete.me/deploy/roles.sql and sql/deploy/roles.sql contents are the same 83s ok 35 - Should have no debugging output 83s ok 36 - Copy sql/deploy/roles.sql to old delete.me/deploy/roles.sql 83s ok 37 - File delete.me/deploy/roles.sql should still be there 83s ok 38 - delete.me/deploy/roles.sql and sql/deploy/roles.sql contents are the same 83s ok 39 - Only copy message should again have been emitted 83s ok 40 - Copy sql/deploy/users.sql to delete.me/deploy/roles.sql 83s ok 41 - File delete.me/deploy/roles.sql should now exist 83s ok 42 - delete.me/deploy/roles.sql and sql/deploy/users.sql contents are the same 83s ok 43 - Again only Copy message should have been emitted 83s ok 44 - Should get exception when source file does not exist 83s ok 45 - Nonexistent file error ident should be "bundle" 83s ok 46 - Nonexistent file error message should be correct 83s ok 47 - Should get exception when copy returns false 83s ok 48 - Copy fail ident should be "bundle" 83s ok 49 - Copy fail error message should be correct 83s ok 50 - _build/sql/sqitch.conf does not exist 83s ok 51 - Bundle the config file 83s ok 52 - _build/sql/sqitch.conf exists 83s ok 53 - _build/sql/sqitch.conf and sqitch.conf contents are the same 83s ok 54 - Should have config notice 83s ok 55 - _build/sql/engine/sqitch.plan does not exist 83s ok 56 - Bundle the default target plan file 83s ok 57 - _build/sql/engine/sqitch.plan exists 83s ok 58 - _build/sql/engine/sqitch.plan and engine/sqitch.plan contents are the same 83s ok 59 - Should have plan notice 83s ok 60 - '--from bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 61 - From should be "widgets" 83s ok 62 - Bundle the default target plan file with from arg 83s ok 63 - Statement of the bits written should have been emitted 83s ok 64 - Plan should contain only changes from "widgets" on 83s ok 65 - '--to bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 66 - To should be "users" 83s ok 67 - Bundle the default target plan file with to arg 83s ok 68 - Statement of the bits written should have been emitted 83s ok 69 - Plan should have written only "users" and its tags 83s ok 70 - _build/sql/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 71 - _build/sql/engine/reworked/revert/users@alpha.sql does not exist 83s ok 72 - _build/sql/engine/deploy/widgets.sql does not exist 83s ok 73 - _build/sql/engine/revert/widgets.sql does not exist 83s ok 74 - _build/sql/engine/deploy/func/add_user.sql does not exist 83s ok 75 - _build/sql/engine/revert/func/add_user.sql does not exist 83s ok 76 - _build/sql/engine/deploy/users.sql does not exist 83s ok 77 - _build/sql/engine/revert/users.sql does not exist 83s ok 78 - 'another bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 79 - Bundle default target scripts 83s ok 80 - _build/sql/engine/reworked/deploy/users@alpha.sql exists 83s ok 81 - _build/sql/engine/reworked/revert/users@alpha.sql exists 83s ok 82 - _build/sql/engine/deploy/widgets.sql exists 83s ok 83 - _build/sql/engine/revert/widgets.sql exists 83s ok 84 - _build/sql/engine/deploy/func/add_user.sql exists 83s ok 85 - _build/sql/engine/revert/func/add_user.sql exists 83s ok 86 - _build/sql/engine/deploy/users.sql exists 83s ok 87 - _build/sql/engine/revert/users.sql exists 83s ok 88 - Should have change notices 83s ok 89 - 'bundle from "widgets"' isa 'App::Sqitch::Command::bundle' 83s ok 90 - Bundle scripts 83s ok 91 - _build/sql/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 92 - _build/sql/engine/reworked/revert/users@alpha.sql does not exist 83s ok 93 - _build/sql/engine/deploy/widgets.sql exists 83s ok 94 - _build/sql/engine/revert/widgets.sql exists 83s ok 95 - Should have changes only from "widets" onward in notices 83s ok 96 - 'bundle to "users"' isa 'App::Sqitch::Command::bundle' 83s ok 97 - Bundle scripts 83s ok 98 - _build/sql/engine/reworked/deploy/users@alpha.sql exists 83s ok 99 - _build/sql/engine/reworked/revert/users@alpha.sql exists 83s ok 100 - _build/sql/engine/deploy/widgets.sql does not exist 83s ok 101 - _build/sql/engine/revert/widgets.sql does not exist 83s ok 102 - Should have only "users" in change notices 83s ok 103 - Should die on nonexistent from change 83s ok 104 - Nonexistent from change ident should be "bundle" 83s ok 105 - Nonexistent from message change should be correct 83s ok 106 - Should die on nonexistent to change 83s ok 107 - Nonexistent to change ident should be "bundle" 83s ok 108 - Nonexistent to message change should be correct 83s ok 109 - _build/sql/sqitch.conf does not exist 83s ok 110 - _build/sql/engine/sqitch.plan does not exist 83s ok 111 - _build/sql/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 112 - _build/sql/engine/reworked/revert/users@alpha.sql does not exist 83s ok 113 - _build/sql/engine/deploy/widgets.sql does not exist 83s ok 114 - _build/sql/engine/revert/widgets.sql does not exist 83s ok 115 - _build/sql/engine/deploy/func/add_user.sql does not exist 83s ok 116 - _build/sql/engine/revert/func/add_user.sql does not exist 83s ok 117 - _build/sql/engine/deploy/users.sql does not exist 83s ok 118 - _build/sql/engine/revert/users.sql does not exist 83s ok 119 - 'another bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 120 - Execute! 83s ok 121 - _build/sql/sqitch.conf exists 83s ok 122 - _build/sql/engine/sqitch.plan exists 83s ok 123 - _build/sql/engine/reworked/deploy/users@alpha.sql exists 83s ok 124 - _build/sql/engine/reworked/revert/users@alpha.sql exists 83s ok 125 - _build/sql/engine/deploy/widgets.sql exists 83s ok 126 - _build/sql/engine/revert/widgets.sql exists 83s ok 127 - _build/sql/engine/deploy/func/add_user.sql exists 83s ok 128 - _build/sql/engine/revert/func/add_user.sql exists 83s ok 129 - _build/sql/engine/deploy/users.sql exists 83s ok 130 - _build/sql/engine/revert/users.sql exists 83s ok 131 - Should have all notices 83s ok 132 - _build/multiplan.conf does not exist 83s ok 133 - _build/sql/sqitch.plan does not exist 83s ok 134 - _build/sql/deploy/roles.sql does not exist 83s ok 135 - _build/sql/deploy/users.sql does not exist 83s ok 136 - _build/sql/verify/users.sql does not exist 83s ok 137 - _build/sql/deploy/widgets.sql does not exist 83s ok 138 - _build/engine/sqitch.plan does not exist 83s ok 139 - _build/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 140 - _build/engine/reworked/revert/users@alpha.sql does not exist 83s ok 141 - _build/engine/deploy/widgets.sql does not exist 83s ok 142 - _build/engine/revert/widgets.sql does not exist 83s ok 143 - _build/engine/deploy/func/add_user.sql does not exist 83s ok 144 - _build/engine/revert/func/add_user.sql does not exist 83s ok 145 - _build/engine/deploy/users.sql does not exist 83s ok 146 - _build/engine/revert/users.sql does not exist 83s ok 147 - 'all multiplan bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 148 - Execute multi-target bundle! 83s ok 149 - _build/multiplan.conf exists 83s ok 150 - _build/sql/sqitch.plan exists 83s ok 151 - _build/sql/deploy/roles.sql exists 83s ok 152 - _build/sql/deploy/users.sql exists 83s ok 153 - _build/sql/verify/users.sql exists 83s ok 154 - _build/sql/deploy/widgets.sql exists 83s ok 155 - _build/engine/sqitch.plan exists 83s ok 156 - _build/engine/reworked/deploy/users@alpha.sql exists 83s ok 157 - _build/engine/reworked/revert/users@alpha.sql exists 83s ok 158 - _build/engine/deploy/widgets.sql exists 83s ok 159 - _build/engine/revert/widgets.sql exists 83s ok 160 - _build/engine/deploy/func/add_user.sql exists 83s ok 161 - _build/engine/revert/func/add_user.sql exists 83s ok 162 - _build/engine/deploy/users.sql exists 83s ok 163 - _build/engine/revert/users.sql exists 83s ok 164 - Should have a warning about --from and -too 83s ok 165 - Should get an error for --all and a target arg 83s ok 166 - Mixed arguments error ident should be "bundle" 83s ok 167 - Mixed arguments error message should be correct 83s ok 168 - 'multiplan bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 169 - Execute with no arg 83s ok 170 - _build/multiplan.conf exists 83s ok 171 - _build/engine/sqitch.plan exists 83s ok 172 - _build/engine/reworked/deploy/users@alpha.sql exists 83s ok 173 - _build/engine/reworked/revert/users@alpha.sql exists 83s ok 174 - _build/engine/deploy/widgets.sql exists 83s ok 175 - _build/engine/revert/widgets.sql exists 83s ok 176 - _build/engine/deploy/func/add_user.sql exists 83s ok 177 - _build/engine/revert/func/add_user.sql exists 83s ok 178 - _build/engine/deploy/users.sql exists 83s ok 179 - _build/engine/revert/users.sql exists 83s ok 180 - _build/sql/sqitch.plan does not exist 83s ok 181 - _build/sql/deploy/roles.sql does not exist 83s ok 182 - _build/sql/deploy/users.sql does not exist 83s ok 183 - _build/sql/verify/users.sql does not exist 83s ok 184 - _build/sql/deploy/widgets.sql does not exist 83s ok 185 - Execute with bundle.all config 83s ok 186 - _build/multiplan.conf exists 83s ok 187 - _build/engine/sqitch.plan exists 83s ok 188 - _build/engine/reworked/deploy/users@alpha.sql exists 83s ok 189 - _build/engine/reworked/revert/users@alpha.sql exists 83s ok 190 - _build/engine/deploy/widgets.sql exists 83s ok 191 - _build/engine/revert/widgets.sql exists 83s ok 192 - _build/engine/deploy/func/add_user.sql exists 83s ok 193 - _build/engine/revert/func/add_user.sql exists 83s ok 194 - _build/engine/deploy/users.sql exists 83s ok 195 - _build/engine/revert/users.sql exists 83s ok 196 - _build/sql/sqitch.plan exists 83s ok 197 - _build/sql/deploy/roles.sql exists 83s ok 198 - _build/sql/deploy/users.sql exists 83s ok 199 - _build/sql/verify/users.sql exists 83s ok 200 - _build/sql/deploy/widgets.sql exists 83s ok 201 - Execute with target arg "pg" 83s ok 202 - _build/multiplan.conf exists 83s ok 203 - _build/engine/sqitch.plan exists 83s ok 204 - _build/engine/reworked/deploy/users@alpha.sql exists 83s ok 205 - _build/engine/reworked/revert/users@alpha.sql exists 83s ok 206 - _build/engine/deploy/widgets.sql exists 83s ok 207 - _build/engine/revert/widgets.sql exists 83s ok 208 - _build/engine/deploy/func/add_user.sql exists 83s ok 209 - _build/engine/revert/func/add_user.sql exists 83s ok 210 - _build/engine/deploy/users.sql exists 83s ok 211 - _build/engine/revert/users.sql exists 83s ok 212 - _build/sql/sqitch.plan does not exist 83s ok 213 - _build/sql/deploy/roles.sql does not exist 83s ok 214 - _build/sql/deploy/users.sql does not exist 83s ok 215 - _build/sql/verify/users.sql does not exist 83s ok 216 - _build/sql/deploy/widgets.sql does not exist 83s ok 217 - Execute with plan file arg "engine/sqitch.plan" 83s ok 218 - _build/multiplan.conf exists 83s ok 219 - _build/engine/sqitch.plan exists 83s ok 220 - _build/engine/reworked/deploy/users@alpha.sql exists 83s ok 221 - _build/engine/reworked/revert/users@alpha.sql exists 83s ok 222 - _build/engine/deploy/widgets.sql exists 83s ok 223 - _build/engine/revert/widgets.sql exists 83s ok 224 - _build/engine/deploy/func/add_user.sql exists 83s ok 225 - _build/engine/revert/func/add_user.sql exists 83s ok 226 - _build/engine/deploy/users.sql exists 83s ok 227 - _build/engine/revert/users.sql exists 83s ok 228 - _build/sql/sqitch.plan does not exist 83s ok 229 - _build/sql/deploy/roles.sql does not exist 83s ok 230 - _build/sql/deploy/users.sql does not exist 83s ok 231 - _build/sql/verify/users.sql does not exist 83s ok 232 - _build/sql/deploy/widgets.sql does not exist 83s ok 233 - Execute with target arg "mysql" 83s ok 234 - _build/multiplan.conf exists 83s ok 235 - _build/sql/sqitch.plan exists 83s ok 236 - _build/sql/deploy/roles.sql exists 83s ok 237 - _build/sql/deploy/users.sql exists 83s ok 238 - _build/sql/verify/users.sql exists 83s ok 239 - _build/sql/deploy/widgets.sql exists 83s ok 240 - _build/engine/sqitch.plan does not exist 83s ok 241 - _build/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 242 - _build/engine/reworked/revert/users@alpha.sql does not exist 83s ok 243 - _build/engine/deploy/widgets.sql does not exist 83s ok 244 - _build/engine/revert/widgets.sql does not exist 83s ok 245 - _build/engine/deploy/func/add_user.sql does not exist 83s ok 246 - _build/engine/revert/func/add_user.sql does not exist 83s ok 247 - _build/engine/deploy/users.sql does not exist 83s ok 248 - _build/engine/revert/users.sql does not exist 83s ok 249 - Execute with plan file arg "sql/sqitch.plan" 83s ok 250 - _build/multiplan.conf exists 83s ok 251 - _build/sql/sqitch.plan exists 83s ok 252 - _build/sql/deploy/roles.sql exists 83s ok 253 - _build/sql/deploy/users.sql exists 83s ok 254 - _build/sql/verify/users.sql exists 83s ok 255 - _build/sql/deploy/widgets.sql exists 83s ok 256 - _build/engine/sqitch.plan does not exist 83s ok 257 - _build/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 258 - _build/engine/reworked/revert/users@alpha.sql does not exist 83s ok 259 - _build/engine/deploy/widgets.sql does not exist 83s ok 260 - _build/engine/revert/widgets.sql does not exist 83s ok 261 - _build/engine/deploy/func/add_user.sql does not exist 83s ok 262 - _build/engine/revert/func/add_user.sql does not exist 83s ok 263 - _build/engine/deploy/users.sql does not exist 83s ok 264 - _build/engine/revert/users.sql does not exist 83s ok 265 - 'to/from bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 266 - Execute to/from bundle! 83s ok 267 - _build/multiplan.conf exists 83s ok 268 - _build/engine/sqitch.plan exists 83s ok 269 - _build/engine/deploy/widgets.sql exists 83s ok 270 - _build/engine/revert/widgets.sql exists 83s ok 271 - _build/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 272 - _build/engine/reworked/revert/users@alpha.sql does not exist 83s ok 273 - _build/engine/deploy/func/add_user.sql does not exist 83s ok 274 - _build/engine/revert/func/add_user.sql does not exist 83s ok 275 - _build/engine/deploy/users.sql does not exist 83s ok 276 - _build/engine/revert/users.sql does not exist 83s ok 277 - Plan should have written only "widgets" 83s ok 278 - 'another bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 279 - Execute bundle with to/from args! 83s ok 280 - _build/multiplan.conf exists 83s ok 281 - _build/engine/sqitch.plan exists 83s ok 282 - _build/engine/deploy/widgets.sql exists 83s ok 283 - _build/engine/revert/widgets.sql exists 83s ok 284 - _build/engine/deploy/func/add_user.sql exists 83s ok 285 - _build/engine/revert/func/add_user.sql exists 83s ok 286 - _build/engine/deploy/users.sql exists 83s ok 287 - _build/engine/revert/users.sql exists 83s ok 288 - _build/engine/reworked/deploy/users@alpha.sql does not exist 83s ok 289 - _build/engine/reworked/revert/users@alpha.sql does not exist 83s ok 290 - Plan should have written "widgets" and "func/add_user" 83s ok 291 - Should get an exception for unknown argument 83s ok 292 - Unknown argument error ident shoud be "bundle" 83s ok 293 - Unknown argument error message should be correct 83s ok 294 - Should get an exception for unknown arguments 83s ok 295 - Unknown arguments error ident shoud be "bundle" 83s ok 296 - Unknown arguments error message should be correct 83s ok 297 - 'all multiplan bundle command' isa 'App::Sqitch::Command::bundle' 83s ok 298 - Should get an exception a change name and --from 83s ok 299 - Conflicting arguments error ident shoud be "bundle" 83s ok 300 - Conflicting arguments error message should be correct 83s ok 301 - no warnings 83s ok 84s t/change.t .......... 84s 1..92 84s ok 1 - require App::Sqitch::Plan::Change; 84s ok 2 - App::Sqitch::Plan::Change->can(...) 84s ok 3 - An object of class 'App::Sqitch::Plan::Change' isa 'App::Sqitch::Plan::Change' 84s ok 4 - An object of class 'App::Sqitch::Plan::Change' isa 'App::Sqitch::Plan::Line' 84s ok 5 - It should be a deploy change 84s ok 6 - It should not be a revert change 84s ok 7 - And it should say so 84s ok 8 - 'Timestamp' isa 'App::Sqitch::DateTime' 84s ok 9 - path_segments should have the file name 84s ok 10 - The deploy dir should be correct 84s ok 11 - The deploy file should be correct 84s ok 12 - The revert dir should be correct 84s ok 13 - The revert file should be correct 84s ok 14 - The verify dir should be correct 84s ok 15 - The verify file should be correct 84s ok 16 - The change should not be reworked 84s ok 17 - path_segments should not include suffix 84s ok 18 - Nonexistent deploy script hash should be undef 84s ok 19 - Deploy script hash should be correct 84s ok 20 - Tag-qualified name should be tagged with @HEAD 84s ok 21 - Add a rework tag 84s ok 22 - Reworked tag should be stored 84s ok 23 - The change should be reworked 84s ok 24 - path_segments should now include suffix 84s ok 25 - The change should not be reworked 84s ok 26 - Add two rework tags 84s ok 27 - The change should again be reworked 84s ok 28 - path_segments should now include the correct suffixc 84s ok 29 - Name should format as "foo" 84s ok 30 - Name should format with tags as "foo" 84s ok 31 - Tag-qualified Name should format as "foo@beta" 84s ok 32 - Dependencies should format as "" 84s ok 33 - Name should format with dependencies as "foo" 84s ok 34 - Name should format op without dependencies as "foo" 84s ok 35 - Change content should format correctly without dependencies 84s ok 36 - Planner name shoudld default to user name 84s ok 37 - Planner email shoudld default to user email 84s ok 38 - Planner name and email should format properly 84s ok 39 - should stringify to "foo" + planner 84s ok 40 - Since tag should be undef 84s ok 41 - Parent should be undef 84s ok 42 - Change info should be correct 84s ok 43 - Change ID should be correct 84s ok 44 - Create change with more stuff 84s ok 45 - It should stringify correctly 84s ok 46 - It should not be a deploy change 84s ok 47 - It should be a revert change 84s ok 48 - It should say so 84s ok 49 - It should have a since tag 84s ok 50 - It should have a parent 84s ok 51 - Info should include parent and dependencies 84s ok 52 - Should have no tags 84s ok 53 - Add a tag 84s ok 54 - Should have the tag 84s ok 55 - Should format name with tags 84s ok 56 - Should format tag-qualiified name 84s ok 57 - Add another tag 84s ok 58 - Should have both tags 84s ok 59 - Should format name with both tags 84s ok 60 - Should format tag-qualified name with first tag 84s ok 61 - Planner name and email should format properly 84s ok 62 - Dependencies should format as "[foo bar @baz !dr_evil]" 84s ok 63 - Name should format with dependencies as "yo/howdy [foo bar @baz !dr_evil]" 84s ok 64 - Name should format op with dependencies as "yo/howdy [foo bar @baz !dr_evil]" 84s ok 65 - Change content should format correctly with dependencies 84s ok 66 - path_segments should include directories 84s ok 67 - Deploy dir should be in rworked dir 84s ok 68 - Deploy file should be in rworked dir and include suffix 84s ok 69 - Revert dir should be in rworked dir 84s ok 70 - Revert file should be in rworked dir and include suffix 84s ok 71 - Verify dir should be in rworked dir 84s ok 72 - Verify file should be in rworked dir and include suffix 84s ok 73 - Create change "baz" 84s ok 74 - Create change "bar" 84s ok 75 - Get deploy handle 84s ok 76 - It should be the deploy file 84s ok 77 - Get revert handle 84s ok 78 - It should be the revert file 84s ok 79 - Get verify handle 84s ok 80 - It should be the verify file 84s ok 81 - Create a change with explicit requires and conflicts 84s ok 82 - requires should be set 84s ok 83 - conflicts should be set 84s ok 84 - Dependencies should include requires and conflicts 84s ok 85 - Should find changes for requires 84s ok 86 - Should find changes for conflicts 84s ok 87 - Create change with UTF-8 name 84s ok 88 - The name should be decoded text in info 84s ok 89 - Change ID should be hashed from encoded UTF-8 84s ok 90 - note_prompt() should work 84s ok 91 - note_prompt() should work 84s ok 92 - no warnings 84s ok 84s t/changelist.t ...... 84s 1..248 84s ok 1 - require App::Sqitch::Plan::ChangeList; 84s ok 2 - Count should be six 84s ok 3 - Changes should be in order 84s ok 4 - Items should be the same as changes 84s ok 5 - Tags should return the one tag 84s ok 6 - Should have foo at 0 84s ok 7 - Should have bar at 1 84s ok 8 - Should have yo1 at 2 84s ok 9 - Should have baz at 4 84s ok 10 - Should have yo2 at 5 84s ok 11 - Should not find "non" 84s ok 12 - Should not find "@non" 84s ok 13 - Should find foo at 0 84s ok 14 - Should find foo by ID at 0 84s ok 15 - Should find bar at 1 84s ok 16 - Should find bar^ at 0 84s ok 17 - Should find bar~ at 2 84s ok 18 - Should find bar~~ at 3 84s ok 19 - Should not find bar~~~ 84s ok 20 - Should find bar~2 at 3 84s ok 21 - Should find bar~3 at 4 84s ok 22 - Should find bar by ID at 1 84s ok 23 - Should find @alpha at 2 84s ok 24 - Should find @alpha^ at 1 84s ok 25 - Should find @alpha^^ at 1 84s ok 26 - Should not find @alpha^^^ 84s ok 27 - Should find @alpha by ID at 2 84s ok 28 - Should find baz at 3 84s ok 29 - Should find baz by ID at 3 84s ok 30 - Should not find baz^^^ 84s ok 31 - Should not find baz^3 at 0 84s ok 32 - Should not find baz^4 84s ok 33 - Should find baz by ID^ at 2 84s ok 34 - Should get multiple indexes error looking for index of "yo" 84s ok 35 - Multiple indexes error ident should be "plan" 84s ok 36 - Multiple indexes message should be correct 84s ok 37 - Should have output listing tag-qualified changes 84s ok 38 - Should unknown tag error for invalid tag 84s ok 39 - Unknown tag error ident should be "plan" 84s ok 40 - Unknown taf message should be correct 84s ok 41 - Should get 2 for yo@alpha 84s ok 42 - Should get 1 for yo@alpha^ 84s ok 43 - Should get 4 for yo@HEAD 84s ok 44 - Should get 3 for yo@HEAD^ 84s ok 45 - Should get undef for yo@HEAD~ 84s ok 46 - Should get undef for yo@HEAD~~ 84s ok 47 - Should get 0 for foo@alpha 84s ok 48 - Should get 0 for foo@HEAD 84s ok 49 - Should get 0 for foo@ROOT 84s ok 50 - Should get undef for baz@alpha 84s ok 51 - Should get 3 for baz@HEAD 84s ok 52 - Should get 4 for @HEAD 84s ok 53 - Should get 0 for @ROOT 84s ok 54 - Should get 3 for @HEAD^ 84s ok 55 - Should get undef for @HEAD~ 84s ok 56 - Should get 1 for @ROOT~ 84s ok 57 - Should get undef for @ROOT^ 84s ok 58 - Should get 4 for HEAD 84s ok 59 - Should get 0 for ROOT 84s ok 60 - Should get 3 for HEAD^ 84s ok 61 - Should get undef for HEAD~ 84s ok 62 - Should get 1 for ROOT~ 84s ok 63 - Should get undef for ROOT^ 84s ok 64 - Should get foo for "foo" 84s ok 65 - Should get bar for "foo~" 84s ok 66 - Should get foo by ID 84s ok 67 - Should get bar for "bar" 84s ok 68 - Should get foo for "bar^" 84s ok 69 - Should get yo1 for "bar~" 84s ok 70 - Should get baz for "bar~~" 84s ok 71 - Should get yo2 for "bar~3" 84s ok 72 - Should get bar by ID 84s ok 73 - Should get "yo" by the @alpha tag ID 84s ok 74 - Should get baz for "baz" 84s ok 75 - Should get baz by ID 84s ok 76 - Should get baz for "@HEAD^" 84s ok 77 - Should get yo1 for "@HEAD^^" 84s ok 78 - Should get bar for "@HEAD^3" 84s ok 79 - Should get foo for "@ROOT" 84s ok 80 - Should get baz for "HEAD^" 84s ok 81 - Should get yo1 for "HEAD^^" 84s ok 82 - Should get bar for "HEAD^3" 84s ok 83 - Should get foo for "ROOT" 84s ok 84 - Should get yo1 for yo@alpha 84s ok 85 - Should get yo2 for yo@HEAD 84s ok 86 - Should get foo for foo@alpha 84s ok 87 - Should get foo for foo@HEAD 84s ok 88 - Should get undef for baz@alpha 84s ok 89 - Should get baz for baz@HEAD 84s ok 90 - Should get yo2 for "yo@HEAD" 84s ok 91 - Should get foo for "foo@ROOT" 84s ok 92 - Should find yo1 with "yo" 84s ok 93 - Should find yo1 with "yo@alpha" 84s ok 94 - Should find yo2 with yo@HEAD 84s ok 95 - Should find foo for "foo" 84s ok 96 - Should find foo for "foo@alpha" 84s ok 97 - Should find foo for "foo@HEAD" 84s ok 98 - Should find bar with "yo^" 84s ok 99 - Should find foo with "yo^^" 84s ok 100 - Should find foo with "yo^2" 84s ok 101 - Should find baz with "yo~" 84s ok 102 - Should find yo2 with "yo~~" 84s ok 103 - Should find yo2 with "yo~2" 84s ok 104 - Should find bar with "yo@alpha^" 84s ok 105 - Should find baz with "yo@alpha^" 84s ok 106 - Should find baz with yo@HEAD^ 84s ok 107 - Should find baz with @HEAD^ 84s ok 108 - Should find bar with @ROOT~^ 84s ok 109 - Should find baz with HEAD^ 84s ok 110 - Should find bar with ROOT~^ 84s ok 111 - Should contain yo1 with "yo" 84s ok 112 - Should contain yo1 with "yo@alpha" 84s ok 113 - Should contain yo2 with yo@HEAD 84s ok 114 - Should contain foo for "foo" 84s ok 115 - Should contain foo for "foo@alpha" 84s ok 116 - Should contain foo for "foo@HEAD" 84s ok 117 - Should contain bar with "yo^" 84s ok 118 - Should contain foo with "yo^^" 84s ok 119 - Should contain foo with "yo^2" 84s ok 120 - Should contain baz with "yo~" 84s ok 121 - Should contain yo2 with "yo~~" 84s ok 122 - Should contain yo2 with "yo~2" 84s ok 123 - Should contain bar with "yo@alpha^" 84s ok 124 - Should contain baz with "yo@alpha^" 84s ok 125 - Should contain baz with yo@HEAD^ 84s ok 126 - Should contain baz with @HEAD^ 84s ok 127 - Should contain bar with @ROOT~^ 84s ok 128 - Should contain baz with HEAD^ 84s ok 129 - Should contain bar with ROOT~^ 84s ok 130 - Should get multiple indexes error looking for index of "yo" 84s ok 131 - Multiple indexes error ident should be "plan" 84s ok 132 - Multiple indexes message should be correct 84s ok 133 - Should have output listing tag-qualified changes 84s ok 134 - Should unknown tag error for invalid tag 84s ok 135 - Unknown tag error ident should be "plan" 84s ok 136 - Unknown taf message should be correct 84s ok 137 - Push hi 84s ok 138 - Count should now be six 84s ok 139 - Changes should be in order with $hi at the end 84s ok 140 - Should find "hi" at index 5 84s ok 141 - Should find "hi" by ID at index 5 84s ok 142 - Index of @ROOT should still be 0 84s ok 143 - Index of @HEAD should now be 5 84s ok 144 - Index of ROOT should still be 0 84s ok 145 - Index of HEAD should now be 5 84s ok 146 - First index of "non" should be undef 84s ok 147 - First index of "foo" should be 0 84s ok 148 - First index of "foo~" should be 1 84s ok 149 - First index of "foo~~" should be 2 84s ok 150 - First index of "foo~3" should be 3 84s ok 151 - Should not find first index of "foo~~~" 84s ok 152 - First index of "foo" since @ROOT should be undef 84s ok 153 - First index of "bar" should be 1 84s ok 154 - First index of "yo" should be 2 84s ok 155 - First index of "yo" since @ROOT should be 2 84s ok 156 - First index of "baz" should be 3 84s ok 157 - First index of "baz^" should be 2 84s ok 158 - First index of "baz^^" should be 1 84s ok 159 - First index of "baz^3" should be 0 84s ok 160 - Should not find first index of "baz^^^" 84s ok 161 - First index of "yo" since "@alpha" should be 4 84s ok 162 - First index of "yo" since "baz" should be 4 84s ok 163 - First index of "yo^" since "baz" should be 4 84s ok 164 - First index of "yo~" since "baz" should be 5 84s ok 165 - Should get an exception for an unknown change passed to first_index_of() 84s ok 166 - Unknown change error ident should be "plan" 84s ok 167 - Unknown change message should be correct 84s ok 168 - Push so and fu 84s ok 169 - Count should now be eight 84s ok 170 - Index of @ROOT should remain 0 84s ok 171 - Index of @HEAD should now be 7 84s ok 172 - Index of ROOT should remain 0 84s ok 173 - Index of HEAD should now be 7 84s ok 174 - Changes should be in order with $so and $fu at the end 84s ok 175 - Index beta 84s ok 176 - Should find @beta at index 4 84s ok 177 - Should find yo2 via @beta 84s ok 178 - Should find yo2 via @beta ID 84s ok 179 - Tags should return both tags 84s ok 180 - Should get 2 for last tagged index 84s ok 181 - Should find "yo" as last tagged 84s ok 182 - Should get 8 for count 84s ok 183 - Should find fu as last change 84s ok 184 - Should find last tagged index at 0 84s ok 185 - Should find last tagged at 0 84s ok 186 - Should get count 1 84s ok 187 - Should find last change at 0 84s ok 188 - Should find last tagged index at 1 84s ok 189 - Should find last tagged at 1 84s ok 190 - Should get count 2 84s ok 191 - Should find last change at 1 84s ok 192 - Should find last tagged index at 3 84s ok 193 - Should find last tagged at 3 84s ok 194 - Should get count 4 84s ok 195 - Should find last change at 3 84s ok 196 - Should find last tagged index at 4 84s ok 197 - Should find last tagged at 4 84s ok 198 - Should get count 5 84s ok 199 - Should find last change at 4 84s ok 200 - Should not find tag index in 0 changes 84s ok 201 - Should not find tag in 0 changes 84s ok 202 - Should find no change in empty plan 84s ok 203 - Should not find tag index in 2 changes 84s ok 204 - Should not find tag in 2 changes 84s ok 205 - Should not find tag index in 4 changes 84s ok 206 - Should not find tag in 4 changes 84s ok 207 - An object of class 'App::Sqitch::Plan::ChangeList' isa 'App::Sqitch::Plan::ChangeList' 84s ok 208 - Should not find index of "foo" in empty list 84s ok 209 - Should not find first index of "foo" in empty list 84s ok 210 - Should get undef for "foo" in empty list 84s ok 211 - Should not contain "foo" in empty list 84s ok 212 - Should find undef for "foo" in empty list 84s ok 213 - Should not find index of "bar" in empty list 84s ok 214 - Should not find first index of "bar" in empty list 84s ok 215 - Should get undef for "bar" in empty list 84s ok 216 - Should not contain "bar" in empty list 84s ok 217 - Should find undef for "bar" in empty list 84s ok 218 - Should not find index of "HEAD" in empty list 84s ok 219 - Should not find first index of "HEAD" in empty list 84s ok 220 - Should get undef for "HEAD" in empty list 84s ok 221 - Should not contain "HEAD" in empty list 84s ok 222 - Should find undef for "HEAD" in empty list 84s ok 223 - Should not find index of "@HEAD" in empty list 84s ok 224 - Should not find first index of "@HEAD" in empty list 84s ok 225 - Should get undef for "@HEAD" in empty list 84s ok 226 - Should not contain "@HEAD" in empty list 84s ok 227 - Should find undef for "@HEAD" in empty list 84s ok 228 - Should not find index of "ROOT" in empty list 84s ok 229 - Should not find first index of "ROOT" in empty list 84s ok 230 - Should get undef for "ROOT" in empty list 84s ok 231 - Should not contain "ROOT" in empty list 84s ok 232 - Should find undef for "ROOT" in empty list 84s ok 233 - Should not find index of "@ROOT" in empty list 84s ok 234 - Should not find first index of "@ROOT" in empty list 84s ok 235 - Should get undef for "@ROOT" in empty list 84s ok 236 - Should not contain "@ROOT" in empty list 84s ok 237 - Should find undef for "@ROOT" in empty list 84s ok 238 - Should not find index of "alpha" in empty list 84s ok 239 - Should not find first index of "alpha" in empty list 84s ok 240 - Should get undef for "alpha" in empty list 84s ok 241 - Should not contain "alpha" in empty list 84s ok 242 - Should find undef for "alpha" in empty list 84s ok 243 - Should not find index of "@alpha" in empty list 84s ok 244 - Should not find first index of "@alpha" in empty list 84s ok 245 - Should get undef for "@alpha" in empty list 84s ok 246 - Should not contain "@alpha" in empty list 84s ok 247 - Should find undef for "@alpha" in empty list 84s ok 248 - no warnings 84s ok 85s t/check.t ........... 85s ok 1 - require App::Sqitch::Command::check; 85s ok 2 - The class (or class-like) 'App::Sqitch::Command::check' isa 'App::Sqitch::Command' 85s ok 3 - App::Sqitch::Command::check->can(...) 85s ok 4 - App::Sqitch::Command::check does ContextCommand 85s ok 5 - App::Sqitch::Command::check does ConnectingCommand 85s ok 6 - Options should be correct 85s ok 7 - Should parse options 85s ok 8 - Options should not conflict with core options 85s ok 9 - Should have default configuration with no config or opts 85s ok 10 - Should have changes and variables from options 85s ok 11 - Should have no config if no options 85s ok 12 - 'new status with target' isa 'App::Sqitch::Command::check' 85s ok 13 - Should have target "foo" 85s ok 14 - An object of class 'App::Sqitch::Command::check' isa 'App::Sqitch::Command::check' 85s ok 15 - Default target should be undef 85s ok 16 - from_change should be undef 85s ok 17 - to_change should be undef 85s ok 18 - Should collect no variables 85s ok 19 - Should collect core vars 85s ok 20 - Should override core vars with deploy vars 85s ok 21 - Should override deploy vars with check vars 85s ok 22 - Should override check vars with engine vars 85s ok 23 - Should override engine vars with target vars 85s ok 24 - Should override target vars with --set variables 85s ok 25 - Execute with nothing. 85s ok 26 - Two undefs should be passed to the engine 85s ok 27 - Should have no warnings 85s ok 28 - Execute from "@alpha" 85s ok 29 - "@alpha" and undef should be passed to the engine 85s ok 30 - Should again have no warnings 85s ok 31 - Execute from "@alpha" to "@beta" 85s ok 32 - "@alpha" and "@beat" should be passed to the engine 85s ok 33 - Should still have no warnings 85s ok 34 - 'Object with from, to, and variables' isa 'App::Sqitch::Command::check' 85s ok 35 - Execute again 85s ok 36 - "foo" and "bar" should be passed to the engine 85s ok 37 - Vars should have been passed through to the engine 85s ok 38 - Still should have no warnings 85s ok 39 - Execute with command-line args 85s ok 40 - "foo" and "bar" should be passed to the engine 85s ok 41 - Vars should have been passed through to the engine 85s ok 42 - Should have warning about which roles are used 85s ok 43 - Execute with target arg 85s ok 44 - The target should have been passed to the engine 85s ok 45 - "foo" and "bar" should be passed to the engine 85s ok 46 - Vars should have been passed through to the engine 85s ok 47 - Should once again have no warnings 85s ok 48 - 'Object with target' isa 'App::Sqitch::Command::check' 85s ok 49 - Execute with no args 85s ok 50 - The target option should have been passed to the engine 85s ok 51 - Undefs should be passed to the engine 85s ok 52 - No vars should have been passed through to the engine 85s ok 53 - Should once again have no warnings 85s ok 54 - Execute with two targegs and two changes 85s ok 55 - The target option should have been passed to the engine 85s ok 56 - The two changes should be passed to the engine 85s ok 57 - No vars should have been passed through to the engine 85s ok 58 - Should have warning about too many targets 85s ok 59 - Should get an exception for unknown arg 85s ok 60 - Unknown arg ident should be "check" 85s ok 61 - Should get an exeption for two unknown arg 85s ok 62 - Should get an exception for unknown args 85s ok 63 - Unknown args ident should be "check" 85s ok 64 - Should get an exeption for two unknown args 85s 1..64 85s ok 85s t/checkout.t ........ 85s ok 1 - require App::Sqitch::Command::checkout; 85s ok 2 - The class (or class-like) 'App::Sqitch::Command::checkout' isa 'App::Sqitch::Command' 85s ok 3 - App::Sqitch::Command::checkout->can(...) 85s ok 4 - App::Sqitch::Command::checkout does RevertDeployCommand 85s ok 5 - App::Sqitch::Command::checkout does ConnectingCommand 85s ok 6 - App::Sqitch::Command::checkout does ContextCommand 85s ok 7 - Options should be correct 85s ok 8 - Should parse options 85s ok 9 - Options should not conflict with core options 85s ok 10 - Load a sqitch object 85s ok 11 - Check default configuration 85s ok 12 - Should have set option 85s ok 13 - Should have mode, deploy_variables, verify, no_prompt, log_only, & lock_timeout 85s ok 14 - Should have set_revert option and no_prompt false 85s ok 15 - set_deploy and set_revert should overrid set 85s ok 16 - set_deploy and set_revert should merge with set 85s ok 17 - set_revert should merge with set_deploy 85s ok 18 - Should have deploy configuration 85s ok 19 - Should have merged variables 85s ok 20 - Should have no_prompt and prompt_accept from revert config 85s ok 21 - Should have false log_only, verify, true prompt_accept from checkout config 85s ok 22 - Should have log_only, prompt_accept true from checkout and verify from deploy 85s ok 23 - Should have log_only false and mode all again 85s ok 24 - Should have log_only false for false config 85s ok 25 - Should have no_prompt true with -y 85s ok 26 - revert.strict should die 85s ok 27 - Strict err ident should be "checkout" 85s ok 28 - Should have corect strict error message 85s ok 29 - checkout.strict should die 85s ok 30 - Strict err ident should be "checkout" 85s ok 31 - Should have corect strict error message 85s ok 32 - App::Sqitch::X 85s ok 33 - Should collect no variables for deploy 85s ok 34 - Should collect no variables for revert 85s ok 35 - Should collect core deploy vars for deploy 85s ok 36 - Should collect core revert vars for revert 85s ok 37 - Should override core vars with deploy vars for deploy 85s ok 38 - Should override core vars with deploy vars for revert 85s ok 39 - Deploy vars should be unaffected by revert vars 85s ok 40 - Should override deploy vars with revert vars for revert 85s ok 41 - Should override deploy vars with engine vars for deploy 85s ok 42 - Should override checkout vars with engine vars for revert 85s ok 43 - Should override engine vars with deploy vars for deploy 85s ok 44 - Should override engine vars with target vars for revert 85s ok 45 - Should override target vars with --set vars for deploy 85s ok 46 - Should override target vars with --set variables for revert 85s ok 47 - Should override --set vars with --set-deploy variables for deploy 85s ok 48 - Should not override --set vars with --set-deploy variables for revert 85s ok 49 - Should not override --set vars with --set-revert variables for deploy 85s ok 50 - Should override --set vars with --set-revert variables for revert 85s ok 51 - 'checkout command' isa 'App::Sqitch::Command::checkout' 85s ok 52 - Should get an error current branch 85s ok 53 - Current branch error ident should be "checkout" 85s ok 54 - Should get proper error for current branch error 85s ok 55 - The proper args should have been passed to rev-parse 85s ok 56 - Should get an error for plans without a common change 85s ok 57 - The no common change error ident should be "checkout" 85s ok 58 - The no common change error message should be correct 85s ok 59 - No branch arg should yield usage 85s ok 60 - No args should be passed to usage 85s ok 61 - Empty branch arg should yield usage 85s ok 62 - No args should be passed to usage 85s ok 63 - 'Object with to and variables' isa 'App::Sqitch::Command::checkout' 85s ok 64 - Checkout main 85s ok 65 - The proper args should again have been passed to rev-parse 85s ok 66 - Should have requested the plan file contents as of main 85s ok 67 - Should have checked out other branch 85s ok 68 - Should have no warnings 85s ok 69 - Should have emitted info identifying the last common change 85s ok 70 - "users" ID and 1 should be passed to the engine revert 85s ok 71 - Should have had the current changes for revision 85s ok 72 - undef, "tag", and 1 should be passed to the engine deploy 85s ok 73 - Should have had the other branch changes (decoded) for deploy 85s ok 74 - Engine should verify 85s ok 75 - The engine should be set to log_only 85s ok 76 - The lock timeout should be set to 30 85s ok 77 - Variables should have been passed to the engine twice 85s ok 78 - The revert vars should have been passed first 85s ok 79 - The deploy vars should have been next 85s ok 80 - Checkout main with target 85s ok 81 - Target should be passed to engine 85s ok 82 - Should have no warnings 85s ok 83 - 'Object with to and variables' isa 'App::Sqitch::Command::checkout' 85s ok 84 - Checkout main again 85s ok 85 - Target should be passed to engine 85s ok 86 - Should have no warnings 85s ok 87 - The engine should not be set to log_only 85s ok 88 - The lock timeout should be set to the default 85s ok 89 - The engine should not be set with_verfy 85s ok 90 - undef, "tag", and 1 should be passed to the engine deploy again 85s ok 91 - Should have had the other branch changes (decoded) for deploy again 85s ok 92 - Variables should again have been passed to the engine twice 85s ok 93 - The revert vars should again have been passed first 85s ok 94 - The deploy vars should again have been next 85s ok 95 - Checkout main again with target 85s ok 96 - Target should be passed to engine 85s ok 97 - Should have warning about two targets 85s ok 98 - Should get an exception for unknown arg 85s ok 99 - Unknown arg ident should be "checkout" 85s ok 100 - Should get an exception for two unknown arg 85s ok 101 - Should get an exception for unknown args 85s ok 102 - Unknown args ident should be "checkout" 85s ok 103 - Should get an exception for two unknown args 85s ok 104 - Should rethrow confirm exception 85s ok 105 - Should rethrow fatal exception 85s ok 106 - Should rethrow unknown exception 85s 1..106 85s ok 86s t/cockroach.t ....... 86s ok 1 - require App::Sqitch::Engine::cockroach; 86s ok 2 - An object of class 'App::Sqitch::Engine::cockroach' isa 'App::Sqitch::Engine::cockroach' 86s ok 3 - Key should be "cockroach" 86s ok 4 - Name should be "CockroachDB" 86s ok 5 - Driver should be "DBD::Pg 2.0" 86s ok 6 - wait_lock should return 1 86s ok 7 - App::Sqitch::Engine::cockroach->can('_ts2char_format') 86s ok 8 - _ts2char_format should work 86s ok 9 - App::Sqitch::Engine::cockroach->can('_dt') 86s ok 10 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 86s ok 11 - DateTime year should be set 86s ok 12 - DateTime month should be set 86s ok 13 - DateTime day should be set 86s ok 14 - DateTime hour should be set 86s ok 15 - DateTime minute should be set 86s ok 16 - DateTime second should be set 86s ok 17 - DateTime TZ should be set 86s ok 18 - Should have no table error 86s ok 19 - Should have no column error 86s ok 20 - Should again have no table error 86s ok 21 - Should now have no column error 86s ok 22 - Should now have table error 86s ok 23 - Still should have no column error 86s ok 24 - Run the registry file 86s ok 25 - Shoud have deployed the original SQL file 86s ok 26 - The registry should have been added to the search path 86s ok 27 - App::Sqitch::Engine::cockroach->can(...) 86s # Subtest: live database 86s 1..0 # SKIP Unable to live-test CockroachDB engine: DBI connect('host=localhost;port=26257','root',...) failed: connection to server at "localhost" (::1), port 26257 failed: Connection refused 86s Is the server running on that host and accepting TCP/IP connections? 86s connection to server at "localhost" (127.0.0.1), port 26257 failed: Connection refused 86s Is the server running on that host and accepting TCP/IP connections? at t/cockroach.t line 142. 86s ok 28 # skip Unable to live-test CockroachDB engine: DBI connect('host=localhost;port=26257','root',...) failed: connection to server at "localhost" (::1), port 26257 failed: Connection refused 86s # Is the server running on that host and accepting TCP/IP connections? 86s # connection to server at "localhost" (127.0.0.1), port 26257 failed: Connection refused 86s # Is the server running on that host and accepting TCP/IP connections? at t/cockroach.t line 142. 86s # 86s 1..28 86s ok 87s t/command.t ......... 87s 1..199 87s ok 1 - use App::Sqitch::Command; 87s ok 2 - App::Sqitch::Command->can(...) 87s ok 3 - Load a sqitch object 87s ok 4 - Should get an exception for missing sqitch param 87s ok 5 - Should get an exception for array sqitch param 87s ok 6 - Should get an exception for string sqitch param 87s ok 7 - An object of class 'App::Sqitch::Command' isa 'App::Sqitch::Command' 87s ok 8 - Should get empty hash for no config or options 87s ok 9 - Should get config with no options 87s ok 10 - Options should override config 87s ok 11 - Options keys should have dashes changed to underscores 87s ok 12 - Should find class for "whu" 87s ok 13 - Should find class for "wah-hoo" 87s ok 14 - Should find class for "help" 87s ok 15 - Should find no class for "_nonesush" 87s ok 16 - Should have sent error to debug 87s ok 17 - ENGINES should include all engines 87s ok 18 - Load a sqitch object 87s ok 19 - Load a "whu" command 87s ok 20 - An object of class 'App::Sqitch::Command::whu' isa 'App::Sqitch::Command::whu' 87s ok 21 - The sqitch attribute should be set 87s ok 22 - The command method should return "whu" 87s ok 23 - Load a "whu" command with "foo" config 87s ok 24 - The "foo" attribute should be set 87s ok 25 - Should exit 87s ok 26 - Nonexistent command error ident should be "config" 87s ok 27 - Should get proper mesage for nonexistent command 87s ok 28 - Nonexistent command should yield exitval of 1 87s ok 29 - Should die on bad command 87s ok 30 - Bad command error ident should be "config" 87s ok 31 - Should get proper mesage for bad command 87s ok 32 - Bad command should yield exitval of 1 87s ok 33 - No command should yield usage 87s ok 34 - No args should be passed to usage 87s ok 35 - Should die on broken command module 87s ok 36 - Broken command error ident should be "config" 87s ok 37 - Should get proper mesage for broken command 87s ok 38 - Broken command should yield exitval of 1 87s ok 39 - Load a "whu" command with "--feathers" option 87s ok 40 - The "feathers" attribute should be set 87s ok 41 - Load a "wah-hoo" command 87s ok 42 - 'It' isa 'App::Sqitch::Command::wah_hoo' 87s ok 43 - command() should return hyphenated name 87s ok 44 - Create a "whu" command 87s ok 45 - An object of class 'App::Sqitch::Command::whu' isa 'App::Sqitch::Command::whu' 87s ok 46 - The sqitch attribute should be set 87s ok 47 - The command method should return "whu" 87s ok 48 - Create a "whu" command with "foo" config 87s ok 49 - The "foo" attribute should be set 87s ok 50 - Create a "whu" command with "--feathers" option 87s ok 51 - The "feathers" attribute should be set 87s ok 52 - Create an App::Sqitch::Command object 87s ok 53 - 'default target' isa 'App::Sqitch::Target' 87s ok 54 - Default target name should be "db:" 87s ok 55 - Default target URI should be "db:" 87s ok 56 - Create an App::Sqitch::Command object 87s ok 57 - 'default target' isa 'App::Sqitch::Target' 87s ok 58 - Default target name should be "db:sqlite:" 87s ok 59 - Default target URI should be "db:sqlite:" 87s ok 60 - Should have fetched config stuff 87s ok 61 - Create an App::Sqitch::Command object 87s ok 62 - 'default target' isa 'App::Sqitch::Target' 87s ok 63 - Default target name should be "db:pg:foo" 87s ok 64 - Default target URI should be "db:pg:foo" 87s ok 65 - Should have fetched config stuff again 87s ok 66 - App::Sqitch::Command->can('execute') 87s ok 67 - Create an App::Sqitch::Command object 87s ok 68 - Base class command should be "" 87s ok 69 - Base object command should be "" 87s ok 70 - Should get an error calling execute on command base class 87s ok 71 - Execute exception ident should be "DEV" 87s ok 72 - The execute() error message should be correct 87s ok 73 - Create a subclass command object 87s ok 74 - Subclass oject command should be "whu" 87s ok 75 - Subclass class command should be "whu" 87s ok 76 - Should get an error for un-overridden execute() method 87s ok 77 - Un-overidden execute() exception ident should be "DEV" 87s ok 78 - The unoverridden execute() error message should be correct 87s ok 79 - App::Sqitch::Command->can(...) 87s ok 80 - Create an App::Sqitch::Command object again 87s ok 81 - Base _parse_opts should return an empty hash 87s ok 82 - Create a subclass command object again 87s ok 83 - Subclass should return an empty hash for no args 87s ok 84 - Subclass should use options spec 87s ok 85 - Subclass should parse options spec 87s ok 86 - Args array should be cleared of options 87s ok 87 - Should get warning for unknown option 87s ok 88 - Should call _pod2usage on options parse failure 87s ok 89 - 'Good command object' isa 'App::Sqitch::Command::good' 87s ok 90 - Should get warning for unknown option when there are no options 87s ok 91 - Should call _pod2usage on no options parse failure 87s ok 92 - Should get sqitch param from target_params 87s ok 93 - Load Sqitch with config and plan 87s ok 94 - Load cmd with config and plan 87s ok 95 - Parsing no args should return default target 87s ok 96 - Single unknown arg raise an error 87s ok 97 - Unknown error ident should be "whu" 87s ok 98 - Unknown error message should be correct 87s ok 99 - Single invavlid fiile arg raise an error 87s ok 100 - Unknown error ident should be "whu" 87s ok 101 - Unknown file error message should be correct 87s ok 102 - Single change should be recognized as change 87s ok 103 - Single target should be recognized as target 87s ok 104 - URI target should be recognized as target, too 87s ok 105 - Target and change should be recognized 87s ok 106 - Change and target should be recognized 87s ok 107 - Alternate Target and change should be recognized 87s ok 108 - Change and alternate target should be recognized 87s ok 109 - Change, target, and unknown name should be recognized 87s ok 110 - Multiple changes, target, and unknown name should be recognized 87s ok 111 - Multiple names should be recognized 87s ok 112 - Should get an error with name and unknown 87s ok 113 - Unknown error ident should be "whu" 87s ok 114 - Unknown error message should be correct 87s ok 115 - Should get an error with name and two unknowns 87s ok 116 - Two unknowns error ident should be "whu" 87s ok 117 - Two unknowns error message should be correct 87s ok 118 - Load Sqitch with config 87s ok 119 - Load cmd with config 87s ok 120 - Change following target should be recognized from target plan 87s ok 121 - Passed target should always be returned 87s ok 122 - Passed and specified targets should always be returned 87s ok 123 - Change unknown to passed target should error 87s ok 124 - Change unknown error ident should be "whu" 87s ok 125 - Change unknown error message should be correct 87s ok 126 - Should get known changes from default target (t/sql/sqitch.plan) 87s ok 127 - Change seen after target should error if not in that target 87s ok 128 - Change after target error ident should be "whu" 87s ok 129 - Change after target error message should be correct 87s ok 130 - Should resolve plan file to a target 87s ok 131 - SHould resolve default plan file to target 87s ok 132 - Should resolve engine "pg" file to its target 87s ok 133 - Should resolve engine "sqlite" file to its target 87s ok 134 - Bad target should trigger error 87s ok 135 - Bad target error ident should be "target" 87s ok 136 - Should have bad target error message 87s ok 137 - Should recognize target when default target has no plan file 87s ok 138 - Load Sqitch without engine 87s ok 139 - Load cmd without engine 87s ok 140 - Should have error for no engine or target 87s ok 141 - Should have target ident 87s ok 142 - Should have message about no config 87s ok 143 - Engine arg should override core target error 87s ok 144 - Target arg should override core target error 87s ok 145 - Call _pod2usage on base object 87s ok 146 - Default params should be passed to Pod::Usage 87s ok 147 - Call _pod2usage on "whu" command object 87s ok 148 - Default params should be passed to Pod::Usage 87s ok 149 - 'Config command object' isa 'App::Sqitch::Command::config' 87s ok 150 - Call _pod2usage on "config" command object 87s ok 151 - Should find sqitch-config docs to pass to Pod::Usage 87s ok 152 - 'Good command object' isa 'App::Sqitch::Command::good' 87s ok 153 - Call _pod2usage on "good" command object 87s ok 154 - Should find App::Sqitch::Command::good docs to pass to Pod::Usage 87s ok 155 - App::Sqitch::Command::good->can('usage') 87s ok 156 - Should find App::Sqitch::Command::good docs to pass to Pod::Usage 87s ok 157 - App::Sqitch::Command->can('verbosity') 87s ok 158 - Verbosity should be from sqitch 87s ok 159 - Verbosity should change with sqitch 87s ok 160 - trace should work 87s ok 161 - Should get no trace output for verbosity 2 87s ok 162 - trace_literal should work 87s ok 163 - Should get no trace_literal output for verbosity 2 87s ok 164 - debug should work 87s ok 165 - Should get no debug output for verbosity 1 87s ok 166 - debug_literal should work 87s ok 167 - Should get no debug_literal output for verbosity 1 87s ok 168 - info should work 87s ok 169 - Should get no info output for verbosity 0 87s ok 170 - info_literal should work 87s ok 171 - Should get no info_literal output for verbosity 0 87s ok 172 - comment should work 87s ok 173 - comment should work with verbosity 0 87s ok 174 - comment_literal should work 87s ok 175 - comment_literal should work with verbosity 0 87s ok 176 - emit should work 87s ok 177 - emit should work even with verbosity 0 87s ok 178 - emit_literal should work 87s ok 179 - emit_literal should work even with verbosity 0 87s ok 180 - warn should work 87s ok 181 - warn_literal should work 87s ok 182 - threw Regexp ((?^:EXITED: 2)) 87s ok 183 - usage should work 87s ok 184 - threw Regexp ((?^:EXITED: 2)) 87s ok 185 - usage should prefer sqitch-$command-usage 87s ok 186 - Path delete.me should not exist 87s ok 187 - Create delete.me 87s ok 188 - Path delete.me should now exist 87s ok 189 - The mkdir info should have been output 87s ok 190 - Create delete.me again 87s ok 191 - Path delete.me should still exist 87s ok 192 - Nothing should have been emitted 87s ok 193 - Should fail on permission issue 87s ok 194 - Permission error should have ident "good" 87s ok 195 - The permission error should be formatted properly 87s ok 196 - Should fail on nonexistent file 87s ok 197 - Nonexistant path error should have ident "good" 87s ok 198 - Nonexistant path error should be the message 87s ok 199 - no warnings 87s ok 87s t/config.t .......... 87s 1..360 87s ok 1 - use App::Sqitch::Command::config; 87s ok 2 - Load a sqitch object 87s ok 3 - 'Config command' isa 'App::Sqitch::Command::config' 87s ok 4 - 'Config command' isa 'App::Sqitch::Command' 87s ok 5 - App::Sqitch::Command::config->can(...) 87s ok 6 - Options should be configured 87s ok 7 - Should parse options 87s ok 8 - Options should not conflict with core options 87s ok 9 - Construct with user and system 87s ok 10 - Should get error for multiple config files 87s ok 11 - Construct with user and local 87s ok 12 - Should get error for multiple config files 87s ok 13 - Construct with file and system 87s ok 14 - Should get another error for multiple config files 87s ok 15 - Construct with file and user 87s ok 16 - Should get a third error for multiple config files 87s ok 17 - Construct with file, system, and user 87s ok 18 - Should get one last error for multiple config files 87s ok 19 - Construct with bool and num 87s ok 20 - Should get error for multiple types 87s ok 21 - Construct with int and num 87s ok 22 - Should get another error for multiple types 87s ok 23 - Construct with int and bool 87s ok 24 - Should get a third error for multiple types 87s ok 25 - Construct with int, num, and bool 87s ok 26 - Should get one last error for multiple types 87s ok 27 - Construct with get & unset 87s ok 28 - Should get error for multiple actions 87s ok 29 - Construct with get & unset & edit 87s ok 30 - Should get error for multiple actions 87s ok 31 - Construct with get & unset & edit & list 87s ok 32 - Should get error for multiple actions 87s ok 33 - Construct with unset & edit 87s ok 34 - Should get error for multiple actions 87s ok 35 - Construct with unset & edit & list 87s ok 36 - Should get error for multiple actions 87s ok 37 - Construct with edit & list 87s ok 38 - Should get error for multiple actions 87s ok 39 - Construct with edit & add & list 87s ok 40 - Should get error for multiple actions 87s ok 41 - Construct with edit & add & list & get_all 87s ok 42 - Should get error for multiple actions 87s ok 43 - Construct with edit & add & list & get_regex 87s ok 44 - Should get error for multiple actions 87s ok 45 - Construct with edit & add & list & unset_all 87s ok 46 - Should get error for multiple actions 87s ok 47 - Construct with edit & add & list & get_all & unset_all 87s ok 48 - Should get error for multiple actions 87s ok 49 - Construct with edit & list & remove_section 87s ok 50 - Should get error for multiple actions 87s ok 51 - Construct with edit & list & remove_section & rename_section 87s ok 52 - Should get error for multiple actions 87s ok 53 - Default context should be local context 87s ok 54 - Default action should be undef 87s ok 55 - Default context should be undef 87s ok 56 - Local context should be local 87s ok 57 - User context should be user 87s ok 58 - System context should be system 87s ok 59 - Create config set command 87s ok 60 - Execute the set command 87s ok 61 - The set method should have been called 87s ok 62 - Execute the get command 87s ok 63 - The get method should have been called 87s ok 64 - Create config get_all command 87s ok 65 - An action with a dash should have triggered a method with an underscore 87s ok 66 - Create config get command 87s ok 67 - Get core.engine 87s ok 68 - Should have emitted the merged core.engine 87s ok 69 - Get engine.pg.registry 87s ok 70 - Should have emitted the merged engine.pg.registry 87s ok 71 - Get engine.pg.client 87s ok 72 - Should have emitted the merged engine.pg.client 87s ok 73 - Should get usage for missing get key 87s ok 74 - And the missing get key should trigger a usage message 87s ok 75 - Should get usage for invalid get key 87s ok 76 - And the invalid get key should trigger a usage message 87s ok 77 - Create config get int command 87s ok 78 - Get revert.count as int 87s ok 79 - Should have emitted the revert count 87s ok 80 - Get revert.revision as int 87s ok 81 - Should have emitted the revert revision as an int 87s ok 82 - Get bundle.tags_only as an int should fail 87s ok 83 - Int cast exception ident should be "config" 87s ok 84 - Create config get num command 87s ok 85 - Get revert.count as num 87s ok 86 - Should have emitted the revert count 87s ok 87 - Get revert.revision as num 87s ok 88 - Should have emitted the revert revision as an num 87s ok 89 - Get bundle.tags_only as an num should fail 87s ok 90 - Num cast exception ident should be "config" 87s ok 91 - Create config get bool command 87s ok 92 - Should get failure for invalid bool int 87s ok 93 - Bool int cast exception ident should be "config" 87s ok 94 - Should get failure for invalid bool num 87s ok 95 - Bool num cast exception ident should be "config" 87s ok 96 - Get bundle.tags_only as bool 87s ok 97 - Should have emitted bundle.tags_only as a bool 87s ok 98 - Create config get bool-or-int command 87s ok 99 - Get revert.count as bool-or-int 87s ok 100 - Should have emitted the revert count as an int 87s ok 101 - Get revert.revision as bool-or-int 87s ok 102 - Should have emitted the revert revision as an int 87s ok 103 - Get bundle.tags_only as bool-or-int 87s ok 104 - Should have emitted bundle.tags_only as a bool 87s ok 105 - Create system config get command 87s ok 106 - Get system core.engine 87s ok 107 - Should have emitted the system core.engine 87s ok 108 - Get system engine.pg.client 87s ok 109 - Should have emitted the system engine.pg.client 87s ok 110 - Attempt to get engine.pg.host should fail 87s ok 111 - Error ident should be "config" 87s ok 112 - Error Message should be empty 87s ok 113 - Error exitval should be 1 87s ok 114 - Nothing should have been emitted 87s ok 115 - Create user config get command 87s ok 116 - Get user engine.pg.registry 87s ok 117 - Should have emitted the user engine.pg.registry 87s ok 118 - Get user engine.pg.client 87s ok 119 - Should have emitted the user engine.pg.client 87s ok 120 - Create local config get command 87s ok 121 - Get local engine.pg.target 87s ok 122 - Should have emitted the local engine.pg.target 87s ok 123 - Get local core.engine 87s ok 124 - Should have emitted the local core.engine 87s ok 125 - Create another system config get command 87s ok 126 - There should be no system config file 87s ok 127 - Should fail when no system config file 87s ok 128 - Error ident should be "config" 87s ok 129 - Error Message should be empty 87s ok 130 - Error exitval should be 1 87s ok 131 - Create another user config get command 87s ok 132 - There should be no user config file 87s ok 133 - Should fail when no user config file 87s ok 134 - Error ident should be "config" 87s ok 135 - Error Message should be empty 87s ok 136 - Error exitval should be 1 87s ok 137 - Create another local config get command 87s ok 138 - There should be no local config file 87s ok 139 - Should fail when no local config file 87s ok 140 - Error ident should be "config" 87s ok 141 - Error Message should be empty 87s ok 142 - Error exitval should be 1 87s ok 143 - Create config list command 87s ok 144 - Execute the list action 87s ok 145 - Should have emitted the merged config 87s ok 146 - Create system config list command 87s ok 147 - List the system config 87s ok 148 - Should have emitted the system config list 87s ok 149 - Create user config list command 87s ok 150 - List the user config 87s ok 151 - Should only have emitted the user config list 87s ok 152 - Create local config list command 87s ok 153 - List the local config 87s ok 154 - Should only have emitted the local config list 87s ok 155 - Create system config list command with no file 87s ok 156 - List the system config 87s ok 157 - Nothing should have been emitted 87s ok 158 - Create user config list command with no file 87s ok 159 - List the user config 87s ok 160 - Nothing should have been emitted 87s ok 161 - Create system config set command 87s ok 162 - Write core.foo 87s ok 163 - The property should have been written 87s ok 164 - Write core.engine 87s ok 165 - Both settings should be saved 87s ok 166 - Write engine.pg.user 87s ok 167 - Both sections should be saved 87s ok 168 - Should set usage for missing set key 87s ok 169 - And the missing set key should trigger a usage message 87s ok 170 - Should set usage for invalid set key 87s ok 171 - And the invalid set key should trigger a usage message 87s ok 172 - Should set usage for missing set value 87s ok 173 - And the missing set value should trigger a usage message 87s ok 174 - Create system config add command 87s ok 175 - Add to core.foo 87s ok 176 - The value should have been added to the property 87s ok 177 - Should add usage for missing add key 87s ok 178 - And the missing add key should trigger a usage message 87s ok 179 - Should add usage for invalid add key 87s ok 180 - And the invalid add key should trigger a usage message 87s ok 181 - Should add usage for missing add value 87s ok 182 - And the missing add value should trigger a usage message 87s ok 183 - Create system config add command 87s ok 184 - Get core.engine with regex 87s ok 185 - Should have emitted value 87s ok 186 - Get core.foo with regex 87s ok 187 - Should have emitted value 87s ok 188 - Attempt to get core.foo with non-matching regex should fail 87s ok 189 - Error ident should be "config" 87s ok 190 - Error Message should be empty 87s ok 191 - Error exitval should be 1 87s ok 192 - Nothing should have been emitted 87s ok 193 - Create system config get_all command 87s ok 194 - Call get_all on core.engine 87s ok 195 - The engine should have been emitted 87s ok 196 - Get all core.engine with regex 87s ok 197 - Should have emitted value 87s ok 198 - Call get_all on core.foo 87s ok 199 - Both foos should have been emitted 87s ok 200 - Call get_all on core.foo with regex 87s ok 201 - Both foos should have been emitted 87s ok 202 - Call get_all on core.foo with limiting regex 87s ok 203 - Only the one foo should have been emitted 87s ok 204 - Attempt to get_all core.foo with non-matching regex should fail 87s ok 205 - Error ident should be "config" 87s ok 206 - Error Message should be empty 87s ok 207 - Error exitval should be 1 87s ok 208 - Nothing should have been emitted 87s ok 209 - Should get_all usage for missing get_all key 87s ok 210 - And the missing get_all key should trigger a usage message 87s ok 211 - Should get_all usage for invalid get_all key 87s ok 212 - And the invalid get_all key should trigger a usage message 87s ok 213 - Create config get_all int command 87s ok 214 - Get revert.count as int 87s ok 215 - Should have emitted the revert count 87s ok 216 - Get revert.revision as int 87s ok 217 - Should have emitted the revert revision as an int 87s ok 218 - Get bundle.tags_only as an int should fail 87s ok 219 - Int cast exception ident should be "config" 87s ok 220 - Create config get_all num command 87s ok 221 - Get revert.count as num 87s ok 222 - Should have emitted the revert count 87s ok 223 - Get revert.revision as num 87s ok 224 - Should have emitted the revert revision as an num 87s ok 225 - Get bundle.tags_only as an num should fail 87s ok 226 - Num cast exception ident should be "config" 87s ok 227 - Create config get_all bool command 87s ok 228 - Should get failure for invalid bool int 87s ok 229 - Bool int cast exception ident should be "config" 87s ok 230 - Should get failure for invalid bool num 87s ok 231 - Num int cast exception ident should be "config" 87s ok 232 - Get bundle.tags_only as bool 87s ok 233 - Should have emitted bundle.tags_only as a bool 87s ok 234 - Create config get_all bool-or-int command 87s ok 235 - Get revert.count as bool-or-int 87s ok 236 - Should have emitted the revert count as an int 87s ok 237 - Get revert.revision as bool-or-int 87s ok 238 - Should have emitted the revert revision as an int 87s ok 239 - Get bundle.tags_only as bool-or-int 87s ok 240 - Should have emitted bundle.tags_only as a bool 87s ok 241 - Create system config get_regex command 87s ok 242 - Call get_regex on core\..+ 87s ok 243 - Should match all core options 87s ok 244 - Call get_regex on engine\.pg\..+ 87s ok 245 - Should match all engine.pg options 87s ok 246 - Call get_regex on engine\.pg\..+ and value regex 87s ok 247 - Should match all engine.pg options that match 87s ok 248 - Call get_regex on foo\Bar\..+ and always-matching regex 87s ok 249 - Should include key with no value 87s ok 250 - Attempt to get_regex engine\.pg with non-matching regex should fail 87s ok 251 - Error ident should be "config" 87s ok 252 - Error Message should be empty 87s ok 253 - Error exitval should be 1 87s ok 254 - Nothing should have been emitted 87s ok 255 - Should get_regex usage for missing get_regex key 87s ok 256 - And the missing get_regex key should trigger a usage message 87s ok 257 - Should get_regex usage for invalid get_regex key 87s ok 258 - And the invalid get_regex key should trigger a usage message 87s ok 259 - Create config get_regex int command 87s ok 260 - Get revert.count as int 87s ok 261 - Should have emitted the revert count 87s ok 262 - Get revert.revision as int 87s ok 263 - Should have emitted the revert revision as an int 87s ok 264 - Get bundle.tags_only as an int should fail 87s ok 265 - Int cast exception ident should be "config" 87s ok 266 - Create config get_regexp num command 87s ok 267 - Get revert.count as num 87s ok 268 - Should have emitted the revert count 87s ok 269 - Get revert.revision as num 87s ok 270 - Should have emitted the revert revision as an num 87s ok 271 - Get bundle.tags_only as an num should fail 87s ok 272 - Num cast exception ident should be "config" 87s ok 273 - Create config get_regex bool command 87s ok 274 - Should get failure for invalid bool int 87s ok 275 - Bool int cast exception ident should be "config" 87s ok 276 - Should get failure for invalid bool num 87s ok 277 - Num int cast exception ident should be "config" 87s ok 278 - Get bundle.tags_only as bool 87s ok 279 - Should have emitted bundle.tags_only as a bool 87s ok 280 - Create config get_regex bool-or-int command 87s ok 281 - Get revert.count as bool-or-int 87s ok 282 - Should have emitted the revert count as an int 87s ok 283 - Get revert.revision as bool-or-int 87s ok 284 - Should have emitted the revert revision as an int 87s ok 285 - Get bundle.tags_only as bool-or-int 87s ok 286 - Should have emitted bundle.tags_only as a bool 87s ok 287 - Create system config unset command 87s ok 288 - Unset engine.pg.user 87s ok 289 - engine.pg.user should be gone 87s ok 290 - Unset core.engine 87s ok 291 - core.engine should have been removed 87s ok 292 - Should get failure trying to delete multivalue key 87s ok 293 - Multiple value exception ident should be "config" 87s ok 294 - And it should have the proper error message 87s ok 295 - Unset core.foo with a regex 87s ok 296 - The core.foo "baz" value should have been removed 87s ok 297 - Should unset usage for missing unset key 87s ok 298 - And the missing unset key should trigger a usage message 87s ok 299 - Should unset usage for invalid unset key 87s ok 300 - And the invalid unset key should trigger a usage message 87s ok 301 - Create system config unset_all command 87s ok 302 - unset_all core.foo 87s ok 303 - core.foo should have been removed 87s ok 304 - unset_all core.foo with regex 87s ok 305 - core.foo should have one value left 87s ok 306 - Should unset_all usage for missing unset_all key 87s ok 307 - And the missing unset_all key should trigger a usage message 87s ok 308 - Should unset_all usage for invalid unset_all key 87s ok 309 - And the invalid unset_all key should trigger a usage message 87s ok 310 - Create system config replace_all command 87s ok 311 - Replace all core.bar 87s ok 312 - core.bar should have all its values with one value 87s ok 313 - Replace all core.bar matching /^ba/ 87s ok 314 - core.foo should have had the matching values replaced 87s ok 315 - Create system config rename_section command 87s ok 316 - Rename "core" to "funk" 87s ok 317 - core.foo should have become funk.foo 87s ok 318 - Should fail with no new name 87s ok 319 - Message should be in the usage call 87s ok 320 - Should fail with bad old name 87s ok 321 - Message should be in the usage call 87s ok 322 - Should fail with bad new name 87s ok 323 - Message should be in the usage call 87s ok 324 - Should fail with invalid section 87s ok 325 - Invalid section exception ident should be "config" 87s ok 326 - Invalid section exception message should be set 87s ok 327 - Create system config remove_section command 87s ok 328 - Remove "func" section 87s ok 329 - The "funk" section should be gone 87s ok 330 - Should fail with no name 87s ok 331 - Message should be in the usage call 87s ok 332 - Should fail with invalid name 87s ok 333 - Invalid key name exception ident should be "config" 87s ok 334 - And the invalid key message should be set 87s ok 335 - Should fail fetching multi-value key 87s ok 336 - Multi-value key exception ident should be "config" 87s ok 337 - The multiple value error should be thrown 87s ok 338 - Should fail setting multi-value key 87s ok 339 - Multi-value key exception ident should be "config" 87s ok 340 - The multi-value key error should be thrown 87s ok 341 - Set should fail on App::Sqitch::Cofig error 87s ok 342 - Set exception ident should be "config" 87s ok 343 - Config set exception message should propagate 87s ok 344 - Unset should fail on App::Sqitch::Cofig error 87s ok 345 - Unset exception ident should be "config" 87s ok 346 - Config set exception message should propagate 87s ok 347 - Rename should fail on App::Sqitch::Cofig error 87s ok 348 - Rename exception ident should be "config" 87s ok 349 - Config rename exception message should propagate 87s ok 350 - Remove should fail on App::Sqitch::Cofig error 87s ok 351 - Remove exception ident should be "config" 87s ok 352 - Config remove exception message should propagate 87s ok 353 - Create system config edit command 87s ok 354 - Execute the edit comand 87s ok 355 - The editor should have been run 87s ok 356 - Load a new sqitch object 87s ok 357 - Create system config set command with subdirectory config file path 87s ok 358 - Set "my.foo" in subdirectory config file 87s ok 359 - The file should have been written 87s ok 360 - no warnings 87s ok 88s t/conn_cmd_role.t ... 88s ok 1 - use App::Sqitch::Role::ConnectingCommand; 88s ok 2 - App::Sqitch::Command::click->can('does') 88s ok 3 - App::Sqitch::Command::click does App::Sqitch::Role::ConnectingCommand 88s ok 4 - Options should include connection options 88s ok 5 - Should get no params for no options 88s ok 6 - Should get dbname for --db-name 88s ok 7 - Should collect existing but false params 88s ok 8 - Should collect params 88s ok 9 - An object of class 'App::Sqitch::Command::click' isa 'App::Sqitch::Command::click' 88s ok 10 - Should get connection params from target_params 88s 1..10 88s ok 88s t/cx_cmd_role.t ..... 88s ok 1 - use App::Sqitch::Role::ContextCommand; 88s ok 2 - App::Sqitch::Command::click->can('does') 88s ok 3 - App::Sqitch::Command::click does App::Sqitch::Role::ContextCommand 88s ok 4 - Options should include context options 88s ok 5 - Should get no params for no options 88s ok 6 - Should get no params for empty options 88s ok 7 - Should have no warning 88s ok 8 - Should get top_dir 88s ok 9 - Should have --top-dir deprecation warning 88s ok 10 - Should collect params 88s ok 11 - Should have --top-dir deprecation warning again 88s ok 12 - An object of class 'App::Sqitch::Command::click' isa 'App::Sqitch::Command::click' 88s ok 13 - Should get context params from target_params 88s 1..13 88s ok 88s t/datetime.t ........ 88s 1..33 88s ok 1 - require App::Sqitch::DateTime; 88s ok 2 - Construct a datetime object 88s ok 3 - as_string_formats should be correct 88s ok 4 - Date format "full" should yield "Saturday, November 2, 2024, 10:02:05 AM America/Vancouver" 88s ok 5 - Format "full" should be valid 88s ok 6 - Date format "long" should yield "November 2, 2024, 10:02:05 AM PDT" 88s ok 7 - Format "long" should be valid 88s ok 8 - Date format "medium" should yield "Nov 2, 2024, 10:02:05 AM" 88s ok 9 - Format "medium" should be valid 88s ok 10 - Date format "short" should yield "11/2/24, 10:02 AM" 88s ok 11 - Format "short" should be valid 88s ok 12 - Date format "raw" should yield "2024-11-02T17:02:05Z" 88s ok 13 - Format "raw" should be valid 88s ok 14 - Date format "" should yield "2024-11-02T17:02:05Z" 88s ok 15 - Date format "iso" should yield "2024-11-02 10:02:05 -0700" 88s ok 16 - Format "iso" should be valid 88s ok 17 - Date format "iso8601" should yield "2024-11-02 10:02:05 -0700" 88s ok 18 - Format "iso8601" should be valid 88s ok 19 - Date format "rfc" should yield "Sat, 02 Nov 2024 10:02:05 -0700" 88s ok 20 - Format "rfc" should be valid 88s ok 21 - Date format "rfc2822" should yield "Sat, 02 Nov 2024 10:02:05 -0700" 88s ok 22 - Format "rfc2822" should be valid 88s ok 23 - Date format "cldr:HH'h' mm'm'" should yield "10h 02m" 88s ok 24 - Format "cldr:HH'h' mm'm'" should be valid 88s ok 25 - Date format "strftime:%a at %H:%M:%S" should yield "Sat at 10:02:05" 88s ok 26 - Format "strftime:%a at %H:%M:%S" should be valid 88s ok 27 - Should get error for invalid date format 88s ok 28 - Invalid date format error ident should be "datetime" 88s ok 29 - Invalid date format error message should be correct 88s ok 30 - Should get error for invalid as_string format param 88s ok 31 - Invalid date format error ident should be "datetime" 88s ok 32 - Invalid date format error message should be correct 88s ok 33 - no warnings 88s ok 88s t/dbiengine_role.t .. 88s 1..14 88s ok 1 - require App::Sqitch::Role::DBIEngine; 88s ok 2 - App::Sqitch::Role::DBIEngine->can(...) 88s ok 3 - _ts_default shoudld return DEFAULT 88s ok 4 - registry_version should propagate non-table error 88s ok 5 - registry_version should return false on no-table error 88s ok 6 - _cid should propagate non-table error 88s ok 7 - _cid should return false on no-table error and unititialized 88s ok 8 - curent_state should propagate _select_state error 88s ok 9 - Should have passed 1 to _select_state 88s ok 10 - curent_state should return false on no-table error 88s ok 11 - Should again have passed 1 to _select_state 88s ok 12 - curent_state should propagate second error on no-column error 88s ok 13 - Should again have passed 0 to _select_state 88s ok 14 - Should get undef from change_id_for when no useful params 88s ok 89s t/depend.t .......... 89s 1..326 89s ok 1 - require App::Sqitch::Plan::Depend; 89s ok 2 - Load a sqitch sqitch object 89s ok 3 - App::Sqitch::Plan::Depend->can(...) 89s ok 4 - Construct "foo" 89s ok 5 - Constructed should stringify as "foo" 89s ok 6 - Constructed should have key name "foo" 89s ok 7 - Constructed should plan stringify as "foo" 89s ok 8 - Parse "foo" 89s ok 9 - Parsed should plan stringify as "foo" 89s ok 10 - "foo" should be required 89s ok 11 - "foo" should not be conflicting 89s ok 12 - "foo" type should be "require" 89s ok 13 - Should not have got project from "foo" 89s ok 14 - Should have project "depend" for "foo" 89s ok 15 - "foo" should not be external 89s ok 16 - "foo" should be internal 89s ok 17 - Should not have got ID from "foo" 89s ok 18 - Construct "bar" 89s ok 19 - Constructed should stringify as "bar" 89s ok 20 - Constructed should have key name "bar" 89s ok 21 - Constructed should plan stringify as "bar" 89s ok 22 - Parse "bar" 89s ok 23 - Parsed should plan stringify as "bar" 89s ok 24 - "bar" should be required 89s ok 25 - "bar" should not be conflicting 89s ok 26 - "bar" type should be "require" 89s ok 27 - Should not have got project from "bar" 89s ok 28 - Should have project "depend" for "bar" 89s ok 29 - "bar" should not be external 89s ok 30 - "bar" should be internal 89s ok 31 - Should not have got ID from "bar" 89s ok 32 - Construct "@bar" 89s ok 33 - Constructed should stringify as "@bar" 89s ok 34 - Constructed should have key name "@bar" 89s ok 35 - Constructed should plan stringify as "@bar" 89s ok 36 - Parse "@bar" 89s ok 37 - Parsed should plan stringify as "@bar" 89s ok 38 - "@bar" should be required 89s ok 39 - "@bar" should not be conflicting 89s ok 40 - "@bar" type should be "require" 89s ok 41 - Should not have got project from "@bar" 89s ok 42 - Should have project "depend" for "@bar" 89s ok 43 - "@bar" should not be external 89s ok 44 - "@bar" should be internal 89s ok 45 - Should not have got ID from "@bar" 89s ok 46 - Construct "!foo" 89s ok 47 - Constructed should stringify as "foo" 89s ok 48 - Constructed should have key name "foo" 89s ok 49 - Constructed should plan stringify as "!foo" 89s ok 50 - Parse "!foo" 89s ok 51 - Parsed should plan stringify as "!foo" 89s ok 52 - "!foo" should be conflicting 89s ok 53 - "!foo" should not be required 89s ok 54 - "!foo" type should be "conflict" 89s ok 55 - Should not have got project from "!foo" 89s ok 56 - Should have project "depend" for "!foo" 89s ok 57 - "!foo" should not be external 89s ok 58 - "!foo" should be internal 89s ok 59 - Should not have got ID from "!foo" 89s ok 60 - Construct "!@bar" 89s ok 61 - Constructed should stringify as "@bar" 89s ok 62 - Constructed should have key name "@bar" 89s ok 63 - Constructed should plan stringify as "!@bar" 89s ok 64 - Parse "!@bar" 89s ok 65 - Parsed should plan stringify as "!@bar" 89s ok 66 - "!@bar" should be conflicting 89s ok 67 - "!@bar" should not be required 89s ok 68 - "!@bar" type should be "conflict" 89s ok 69 - Should not have got project from "!@bar" 89s ok 70 - Should have project "depend" for "!@bar" 89s ok 71 - "!@bar" should not be external 89s ok 72 - "!@bar" should be internal 89s ok 73 - Should not have got ID from "!@bar" 89s ok 74 - Construct "foo@bar" 89s ok 75 - Constructed should stringify as "foo@bar" 89s ok 76 - Constructed should have key name "foo@bar" 89s ok 77 - Constructed should plan stringify as "foo@bar" 89s ok 78 - Parse "foo@bar" 89s ok 79 - Parsed should plan stringify as "foo@bar" 89s ok 80 - "foo@bar" should be required 89s ok 81 - "foo@bar" should not be conflicting 89s ok 82 - "foo@bar" type should be "require" 89s ok 83 - Should not have got project from "foo@bar" 89s ok 84 - Should have project "depend" for "foo@bar" 89s ok 85 - "foo@bar" should not be external 89s ok 86 - "foo@bar" should be internal 89s ok 87 - Should not have got ID from "foo@bar" 89s ok 88 - Construct "!foo@bar" 89s ok 89 - Constructed should stringify as "foo@bar" 89s ok 90 - Constructed should have key name "foo@bar" 89s ok 91 - Constructed should plan stringify as "!foo@bar" 89s ok 92 - Parse "!foo@bar" 89s ok 93 - Parsed should plan stringify as "!foo@bar" 89s ok 94 - "!foo@bar" should be conflicting 89s ok 95 - "!foo@bar" should not be required 89s ok 96 - "!foo@bar" type should be "conflict" 89s ok 97 - Should not have got project from "!foo@bar" 89s ok 98 - Should have project "depend" for "!foo@bar" 89s ok 99 - "!foo@bar" should not be external 89s ok 100 - "!foo@bar" should be internal 89s ok 101 - Should not have got ID from "!foo@bar" 89s ok 102 - Construct "proj:foo" 89s ok 103 - Constructed should stringify as "proj:foo" 89s ok 104 - Constructed should have key name "foo" 89s ok 105 - Constructed should plan stringify as "proj:foo" 89s ok 106 - Parse "proj:foo" 89s ok 107 - Parsed should plan stringify as "proj:foo" 89s ok 108 - "proj:foo" should be required 89s ok 109 - "proj:foo" should not be conflicting 89s ok 110 - "proj:foo" type should be "require" 89s ok 111 - Should have got project from "proj:foo" 89s ok 112 - Should have project "proj" for "proj:foo" 89s ok 113 - "proj:foo" should be external 89s ok 114 - "proj:foo" should not be internal 89s ok 115 - Should not have got ID from "proj:foo" 89s ok 116 - Construct "!proj:foo" 89s ok 117 - Constructed should stringify as "proj:foo" 89s ok 118 - Constructed should have key name "foo" 89s ok 119 - Constructed should plan stringify as "!proj:foo" 89s ok 120 - Parse "!proj:foo" 89s ok 121 - Parsed should plan stringify as "!proj:foo" 89s ok 122 - "!proj:foo" should be conflicting 89s ok 123 - "!proj:foo" should not be required 89s ok 124 - "!proj:foo" type should be "conflict" 89s ok 125 - Should have got project from "!proj:foo" 89s ok 126 - Should have project "proj" for "!proj:foo" 89s ok 127 - "!proj:foo" should be external 89s ok 128 - "!proj:foo" should not be internal 89s ok 129 - Should not have got ID from "!proj:foo" 89s ok 130 - Construct "proj:@foo" 89s ok 131 - Constructed should stringify as "proj:@foo" 89s ok 132 - Constructed should have key name "@foo" 89s ok 133 - Constructed should plan stringify as "proj:@foo" 89s ok 134 - Parse "proj:@foo" 89s ok 135 - Parsed should plan stringify as "proj:@foo" 89s ok 136 - "proj:@foo" should be required 89s ok 137 - "proj:@foo" should not be conflicting 89s ok 138 - "proj:@foo" type should be "require" 89s ok 139 - Should have got project from "proj:@foo" 89s ok 140 - Should have project "proj" for "proj:@foo" 89s ok 141 - "proj:@foo" should be external 89s ok 142 - "proj:@foo" should not be internal 89s ok 143 - Should not have got ID from "proj:@foo" 89s ok 144 - Construct "!proj:@foo" 89s ok 145 - Constructed should stringify as "proj:@foo" 89s ok 146 - Constructed should have key name "@foo" 89s ok 147 - Constructed should plan stringify as "!proj:@foo" 89s ok 148 - Parse "!proj:@foo" 89s ok 149 - Parsed should plan stringify as "!proj:@foo" 89s ok 150 - "!proj:@foo" should be conflicting 89s ok 151 - "!proj:@foo" should not be required 89s ok 152 - "!proj:@foo" type should be "conflict" 89s ok 153 - Should have got project from "!proj:@foo" 89s ok 154 - Should have project "proj" for "!proj:@foo" 89s ok 155 - "!proj:@foo" should be external 89s ok 156 - "!proj:@foo" should not be internal 89s ok 157 - Should not have got ID from "!proj:@foo" 89s ok 158 - Construct "proj:foo@bar" 89s ok 159 - Constructed should stringify as "proj:foo@bar" 89s ok 160 - Constructed should have key name "foo@bar" 89s ok 161 - Constructed should plan stringify as "proj:foo@bar" 89s ok 162 - Parse "proj:foo@bar" 89s ok 163 - Parsed should plan stringify as "proj:foo@bar" 89s ok 164 - "proj:foo@bar" should be required 89s ok 165 - "proj:foo@bar" should not be conflicting 89s ok 166 - "proj:foo@bar" type should be "require" 89s ok 167 - Should have got project from "proj:foo@bar" 89s ok 168 - Should have project "proj" for "proj:foo@bar" 89s ok 169 - "proj:foo@bar" should be external 89s ok 170 - "proj:foo@bar" should not be internal 89s ok 171 - Should not have got ID from "proj:foo@bar" 89s ok 172 - Construct "!proj:foo@bar" 89s ok 173 - Constructed should stringify as "proj:foo@bar" 89s ok 174 - Constructed should have key name "foo@bar" 89s ok 175 - Constructed should plan stringify as "!proj:foo@bar" 89s ok 176 - Parse "!proj:foo@bar" 89s ok 177 - Parsed should plan stringify as "!proj:foo@bar" 89s ok 178 - "!proj:foo@bar" should be conflicting 89s ok 179 - "!proj:foo@bar" should not be required 89s ok 180 - "!proj:foo@bar" type should be "conflict" 89s ok 181 - Should have got project from "!proj:foo@bar" 89s ok 182 - Should have project "proj" for "!proj:foo@bar" 89s ok 183 - "!proj:foo@bar" should be external 89s ok 184 - "!proj:foo@bar" should not be internal 89s ok 185 - Should not have got ID from "!proj:foo@bar" 89s ok 186 - Construct "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 187 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 188 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 189 - Constructed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 190 - Parse "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 191 - Parsed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 192 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should be required 89s ok 193 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be conflicting 89s ok 194 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "require" 89s ok 195 - Should not have got project from "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 196 - Should have undef project for "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 197 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external 89s ok 198 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal 89s ok 199 - Should have got ID from "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 200 - Construct "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 201 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 202 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 203 - Constructed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 204 - Parse "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 205 - Parsed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 206 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should be conflicting 89s ok 207 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be required 89s ok 208 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "conflict" 89s ok 209 - Should not have got project from "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 210 - Should have undef project for "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 211 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external 89s ok 212 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal 89s ok 213 - Should have got ID from "!9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 214 - Construct "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 215 - Constructed should stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 216 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 217 - Constructed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 218 - Parse "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 219 - Parsed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 220 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be required 89s ok 221 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be conflicting 89s ok 222 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "require" 89s ok 223 - Should have got project from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 224 - Should have project "foo" for "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 225 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external 89s ok 226 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal 89s ok 227 - Should have got ID from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 228 - Construct "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 229 - Constructed should stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 230 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 231 - Constructed should plan stringify as "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 232 - Parse "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 233 - Parsed should plan stringify as "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 234 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be conflicting 89s ok 235 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be required 89s ok 236 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "conflict" 89s ok 237 - Should have got project from "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 238 - Should have project "foo" for "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 239 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external 89s ok 240 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal 89s ok 241 - Should have got ID from "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" 89s ok 242 - Construct "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 243 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 244 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 245 - Constructed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 246 - Parse "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 247 - Parsed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 248 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be required 89s ok 249 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be conflicting 89s ok 250 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" type should be "require" 89s ok 251 - Should not have got project from "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 252 - Should have project "depend" for "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 253 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be external 89s ok 254 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be internal 89s ok 255 - Should not have got ID from "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 256 - Construct "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 257 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 258 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 259 - Constructed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 260 - Parse "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 261 - Parsed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 262 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be conflicting 89s ok 263 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be required 89s ok 264 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" type should be "conflict" 89s ok 265 - Should not have got project from "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 266 - Should have project "depend" for "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 267 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be external 89s ok 268 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be internal 89s ok 269 - Should not have got ID from "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 270 - Construct "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 271 - Constructed should stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 272 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 273 - Constructed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 274 - Parse "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 275 - Parsed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 276 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be required 89s ok 277 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be conflicting 89s ok 278 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" type should be "require" 89s ok 279 - Should have got project from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 280 - Should have project "foo" for "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 281 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be external 89s ok 282 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be internal 89s ok 283 - Should not have got ID from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" 89s ok 284 - Should fail to parse "foo bar" 89s ok 285 - Should fail to parse "foo+@bar" 89s ok 286 - Should fail to parse "foo:+bar" 89s ok 287 - Should fail to parse "foo@bar+" 89s ok 288 - Should fail to parse "proj:foo@bar+" 89s ok 289 - Should get exception for no change or tag 89s ok 290 - No change or tag error ident should be "DEV" 89s ok 291 - No change or tag error message should be correct 89s ok 292 - Should get an error for ID + change 89s ok 293 - ID + change error ident ident should be "DEV" 89s ok 294 - ID + change error message should be correct 89s ok 295 - Should get an error for ID + tag 89s ok 296 - ID + tag error ident ident should be "DEV" 89s ok 297 - ID + tag error message should be correct 89s ok 298 - Should get an error for ID + tag and change 89s ok 299 - ID + tag and change error ident ident should be "DEV" 89s ok 300 - ID + tag and change error message should be correct 89s ok 301 - Create "roles" dependency 89s ok 302 - Should find the "roles" ID in the plan 89s ok 303 - The "roles" change should not be external 89s ok 304 - The "roles" change should be internal 89s ok 305 - Create "elsewhere:roles" dependency 89s ok 306 - The "elsewhere:roles" id should be undef 89s ok 307 - The "elsewhere:roles" change should be external 89s ok 308 - The "elsewhere:roles" change should not be internal 89s ok 309 - Create depend using external ID 89s ok 310 - The external ID should be set 89s ok 311 - The external ID should register as external 89s ok 312 - The external ID should not register as internal 89s ok 313 - Create depend using "roles" ID 89s ok 314 - The "roles" ID should be set 89s ok 315 - The "roles" ID should not register as external 89s ok 316 - The "roles" ID should register as internal 89s ok 317 - Create "nonexistent" dependency 89s ok 318 - Should get error for nonexistent change 89s ok 319 - Nonexistent change error ident should be "plan" 89s ok 320 - Nonexistent change error message should be correct 89s ok 321 - Create depend without ID 89s ok 322 - Resolved ID should be undef 89s ok 323 - Set resolved ID 89s ok 324 - Resolved ID should be set 89s ok 325 - Unset resolved ID 89s ok 326 - Resolved ID should be undef again 89s ok 89s t/deploy.t .......... 89s ok 1 - require App::Sqitch::Command::deploy; 89s ok 2 - The class (or class-like) 'App::Sqitch::Command::deploy' isa 'App::Sqitch::Command' 89s ok 3 - App::Sqitch::Command::deploy->can(...) 89s ok 4 - App::Sqitch::Command::deploy does ContextCommand 89s ok 5 - App::Sqitch::Command::deploy does ConnectingCommand 89s ok 6 - Options should be correct 89s ok 7 - Should parse options 89s ok 8 - Options should not conflict with core options 89s ok 9 - Should have default configuration with no config or opts 89s ok 10 - Should have mode, verify, set, log-only, & lock-timeout options 89s ok 11 - Should have mode and verify configuration 89s ok 12 - 'new deploy with target' isa 'App::Sqitch::Command::deploy' 89s ok 13 - Should have target "foo" 89s ok 14 - An object of class 'App::Sqitch::Command::deploy' isa 'App::Sqitch::Command::deploy' 89s ok 15 - Should have undef default target 89s ok 16 - to_change should be undef 89s ok 17 - mode should be "all" 89s ok 18 - Should collect no variables 89s ok 19 - Should collect core vars 89s ok 20 - Should override core vars with deploy vars 89s ok 21 - Should override deploy vars with engine vars 89s ok 22 - Should override engine vars with target vars 89s ok 23 - Should override target vars with --set variables 89s ok 24 - Execute to "@alpha" 89s ok 25 - "@alpha" "all", and 0 should be passed to the engine 89s ok 26 - Should have a target 89s ok 27 - The engine should not be set log_only 89s ok 28 - The engine should have the default lock_timeout 89s ok 29 - Should have no warnings 89s ok 30 - Execute 89s ok 31 - undef and "all" should be passed to the engine 89s ok 32 - Should have no warnings 89s ok 33 - Execute with change 89s ok 34 - "widgets" and "all" should be passed to the engine 89s ok 35 - Should have no warnings 89s ok 36 - Execute with target 89s ok 37 - undef and "all" should be passed to the engine 89s ok 38 - The target should be as specified 89s ok 39 - Should have no warnings 89s ok 40 - Execute with change and target 89s ok 41 - "widgets" and "all" should be passed to the engine 89s ok 42 - The target should be as specified 89s ok 43 - Should have no warnings 89s ok 44 - Execute with target and change 89s ok 45 - "widgets" and "all" should be passed to the engine 89s ok 46 - The target should be as specified 89s ok 47 - Should have no warnings 89s ok 48 - 'Object with to, mode, log_only, and variables' isa 'App::Sqitch::Command::deploy' 89s ok 49 - Execute again 89s ok 50 - Engine should verify 89s ok 51 - The engine should be set log_only 89s ok 52 - The lock timeout should be set to 30 89s ok 53 - "foo", "tag", and 1 should be passed to the engine 89s ok 54 - Vars should have been passed through to the engine 89s ok 55 - The target name should be from the target option 89s ok 56 - Should have no warnings 89s ok 57 - Execute with change 89s ok 58 - Engine should verify 89s ok 59 - The engine should be set log_only 89s ok 60 - The lock timeout should be set to 30 89s ok 61 - "foo", "tag", and 1 should be passed to the engine 89s ok 62 - Vars should have been passed through to the engine 89s ok 63 - Should have too many changes warning 89s ok 64 - Execute with target again 89s ok 65 - Engine should verify 89s ok 66 - The engine should be set log_only 89s ok 67 - The lock timeout should be set to 30 89s ok 68 - "foo", "tag", and 1 should be passed to the engine 89s ok 69 - Vars should have been passed through to the engine 89s ok 70 - The target should be from the target option 89s ok 71 - Should have warning about too many targets 89s ok 72 - "all" should be a valid mode 89s ok 73 - "tag" should be a valid mode 89s ok 74 - "change" should be a valid mode 89s ok 75 - "foo" should not be a valid mode 89s ok 76 - "bad" should not be a valid mode 89s ok 77 - "gar" should not be a valid mode 89s ok 78 - Should get an exception for unknown arg 89s ok 79 - Unknown arg ident should be "deploy" 89s ok 80 - Should get an exeption for two unknown arg 89s ok 81 - Should get an exception for unknown args 89s ok 82 - Unknown args ident should be "deploy" 89s ok 83 - Should get an exeption for two unknown args 89s 1..83 89s ok 90s t/engine.t .......... 90s 1..781 90s ok 1 - use App::Sqitch::Engine; 90s ok 2 - App::Sqitch::Engine->can(...) 90s ok 3 - Load a sqitch sqitch object 90s ok 4 - Should get an exception for missing sqitch param 90s ok 5 - Should get an exception for missing sqitch param 90s ok 6 - Should get an exception for array sqitch param 90s ok 7 - Should get an exception for array target param 90s ok 8 - Should get an exception for string sqitch param 90s ok 9 - Should get an exception for string target param 90s ok 10 - 'Engine' isa 'App::Sqitch::Engine' 90s ok 11 - Load an engine 90s ok 12 - An object of class 'App::Sqitch::Engine::whu' isa 'App::Sqitch::Engine::whu' 90s ok 13 - The sqitch attribute should be set 90s ok 14 - Should die on unknown target 90s ok 15 - Should get load error message 90s ok 16 - Should have relevant previoius exception 90s ok 17 - No target should die 90s ok 18 - It should be the expected message 90s ok 19 - Should die on bad engine module 90s ok 20 - Should get another load error message 90s ok 21 - Should have relevant previoius exception from the bad module 90s ok 22 - App::Sqitch::Engine->can('name') 90s ok 23 - Create a App::Sqitch::Engine object 90s ok 24 - Should get error from base engine name 90s ok 25 - Name error ident should be "engine" 90s ok 26 - Name error message should be correct 90s ok 27 - Create a subclass name object 90s ok 28 - Subclass oject name should be "whu" 90s ok 29 - Subclass class name should be "whu" 90s ok 30 - App::Sqitch::Engine->can('config_vars') 90s ok 31 - Should have database and client in engine base class 90s ok 32 - App::Sqitch::Engine->can(...) 90s ok 33 - Should have no variables 90s ok 34 - Add a variable 90s ok 35 - Should have the variable 90s ok 36 - Set more variables 90s ok 37 - Should have all of the variables 90s ok 38 - Should again have no variables 90s ok 39 - Load engine 90s ok 40 - Target should be as passed 90s ok 41 - Load engine with URI with password 90s ok 42 - 'target attribute' isa 'App::Sqitch::Target' 90s ok 43 - Load engine 90s ok 44 - Destination should be URI string 90s ok 45 - Rgistry destination should be the same as destination 90s ok 46 - Load engine with URI with password 90s ok 47 - Destination should not include password 90s ok 48 - Registry destination should again be the same as destination 90s ok 49 - App::Sqitch::Engine::whu->can('_check_registry') 90s ok 50 - Registry should be fine at current version 90s ok 51 - Should get error for non-existent registry 90s ok 52 - Non-existent registry error ident should be "engine" 90s ok 53 - Non-existent registry error message should be correct 90s ok 54 - Should get error from revert 90s ok 55 - revert registry error ident should be "engine" 90s ok 56 - revert registry error message should be correct 90s ok 57 - Should get error from verify 90s ok 58 - verify registry error ident should be "engine" 90s ok 59 - verify registry error message should be correct 90s ok 60 - Should get error for out-of-date registry 90s ok 61 - Out-of-date registry error ident should be "engine" 90s ok 62 - Out-of-date registry error message should be correct 90s ok 63 - Should get error for future registry 90s ok 64 - Future registry error ident should be "engine" 90s ok 65 - Future registry error message should be correct 90s ok 66 - Create a App::Sqitch::Engine object again 90s ok 67 - Should get an unimplemented exception from initialized() 90s ok 68 - Should get an unimplemented exception from initialize() 90s ok 69 - Should get an unimplemented exception from register_project() 90s ok 70 - Should get an unimplemented exception from run_file() 90s ok 71 - Should get an unimplemented exception from run_handle() 90s ok 72 - Should get an unimplemented exception from log_deploy_change() 90s ok 73 - Should get an unimplemented exception from log_fail_change() 90s ok 74 - Should get an unimplemented exception from log_revert_change() 90s ok 75 - Should get an unimplemented exception from log_new_tags() 90s ok 76 - Should get an unimplemented exception from is_deployed_tag() 90s ok 77 - Should get an unimplemented exception from is_deployed_change() 90s ok 78 - Should get an unimplemented exception from are_deployed_changes() 90s ok 79 - Should get an unimplemented exception from change_id_for() 90s ok 80 - Should get an unimplemented exception from changes_requiring_change() 90s ok 81 - Should get an unimplemented exception from earliest_change_id() 90s ok 82 - Should get an unimplemented exception from latest_change_id() 90s ok 83 - Should get an unimplemented exception from deployed_changes() 90s ok 84 - Should get an unimplemented exception from deployed_changes_since() 90s ok 85 - Should get an unimplemented exception from load_change() 90s ok 86 - Should get an unimplemented exception from name_for_change_id() 90s ok 87 - Should get an unimplemented exception from current_state() 90s ok 88 - Should get an unimplemented exception from current_changes() 90s ok 89 - Should get an unimplemented exception from current_tags() 90s ok 90 - Should get an unimplemented exception from search_events() 90s ok 91 - Should get an unimplemented exception from registered_projects() 90s ok 92 - Should get an unimplemented exception from change_offset_from_id() 90s ok 93 - Should get an unimplemented exception from change_id_offset_from_id() 90s ok 94 - Should get an unimplemented exception from wait_lock() 90s ok 95 - Should get an unimplemented exception from registry_version() 90s ok 96 - Should get an unimplemented exception from _update_script_hashes() 90s ok 97 - App::Sqitch::Engine->can('_load_changes') 90s ok 98 - Should load changes with no change 90s ok 99 - Should load changes with undef 90s ok 100 - Should load changes with no tags 90s ok 101 - Should load changes with multiple hashes with no tags 90s ok 102 - Should load changes with tags 90s ok 103 - Should load changes with tags with leading @ 90s ok 104 - Should load changes with multiple hashes with tags 90s ok 105 - Should load changes with reworked change 90s ok 106 - Should load changes with reworked change & multiple tags 90s ok 107 - Should load changes with doubly reworked change 90s ok 108 - Rework change "you" 90s ok 109 - Tag @beta1 90s ok 110 - Should load changes with Unplanned change 90s ok 111 - Should load changes with reworked change without reworked version deployed 90s ok 112 - Should load changes with reworked change with reworked version deployed 90s ok 113 - Create a subclass name object again 90s ok 114 - App::Sqitch::Engine::whu->can(...) 90s ok 115 - Deploy a change 90s ok 116 - deploy_change should have called the proper methods 90s ok 117 - Output should reflect the deployment 90s ok 118 - Output should reflect success 90s ok 119 - Only log a change 90s ok 120 - log-only deploy_change should not have called run_file 90s ok 121 - Output should reflect the logging 90s ok 122 - Output should reflect deploy success 90s ok 123 - Enable verification 90s ok 124 - Deploy a change to be verified 90s ok 125 - deploy_change with verification should run the verify file 90s ok 126 - Output should reflect the logging 90s ok 127 - Output should reflect deploy success 90s ok 128 - Enable log_only 90s ok 129 - Verify and log a change 90s ok 130 - deploy_change with verification and log-only should not run deploy 90s ok 131 - Output should reflect the logging 90s ok 132 - Output should reflect deploy success 90s ok 133 - Deploy change with error 90s ok 134 - Error should be from run_file 90s ok 135 - Should have logged change failure 90s ok 136 - Output should reflect the deployment, even with failure 90s ok 137 - Output should reflect deploy failure 90s ok 138 - Deploy change with failed verification 90s ok 139 - Error should be from deploy_change 90s ok 140 - Should have logged verify failure 90s ok 141 - Output should reflect the deployment, even with verify failure 90s ok 142 - Output should reflect deploy failure 90s ok 143 - Verify error should have been vented 90s ok 144 - Enable log_only 90s ok 145 - Deploy change with log-only and failed verification 90s ok 146 - Error should be from deploy_change 90s ok 147 - Should have logged verify failure but not reverted 90s ok 148 - Output should reflect the deployment, even with verify failure 90s ok 149 - Output should reflect deploy failure 90s ok 150 - Verify error should have been vented 90s ok 151 - Deploy a change with no verify script 90s ok 152 - deploy_change with no verify file should not run it 90s ok 153 - Output should reflect the logging 90s ok 154 - Output should reflect deploy success 90s ok 155 - A warning about no verify file should have been emitted 90s ok 156 - Revert a change 90s ok 157 - revert_change should have called the proper methods 90s ok 158 - Output should reflect reversion 90s ok 159 - Output should acknowldge revert success 90s ok 160 - Enable log_only 90s ok 161 - Revert a change with log-only 90s ok 162 - Log-only revert_change should not have run the change script 90s ok 163 - Output should reflect logged reversion 90s ok 164 - Output should acknowldge revert success 90s ok 165 - Should die on unknown revert logging error 90s ok 166 - Sould have revert ident error 90s ok 167 - Should get revert failure error message 90s ok 168 - Log failure should not have seen log_rever_change 90s ok 169 - Output should reflect reversion 90s ok 170 - Output should acknowldge success failure 90s ok 171 - The logging error should have been vented 90s ok 172 - Engine with sqitch with plan file 90s ok 173 - Should get proper change from latest_change() 90s ok 174 - Latest change ID should have been called with no arg 90s ok 175 - Should again get proper change from latest_change() 90s ok 176 - Latest change ID should have been called with offset arg 90s ok 177 - Should get proper change from earliest_change() 90s ok 178 - Earliest change ID should have been called with no arg 90s ok 179 - Should again get proper change from earliest_change() 90s ok 180 - Earliest change ID should have been called with offset arg 90s ok 181 - App::Sqitch::Engine->can('_sync_plan') 90s ok 182 - Plan should start at position -1 90s ok 183 - start_at should be undef 90s ok 184 - Sync the plan 90s ok 185 - Plan should still be at position -1 90s ok 186 - start_at should still be undef 90s ok 187 - Should not have updated IDs or hashes 90s ok 188 - Sync the plan again 90s ok 189 - Plan should again be at position -1 90s ok 190 - start_at should again be undef 90s ok 191 - Still should not have updated IDs or hashes 90s ok 192 - Sync the plan to a tag 90s ok 193 - Plan should now be at position 2 90s ok 194 - start_at should now be widgets@beta 90s ok 195 - Should have updated IDs 90s ok 196 - Sync the plan with a random script hash 90s ok 197 - Plan should now be at position 1 90s ok 198 - start_at should now be widgets@beta 90s ok 199 - Should have updated IDs but not hashes 90s ok 200 - Sync the plan with a random script hash 90s ok 201 - Plan should now be at position 1 90s ok 202 - start_at should now be widgets@beta 90s ok 203 - Should have updated IDs and hashes 90s ok 204 - Sync the plan 90s ok 205 - Plan should be at position 1 90s ok 206 - start_at should be users@alpha 90s ok 207 - Should have updated hashes but not IDs 90s ok 208 - Sync the plan with no script hash 90s ok 209 - Plan should now be at position 1 90s ok 210 - start_at should still be users@alpha 90s ok 211 - Should have ugpraded the registry 90s ok 212 - The script hash should have been set to the change ID 90s ok 213 - Sync the plan with no registry 90s ok 214 - Plan should start at position -1 90s ok 215 - App::Sqitch::Engine->can('deploy') 90s ok 216 - Deploy to @alpha 90s ok 217 - Plan should be at position 1 90s ok 218 - Should have deployed through @alpha 90s ok 219 - Should have called _deploy_all() 90s ok 220 - Should have seen the output of the deploy to @alpha 90s ok 221 - Both change names should be output 90s ok 222 - Enable log_only 90s ok 223 - Log-only deploy in $mode mode to @alpha 90s ok 224 - Plan should be at position 1 90s ok 225 - Should have deployed through @alpha without running files 90s ok 226 - Should have called _deploy_by_change() 90s ok 227 - Should have seen the output of the deploy to @alpha 90s ok 228 - Both change names should be output 90s ok 229 - Enable log_only 90s ok 230 - Log-only deploy in $mode mode to @alpha 90s ok 231 - Plan should be at position 1 90s ok 232 - Should have deployed through @alpha without running files 90s ok 233 - Should have called _deploy_by_tag() 90s ok 234 - Should have seen the output of the deploy to @alpha 90s ok 235 - Both change names should be output 90s ok 236 - Enable log_only 90s ok 237 - Log-only deploy in $mode mode to @alpha 90s ok 238 - Plan should be at position 1 90s ok 239 - Should have deployed through @alpha without running files 90s ok 240 - Should have called _deploy_all() 90s ok 241 - Should have seen the output of the deploy to @alpha 90s ok 242 - Both change names should be output 90s ok 243 - Deploy to @alpha with tag mode 90s ok 244 - Plan should again be at position 1 90s ok 245 - Should have deployed through @alpha without initialization 90s ok 246 - Should have called _deploy_by_tag() 90s ok 247 - Should have seen the output of the deploy to @alpha 90s ok 248 - Both change names should be output 90s ok 249 - Should get an error for an unknown change 90s ok 250 - The exception should report the unknown change 90s ok 251 - Only latest_item() should have been called 90s ok 252 - Deploy to alpha thrice 90s ok 253 - Only latest_item() should have been called 90s ok 254 - Should notify user that already at @alpha 90s ok 255 - Should fail deploying older change 90s ok 256 - Should be a "deploy" error 90s ok 257 - It should suggest using "revert" 90s ok 258 - Should have called latest_item() and latest_tag() 90s ok 259 - Deploy to from index 1 90s ok 260 - Plan should be at position 2 90s ok 261 - Should have deployed to change 2 90s ok 262 - Should have emitted deploy announcement and successes 90s ok 263 - Deploy everything by change 90s ok 264 - Plan should be at position 3 90s ok 265 - Should have deployed everything 90s ok 266 - Should have called _deploy_by_change() 90s ok 267 - Should have emitted deploy announcement and successes 90s ok 268 - Should have seen the output of the deploy to the end 90s ok 269 - Debug output should show what will be deployed 90s ok 270 - Should return success for deploy to up-to-date DB 90s ok 271 - Should have emitted deploy announcement and successes 90s ok 272 - It should have just fetched the latest change ID 90s ok 273 - Should fail on invalid mode 90s ok 274 - Should be a "deploy" error 90s ok 275 - And the message should reflect the unknown mode 90s ok 276 - It should have check for initialization 90s ok 277 - Should have announced destination 90s ok 278 - Engine with sqitch with no file 90s ok 279 - Should die with no changes 90s ok 280 - Should have the localized message 90s ok 281 - It should have checked for the latest item 90s ok 282 - Deploy changewise to index 1 90s ok 283 - Should changewise deploy to index 2 90s ok 284 - Should have seen output of each change 90s ok 285 - Output should reflect deploy successes 90s ok 286 - Deploy changewise to index 2 90s ok 287 - Should changewise deploy to from index 2 to index 3 90s ok 288 - Should have seen output of changes 2-3 90s ok 289 - Output should reflect deploy successes 90s ok 290 - Die in _deploy_by_change 90s ok 291 - It should have died in run_file 90s ok 292 - It should have logged the failure 90s ok 293 - Should have seen output for first change 90s ok 294 - Output should reflect deploy failure 90s ok 295 - Deploy tagwise to index 1 90s ok 296 - Should tagwise deploy to index 1 90s ok 297 - Should have seen output of each change 90s ok 298 - Output should reflect deploy successes 90s ok 299 - Deploy tagwise to index 3 90s ok 300 - Should tagwise deploy from index 2 to index 3 90s ok 301 - Should have seen output of changes 3-3 90s ok 302 - Output should reflect deploy successes 90s ok 303 - Die in log_deploy_change 90s ok 304 - Should get final deploy failure message 90s ok 305 - It should have reverted back to the last deployed tag 90s ok 306 - Should have seen deploy and revert messages (excluding curry revert) 90s ok 307 - Output should reflect deploy successes and failure 90s ok 308 - The original error should have been vented 90s ok 309 - Enable log_only 90s ok 310 - Die in log_deploy_change log-only 90s ok 311 - Should get final deploy failure message 90s ok 312 - It should have run no deploy or revert scripts 90s ok 313 - Should have seen deploy and revert messages (excluding curry revert) 90s ok 314 - Output should reflect deploy successes and failure 90s ok 315 - The original error should have been vented 90s ok 316 - Die in _deploy_by_tag again 90s ok 317 - Should again get final deploy failure message 90s ok 318 - Should have logged back to the beginning 90s ok 319 - Should have seen deploy and revert messages 90s ok 320 - Output should reflect deploy successes and failure 90s ok 321 - Should have one vented message 90s ok 322 - And it should be the underlying error 90s ok 323 - And it should had notified that all changes were reverted 90s ok 324 - Die in _deploy_by_tag yet again 90s ok 325 - Should die "Deploy failed" again 90s ok 326 - Should have reverted back to last tag 90s ok 327 - Should have user change reversion messages 90s ok 328 - Output should reflect deploy successes and failure 90s ok 329 - Should see underlying error and reversion message 90s ok 330 - Die in _deploy_by_tag again 90s ok 331 - Should once again get final deploy failure message 90s ok 332 - Should have tried to revert one change 90s ok 333 - Should have seen revert message 90s ok 334 - Output should reflect deploy successes and failure 90s ok 335 - Should get reversion failure message 90s ok 336 - Deploy all to index 1 90s ok 337 - Should tagwise deploy to index 1 90s ok 338 - Should have seen output of each change 90s ok 339 - Output should reflect deploy successes 90s ok 340 - Deploy tagwise to index 2 90s ok 341 - Should tagwise deploy to from index 1 to index 2 90s ok 342 - Should have seen output of changes 3-4 90s ok 343 - Output should reflect deploy successe 90s ok 344 - Die in _deploy_all 90s ok 345 - Should get final deploy failure message 90s ok 346 - It should have logged up to the failure 90s ok 347 - Should have seen deploy and revert messages excluding revert for failed logging 90s ok 348 - Output should reflect deploy successes and failures 90s ok 349 - The original error should have been vented 90s ok 350 - Enable log_only 90s ok 351 - Die in log-only _deploy_all 90s ok 352 - Should get final deploy failure message 90s ok 353 - It should have run no deploys or reverts 90s ok 354 - Should have seen deploy and revert messages excluding revert for failed logging 90s ok 355 - Output should reflect deploy successes and failures 90s ok 356 - The original error should have been vented 90s ok 357 - Die in _deploy_all again 90s ok 358 - Should again get final deploy failure message 90s ok 359 - Should have reveted all changes and tags 90s ok 360 - Should see all changes revert 90s ok 361 - Output should reflect deploy successes and failures 90s ok 362 - Should notifiy user of error and rollback 90s ok 363 - Die in _deploy_all on the last change 90s ok 364 - Should once again get final deploy failure message 90s ok 365 - Should have deployed to dr_evil and revered down to @alpha 90s ok 366 - Should see changes revert back to @alpha 90s ok 367 - Output should reflect deploy successes and failures 90s ok 368 - Should notifiy user of error and rollback to @alpha 90s ok 369 - Die in _deploy_all on the last change 90s ok 370 - Should once again get final deploy failure message 90s ok 371 - Should have deployed to dr_evil and revered down to @alpha 90s ok 372 - Should see changes revert back to @alpha 90s ok 373 - Output should reflect deploy successes and failures 90s ok 374 - Should have two vented items 90s ok 375 - First vented should be the error 90s ok 376 - Should notifiy user of rollback to @alpha 90s ok 377 - Test is_deployed(tag) 90s ok 378 - It should have called is_deployed_tag() 90s ok 379 - Test is_deployed(change) 90s ok 380 - It should have called is_deployed_change() 90s ok 381 - App::Sqitch::Engine::whu->can('deploy_change') 90s ok 382 - Deploy a change 90s ok 383 - It should have been deployed 90s ok 384 - Should have shown change name 90s ok 385 - Output should reflect deploy success 90s ok 386 - Deploying change should die on logging failure 90s ok 387 - Should have privat ident 90s ok 388 - Should have failure message 90s ok 389 - It should have been deployed and reverted 90s ok 390 - Should have shown change name 90s ok 391 - Output should reflect deploy failure 90s ok 392 - Vent should reflect deployment error 90s ok 393 - Deploying change should die on logging failure 90s ok 394 - Should have privat ident 90s ok 395 - Should have failure message 90s ok 396 - It should have been deployed but not reverted 90s ok 397 - Should have shown change name 90s ok 398 - Output should reflect deploy failure 90s ok 399 - Vent should reflect deployment and reversion errors 90s ok 400 - Shuld die on deploy failure 90s ok 401 - Should be told the deploy failed 90s ok 402 - It should failed to have been deployed 90s ok 403 - Should have vented the original error 90s ok 404 - Should have shown change name 90s ok 405 - Output should reflect deploy failure 90s ok 406 - App::Sqitch::Engine::whu->can('revert_change') 90s ok 407 - Revert the change 90s ok 408 - It should have been reverted 90s ok 409 - Should have shown reverted change name 90s ok 410 - And the revert failure should be "ok" 90s ok 411 - App::Sqitch::Engine::whu->can('revert') 90s ok 412 - Should return success for no changes to revert 90s ok 413 - Should have notified that there is nothing to revert 90s ok 414 - It should only have called deployed_changes() 90s ok 415 - Nothing should have been output 90s ok 416 - Should get warning omitting required arguments 90s ok 417 - Should have notified that there is nothing to revert 90s ok 418 - It should only have called deployed_changes() 90s ok 419 - Nothing should have been output 90s ok 420 - Revert should die on unknown change 90s ok 421 - Should be another "revert" error 90s ok 422 - The message should mention it is an unknown change 90s ok 423 - Should have called change_id_for() with change name 90s ok 424 - Nothing should have been output 90s ok 425 - Revert should die on unknown change ID 90s ok 426 - Should be another "revert" error 90s ok 427 - The message should mention it is an unknown change 90s ok 428 - Should have called change_id_for() with change ID 90s ok 429 - Nothing should have been output 90s ok 430 - Revert should die on undeployed change 90s ok 431 - Should be another "revert" error 90s ok 432 - The message should mention that the change is not deployed 90s ok 433 - change_id_for 90s ok 434 - Nothing should have been output 90s ok 435 - Should return success for revert even with no changes 90s ok 436 - No subsequent change error message should be correct 90s ok 437 - Should have called change_id_for and deployed_changes_since 90s ok 438 - Should return success for known but undeployed change 90s ok 439 - No changes message should be correct 90s ok 440 - Should have called deployed_changes 90s ok 441 - Revert all changes 90s ok 442 - Should have reverted the changes in reverse order 90s ok 443 - Should have prompted to revert all changes 90s ok 444 - It should have said it was reverting all changes and listed them 90s ok 445 - Output should show what would be reverted 90s ok 446 - And the revert successes should be emitted 90s ok 447 - Enable log_only 90s ok 448 - Revert all changes log-only 90s ok 449 - Log-only Should have reverted the changes in reverse order 90s ok 450 - Log-only should have prompted to revert all changes 90s ok 451 - It should have said it was reverting all changes and listed them 90s ok 452 - Output should show what would be reverted 90s ok 453 - And the revert successes should be emitted 90s ok 454 - Should abort declined revert 90s ok 455 - Declined revert ident should be "revert" 90s ok 456 - Should have exited with value 1 90s ok 457 - Should have exited with proper message 90s ok 458 - Should have called deployed_changes only 90s ok 459 - Should have prompt to revert all changes 90s ok 460 - Output should show what would be reverted 90s ok 461 - Revert all changes with no prompt 90s ok 462 - Should have reverted the changes in reverse order 90s ok 463 - Should have no prompt 90s ok 464 - It should have said it was reverting all changes and listed them 90s ok 465 - And the revert successes should be emitted 90s ok 466 - Output should show what will be reverted 90s ok 467 - Revert to @alpha 90s ok 468 - Should have reverted only changes after @alpha 90s ok 469 - Should have prompt to revert to change 90s ok 470 - Output should show what it reverts to 90s ok 471 - Output should show what would be reverted 90s ok 472 - And the revert successes should be emitted 90s ok 473 - Should abort declined revert to @alpha 90s ok 474 - Declined revert ident should be "revert:confirm" 90s ok 475 - Should have exited with value 1 90s ok 476 - Should have exited with proper message 90s ok 477 - Should have called revert methods 90s ok 478 - Should have prompt to revert to @alpha 90s ok 479 - Should emit a detailed prompt. 90s ok 480 - Revert to @HEAD^ 90s ok 481 - Should have reverted one changes for @HEAD^ 90s ok 482 - Should have no prompt 90s ok 483 - Output should show what it reverts to 90s ok 484 - And the header and "ok" should be emitted 90s ok 485 - Output should show what will be reverted 90s ok 486 - App::Sqitch::Engine->can('change_id_for_depend') 90s ok 487 - Should get error from change_id_for_depend when change not in plan 90s ok 488 - Should get ident "plan" from change_id_for_depend 90s ok 489 - Should have proper message from change_id_for_depend error 90s ok 490 - Should get error from change_id_for_depend when no ID 90s ok 491 - Should get ident "engine" when no ID 90s ok 492 - Should have proper messag from change_id_for_depend error 90s ok 493 - Get a change id 90s ok 494 - Should have passed dependency params to change_id_for() 90s ok 495 - App::Sqitch::Engine->can('find_change') 90s ok 496 - find_change() should work 90s ok 497 - Its parameters should have been passed to change_id_for and change_offset_from_id 90s ok 498 - find_change() should work 90s ok 499 - Project and offset should have been passed off 90s ok 500 - App::Sqitch::Engine->can('find_change_id') 90s ok 501 - find_change_id() should work 90s ok 502 - Its parameters should have been passed to change_id_for and change_offset_from_id 90s ok 503 - find_change_id() should work 90s ok 504 - Project and offset should have been passed off 90s ok 505 - App::Sqitch::Engine->can('verify_change') 90s ok 506 - Verify a change 90s ok 507 - The change file should have been run 90s ok 508 - Should have no info output 90s ok 509 - Should throw error on verify failure 90s ok 510 - Verify error ident should be "verify" 90s ok 511 - Previous exception should be captured 90s ok 512 - Verify error message should be correct 90s ok 513 - Should have seen not method calls 90s ok 514 - Should have no info output 90s ok 515 - Verify a change with no verify script. 90s ok 516 - No abstract methods should be called 90s ok 517 - Should have no info output 90s ok 518 - A warning about no verify file should have been emitted 90s ok 519 - App::Sqitch::Engine::whu->can('check_deploy_dependencies') 90s ok 520 - All planned changes should be okay 90s ok 521 - Should have called are_deployed_changes 90s ok 522 - Should die when some changes deployed 90s ok 523 - Already deployed error ident should be "deploy" 90s ok 524 90s ok 525 - Should have called are_deployed_changes 90s ok 526 - Dependencies should check out even when within those to be deployed 90s ok 527 - Resolved ID should be populated 90s ok 528 - Conflict should throw exception 90s ok 529 - Should be a "deploy" error 90s ok 530 - Should have localized message about the local conflict 90s ok 531 - Conflict should throw exception 90s ok 532 - Should be a "deploy" error 90s ok 533 - Should have localized message about conflicts 90s ok 534 - Should have called change_id_for() twice 90s ok 535 - Conflicting dependencies should have no resolved IDs 90s ok 536 - Conflict should throw another exception 90s ok 537 - Should be a "deploy" error 90s ok 538 - Should have localized message about all three conflicts 90s ok 539 - Should have called change_id_for() twice 90s ok 540 - Conflicting dependencies should have no resolved IDs 90s ok 541 - Missing dependencies should throw exception 90s ok 542 - Should be another "deploy" error 90s ok 543 - Should have localized message missing dependencies without dupes 90s ok 544 - Should have called check_requires 90s ok 545 - Missing requirements should not have resolved 90s ok 546 - Missing dependencies should throw exception 90s ok 547 - Should be another "deploy" error 90s ok 548 - Should have localized conflicts and required error messages 90s ok 549 - Should have called check_requires 90s ok 550 - Missing requirements should not have resolved 90s ok 551 - App::Sqitch::Engine::whu->can('check_revert_dependencies') 90s ok 552 - Should get no error with no dependencies 90s ok 553 - It should have check for requiring changes 90s ok 554 - Should get error reverting change another depend on 90s ok 555 - Dependent error ident should be "revert" 90s ok 556 - Dependent error message should be correct 90s ok 557 - It should have check for requiring changes 90s ok 558 - Should get error reverting change others depend on 90s ok 559 - Dependent error ident should be "revert" 90s ok 560 - Dependent error message should be correct 90s ok 561 - It should have check for requiring changes 90s ok 562 - Should get error reverting change others depend on 90s ok 563 - Dependent error ident should be "revert" 90s ok 564 - Dependent error message should be correct 90s ok 565 - It should have checked twice for requiring changes 90s ok 566 - App::Sqitch::Engine::whu->can('_trim_to') 90s ok 567 - _trim_to should complain about a nonexistent change key 90s ok 568 - _trim_to nonexistent key error ident should be "foo" 90s ok 569 - _trim_to nonexistent key error message should be correct 90s ok 570 - It should have passed the change name and ROOT tag to change_id_for 90s ok 571 - _trim_to should complain about an undeployed change key 90s ok 572 - _trim_to undeployed change error ident should be "yep" 90s ok 573 - _trim_to undeployed change error message should be correct 90s ok 574 - It should have passed change "blah" change_id_for 90s ok 575 - _trim_to should complain about an unplanned change key 90s ok 576 - _trim_to unplanned change error ident should be "oop" 90s ok 577 - _trim_to unplanned change error message should be correct 90s ok 578 - It should have passed "whatever" to change_id_offset_from_id 90s ok 579 - _trim_to should find "roles" at index 0 90s ok 580 - Changes should be untrimmed 90s ok 581 - It should have passed change 0 ID to change_id_offset_from_id 90s ok 582 - _trim_to should find "widgets" at index 2 90s ok 583 - First two changes should be shifted off 90s ok 584 - It should have passed change 2 ID to change_id_offset_from_id 90s ok 585 - _trim_to should find "dr_evil" at last index 90s ok 586 - Changes should be untrimmed 90s ok 587 - It should have passed change -1 ID to change_id_offset_from_id 90s ok 588 - _trim_to should find "tacos" at index 4 90s ok 589 - Last two changes should be popped off 90s ok 590 - It should have passed change -3 ID to change_id_offset_from_id 90s ok 591 - _trim_to should find "lolz^" at index 4 90s ok 592 - Should pass change -3 ID and offset -1 to change_id_offset_from_id 90s ok 593 - _trim_to should find "curry~" at index 4 90s ok 594 - Should pass change -3 ID and offset 1 to change_id_offset_from_id 90s ok 595 - _trim_to should find "@HEAD" at index 2 90s ok 596 - First two changes should be shifted off 90s ok 597 - Should pass tag HEAD to change_id_for 90s ok 598 - _trim_to should find "HEAD" at index 2 90s ok 599 - First two changes should be shifted off 90s ok 600 - Should pass tag @HEAD to change_id_for 90s ok 601 - _trim_to should find "@ROOT" at index 2 90s ok 602 - All but First three changes should be popped off 90s ok 603 - Should pass tag ROOT to change_id_for 90s ok 604 - _trim_to should find "ROOT" at index 2 90s ok 605 - All but First three changes should be popped off 90s ok 606 - Should pass tag @ROOT to change_id_for 90s ok 607 - App::Sqitch::Engine::whu->can('_verify_changes') 90s ok 608 - Verify of a single change should return errcount 0 90s ok 609 - Declared output should list the change 90s ok 610 - Emitted Output should reflect the verification of the change 90s ok 611 - Should have no comments 90s ok 612 - The verify script should have been run 90s ok 613 - Verify of another single change should return errcount 0 90s ok 614 - Declared output should list the change 90s ok 615 - Emitted Output should reflect the verification of the change 90s ok 616 - Should have no comments 90s ok 617 - A warning about no verify file should have been emitted 90s ok 618 - The verify script should not have been run 90s ok 619 - Verify of two changes should return errcount 0 90s ok 620 - Declared output should list both changes 90s ok 621 - Emitted Output should reflect the verification of the changes 90s ok 622 - Should have no comments 90s ok 623 - A warning about no verify file should have been emitted 90s ok 624 - Only one verify script should have been run 90s ok 625 - Verify of two changes and show pending 90s ok 626 - Delcared output should list deployed changes 90s ok 627 - Emitted output should include list of pending changes 90s ok 628 - Should have no comments 90s ok 629 - A warning about no verify file should have been emitted 90s ok 630 - Only one verify script should have been run 90s ok 631 - Verify of a change not in the plan should return errcount 1 90s ok 632 - Declared Output should reflect the verification of the change 90s ok 633 - Emitted Output should reflect the failure of the verify 90s ok 634 - Should have a comment about the change missing from the plan 90s ok 635 - No verify script should have been run 90s ok 636 - Verify of an out-of-order change should return errcount 1 90s ok 637 - Declared output should reflect the verification of the change 90s ok 638 - Emitted Output should reflect the failure of the verify 90s ok 639 - Should have a comment about the out-of-order change 90s ok 640 - The verify script should have been run 90s ok 641 - Verify of a change with 2 issues should return 2 90s ok 642 - Declared output should reflect the verification of the change 90s ok 643 - Emitted Output should reflect the failure of the verify 90s ok 644 - Should have comment about the out-of-order change and script failure 90s ok 645 - No abstract methods should have been called 90s ok 646 - Verify of 2 changes with 2 issues each should return 4 90s ok 647 - Declraed output should reflect the verification of both changes 90s ok 648 - Emitted Output should reflect the failure of both verifies 90s ok 649 - Should have comment about the out-of-order changes and script failures 90s ok 650 - No abstract methods should have been called 90s ok 651 - _verify_changes with two undeployed changes should returne 2 90s ok 652 - Listed changes should be both deployed and undeployed 90s ok 653 - Emitted Output should reflect 1 pass 90s ok 654 - Should have comments for undeployed changes 90s ok 655 - No abstract methods should have been called 90s ok 656 - App::Sqitch::Engine::whu->can('verify') 90s ok 657 - Should return success for no deployed changes 90s ok 658 - Notification of the verify should be emitted 90s ok 659 - Should have called deployed_changes 90s ok 660 - Should return success for no changes 90s ok 661 - Notification of the verify should be emitted 90s ok 662 - Should have called deployed_changes 90s ok 663 - Should get error for no planned changes 90s ok 664 - No planned changes ident should be "verify" 90s ok 665 - No planned changes exitval should be 2 90s ok 666 - No planned changes message should be correct 90s ok 667 - Notification of the verify should be emitted 90s ok 668 - Should have called deployed_changes 90s ok 669 - Verify one change 90s ok 670 - Notification of the verify should be emitted 90s ok 671 - The one change name should be declared 90s ok 672 - Success should be emitted 90s ok 673 - Should have no comments 90s ok 674 - Should have run the verify file 90s ok 675 - Verify two changes 90s ok 676 - Notification of the verify should be emitted 90s ok 677 - The two change names should be declared 90s ok 678 - Both successes should be emitted 90s ok 679 - Should have no comments 90s ok 680 - Should have warning about missing verify script 90s ok 681 - Should have run the verify file again 90s ok 682 - Verify with a reworked change changes 90s ok 683 - Notification of the verify should be emitted 90s ok 684 - The two change names should be emitted 90s ok 685 - Both successes should be emitted 90s ok 686 - Should have no comments 90s ok 687 - Should have no warnings 90s ok 688 - Should not have run the verify file 90s ok 689 - Verify two specific changes 90s ok 690 - Notification of the verify should be emitted 90s ok 691 - The two change names should be emitted 90s ok 692 - Both successes should be emitted 90s ok 693 - Should have no comments 90s ok 694 - Should have warning about missing verify script 90s ok 695 - Should have searched offsets and run the verify file 90s ok 696 - Should get failure for failing verify scripts 90s ok 697 - Failed verify ident should be "verify" 90s ok 698 - Failed verify exitval should be 2 90s ok 699 - Faield verify message should be correct 90s ok 700 - Notification of the verify should be emitted 90s ok 701 - Both change names should be declared 90s ok 702 - Output should include the failure report 90s ok 703 - Should have the errors in comments 90s ok 704 - Nothing should have been vented 90s ok 705 - Should have searched offsets but not run the verify file 90s ok 706 - App::Sqitch::Engine::whu->can('check') 90s ok 707 - Should return success for no deployed changes 90s ok 708 - Notification of the check should be emitted 90s ok 709 - Should have called deployed_changes 90s ok 710 - Should return success for no changes 90s ok 711 - Notification of the verify should be emitted 90s ok 712 - Should have called deployed_changes 90s ok 713 - Should get error for no planned changes 90s ok 714 - Failed check ident should be "check" 90s ok 715 - No planned changes exitval should be 1 90s ok 716 - Failed check message should be correct 90s ok 717 - Notification of the check should be emitted 90s ok 718 - Divergent change info should be emitted 90s ok 719 - Should have called deployed_changes and latest_change_id 90s ok 720 - Check one change 90s ok 721 - Notification of the check should be emitted 90s ok 722 - Success should be emitted 90s ok 723 - Should have no comments 90s ok 724 - Should have called deployed_changes and latest_change_id 90s ok 725 - Should get error for one divergent script hash 90s ok 726 - Failed check ident should be "check" 90s ok 727 - No planned changes exitval should be 1 90s ok 728 - Failed check message should be correct 90s ok 729 - Notification of the check should be emitted 90s ok 730 - Divergent change info should be emitted 90s ok 731 - Should have called deployed_changes and latest_change_id 90s ok 732 - Should get error for one divergent script hash 90s ok 733 - Failed check ident should be "check" 90s ok 734 - No planned changes exitval should be 1 90s ok 735 - Failed check message should be correct 90s ok 736 - Notification of the check should be emitted 90s ok 737 - Divergent change info should be emitted 90s ok 738 - Should have called deployed_changes and latest_change_id 90s ok 739 - Check one change with to arg 90s ok 740 - Notification of the check should be emitted 90s ok 741 - Success should be emitted 90s ok 742 - Should have no comments 90s ok 743 - Should have searched offsets 90s ok 744 - Should get error for one divergent script hash with from arg 90s ok 745 - Failed check ident should be "check" 90s ok 746 - No planned changes exitval should be 1 90s ok 747 - Failed check message should be correct 90s ok 748 - Notification of the check should be emitted 90s ok 749 - Divergent change info should be emitted 90s ok 750 - Should have searched offsets and the latest change ID 90s ok 751 - App::Sqitch::Engine::whu->can('lock_destination') 90s ok 752 - Lock timeout should be 60 seconds 90s ok 753 - Lock destination 90s ok 754 - Should be locked 90s ok 755 - wait_lock should not have been called 90s ok 756 - Should have emitted no info 90s ok 757 - Lock destination 90s ok 758 - Should be locked again 90s ok 759 - wait_lock should have been called 90s ok 760 - Should have notified user of waiting for lock 90s ok 761 - Lock destination again 90s ok 762 - wait_lock should not have been called 90s ok 763 - Should again have emitted no info 90s ok 764 - Should get error for lock timeout 90s ok 765 - Lock timeout error ident should be "engine" 90s ok 766 - Lock timeout error exitval should be 2 90s ok 767 - Lock timeout error message should be correct 90s ok 768 - Should have notified user of waiting for lock 90s ok 769 - wait_lock should have been called 90s ok 770 - Should get last index when there is a latest change ID 90s ok 771 - Should die on too many IDs 90s ok 772 - Too many IDs ident should be "engine" 90s ok 773 - Too many IDs message should be correct 90s ok 774 - Too many IDs error should have been vented 90s ok 775 - Test planned_deployed_common_ancestor_id 90s ok 776 - Should have key 90s ok 777 - Driver should be the same as engine 90s ok 778 - Default try_lock should return true by default 90s ok 779 - Default begin_work should return self 90s ok 780 - Default finish_work should return self 90s ok 781 - no warnings 90s ok 91s t/engine_cmd.t ...... 91s 1..201 91s ok 1 - Load a sqitch sqitch object 91s ok 2 - 'Engine command' isa 'App::Sqitch::Command::engine' 91s ok 3 - 'Engine command' isa 'App::Sqitch::Command' 91s ok 4 - App::Sqitch::Command::engine->can(...) 91s ok 5 - App::Sqitch::Command::engine does TargetConfigCommand 91s ok 6 - Options should be correct 91s ok 7 - Should parse options 91s ok 8 - Options should not conflict with core options 91s ok 9 - Default config should contain empty properties 91s ok 10 - configure() should ignore config file 91s ok 11 - Get full config 91s ok 12 - Should have properties 91s ok 13 - 'plan_file file attribute' isa 'Path::Class::File' 91s ok 14 - 'top_dir directory attribute' isa 'Path::Class::Dir' 91s ok 15 - 'reworked_dir directory attribute' isa 'Path::Class::Dir' 91s ok 16 - 'deploy_dir directory attribute' isa 'Path::Class::Dir' 91s ok 17 - 'reworked_deploy_dir directory attribute' isa 'Path::Class::Dir' 91s ok 18 - 'revert_dir directory attribute' isa 'Path::Class::Dir' 91s ok 19 - 'reworked_revert_dir directory attribute' isa 'Path::Class::Dir' 91s ok 20 - 'verify_dir directory attribute' isa 'Path::Class::Dir' 91s ok 21 - 'reworked_verify_dir directory attribute' isa 'Path::Class::Dir' 91s ok 22 - Should fail on invalid directory name 91s ok 23 - Invalid directory ident should be "engine" 91s ok 24 - The invalid directory messsage should be correct 91s ok 25 - Should fail on invalid directory names 91s ok 26 - Invalid directories ident should be "engine" 91s ok 27 - The invalid properties messsage should be correct 91s ok 28 - Run list() 91s ok 29 - The list of engines should have been output 91s ok 30 - 'Verbose engine' isa 'App::Sqitch::Command::engine' 91s ok 31 - Run verbose list() 91s ok 32 - The list of engines and their targets should have been output 91s ok 33 - 'New engine' isa 'App::Sqitch::Command::engine' 91s ok 34 - Target should be undef 91s ok 35 - Target should fall back on passed name 91s ok 36 - Should get error for mismatched target engine 91s ok 37 - Mismatched target error ident should be "engine" 91s ok 38 - Mismatched target error message should be correct 91s ok 39 - Should get error for unknown target 91s ok 40 - Uknown target error ident should be "engine" 91s ok 41 - Unkonwn target error message should be correct 91s ok 42 - No name arg to add() should yield usage 91s ok 43 - No args should be passed to usage 91s ok 44 - Should get error for existing engine 91s ok 45 - Existing engine error ident should be "engine" 91s ok 46 - Existing engine error message should be correct 91s ok 47 - dir deploy does not exist 91s ok 48 - dir revert does not exist 91s ok 49 - dir verify does not exist 91s ok 50 - Add engine "vertica" 91s ok 51 - dir deploy exists 91s ok 52 - dir revert exists 91s ok 53 - dir verify exists 91s ok 54 - Engine "test" target should have been set 91s ok 55 - Engine "vertica" should have no client set 91s ok 56 - Engine "vertica" should have no registry set 91s ok 57 - Engine "vertica" should have no top_dir set 91s ok 58 - Engine "vertica" should have no plan_file set 91s ok 59 - Engine "vertica" should have no deploy_dir set 91s ok 60 - Engine "vertica" should have no revert_dir set 91s ok 61 - Engine "vertica" should have no verify_dir set 91s ok 62 - Engine "vertica" should have no extension set 91s ok 63 - Engine "vertica" should have no variables set 91s ok 64 - 'Engine with target property' isa 'App::Sqitch::Command::engine' 91s ok 65 - Should get error for engine/target mismatch 91s ok 66 - Target mismatch ident should be "engine" 91s ok 67 - Target mismatch message should be correct 91s ok 68 - 'Engine with all properties' isa 'App::Sqitch::Command::engine' 91s ok 69 - my.plan does not exist 91s ok 70 - dir top/deploy does not exist 91s ok 71 - dir top/revert does not exist 91s ok 72 - dir top/verify does not exist 91s ok 73 - dir r/d does not exist 91s ok 74 - dir r/revert does not exist 91s ok 75 - dir r/verify does not exist 91s ok 76 - Add engine "firebird" 91s ok 77 - dir top/deploy exists 91s ok 78 - dir top/revert exists 91s ok 79 - dir top/verify exists 91s ok 80 - dir r/d exists 91s ok 81 - dir r/revert exists 91s ok 82 - dir r/verify exists 91s ok 83 - my.plan exists 91s ok 84 - Engine "firebird" should have client set 91s ok 85 - Engine "firebird" should have revert_dir set 91s ok 86 - Engine "firebird" should have target set 91s ok 87 - Engine "firebird" should have registry set 91s ok 88 - Engine "firebird" should have plan_file set 91s ok 89 - Engine "firebird" should have deploy_dir set 91s ok 90 - Engine "firebird" should have reworked_deploy_dir set 91s ok 91 - Engine "firebird" should have variables 91s ok 92 - Engine "firebird" should have verify_dir set 91s ok 93 - Engine "firebird" should have reworked_dir set 91s ok 94 - Engine "firebird" should have extension set 91s ok 95 - Engine "firebird" should have top_dir set 91s ok 96 - 'Engine with no properties' isa 'App::Sqitch::Command::engine' 91s ok 97 - No name arg to add() should yield usage 91s ok 98 - No args should be passed to usage 91s ok 99 - Should get error from alter for nonexistent engine 91s ok 100 - Nonexistent engine error ident should be "engine" 91s ok 101 - Nonexistent engine error message should be correct 91s ok 102 - Should get error for missing engine 91s ok 103 - Missing engine error ident should be "engine" 91s ok 104 - Missing engine error message should be correct 91s ok 105 - 'Engine with more properties' isa 'App::Sqitch::Command::engine' 91s ok 106 - Alter engine "firebird" 91s ok 107 - Engine "firebird" should have plan_file set 91s ok 108 - Engine "firebird" should have registry set 91s ok 109 - Engine "firebird" should have reworked_deploy_dir set 91s ok 110 - Engine "firebird" should have deploy_dir set 91s ok 111 - Engine "firebird" should have target set 91s ok 112 - Engine "firebird" should have revert_dir set 91s ok 113 - Engine "firebird" should have client set 91s ok 114 - Engine "firebird" should have reworked_dir set 91s ok 115 - Engine "firebird" should have verify_dir set 91s ok 116 - Engine "firebird" should have variables 91s ok 117 - Engine "firebird" should have top_dir set 91s ok 118 - Engine "firebird" should have extension set 91s ok 119 - 'Engine with new top_dir property' isa 'App::Sqitch::Command::engine' 91s ok 120 - dir pg does not exist 91s ok 121 - dir pg/deploy does not exist 91s ok 122 - dir pg/revert does not exist 91s ok 123 - dir pg/verify does not exist 91s ok 124 - Alter engine "pg" 91s ok 125 - dir pg exists 91s ok 126 - dir pg/deploy exists 91s ok 127 - dir pg/revert exists 91s ok 128 - dir pg/verify exists 91s ok 129 - The pg top_dir should have been set 91s ok 130 - Should again get error for missing engine 91s ok 131 - Missing engine error ident should still be "engine" 91s ok 132 - Missing engine error message should include target property 91s ok 133 - 'Engine with target property' isa 'App::Sqitch::Command::engine' 91s ok 134 - Should get error for engine/target mismatch 91s ok 135 - Target mismatch ident should be "engine" 91s ok 136 - Target mismatch message should be correct 91s ok 137 - No name args to remove() should yield usage 91s ok 138 - No args should be passed to usage 91s ok 139 - Should get error for nonexistent engine 91s ok 140 - Nonexistent engine error ident should be "engine" 91s ok 141 - Nonexistent engine error message should be correct 91s ok 142 - Remove 91s ok 143 - Engine "mysql" should now be gone 91s ok 144 - Engine "mysql" should have no variables 91s ok 145 - 'Engein with variables' isa 'App::Sqitch::Command::engine' 91s ok 146 - Add engine "mysql" 91s ok 147 - Engine "mysql" should be back 91s ok 148 - Engine "mysql" should have variables 91s ok 149 - Remove 91s ok 150 - Engine "mysql" should be gone again 91s ok 151 - Engine "mysql" should have no variables 91s ok 152 - Run show() 91s ok 153 - Show with no names should emit the list of engines 91s ok 154 - Show sqlite 91s ok 155 - The full "sqlite" engine should have been shown 91s ok 156 - Show three engines 91s ok 157 - All three engines should have been shown 91s ok 158 - 'Simple engine' isa 'App::Sqitch::Command::engine' 91s ok 159 - Execute undef 91s ok 160 - list() should have been called 91s ok 161 - Execute undef with args 91s ok 162 - list() should have been passed args 91s ok 163 - Execute list 91s ok 164 - list() should have been called 91s ok 165 - Execute list with args 91s ok 166 - list() should have been passed args 91s ok 167 - Execute add 91s ok 168 - add() should have been called 91s ok 169 - Execute add with args 91s ok 170 - add() should have been passed args 91s ok 171 - Execute set-target 91s ok 172 - set_target() should have been called 91s ok 173 - Execute set-target with args 91s ok 174 - set_target() should have been passed args 91s ok 175 - Execute set-registry 91s ok 176 - set_registry() should have been called 91s ok 177 - Execute set-registry with args 91s ok 178 - set_registry() should have been passed args 91s ok 179 - Execute set-client 91s ok 180 - set_client() should have been called 91s ok 181 - Execute set-client with args 91s ok 182 - set_client() should have been passed args 91s ok 183 - Execute remove 91s ok 184 - remove() should have been called 91s ok 185 - Execute remove with args 91s ok 186 - remove() should have been passed args 91s ok 187 - Execute rm 91s ok 188 - remove() should have been called 91s ok 189 - Execute rm with args 91s ok 190 - remove() should have been passed args 91s ok 191 - Execute rename 91s ok 192 - rename() should have been called 91s ok 193 - Execute rename with args 91s ok 194 - rename() should have been passed args 91s ok 195 - Execute show 91s ok 196 - show() should have been called 91s ok 197 - Execute show with args 91s ok 198 - show() should have been passed args 91s ok 199 - Should get an exception for a nonexistent action 91s ok 200 - Nonexistent action message should be passed to usage 91s ok 201 - no warnings 91s ok 91s t/exasol.t .......... 91s ok 1 - require App::Sqitch::Engine::exasol; 91s ok 2 - config_vars should return three vars 91s ok 3 - An object of class 'App::Sqitch::Engine::exasol' isa 'App::Sqitch::Engine::exasol' 91s ok 4 - Key should be "exasol" 91s ok 5 - Name should be "Exasol" 91s ok 6 - client should default to exaplus 91s ok 7 - registry default should be "sqitch" 91s ok 8 - DB URI should be "db:exasol:" 91s ok 9 - Destination should default to "db:exasol:" 91s ok 10 - Registry destination should be the same as destination 91s ok 11 - exaplus command should be std opts-only 91s ok 12 - _script should work 91s ok 13 - Set some variables 91s ok 14 - _script should assemble variables 91s ok 15 - Should handle query SSLCertificate=SSL_VERIFY_NONE 91s ok 16 - Should handle query SSLCERTIFICATE=SSL_VERIFY_NONE 91s ok 17 - Should handle query SSLCERTIFICATE=xxx 91s ok 18 - Should handle query SSLCERTIFICATE=SSL_VERIFY_NONE&SSLCERTIFICATE=xyz 91s ok 19 - Should handle query AuthMethod=refreshtoken 91s ok 20 - Should handle query AUTHMETHOD=xyz 91s ok 21 - Should handle query SSLCertificate=SSL_VERIFY_NONE&AUTHMETHOD=xyz 91s ok 22 - Target name should NOT fall back on sysuser 91s ok 23 - Registry target should be the same as destination 91s ok 24 - Create another exasol 91s ok 25 - client should be as configured 91s ok 26 - uri should be as configured 91s ok 27 - registry should be as configured 91s ok 28 - exaplus command should be configured from URI config 91s ok 29 - _script should use registry from config settings 91s ok 30 - App::Sqitch::Engine::exasol->can(...) 91s ok 31 - Call _run 91s ok 32 - EXAplus command should be passed to spool() 91s ok 33 - The script should be spooled 91s ok 34 - Call _capture 91s ok 35 - Command and script should be passed to run3() 91s ok 36 - _capture should actually capture 91s ok 37 - _capture should die when exaplus dies 91s ok 38 - STDERR should be emitted by _capture 91s ok 39 - initialized() should rethrow unexpected DB error 91s ok 40 - _cid should rethrow unexpected DB error 91s ok 41 - App::Sqitch::Engine::exasol->can('_file_for_script') 91s ok 42 - File without special characters should be used directly 91s ok 43 - Double quotes should be SQL-escaped 91s ok 44 - Get temp dir 91s ok 45 - 'Temp dir' isa 'Path::Class::Dir' 91s ok 46 - File with special char should be aliased 91s ok 47 - Should get an error on failure to delete the alias 91s ok 48 - File deletion error ident should be "exasol" 91s ok 49 - File deletion error message should be correct 91s ok 50 - File with special char and quotes should be aliased 91s ok 51 - Run foo/bar.sql 91s ok 52 - File should be passed to capture() 91s ok 53 - Run foo/"bar".sql 91s ok 54 - Double quotes in file passed to capture() should be escaped 91s ok 55 - Spool a "file handle" 91s ok 56 - exaplus command should be passed to spool() 91s ok 57 - 'Array ove handles should be passed to spool' isa 'ARRAY' 91s ok 58 - First file handle should be script 91s ok 59 - Second should be the passed handle 91s ok 60 - Verify foo/bar.sql 91s ok 61 - Verify file should be passed to capture() 91s ok 62 - Verify foo/bar.sql again 91s ok 63 - Verify file should be passed to run() for high verbosity 91s ok 64 - App::Sqitch::Engine::exasol->can('_ts2char_format') 91s ok 65 - _ts2char should work 91s ok 66 - App::Sqitch::Engine::exasol->can('_dt') 91s ok 67 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 91s ok 68 - DateTime year should be set 91s ok 69 - DateTime month should be set 91s ok 70 - DateTime day should be set 91s ok 71 - DateTime hour should be set 91s ok 72 - DateTime minute should be set 91s ok 73 - DateTime second should be set 91s ok 74 - DateTime TZ should be set 91s ok 75 - _char2ts should present timestamp at UTC w/o tz identifier 91s ok 76 - Should have _listagg_format 91s ok 77 - Should have _ts_default 91s ok 78 - Should have _regex_op 91s ok 79 - Should have _simple_from 91s ok 80 - Should have _limit_default 91s ok 81 - Should have no table error 91s ok 82 - Should have no column error 91s ok 83 - Should now have table error 91s ok 84 - Should now have no column error 91s ok 85 - Unique constraints not supported by Exasol 91s ok 86 - Should get limit and offset 91s ok 87 - Should get limit and offset when offset only 91s ok 88 - Should get only limit with 0 offset 91s ok 89 - Should get only limit with noa offset 91s ok 90 - Should get no limit or offset for 0s 91s ok 91 - Should get no limit or offset for no args 91s ok 92 - Should use regexp_like and prepend wildcard to regex 91s ok 93 - Should use regexp_like and append wildcard to regex 91s ok 94 - Should not chande regex with both anchors 91s ok 95 - Should append wildcards to both ends without anchors 91s ok 96 - App::Sqitch::Engine::exasol->can(...) 91s # Subtest: live database 91s 1..0 # SKIP Unable to live-test Exasol engine: DBD::ODBC 1.59 required to manage Exasol at t/exasol.t line 437. 91s ok 97 # skip Unable to live-test Exasol engine: DBD::ODBC 1.59 required to manage Exasol at t/exasol.t line 437. 91s # 91s 1..97 91s ok 92s t/firebird.t ........ 92s ok 1 - require App::Sqitch::Engine::firebird; 92s ok 2 - config_vars should return three vars 92s ok 3 - An object of class 'App::Sqitch::Engine::firebird' isa 'App::Sqitch::Engine::firebird' 92s ok 4 - Key should be "firebird" 92s ok 5 - Name should be "Firebird" 92s ok 6 - Should have username from environment 92s ok 7 - Should have password from environment 92s ok 8 - Should have _limit_default 92s ok 9 - dbname should be filled in 92s ok 10 - registry dbname should be "sqitch.fdb" 92s ok 11 - registry_destination should be the same as registry URI 92s ok 12 - An object of class 'App::Sqitch::Engine::firebird' isa 'App::Sqitch::Engine::firebird' 92s ok 13 - Set some variables 92s ok 14 - Create a firebird with environment variables set 92s ok 15 - Should have username from environment 92s ok 16 - Should have password from environment 92s ok 17 - Create another firebird 92s ok 18 - client should be as configured 92s ok 19 - URI should be as configured 92s ok 20 - destination should default to URI without password 92s ok 21 - registry_destination should be URI with configured registry and no password 92s ok 22 - firebird command should be configured 92s ok 23 - App::Sqitch::Engine::firebird->can('connection_string') 92s ok 24 - Connection for db:firebird:foo.fdb 92s ok 25 - Connection for db:firebird:foo.com/foo.fdb 92s ok 26 - Connection for db:firebird:foo.com/foo.fdb:1234 92s ok 27 - Connection for db:firebird:/blah/hi.fdb 92s ok 28 - Connection for db:firebird:foo.com//blah/hi.fdb 92s ok 29 - Connection for db:firebird:foo.com//blah/hi.fdb:1234 92s ok 30 - Connection for db:firebird:C:/blah/hi.fdb 92s ok 31 - Connection for db:firebird:foo.com/C:/blah/hi.fdb 92s ok 32 - Connection for db:firebird:foo.com/C:/blah/hi.fdb:1234 92s ok 33 - Should get an exception for no db name 92s ok 34 - No dbname exception ident should be "firebird" 92s ok 35 - No dbname exception message should be correct 92s ok 36 - App::Sqitch::Engine::firebird->can(...) 92s ok 37 - ISC_PASSWORD should be "s3cr3t" 92s ok 38 - Call _run 92s ok 39 - Command should be passed to run() 92s ok 40 - ISC_PASSWORD should be "s3cr3t" 92s ok 41 - Call _spool 92s ok 42 - Command should be passed to spool() 92s ok 43 - ISC_PASSWORD should be "s3cr3t" 92s ok 44 - Call _capture 92s ok 45 - Command should be passed to capture() 92s ok 46 - Create a firebird with sqitch with no pw 92s ok 47 - ISC_PASSWORD should not exist 92s ok 48 - Call _run again 92s ok 49 - Command should be passed to run() again 92s ok 50 - ISC_PASSWORD should not exist 92s ok 51 - Call _spool again 92s ok 52 - Command should be passed to spool() again 92s ok 53 - ISC_PASSWORD should not exist 92s ok 54 - Call _capture again 92s ok 55 - Command should be passed to capture() again 92s ok 56 - ISC_PASSWORD should not exist 92s ok 57 - Run foo/bar.sql 92s ok 58 - File should be passed to run() 92s ok 59 - ISC_PASSWORD should not exist 92s ok 60 - Spool a "file handle" 92s ok 61 - Handle should be passed to spool() 92s ok 62 - ISC_PASSWORD should not exist 92s ok 63 - Verify foo/bar.sql 92s ok 64 - Verify file should be passed to capture() 92s ok 65 - ISC_PASSWORD should not exist 92s ok 66 - Verify foo/bar.sql again 92s ok 67 - Verify file should be passed to run() for high verbosity 92s ok 68 - App::Sqitch::Engine::firebird->can('_ts2char_format') 92s ok 69 - _ts2char_format should work 92s ok 70 - App::Sqitch::Engine::firebird->can('_dt') 92s ok 71 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 92s ok 72 - DateTime year should be set 92s ok 73 - DateTime month should be set 92s ok 74 - DateTime day should be set 92s ok 75 - DateTime hour should be set 92s ok 76 - DateTime minute should be set 92s ok 77 - DateTime second should be set 92s ok 78 - DateTime TZ should be set 92s ok 79 - Should have no table error 92s ok 80 - Should have no column error 92s ok 81 - Should now have table error 92s ok 82 - Still should have no column error 92s ok 83 - Should again have table error 92s ok 84 - Still should have no column error 92s ok 85 - Should again have no table error 92s ok 86 - Should now have no column error 92s ok 87 - Should get an error from initialize 92s ok 88 - No creattion exception ident should be "firebird" 92s ok 89 - Creation exception message should be correct 92s ok 90 - Run the upgrade 92s ok 91 - Should have disconnected 92s ok 92 - Should have cleared the database handle 92s ok 93 - Should have run a command 92s ok 94 - _cid should propagate unexpected error 92s ok 95 - _cid should just return on error code -902 92s ok 96 - current_state should return on no table error 92s ok 97 - current_state should propagate unexpected error 92s ok 98 - Should get undef from change_id_for when no useful params 92s ok 99 - Should get error when no client found 92s ok 100 - Client exception ident should be "firebird" 92s ok 101 - Client exception message should be correct 92s ok 102 - App::Sqitch::Engine::firebird->can(...) 92s # Subtest: live database 92s 1..0 # SKIP Unable to live-test Firebird engine: Unable to locate Firebird ISQL; set "engine.firebird.client" via sqitch config 92s ok 103 # skip Unable to live-test Firebird engine: Unable to locate Firebird ISQL; set "engine.firebird.client" via sqitch config 92s 1..103 92s ok 92s t/help.t ............ 92s 1..20 92s ok 1 - Load a sqitch sqitch object 92s ok 2 - 'Load help command' isa 'App::Sqitch::Command::help' 92s ok 3 - 'Help command' isa 'App::Sqitch::Command' 92s ok 4 - App::Sqitch::Command::help->can(...) 92s ok 5 - Options should be correct 92s ok 6 - Should parse options 92s ok 7 - Options should not conflict with core options 92s ok 8 - Execute help 92s ok 9 - Should show sqitch app docs 92s ok 10 - Execute "config" help 92s ok 11 - Should show "config" command docs 92s ok 12 - Execute "changes" help 92s ok 13 - Should show "changes" command docs 92s ok 14 - Execute "tutorial" help 92s ok 15 - Should show "tutorial" command docs 92s ok 16 - Should get an exception for "nonexistent" help 92s ok 17 - Exception ident should be "help" 92s ok 18 - Should get failure message for nonexistent command 92s ok 19 - Exception exit val should be 1 92s ok 20 - no warnings 92s ok 92s t/init.t ............ 92s 1..196 92s ok 1 - use App::Sqitch::Command::init; 92s ok 2 - 'App::Sqitch::Command::init' isa 'App::Sqitch::Command' 92s ok 3 - 'Init command' isa 'App::Sqitch::Command::init' 92s ok 4 - 'Init commmand' isa 'App::Sqitch::Command' 92s ok 5 - App::Sqitch::Command::init->can(...) 92s ok 6 - App::Sqitch::Command::init does TargetConfigCommand 92s ok 7 - Options should be correct 92s ok 8 - Should parse options 92s ok 9 - Options should not conflict with core options 92s ok 10 - Default config should contain empty properties 92s ok 11 - Should accept a URI in options 92s ok 12 - Get full config 92s ok 13 - 'uri propertiy' isa 'URI' 92s ok 14 - Should have properties 92s ok 15 - 'plan_file file attribute' isa 'Path::Class::File' 92s ok 16 - 'top_dir directory attribute' isa 'Path::Class::Dir' 92s ok 17 - 'reworked_dir directory attribute' isa 'Path::Class::Dir' 92s ok 18 - 'deploy_dir directory attribute' isa 'Path::Class::Dir' 92s ok 19 - 'reworked_deploy_dir directory attribute' isa 'Path::Class::Dir' 92s ok 20 - 'revert_dir directory attribute' isa 'Path::Class::Dir' 92s ok 21 - 'reworked_revert_dir directory attribute' isa 'Path::Class::Dir' 92s ok 22 - 'verify_dir directory attribute' isa 'Path::Class::Dir' 92s ok 23 - 'reworked_verify_dir directory attribute' isa 'Path::Class::Dir' 92s ok 24 - Should fail on invalid directory name 92s ok 25 - Invalid directory ident should be "init" 92s ok 26 - The invalid directory messsage should be correct 92s ok 27 - Should fail on invalid directory names 92s ok 28 - Invalid directories ident should be "init" 92s ok 29 - The invalid properties messsage should be correct 92s ok 30 - 'default target' isa 'App::Sqitch::Target' 92s ok 31 - App::Sqitch::Command::init->can('make_directories_for') 92s ok 32 - dir init.mkdir does not exist 92s ok 33 - dir init.mkdir/deploy does not exist 92s ok 34 - dir init.mkdir/revert does not exist 92s ok 35 - dir init.mkdir/verify does not exist 92s ok 36 - dir init.mkdir/reworked/deploy does not exist 92s ok 37 - dir init.mkdir/reworked/revert does not exist 92s ok 38 - dir init.mkdir/reworked/verify does not exist 92s ok 39 - Make the directories 92s ok 40 - dir init.mkdir/deploy exists 92s ok 41 - dir init.mkdir/revert exists 92s ok 42 - dir init.mkdir/verify exists 92s ok 43 - dir init.mkdir/reworked/deploy exists 92s ok 44 - dir init.mkdir/reworked/revert exists 92s ok 45 - dir init.mkdir/reworked/verify exists 92s ok 46 - Each should have been sent to info 92s ok 47 - Make the directories again 92s ok 48 - Nothing should have been sent to info 92s ok 49 - Make the directories once more 92s ok 50 - revert dir exists again 92s ok 51 - Should have noted creation of revert dir 92s ok 52 - Should fail on permission issue 92s ok 53 - Permission error should have ident "init" 92s ok 54 - The permission error should be formatted properly 92s ok 55 - App::Sqitch::Command::init->can('write_config') 92s ok 56 - Another init object 92s ok 57 - nonexistent.local does not exist 92s ok 58 - Write the config 92s ok 59 - nonexistent.local exists 92s ok 60 - The configuration file should have no variables 92s ok 61 - The creation should be sent to info 92s ok 62 - All in core section should be commented-out 92s ok 63 - Another init object 92s ok 64 - Write the config 92s ok 65 - nonexistent.local exists 92s ok 66 - The configuration should have been written with the one setting 92s ok 67 - The creation should be sent to info 92s ok 68 - Other settings should be commented-out 92s ok 69 - Write the config again 92s ok 70 - The configuration should be unchanged 92s ok 71 - Nothing should have been sent to info 92s ok 72 - Make an init object with user config 92s ok 73 - nonexistent.local does not exist 92s ok 74 - Write the config with a user conf 92s ok 75 - nonexistent.local exists 92s ok 76 - The configuration should just have core.top_dir 92s ok 77 - The creation should be sent to info again 92s ok 78 - Other settings should be commented-out 92s ok 79 - Make an init object with system config 92s ok 80 - Get target 92s ok 81 - nonexistent.local does not exist 92s ok 82 - Write the config with a system conf 92s ok 83 - nonexistent.local exists 92s ok 84 - The configuration should have local and system config 92s ok 85 - The creation should be sent to info again 92s ok 86 - Other settings should be commented-out 92s ok 87 - Create new init with sqitch non-default attributes 92s ok 88 - Write the config with core attrs 92s ok 89 - The creation should be sent to info once more 92s ok 90 - The configuration should have been written with core and engine values 92s ok 91 - Create new init with sqitch with default engine attributes 92s ok 92 - Write the config with engine attrs 92s ok 93 - The creation should be sent to info again again 92s ok 94 - The configuration should have been written with only the engine var 92s ok 95 - Engine section should be present but commented-out 92s ok 96 - Make an init with sqlite and user config 92s ok 97 - nonexistent.local does not exist 92s ok 98 - Write the config with sqlite config 92s ok 99 - The creation should be sent to info once more 92s ok 100 - New config should have been written with sqlite values 92s ok 101 - Configured client should be included in a comment 92s ok 102 - Configured target should be included in a comment 92s ok 103 - Configured registry should be included in a comment 92s ok 104 - Create new init with sqitch with more non-default engine attributes 92s ok 105 - Write the config with more engine attrs 92s ok 106 - The creation should be sent to info one more time 92s ok 107 - The configuration should have been written with client values 92s ok 108 - registry should be included in a comment 92s ok 109 - Create new init with sqitch with default engine attributes 92s ok 110 - Write the config with engine attrs 92s ok 111 - The creation should be sent to info again again again 92s ok 112 - The configuration should have been written with only the engine var 92s ok 113 - Engine section should be present but commented-out 92s ok 114 - Make an init with pg and user config 92s ok 115 - nonexistent.local does not exist 92s ok 116 - Write the config with pg config 92s ok 117 - The pg config creation should be sent to info 92s ok 118 - The configuration should have been written with pg options 92s ok 119 - Configured registry should be in a comment 92s ok 120 - Configured target should be in a comment 92s ok 121 - App::Sqitch::Command::init->can('write_plan') 92s ok 122 - Plan file should not yet exist 92s ok 123 - Write the plan file 92s ok 124 - The plan creation should be sent to info 92s ok 125 - Plan file should now exist 92s ok 126 - The contents should be correct 92s ok 127 - Write the plan file again 92s ok 128 - Plan file should still exist 92s ok 129 - The contents should be identical 92s ok 130 - Should get an error initialing a different project 92s ok 131 - Initialization error ident should be "init" 92s ok 132 - Initialzation error message should be correct 92s ok 133 - Should get an error initialzing a non-plan file 92s ok 134 - Non-plan file error ident should be "init" 92s ok 135 - Non-plan file error message should be correct 92s ok 136 - The file should not be overwritten 92s ok 137 - Create new init with sqitch with project and URI 92s ok 138 - Write the plan file again 92s ok 139 - The plan creation should be sent to info againq 92s ok 140 - Plan file should again exist 92s ok 141 - The plan should include the project and uri pragmas 92s ok 142 - App::Sqitch::Command::init->can('_validate_project') 92s ok 143 - No project should yield usage 92s ok 144 - No args should be passed to usage 92s ok 145 - Should get error for invalid project name "^foo" 92s ok 146 - Bad project "^foo" ident should be "init" 92s ok 147 - Bad project "^foo" error message should be correct 92s ok 148 - Should get error for invalid project name "foo^" 92s ok 149 - Bad project "foo^" ident should be "init" 92s ok 150 - Bad project "foo^" error message should be correct 92s ok 151 - Should get error for invalid project name "foo^6" 92s ok 152 - Bad project "foo^6" ident should be "init" 92s ok 153 - Bad project "foo^6" error message should be correct 92s ok 154 - Should get error for invalid project name "foo^666" 92s ok 155 - Bad project "foo^666" ident should be "init" 92s ok 156 - Bad project "foo^666" error message should be correct 92s ok 157 - Should get error for invalid project name "%hi" 92s ok 158 - Bad project "%hi" ident should be "init" 92s ok 159 - Bad project "%hi" error message should be correct 92s ok 160 - Should get error for invalid project name "hi!" 92s ok 161 - Bad project "hi!" ident should be "init" 92s ok 162 - Bad project "hi!" error message should be correct 92s ok 163 - Should get error for invalid project name "foo@bar" 92s ok 164 - Bad project "foo@bar" ident should be "init" 92s ok 165 - Bad project "foo@bar" error message should be correct 92s ok 166 - Should get error for invalid project name "foo:bar" 92s ok 167 - Bad project "foo:bar" ident should be "init" 92s ok 168 - Bad project "foo:bar" error message should be correct 92s ok 169 - Should get error for invalid project name "+foo" 92s ok 170 - Bad project "+foo" ident should be "init" 92s ok 171 - Bad project "+foo" error message should be correct 92s ok 172 - Should get error for invalid project name "-foo" 92s ok 173 - Bad project "-foo" ident should be "init" 92s ok 174 - Bad project "-foo" error message should be correct 92s ok 175 - Should get error for invalid project name "@foo" 92s ok 176 - Bad project "@foo" ident should be "init" 92s ok 177 - Bad project "@foo" error message should be correct 92s ok 178 - 'Custom URI target' isa 'App::Sqitch::Target' 92s ok 179 - Shoudl have the custom URI 92s ok 180 - Should have the custom name 92s ok 181 - Should fail on permission issue 92s ok 182 - Permission error should have ident "init" 92s ok 183 - The permission error should be formatted properly 92s ok 184 - Should fail on nonexistent dir name 92s ok 185 - Nonexistant path error should have ident "init" 92s ok 186 - Nonexistant path error should be the message 92s ok 187 - Execute! 92s ok 188 - dir plan.dir exists 92s ok 189 - dir plan.dir/deploy exists 92s ok 190 - dir plan.dir/revert exists 92s ok 191 - dir plan.dir/verify exists 92s ok 192 - nonexistent.local exists 92s ok 193 - plan.dir/sqitch.plan exists 92s ok 194 - Should have status messages 92s ok 195 - The plan should have the --project name 92s ok 196 - no warnings 92s ok 93s t/item_formatter.t .. 93s 1..172 93s ok 1 - require App::Sqitch::ItemFormatter; 93s ok 2 - App::Sqitch::ItemFormatter->can(...) 93s ok 3 - 'Instantiated object' isa 'App::Sqitch::ItemFormatter' 93s ok 4 - Should not be abbreviated by default 93s ok 5 - Default date format should be "iso" 93s ok 6 - Format "%e" should output "deploy" 93s ok 7 - Format "%e" should output "revert" 93s ok 8 - Format "%e" should output "fail" 93s ok 9 - Format "%L" should output "Deploy" 93s ok 10 - Format "%L" should output "Revert" 93s ok 11 - Format "%L" should output "Fail" 93s ok 12 - Format "%l" should output "deploy" 93s ok 13 - Format "%l" should output "revert" 93s ok 14 - Format "%l" should output "fail" 93s ok 15 - Format "%{event}_" should output "Event: " 93s ok 16 - Format "%{change}_" should output "Change: " 93s ok 17 - Format "%{committer}_" should output "Committer:" 93s ok 18 - Format "%{planner}_" should output "Planner: " 93s ok 19 - Format "%{by}_" should output "By: " 93s ok 20 - Format "%{date}_" should output "Date: " 93s ok 21 - Format "%{committed}_" should output "Committed:" 93s ok 22 - Format "%{planned}_" should output "Planned: " 93s ok 23 - Format "%{name}_" should output "Name: " 93s ok 24 - Format "%{email}_" should output "Email: " 93s ok 25 - Format "%{requires}_" should output "Requires: " 93s ok 26 - Format "%{conflicts}_" should output "Conflicts:" 93s ok 27 - Format "%H" should output "123456789" 93s ok 28 - Format "%h" should output "123456789" 93s ok 29 - Format "%{5}h" should output "12345" 93s ok 30 - Format "%{7}h" should output "1234567" 93s ok 31 - Format "%n" should output "foo" 93s ok 32 - Format "%n" should output "bar" 93s ok 33 - Format "%o" should output "foo" 93s ok 34 - Format "%o" should output "bar" 93s ok 35 - Format "%F" should output "deploy/change_file.sql" 93s ok 36 - Format "%F" should output "deploy/change_file_with_tag@tag.sql" 93s ok 37 - Format "%c" should output "larry " 93s ok 38 - Format "%{n}c" should output "damian" 93s ok 39 - Format "%{name}c" should output "chip" 93s ok 40 - Format "%{e}c" should output "larry@example.com" 93s ok 41 - Format "%{email}c" should output "damian@example.com" 93s ok 42 - Format "%{date}c" should output "2024-11-02 12:02:10 -0500" 93s ok 43 - Format "%{date:rfc}c" should output "Sat, 02 Nov 2024 12:02:10 -0500" 93s ok 44 - Format "%{d:long}c" should output "November 2, 2024, 12:02:10 PM CDT" 93s ok 45 - Format "%{d:cldr:HH'h' mm'm'}c" should output "12h 02m" 93s ok 46 - Format "%{d:strftime:%a at %H:%M:%S}c" should output "Sat at 12:02:10" 93s ok 47 - Format "%p" should output "larry " 93s ok 48 - Format "%{n}p" should output "damian" 93s ok 49 - Format "%{name}p" should output "chip" 93s ok 50 - Format "%{e}p" should output "larry@example.com" 93s ok 51 - Format "%{email}p" should output "damian@example.com" 93s ok 52 - Format "%{date}p" should output "2024-11-01 12:02:10 -0500" 93s ok 53 - Format "%{date:rfc}p" should output "Fri, 01 Nov 2024 12:02:10 -0500" 93s ok 54 - Format "%{d:long}p" should output "November 1, 2024, 12:02:10 PM CDT" 93s ok 55 - Format "%{d:cldr:HH'h' mm'm'}p" should output "12h 02m" 93s ok 56 - Format "%{d:strftime:%a at %H:%M:%S}p" should output "Fri at 12:02:10" 93s ok 57 - Format "%t" should output "" 93s ok 58 - Format "%t" should output " @foo" 93s ok 59 - Format "%t" should output " @foo, @bar" 93s ok 60 - Format "%{|}t" should output "" 93s ok 61 - Format "%{|}t" should output " @foo" 93s ok 62 - Format "%{|}t" should output " @foo|@bar" 93s ok 63 - Format "%{0}t" should output " @foo0@bar" 93s ok 64 - Format "%{}t" should output " @foo@bar" 93s ok 65 - Format "%T" should output "" 93s ok 66 - Format "%T" should output " (@foo)" 93s ok 67 - Format "%T" should output " (@foo, @bar)" 93s ok 68 - Format "%{|}T" should output "" 93s ok 69 - Format "%{|}T" should output " (@foo)" 93s ok 70 - Format "%{|}T" should output " (@foo|@bar)" 93s ok 71 - Format "%{0}T" should output " (@foo0@bar)" 93s ok 72 - Format "%{}T" should output " (@foo@bar)" 93s ok 73 - Format "%r" should output "" 93s ok 74 - Format "%r" should output " foo" 93s ok 75 - Format "%r" should output " foo, bar" 93s ok 76 - Format "%{|}r" should output "" 93s ok 77 - Format "%{|}r" should output " foo" 93s ok 78 - Format "%{|}r" should output " foo|bar" 93s ok 79 - Format "%{0}r" should output " foo0bar" 93s ok 80 - Format "%{}r" should output " foobar" 93s ok 81 - Format "%R" should output "" 93s ok 82 - Format "%R" should output "Requires: foo[newline]" 93s ok 83 - Format "%R" should output "Requires: foo, bar[newline]" 93s ok 84 - Format "%{|}R" should output "" 93s ok 85 - Format "%{|}R" should output "Requires: foo[newline]" 93s ok 86 - Format "%{|}R" should output "Requires: foo|bar[newline]" 93s ok 87 - Format "%{0}R" should output "Requires: foo0bar[newline]" 93s ok 88 - Format "%{}R" should output "Requires: foobar[newline]" 93s ok 89 - Format "%x" should output "" 93s ok 90 - Format "%x" should output " foo" 93s ok 91 - Format "%x" should output " foo, bax" 93s ok 92 - Format "%{|}x" should output "" 93s ok 93 - Format "%{|}x" should output " foo" 93s ok 94 - Format "%{|}x" should output " foo|bax" 93s ok 95 - Format "%{0}x" should output " foo0bax" 93s ok 96 - Format "%{}x" should output " foobax" 93s ok 97 - Format "%X" should output "" 93s ok 98 - Format "%X" should output "Conflicts: foo[newline]" 93s ok 99 - Format "%X" should output "Conflicts: foo, bar[newline]" 93s ok 100 - Format "%{|}X" should output "" 93s ok 101 - Format "%{|}X" should output "Conflicts: foo[newline]" 93s ok 102 - Format "%{|}X" should output "Conflicts: foo|bar[newline]" 93s ok 103 - Format "%{0}X" should output "Conflicts: foo0bar[newline]" 93s ok 104 - Format "%{}X" should output "Conflicts: foobar[newline]" 93s ok 105 - Format "%{yellow}C" should output "" 93s ok 106 - Format "%{:event}C" should output "" 93s ok 107 - Format "%v" should output "[newline]" 93s ok 108 - Format "%%" should output "%" 93s ok 109 - Format "%s" should output "hi there" 93s ok 110 - Format "%s" should output "hi there" 93s ok 111 - Format "%s" should output "subject line" 93s ok 112 - Format "%{ }s" should output " hi there" 93s ok 113 - Format "%{xx}s" should output "xxhi there" 93s ok 114 - Format "%b" should output "" 93s ok 115 - Format "%b" should output "yo" 93s ok 116 - Format "%b" should output "first graph[newline][newline]second graph[newline][newline]" 93s ok 117 - Format "%{ }b" should output "" 93s ok 118 - Format "%{xxx }b" should output "xxx yo" 93s ok 119 - Format "%{x}b" should output "xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]" 93s ok 120 - Format "%{ }b" should output " yo" 93s ok 121 - Format "%B" should output "hi there" 93s ok 122 - Format "%B" should output "hi there[newline]yo" 93s ok 123 - Format "%B" should output "subject line[newline][newline]first graph[newline][newline]second graph[newline][newline]" 93s ok 124 - Format "%{ }B" should output " hi there" 93s ok 125 - Format "%{xxx }B" should output "xxx hi there[newline]xxx yo" 93s ok 126 - Format "%{x}B" should output "xsubject line[newline]x[newline]xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]" 93s ok 127 - Format "%{ }B" should output " hi there [newline] yo" 93s ok 128 - Format "%{change}a" should output "change lolz[newline]" 93s ok 129 - Format "%{change_id}a" should output "change_id 000011112222333444[newline]" 93s ok 130 - Format "%{event}a" should output "event deploy[newline]" 93s ok 131 - Format "%{tags}a" should output "tags @beta, @gamma[newline]" 93s ok 132 - Format "%{requires}a" should output "requires foo, bar[newline]" 93s ok 133 - Format "%{conflicts}a" should output "" 93s ok 134 - Format "%{committer_name}a" should output "committer_name larry[newline]" 93s ok 135 - Format "%{committed_at}a" should output "committed_at 2024-11-02T17:02:10Z[newline]" 93s ok 136 - Should get exception for format "%_" 93s ok 137 - %_ error ident should be "format" 93s ok 138 - %_ error message should be correct 93s ok 139 - Should get exception for unknown label in format "%_" 93s ok 140 - Invalid %_ label error ident should be "format" 93s ok 141 - Invalid %_ label error message should be correct 93s ok 142 - Instantiate with abbrev => 4 93s ok 143 - %h should respect abbrev 93s ok 144 - %H should not respect abbrev 93s ok 145 - Instantiate with date_format => "rfc" 93s ok 146 - %{date}c should respect the date_format attribute 93s ok 147 - %{iso}c should override the date_format attribute 93s ok 148 - Should get exception for unknown attribute passed to %a 93s ok 149 - %a error ident should be "log" 93s ok 150 - %a error message should be correct 93s ok 151 - Construct with color "always" 93s ok 152 - Format "%{yellow}C" should output yellow 93s ok 153 - Format "%{red}C" should output red 93s ok 154 - Format "%{blue}C" should output blue 93s ok 155 - Format "%{cyan}C" should output cyan 93s ok 156 - Format "%{magenta}C" should output magenta 93s ok 157 - Format "%{:event}C" on "deploy" should output green 93s ok 158 - Format "%{:event}C" on "revert" should output blue 93s ok 159 - Format "%{:event}C" on "fail" should output red 93s ok 160 - Should get an error for an invalid color 93s ok 161 - Invalid color error ident should be "log" 93s ok 162 - Invalid color error message should be correct 93s ok 163 - Construct with color "never" 93s ok 164 - Format "%{yellow}C" should not output a color 93s ok 165 - Format "%{red}C" should not output a color 93s ok 166 - Format "%{blue}C" should not output a color 93s ok 167 - Format "%{cyan}C" should not output a color 93s ok 168 - Format "%{magenta}C" should not output a color 93s ok 169 - Should get an exception for a bad format code 93s ok 170 - bad format code format error ident should be "log" 93s ok 171 - bad format code format error message should be correct 93s ok 172 - no warnings 93s ok 93s t/linelist.t ........ 93s 1..28 93s ok 1 - require App::Sqitch::Plan::LineList; 93s ok 2 - Count should be six 93s ok 3 - Lines should be in order 93s ok 4 - Should have foo at 0 93s ok 5 - Should have bar at 1 93s ok 6 - Should have yo1 at 2 93s ok 7 - Should have @alpha at 3 93s ok 8 - Should have blank at 4 93s ok 9 - Should have baz at 5 93s ok 10 - Should have yo2 at 6 93s ok 11 - Should not find "non" 93s ok 12 - Should find foo at 0 93s ok 13 - Should find bar at 1 93s ok 14 - Should find yo1 at 2 93s ok 15 - Should find @alpha at 3 93s ok 16 - Should find blank at 4 93s ok 17 - Should find baz at 5 93s ok 18 - Should find yo2 at 6 93s ok 19 - Append hi 93s ok 20 - Count should now be eight 93s ok 21 - Lines should be in order with $hi at the end 93s ok 22 - Insert a change at index 3 93s ok 23 - Count should now be nine 93s ok 24 - Lines should be in order with $oy at index 3 93s ok 25 - Should find oy at 3 93s ok 26 - Should find @alpha at 4 93s ok 27 - Should find hi at 8 93s ok 28 - no warnings 93s ok 94s t/log.t ............. 94s 1..253 94s ok 1 - require App::Sqitch::Command::log; 94s ok 2 - Load a sqitch object 94s ok 3 - 'log command' isa 'App::Sqitch::Command::log' 94s ok 4 - App::Sqitch::Command::log->can(...) 94s ok 5 - App::Sqitch::Command::log does ConnectingCommand 94s ok 6 - Options should be correct 94s ok 7 - Default target should be undef 94s ok 8 - 'new status with target' isa 'App::Sqitch::Command::log' 94s ok 9 - Should have target "foo" 94s ok 10 - 'Formatter' isa 'App::Sqitch::ItemFormatter' 94s ok 11 - Should get empty hash for no config or options 94s ok 12 - Should get error for invalid date format in config 94s ok 13 - Invalid date format error ident should be "datetime" 94s ok 14 - Invalid date format error message should be correct 94s ok 15 - Should get error for invalid date format in optsions 94s ok 16 - Invalid date format error ident should be "log" 94s ok 17 - Invalid date format error message should be correct 94s ok 18 - Should get error for invalid format in config 94s ok 19 - Invalid format error ident should be "log" 94s ok 20 - Invalid format error message should be correct 94s ok 21 - Should get error for invalid format in optsions 94s ok 22 - Invalid format error ident should be "log" 94s ok 23 - Invalid format error message should be correct 94s ok 24 - Configuration should respect --no-color, setting "never" 94s ok 25 - --oneline should set format 94s ok 26 - --oneline should set abbrev to 6 94s ok 27 - --oneline should not override --format 94s ok 28 - --oneline should not overrride --abbrev 94s ok 29 - Configuration should respect --no-color even when configure is set 94s ok 30 - Configuration should respect color option 94s ok 31 - Configuration should respect color config 94s ok 32 - Configuration should respect color option 94s ok 33 - Configuration should respect color config 94s ok 34 - Configuration should respect color option 94s ok 35 - Configuration should respect color config 94s ok 36 - Configuration should respect color option 94s ok 37 - Configuration should respect color config 94s ok 38 - Instantiate with format "raw" 94s ok 39 - Format "raw" should output correctly 94s ok 40 - Format "raw" should output correctly without tags 94s ok 41 - Instantiate with format "full" 94s ok 42 - Format "full" should output correctly 94s ok 43 - Instantiate with format "full" and date format "rfc" 94s ok 44 - Format "full" and date format "rfc" should output correctly 94s ok 45 - Instantiate with format "full" and date format "long" 94s ok 46 - Format "full" and date format "long" should output correctly 94s ok 47 - Instantiate with format "full" and date format "medium" 94s ok 48 - Format "full" and date format "medium" should output correctly 94s ok 49 - Format "full" should output correctly without tags 94s ok 50 - Instantiate with format "long" 94s ok 51 - Format "long" should output correctly 94s ok 52 - Format "long" should output correctly without tags 94s ok 53 - Instantiate with format "medium" 94s ok 54 - Format "medium" should output correctly 94s ok 55 - Instantiate with format "medium" and date format "rfc" 94s ok 56 - Format "medium" and date format "rfc" should output correctly 94s ok 57 - Instantiate with format "medium" and date format "long" 94s ok 58 - Format "medium" and date format "long" should output correctly 94s ok 59 - Instantiate with format "medium" and date format "medium" 94s ok 60 - Format "medium" and date format "medium" should output correctly 94s ok 61 - Instantiate with format "short" 94s ok 62 - Format "short" should output correctly 94s ok 63 - Instantiate with format "oneline" 94s ok 64 - Format "oneline" should output correctly 94s ok 65 - Format "%e" should output "deploy" 94s ok 66 - Format "%e" should output "revert" 94s ok 67 - Format "%e" should output "fail" 94s ok 68 - Format "%L" should output "Deploy" 94s ok 69 - Format "%L" should output "Revert" 94s ok 70 - Format "%L" should output "Fail" 94s ok 71 - Format "%l" should output "deploy" 94s ok 72 - Format "%l" should output "revert" 94s ok 73 - Format "%l" should output "fail" 94s ok 74 - Format "%{event}_" should output "Event: " 94s ok 75 - Format "%{change}_" should output "Change: " 94s ok 76 - Format "%{committer}_" should output "Committer:" 94s ok 77 - Format "%{planner}_" should output "Planner: " 94s ok 78 - Format "%{by}_" should output "By: " 94s ok 79 - Format "%{date}_" should output "Date: " 94s ok 80 - Format "%{committed}_" should output "Committed:" 94s ok 81 - Format "%{planned}_" should output "Planned: " 94s ok 82 - Format "%{name}_" should output "Name: " 94s ok 83 - Format "%{email}_" should output "Email: " 94s ok 84 - Format "%{requires}_" should output "Requires: " 94s ok 85 - Format "%{conflicts}_" should output "Conflicts:" 94s ok 86 - Format "%H" should output "123456789" 94s ok 87 - Format "%h" should output "123456789" 94s ok 88 - Format "%{5}h" should output "12345" 94s ok 89 - Format "%{7}h" should output "1234567" 94s ok 90 - Format "%n" should output "foo" 94s ok 91 - Format "%n" should output "bar" 94s ok 92 - Format "%o" should output "foo" 94s ok 93 - Format "%o" should output "bar" 94s ok 94 - Format "%c" should output "larry " 94s ok 95 - Format "%{n}c" should output "damian" 94s ok 96 - Format "%{name}c" should output "chip" 94s ok 97 - Format "%{e}c" should output "larry@example.com" 94s ok 98 - Format "%{email}c" should output "damian@example.com" 94s ok 99 - Format "%{date}c" should output "2024-11-02 10:02:11 -0700" 94s ok 100 - Format "%{date:rfc}c" should output "Sat, 02 Nov 2024 10:02:11 -0700" 94s ok 101 - Format "%{d:long}c" should output "November 2, 2024, 10:02:11 AM PDT" 94s ok 102 - Format "%{d:cldr:HH'h' mm'm'}c" should output "10h 02m" 94s ok 103 - Format "%{d:strftime:%a at %H:%M:%S}c" should output "Sat at 10:02:11" 94s ok 104 - Format "%p" should output "larry " 94s ok 105 - Format "%{n}p" should output "damian" 94s ok 106 - Format "%{name}p" should output "chip" 94s ok 107 - Format "%{e}p" should output "larry@example.com" 94s ok 108 - Format "%{email}p" should output "damian@example.com" 94s ok 109 - Format "%{date}p" should output "2024-11-01 10:02:11 -0700" 94s ok 110 - Format "%{date:rfc}p" should output "Fri, 01 Nov 2024 10:02:11 -0700" 94s ok 111 - Format "%{d:long}p" should output "November 1, 2024, 10:02:11 AM PDT" 94s ok 112 - Format "%{d:cldr:HH'h' mm'm'}p" should output "10h 02m" 94s ok 113 - Format "%{d:strftime:%a at %H:%M:%S}p" should output "Fri at 10:02:11" 94s ok 114 - Format "%t" should output "" 94s ok 115 - Format "%t" should output " @foo" 94s ok 116 - Format "%t" should output " @foo, @bar" 94s ok 117 - Format "%{|}t" should output "" 94s ok 118 - Format "%{|}t" should output " @foo" 94s ok 119 - Format "%{|}t" should output " @foo|@bar" 94s ok 120 - Format "%T" should output "" 94s ok 121 - Format "%T" should output " (@foo)" 94s ok 122 - Format "%T" should output " (@foo, @bar)" 94s ok 123 - Format "%{|}T" should output "" 94s ok 124 - Format "%{|}T" should output " (@foo)" 94s ok 125 - Format "%{|}T" should output " (@foo|@bar)" 94s ok 126 - Format "%r" should output "" 94s ok 127 - Format "%r" should output " foo" 94s ok 128 - Format "%r" should output " foo, bar" 94s ok 129 - Format "%{|}r" should output "" 94s ok 130 - Format "%{|}r" should output " foo" 94s ok 131 - Format "%{|}r" should output " foo|bar" 94s ok 132 - Format "%R" should output "" 94s ok 133 - Format "%R" should output "Requires: foo[newline]" 94s ok 134 - Format "%R" should output "Requires: foo, bar[newline]" 94s ok 135 - Format "%{|}R" should output "" 94s ok 136 - Format "%{|}R" should output "Requires: foo[newline]" 94s ok 137 - Format "%{|}R" should output "Requires: foo|bar[newline]" 94s ok 138 - Format "%x" should output "" 94s ok 139 - Format "%x" should output " foo" 94s ok 140 - Format "%x" should output " foo, bax" 94s ok 141 - Format "%{|}x" should output "" 94s ok 142 - Format "%{|}x" should output " foo" 94s ok 143 - Format "%{|}x" should output " foo|bax" 94s ok 144 - Format "%X" should output "" 94s ok 145 - Format "%X" should output "Conflicts: foo[newline]" 94s ok 146 - Format "%X" should output "Conflicts: foo, bar[newline]" 94s ok 147 - Format "%{|}X" should output "" 94s ok 148 - Format "%{|}X" should output "Conflicts: foo[newline]" 94s ok 149 - Format "%{|}X" should output "Conflicts: foo|bar[newline]" 94s ok 150 - Format "%{yellow}C" should output "" 94s ok 151 - Format "%{:event}C" should output "" 94s ok 152 - Format "%v" should output "[newline]" 94s ok 153 - Format "%%" should output "%" 94s ok 154 - Format "%s" should output "hi there" 94s ok 155 - Format "%s" should output "hi there" 94s ok 156 - Format "%s" should output "subject line" 94s ok 157 - Format "%{ }s" should output " hi there" 94s ok 158 - Format "%{xx}s" should output "xxhi there" 94s ok 159 - Format "%b" should output "" 94s ok 160 - Format "%b" should output "yo" 94s ok 161 - Format "%b" should output "first graph[newline][newline]second graph[newline][newline]" 94s ok 162 - Format "%{ }b" should output "" 94s ok 163 - Format "%{xxx }b" should output "xxx yo" 94s ok 164 - Format "%{x}b" should output "xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]" 94s ok 165 - Format "%{ }b" should output " yo" 94s ok 166 - Format "%B" should output "hi there" 94s ok 167 - Format "%B" should output "hi there[newline]yo" 94s ok 168 - Format "%B" should output "subject line[newline][newline]first graph[newline][newline]second graph[newline][newline]" 94s ok 169 - Format "%{ }B" should output " hi there" 94s ok 170 - Format "%{xxx }B" should output "xxx hi there[newline]xxx yo" 94s ok 171 - Format "%{x}B" should output "xsubject line[newline]x[newline]xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]" 94s ok 172 - Format "%{ }B" should output " hi there [newline] yo" 94s ok 173 - Format "%{change}a" should output "change lolz[newline]" 94s ok 174 - Format "%{change_id}a" should output "change_id 000011112222333444[newline]" 94s ok 175 - Format "%{event}a" should output "event deploy[newline]" 94s ok 176 - Format "%{tags}a" should output "tags @beta, @gamma[newline]" 94s ok 177 - Format "%{requires}a" should output "requires foo, bar[newline]" 94s ok 178 - Format "%{conflicts}a" should output "" 94s ok 179 - Format "%{committer_name}a" should output "committer_name larry[newline]" 94s ok 180 - Format "%{committed_at}a" should output "committed_at 2024-11-02T17:02:11Z[newline]" 94s ok 181 - Should get exception for format "%_" 94s ok 182 - %_ error ident should be "format" 94s ok 183 - %_ error message should be correct 94s ok 184 - Should get exception for unknown label in format "%_" 94s ok 185 - Invalid %_ label error ident should be "format" 94s ok 186 - Invalid %_ label error message should be correct 94s ok 187 - Instantiate with abbrev => 4 94s ok 188 - %h should respect abbrev 94s ok 189 - %H should not respect abbrev 94s ok 190 - Instantiate with date_format => "rfc" 94s ok 191 - %{date}c should respect the date_format attribute 94s ok 192 - %{iso}c should override the date_format attribute 94s ok 193 - Should get exception for unknown attribute passed to %a 94s ok 194 - %a error ident should be "format" 94s ok 195 - %a error message should be correct 94s ok 196 - Format "%{yellow}C" should output yellow 94s ok 197 - Format "%{red}C" should output red 94s ok 198 - Format "%{blue}C" should output blue 94s ok 199 - Format "%{cyan}C" should output cyan 94s ok 200 - Format "%{magenta}C" should output magenta 94s ok 201 - Format "%{:event}C" on "deploy" should output green 94s ok 202 - Format "%{:event}C" on "revert" should output blue 94s ok 203 - Format "%{:event}C" on "fail" should output red 94s ok 204 - Instantiate with format "full" again 94s ok 205 - Format "full" should output correctly with color 94s ok 206 - Instantiate with format "long" again 94s ok 207 - Format "long" should output correctly with color 94s ok 208 - Instantiate with format "medium" again 94s ok 209 - Format "medium" should output correctly with color 94s ok 210 - Instantiate with format "short" again 94s ok 211 - Format "short" should output correctly with color 94s ok 212 - Instantiate with format "oneline" again 94s ok 213 - Format "oneline" should output correctly with color 94s ok 214 - Should get an error for an invalid color 94s ok 215 - Invalid color error ident should be "format" 94s ok 216 - Invalid color error message should be correct 94s ok 217 - Should get exception for unititialied db 94s ok 218 - Uninit db error ident should be "log" 94s ok 219 - Uninit db exit val should be 1 94s ok 220 - Uninit db error message should be correct 94s ok 221 - Should have passed undef to Target 94s ok 222 - Should get error for empty event table 94s ok 223 - no events error ident should be "log" 94s ok 224 - no events exit val should be 1 94s ok 225 - no events error message should be correct 94s ok 226 - Search should have been limited to one row 94s ok 227 - Should have passed undef to Target again 94s ok 228 - Execute log 94s ok 229 - Should have passed undef to Target once more 94s ok 230 - The proper args should have been passed to search_events 94s ok 231 - The change should have been paged 94s ok 232 - Execute with target arg 94s ok 233 - Target name should have been passed to Target 94s ok 234 - The proper args should have been passed to search_events 94s ok 235 - The change should have been paged 94s ok 236 - Execute with plan file arg 94s ok 237 - Default engine target should have been passed to Target 94s ok 238 - The proper args should have been passed to search_events 94s ok 239 - The change should have been paged 94s ok 240 - 'log with attributes' isa 'App::Sqitch::Command::log' 94s ok 241 - Execute log with attributes 94s ok 242 - Should have passed target name to Target 94s ok 243 - All params should have been passed to search_events 94s ok 244 - Both changes should have been paged with no headers 94s ok 245 - Execute log with attributes 94s ok 246 - Should have passed enginetarget to Target 94s ok 247 - Should have got warning for two targets 94s ok 248 - 'log with bad format' isa 'App::Sqitch::Command::log' 94s ok 249 - Should get an exception for a bad format code 94s ok 250 - bad format code format error ident should be "format" 94s ok 251 - bad format code format error message should be correct 94s ok 252 - Should have passed target name to Target 94s ok 253 - no warnings 94s ok 94s t/mooseless.t ....... 94s ok 1 - No moose in Debian::pkgperl::Foobar 94s 1..1 94s ok 94s t/mysql.t ........... 94s ok 1 - require App::Sqitch::Engine::mysql; 94s ok 2 - config_vars should return three vars 94s ok 3 - An object of class 'App::Sqitch::Engine::mysql' isa 'App::Sqitch::Engine::mysql' 94s ok 4 - Key should be "mysql" 94s ok 5 - Name should be "MySQL" 94s ok 6 - client should default to mysql 94s ok 7 - registry default should be "sqitch" 94s ok 8 - registry_uri should be correct 94s ok 9 - uri should be "db:mysql:mydb" 94s ok 10 - registry_destination should be the same as registry_uri 94s ok 11 - _lock_name should be correct 94s ok 12 - mysql command should be user and std opts-only 94s ok 13 - Should have emitted a warning for no database name 94s ok 14 - An object of class 'App::Sqitch::Engine::mysql' isa 'App::Sqitch::Engine::mysql' 94s ok 15 - Create engine with MYSQL_PWD set 94s ok 16 - Password should be set from environment 94s ok 17 - URI should reflect MYSQL_HOST 94s ok 18 - URI should reflect MYSQL_TCP_PORT 94s ok 19 - Create another mysql 94s ok 20 - client should be as configured 94s ok 21 - URI should be as configured 94s ok 22 - target name should be the URI without the password 94s ok 23 - destination should be the URI without the password 94s ok 24 - registry should be as configured 94s ok 25 - Sqitch DB URI should be the same as uri but with DB name "meta" 94s ok 26 - registry_destination should be the sqitch DB URL without the password 94s ok 27 - mysql command should be configured 94s ok 28 - Create a mysql with query params 94s ok 29 - mysql command should be configured with query vals 94s ok 30 - Create a mysql with disabled query params 94s ok 31 - mysql command should not have disabled param options 94s ok 32 - App::Sqitch::Engine::mysql->can(...) 94s ok 33 - Create a mysql with sqitch with options 94s ok 34 - MYSQL_PWD should be "s3cr3t" 94s ok 35 - Call _run 94s ok 36 - Command should be passed to run() 94s ok 37 - MYSQL_PWD should be "s3cr3t" 94s ok 38 - Call _spool 94s ok 39 - Command should be passed to spool() 94s ok 40 - MYSQL_PWD should be "s3cr3t" 94s ok 41 - Call _spool with variables 94s ok 42 - Get variables file handle 94s ok 43 - Command should be passed to spool() after variables handle 94s ok 44 - Variables should have been escaped and set 94s ok 45 - MYSQL_PWD should be "s3cr3t" 94s ok 46 - Call _capture 94s ok 47 - Command should be passed to capture() 94s ok 48 - Create a mysql with sqitch with no pw 94s ok 49 - MYSQL_PWD should not exist 94s ok 50 - Call _run again 94s ok 51 - Command should be passed to run() again 94s ok 52 - MYSQL_PWD should not exist 94s ok 53 - Call _spool again 94s ok 54 - Command should be passed to spool() again 94s ok 55 - MYSQL_PWD should not exist 94s ok 56 - Call _capture again 94s ok 57 - Command should be passed to capture() again 94s ok 58 - MYSQL_PWD should not exist 94s ok 59 - Run foo/bar.sql 94s ok 60 - File should be passed to run() 94s ok 61 - MYSQL_PWD should not exist 94s ok 62 - Spool a "file handle" 94s ok 63 - Handle should be passed to spool() 94s ok 64 - MYSQL_PWD should not exist 94s ok 65 - Verify foo/bar.sql 94s ok 66 - Verify file should be passed to capture() 94s ok 67 - MYSQL_PWD should not exist 94s ok 68 - Verify foo/bar.sql again 94s ok 69 - Verifile file should be passed to run() for high verbosity 94s ok 70 - MYSQL_PWD should not exist 94s ok 71 - Run foo/bar.sql with vars 94s ok 72 - Variabls and file should be passed to run() 94s ok 73 - MYSQL_PWD should not exist 94s ok 74 - Spool a "file handle" 94s ok 75 - Get variables file handle 94s ok 76 - File handle should be passed to spool() after variables handle 94s ok 77 - Variables should have been escaped and set 94s ok 78 - MYSQL_PWD should not exist 94s ok 79 - Verbosely verify foo/bar.sql with vars 94s ok 80 - Variables and verify file should be passed to run() 94s ok 81 - MYSQL_PWD should not exist 94s ok 82 - Verify foo/bar.sql with vars 94s ok 83 - Verify file should be passed to capture() 94s ok 84 - App::Sqitch::Engine::mysql->can('_ts2char_format') 94s ok 85 - _ts2char_format should work 94s ok 86 - App::Sqitch::Engine::mysql->can('_dt') 94s ok 87 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 94s ok 88 - DateTime year should be set 94s ok 89 - DateTime month should be set 94s ok 90 - DateTime day should be set 94s ok 91 - DateTime hour should be set 94s ok 92 - DateTime minute should be set 94s ok 93 - DateTime second should be set 94s ok 94 - DateTime TZ should be set 94s ok 95 - Should have _listagg_format 94s ok 96 - Should have _regex_op 94s ok 97 - Should have _simple_from 94s ok 98 - Should have _limit_default 94s ok 99 - Should have _ts_default with fractional seconds 94s ok 100 - Should have _ts_default without fractional seconds on 5.1 94s ok 101 - Should have _ts_default without fractional seconds on early mariadb 94s ok 102 - Should have _ts_default with fractional secondson mariadb 5.03.05 94s ok 103 - Should have no table error 94s ok 104 - Should have no column error 94s ok 105 - Should now have table error 94s ok 106 - Still should have no column error 94s ok 107 - Should again have table error 94s ok 108 - Still should have no column error 94s ok 109 - Should again have no table error 94s ok 110 - Should now have no column error 94s ok 111 - Should get limit and offset 94s ok 112 - Should get limit and offset when offset only 94s ok 113 - Should get only limit with 0 offset 94s ok 114 - Should get only limit with noa offset 94s ok 115 - Should get no limit or offset for 0s 94s ok 116 - Should get no limit or offset for no args 94s ok 117 - Should use REGEXP for regex expr 94s ok 118 - initialized() should rethrow unexpected DB error 94s ok 119 - _cid should rethrow unexpected DB error 94s ok 120 - Should just get self when fractional seconds supported 94s ok 121 - Should get no error from _prepare_to_log 94s ok 122 - Should have prepared the statement comparing times 94s ok 123 - Results should have been returned 94s ok 124 - Should have slept once 94s ok 125 - Run the upgrade 94s ok 126 - Should not have created a temp file 94s ok 127 - It should have run the unchanged file 94s ok 128 - Run the upgrade again 94s ok 129 - Should have created a temp file 94s ok 130 - It should have run the temp file 94s ok 131 - Should have removed datetime precision 94s ok 132 - Should not have removed MySQL 5.5-requiring block BEGIN 94s ok 133 - Should not have removed MySQL 5.5-requiring block END 94s ok 134 - Run the upgrade on 5.4 94s ok 135 - Should have created another temp file 94s ok 136 - It should have the new temp file 94s ok 137 - Should have removed MySQL 5.5-requiring block BEGIN 94s ok 138 - Should have removed MySQL 5.5-requiring block END 94s ok 139 - App::Sqitch::Engine::mysql->can(...) 94s # Subtest: live database 94s 1..0 # SKIP Unable to live-test MySQL engine: DBD::mysql 4.018 required to manage MySQL at t/mysql.t line 630. 94s ok 140 # skip Unable to live-test MySQL engine: DBD::mysql 4.018 required to manage MySQL at t/mysql.t line 630. 94s # 94s 1..140 94s ok 95s t/options.t ......... 95s ok 1 - use App::Sqitch; 95s ok 2 - Options should be correct 95s ok 3 - App::Sqitch->can('_find_cmd') 95s ok 4 - Should find no command for no args 95s ok 5 - Should have passed "sqitchcommands" to _pod2usage 95s ok 6 - Should have vented nothing 95s ok 7 - Should find no command for invalid command 95s ok 8 - Should have passed "sqitchcommands" to _pod2usage 95s ok 9 - Should have vented an invalid command message 95s ok 10 - Should find no command with option --foo 95s ok 11 - Should have passed "sqitchcommands" to _pod2usage 95s ok 12 - Should not have reported --foo as invalid command 95s ok 13 - Should find no command with option --client=psql 95s ok 14 - Should have passed "sqitchcommands" to _pod2usage 95s ok 15 - Should not have reported --client=psql as invalid command 95s ok 16 - Should find no command with option -R 95s ok 17 - Should have passed "sqitchcommands" to _pod2usage 95s ok 18 - Should not have reported -R as invalid command 95s ok 19 - Should find no command with option -X=yup 95s ok 20 - Should have passed "sqitchcommands" to _pod2usage 95s ok 21 - Should not have reported -X=yup as invalid command 95s ok 22 - Should find no command after -- 95s ok 23 - Should have passed "sqitchcommands" to _pod2usage 95s ok 24 - Should have vented nothing 95s ok 25 - Should find class for "bundle" 95s ok 26 - Should not have called _pod2usage 95s ok 27 - Should have vented nothing 95s ok 28 - Should have removed "bundle" from args 95s ok 29 - Should find class for "bundle" again 95s ok 30 - Should not have called _pod2usage 95s ok 31 - Should have vented nothing 95s ok 32 - Should have left subsequent valid command after "bundle" in args 95s ok 33 - Should find class for "config" 95s ok 34 - Should not have called _pod2usage 95s ok 35 - Should have vented nothing 95s ok 36 - Should have removed "config" from args 95s ok 37 - Should find class for "config" again 95s ok 38 - Should not have called _pod2usage 95s ok 39 - Should have vented nothing 95s ok 40 - Should have left subsequent valid command after "config" in args 95s ok 41 - Should find class for "help" 95s ok 42 - Should not have called _pod2usage 95s ok 43 - Should have vented nothing 95s ok 44 - Should have removed "help" from args 95s ok 45 - Should find class for "help" again 95s ok 46 - Should not have called _pod2usage 95s ok 47 - Should have vented nothing 95s ok 48 - Should have left subsequent valid command after "help" in args 95s ok 49 - Should find class for "plan" 95s ok 50 - Should not have called _pod2usage 95s ok 51 - Should have vented nothing 95s ok 52 - Should have removed "plan" from args 95s ok 53 - Should find class for "plan" again 95s ok 54 - Should not have called _pod2usage 95s ok 55 - Should have vented nothing 95s ok 56 - Should have left subsequent valid command after "plan" in args 95s ok 57 - Should find class for "show" 95s ok 58 - Should not have called _pod2usage 95s ok 59 - Should have vented nothing 95s ok 60 - Should have removed "show" from args 95s ok 61 - Should find class for "show" again 95s ok 62 - Should not have called _pod2usage 95s ok 63 - Should have vented nothing 95s ok 64 - Should have left subsequent valid command after "show" in args 95s ok 65 - Should find class for "tag" 95s ok 66 - Should not have called _pod2usage 95s ok 67 - Should have vented nothing 95s ok 68 - Should have removed "tag" from args 95s ok 69 - Should find class for "tag" again 95s ok 70 - Should not have called _pod2usage 95s ok 71 - Should have vented nothing 95s ok 72 - Should have left subsequent valid command after "tag" in args 95s ok 73 - App::Sqitch->can('_parse_core_opts') 95s ok 74 - Should have default config for no options 95s ok 75 - Ask for help 95s ok 76 - Should have been helped 95s ok 77 - Ask for man 95s ok 78 - Should have been manned 95s ok 79 - Should have exited on --version 95s ok 80 - Should have emitted the version 95s ok 81 - Should have exited on --etc-path 95s ok 82 - Should have emitted the etc path 95s ok 83 - Should parse lots of options 95s ok 84 - --quiet should trump verbosity. 95s ok 85 - Short options should work 95s ok 86 - Run _pod2usage 95s ok 87 - Proper args should have been passed to Pod::Usage 95s ok 88 - Parse --chdir 95s ok 89 - Should have changed to foo/bar 95s ok 90 - Should have preserved no opts 95s ok 91 - Parse --cd 95s ok 92 - Should have changed to go/dir 95s ok 93 - Should have preserved no opts 95s ok 94 - Parse -C 95s ok 95 - Should have changed to hi cramus 95s ok 96 - Should have preserved no opts 95s ok 97 - Should get error when chdir fails 95s ok 98 - Error ident should be "fs" 95s ok 99 - Error message should be correct 95s 1..99 95s ok 95s t/oracle.t .......... 95s ok 1 - require App::Sqitch::Engine::oracle; 95s ok 2 - config_vars should return three vars 95s ok 3 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 4 - Key should be "oracle" 95s ok 5 - Name should be "Oracle" 95s ok 6 - client should default to sqlplus 95s ok 7 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 8 - client should default to sqlplus 95s ok 9 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 10 - client should use $ORACLE_HOME 95s ok 11 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 12 - client should use $ORACLE_HOME/bin 95s ok 13 - registry default should be empty 95s ok 14 - Default URI should be "db:oracle" 95s ok 15 - Target name should be the uri stringified 95s ok 16 - Destination should fall back on environment variables 95s ok 17 - Registry target should be the same as target 95s ok 18 - sqlplus command should connect to /nolog 95s ok 19 - _script should work 95s ok 20 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 21 - _script should assemble connection string 95s ok 22 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 23 - _script should assemble connection string with host 95s ok 24 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 25 - Set some variables 95s ok 26 - _script should assemble connection string with host, port, and vars 95s ok 27 - Database-only URI should produce proper DSN 95s ok 28 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 29 - _script should assemble connection string with just dbname 95s ok 30 - Database and double-slash URI should produce proper DSN 95s ok 31 - An object of class 'App::Sqitch::Engine::oracle' isa 'App::Sqitch::Engine::oracle' 95s ok 32 - _script should assemble connection string with double-slash and dbname 95s ok 33 - Target name should not read $TWO_TASK 95s ok 34 - Destination should read $TWO_TASK 95s ok 35 - Registry destination should be the same as destination 95s ok 36 - Target name should not read $ORACLE_SID 95s ok 37 - Destination should read $ORACLE_SID 95s ok 38 - Registry destination should be the same as destination 95s ok 39 - Target should be the default 95s ok 40 - Destination should prefer $TWO_TASK to username 95s ok 41 - Registry destination should be the same as destination 95s ok 42 - Create another ora 95s ok 43 - client should be as configured 95s ok 44 - DB URI should be as configured 95s ok 45 - Target name should be the passwordless URI stringified 95s ok 46 - Destination should be the URI without the password 95s ok 47 - registry_destination should replace be the same URI 95s ok 48 - registry should be as configured 95s ok 49 - sqlplus command should be configured 95s ok 50 - Create yet another ora 95s ok 51 - client should be as configured 95s ok 52 - registry should be as configured 95s ok 53 - sqlplus command should be configured 95s ok 54 - App::Sqitch::Engine::oracle->can(...) 95s ok 55 - Call _run 95s ok 56 - SQLPlus command should be passed to spool() 95s ok 57 - The script should be spooled 95s ok 58 - Call _capture 95s ok 59 - Command and script should be passed to run3() 95s ok 60 - _capture should actually capture 95s ok 61 - _capture should die when sqlplus dies 95s ok 62 - STDERR should be emitted by _capture 95s ok 63 - App::Sqitch::Engine::oracle->can('_file_for_script') 95s ok 64 - File without special characters should be used directly 95s ok 65 - Double quotes should be SQL-escaped 95s ok 66 - Get temp dir 95s ok 67 - 'Temp dir' isa 'Path::Class::Dir' 95s ok 68 - File with special char should be aliased 95s ok 69 - Should get an error on failure to delete the alias 95s ok 70 - File deletion error ident should be "oracle" 95s ok 71 - File deletion error message should be correct 95s ok 72 - File with special char and quotes should be aliased 95s ok 73 - initialized() should rethrow unexpected DB error 95s ok 74 - _cid should rethrow unexpected DB error 95s ok 75 - Run foo/bar.sql 95s ok 76 - File should be passed to run() 95s ok 77 - Run foo/"bar".sql 95s ok 78 - Double quotes in file passed to run() should be escaped 95s ok 79 - Spool a "file handle" 95s ok 80 - sqlplus command should be passed to spool() 95s ok 81 - 'Array ove handles should be passed to spool' isa 'ARRAY' 95s ok 82 - First file handle should be script 95s ok 83 - Second should be the passed handle 95s ok 84 - Verify foo/bar.sql 95s ok 85 - Verify file should be passed to capture() 95s ok 86 - Verify foo/bar.sql again 95s ok 87 - Verifile file should be passed to run() for high verbosity 95s ok 88 - App::Sqitch::Engine::oracle->can('_ts2char_format') 95s ok 89 - _ts2char_format should work 95s ok 90 - App::Sqitch::Engine::oracle->can('_dt') 95s ok 91 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 95s ok 92 - DateTime year should be set 95s ok 93 - DateTime month should be set 95s ok 94 - DateTime day should be set 95s ok 95 - DateTime hour should be set 95s ok 96 - DateTime minute should be set 95s ok 97 - DateTime second should be set 95s ok 98 - DateTime TZ should be set 95s ok 99 - Should have _char2ts 95s ok 100 - Should have _listagg_format 95s ok 101 - Should have _regex_op 95s ok 102 - Should have _simple_from 95s ok 103 - Should have _limit_default 95s ok 104 - Should have _ts_default 95s ok 105 - Should have _can_limit false 95s ok 106 - Should get single expression from _multi_values 95s ok 107 - Should get double expression from _multi_values 95s ok 108 - Should get quadrupal expression from _multi_values 95s ok 109 - Should have no table error 95s ok 110 - Should have no column error 95s ok 111 - Should now have table error 95s ok 112 - Still should have no column error 95s ok 113 - Should again have no table error 95s ok 114 - Should now have no column error 95s ok 115 - _log_tags_param should format tags 95s ok 116 - _log_requires_param should format prereqs 95s ok 117 - _log_conflicts_param should format prereqs 95s ok 118 - App::Sqitch::Engine::oracle->can('_change_id_in') 95s ok 119 - Should get empty string for 0 change IDs 95s ok 120 - Should get single param for 1 change ID 95s ok 121 - Should get 3 params for 3 change IDs 95s ok 122 - Should get 10 params for 10 change IDs 95s ok 123 - Should get 32 params for 32 change IDs 95s ok 124 - Should get 50 params for 50 change IDs 95s ok 125 - Should get 200 params for 200 change IDs 95s ok 126 - Should get 250 params for 250 change IDs 95s ok 127 - Should get 250 and 1 groups for 251 IDs 95s ok 128 - Should get 250 and 3 groups for 253 IDs 95s ok 129 - Should get 250, 240, and 2 groups for 503 IDs 95s ok 130 - Should get 4 x 250 and 42 groups for 1042 IDs 95s ok 131 - App::Sqitch::Engine::oracle->can(...) 95s # Subtest: live database 95s 1..0 # SKIP Unable to live-test Oracle engine: DBD::Oracle 1.23 required to manage Oracle at t/oracle.t line 694. 95s ok 132 # skip Unable to live-test Oracle engine: DBD::Oracle 1.23 required to manage Oracle at t/oracle.t line 694. 95s # 95s 1..132 95s ok 96s t/pg.t .............. 96s ok 1 - require App::Sqitch::Engine::pg; 96s ok 2 - config_vars should return three vars 96s ok 3 - An object of class 'App::Sqitch::Engine::pg' isa 'App::Sqitch::Engine::pg' 96s ok 4 - Key should be "pg" 96s ok 5 - Name should be "PostgreSQL" 96s ok 6 - client should default to psqle 96s ok 7 - registry default should be "sqitch" 96s ok 8 - DB URI should be "db:pg:" 96s ok 9 - Destination should fall back on environment variables 96s ok 10 - Registry destination should be the same as destination 96s ok 11 - psql command should be conninfo, and std opts-only 96s ok 12 - An object of class 'App::Sqitch::Engine::pg' isa 'App::Sqitch::Engine::pg' 96s ok 13 - Set some variables 96s ok 14 - Variables should be passed to psql via --set 96s ok 15 - Target should not read $PGDATABASE 96s ok 16 - Registry target should be the same as destination 96s ok 17 - Target should not read $PGUSER 96s ok 18 - Registry target should be the same as destination 96s ok 19 - Target should not read $PGPASSWORD 96s ok 20 - Registry target should be the same as destination 96s ok 21 - Target should not fall back on sysuser 96s ok 22 - Registry target should be the same as destination 96s ok 23 - Target should be the default 96s ok 24 - Registry target should be the same as destination 96s ok 25 - Create another pg 96s ok 26 - client should be as configured 96s ok 27 - uri should be as configured 96s ok 28 - registry should be as configured 96s ok 29 - psql command should be configured from URI config 96s ok 30 - App::Sqitch::Engine::pg->can(...) 96s ok 31 - PGPASSWORD should be "s3cr3t" 96s ok 32 - Call _run 96s ok 33 - Command should be passed to run() 96s ok 34 - PGPASSWORD should be "s3cr3t" 96s ok 35 - Call _spool 96s ok 36 - Command should be passed to spool() 96s ok 37 - PGPASSWORD should be "s3cr3t" 96s ok 38 - Call _capture 96s ok 39 - Command should be passed to capture() 96s ok 40 - PGPASSWORD should be "s3cr3t" 96s ok 41 - Call _probe 96s ok 42 96s ok 43 - Create a pg with sqitch with no pw 96s ok 44 - PGPASSWORD should not exist 96s ok 45 - Call _run again 96s ok 46 - Command should be passed to run() again 96s ok 47 - PGPASSWORD should not exist 96s ok 48 - Call _spool again 96s ok 49 - Command should be passed to spool() again 96s ok 50 - PGPASSWORD should not exist 96s ok 51 - Call _capture again 96s ok 52 - Command should be passed to capture() again 96s ok 53 - PGPASSWORD should not exist 96s ok 54 - Call _probe again 96s ok 55 96s ok 56 - PGPASSWORD should not exist 96s ok 57 - Run foo/bar.sql 96s ok 58 - File should be passed to run() 96s ok 59 - PGPASSWORD should not exist 96s ok 60 - Spool a "file handle" 96s ok 61 - Handle should be passed to spool() 96s ok 62 - PGPASSWORD should not exist 96s ok 63 - Verify foo/bar.sql 96s ok 64 - Verify file should be passed to capture() 96s ok 65 - PGPASSWORD should not exist 96s ok 66 - Verify foo/bar.sql again 96s ok 67 - Verifile file should be passed to run() for high verbosity 96s ok 68 - App::Sqitch::Engine::pg->can('_ts2char_format') 96s ok 69 - _ts2char_format should work 96s ok 70 - App::Sqitch::Engine::pg->can('_dt') 96s ok 71 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 96s ok 72 - DateTime year should be set 96s ok 73 - DateTime month should be set 96s ok 74 - DateTime day should be set 96s ok 75 - DateTime hour should be set 96s ok 76 - DateTime minute should be set 96s ok 77 - DateTime second should be set 96s ok 78 - DateTime TZ should be set 96s ok 79 - Should find major version 11 in 11beta3 96s ok 80 - Should find major version 11 in 11.3 96s ok 81 - Should find major version 10 in 10 96s ok 82 - Should find major version 9 in 9.6.3 96s ok 83 - Should find major version 8 in 8.4.2 96s ok 84 - Should find major version 9 in 9.0.19 96s ok 85 - Should have no table error 96s ok 86 - Should have no column error 96s ok 87 - Should again have no table error 96s ok 88 - Should now have no column error 96s ok 89 - Should now have table error 96s ok 90 - Still should have no column error 96s ok 91 - No SQL should have been run 96s ok 92 - Should again have table error 96s ok 93 - Still should have no column error 96s ok 94 - Should have sent an error to the log 96s ok 95 - Should use array_remove and ORDER BY in listagg_format on v11 96s ok 96 - Should use array_remove and ORDER BY in listagg_format on v9.3 96s ok 97 - Should use ORDER BY in listagg_format on v9.2 96s ok 98 - Should use ORDER BY in listagg_format on v9.0 96s ok 99 - Should not use ORDER BY in listagg_format on v8.4 96s ok 100 - Run the registry file 96s ok 101 - Should have fetched the server version and checked for XC 96s ok 102 - Shoud have deployed the original SQL file 96s ok 103 - The registry should have been added to the search path 96s ok 104 - Should not have have called selectrow_array 96s ok 105 - Should have no temp file handle 96s ok 106 - Run the registry file again 96s ok 107 - Should have again fetched the server version and checked for XC 96s ok 108 - Should now have a temp file handle 96s ok 109 - Shoud have deployed the temp SQL file 96s ok 110 - Still hould not have have called selectrow_array 96s ok 111 - The registry should have been added to the search path again 96s ok 112 - Should have removed IF NOT EXISTS from CREATE SCHEMA 96s ok 113 - Run the registry file again 96s ok 114 - Should have again fetched the server version and checked for XC 96s ok 115 - Should now have a temp file handle 96s ok 116 - Shoud have deployed the temp SQL file 96s ok 117 - Should have have called quote_ident via selectrow_array 96s ok 118 - The registry should have been added to the search path again 96s ok 119 - Should not have removed IF NOT EXISTS from CREATE SCHEMA 96s ok 120 - Should have removed the :"registry" variable 96s ok 121 - App::Sqitch::Engine::pg->can(...) 96s # Subtest: live database 96s 1..0 # SKIP Unable to live-test PostgreSQL engine: DBI connect('dbname=template1','postgres',...) failed: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory 96s Is the server running locally and accepting connections on that socket? at t/pg.t line 511. 96s ok 122 # skip Unable to live-test PostgreSQL engine: DBI connect('dbname=template1','postgres',...) failed: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory 96s # Is the server running locally and accepting connections on that socket? at t/pg.t line 511. 96s # 96s 1..122 96s ok 97s t/plan.t ............ 97s ok 1 - use App::Sqitch::Plan; 97s ok 2 - App::Sqitch::Plan->can(...) 97s ok 3 - An object of class 'App::Sqitch::Plan' isa 'App::Sqitch::Plan' 97s ok 4 - File should be coopied from Target 97s ok 5 - Should parse simple "widgets.plan" 97s ok 6 - Should have sorted changes 97s ok 7 - 'changes' isa 'ARRAY' 97s ok 8 - 'lines' isa 'ARRAY' 97s ok 9 - All "widgets.plan" changes should be parsed 97s ok 10 - All "widgets.plan" lines should be parsed 97s ok 11 - Should parse multi-tagged "multi.plan" 97s ok 12 - Should have sorted changes twice 97s ok 13 - Should have captured the multi pragmas 97s ok 14 - Should have "multi.plan" lines and changes 97s ok 15 - Should read plan with no tags 97s ok 16 - Should have sorted changes 97s ok 17 - Should have captured the changes-only pragmas 97s ok 18 - Should have lines and changes for tagless plan 97s ok 19 - Should read plan with DOS line endings 97s ok 20 - Should have sorted changes 97s ok 21 - Should have captured the dos pragmas 97s ok 22 - Should die on plan with bad change name 97s ok 23 - Bad change name error ident should be "parse" 97s ok 24 - And the bad change name error message should be correct 97s ok 25 - Should not have sorted changes 97s ok 26 - Should die on plan with bad name "+^foo" 97s ok 27 - Exception ident should be "parse" 97s ok 28 - And "+^foo" should trigger the appropriate message 97s ok 29 - Should not have sorted changes 97s ok 30 - Should die on plan with bad name "@^foo" 97s ok 31 - Exception ident should be "parse" 97s ok 32 - And "@^foo" should trigger the appropriate message 97s ok 33 - Should not have sorted changes 97s ok 34 - Should die on plan with bad name "+foo^" 97s ok 35 - Exception ident should be "parse" 97s ok 36 - And "+foo^" should trigger the appropriate message 97s ok 37 - Should not have sorted changes 97s ok 38 - Should die on plan with bad name "@foo^" 97s ok 39 - Exception ident should be "parse" 97s ok 40 - And "@foo^" should trigger the appropriate message 97s ok 41 - Should not have sorted changes 97s ok 42 - Should die on plan with bad name "+foo^6" 97s ok 43 - Exception ident should be "parse" 97s ok 44 - And "+foo^6" should trigger the appropriate message 97s ok 45 - Should not have sorted changes 97s ok 46 - Should die on plan with bad name "@foo^6" 97s ok 47 - Exception ident should be "parse" 97s ok 48 - And "@foo^6" should trigger the appropriate message 97s ok 49 - Should not have sorted changes 97s ok 50 - Should die on plan with bad name "+foo^666" 97s ok 51 - Exception ident should be "parse" 97s ok 52 - And "+foo^666" should trigger the appropriate message 97s ok 53 - Should not have sorted changes 97s ok 54 - Should die on plan with bad name "@foo^666" 97s ok 55 - Exception ident should be "parse" 97s ok 56 - And "@foo^666" should trigger the appropriate message 97s ok 57 - Should not have sorted changes 97s ok 58 - Should die on plan with bad name "+%hi" 97s ok 59 - Exception ident should be "parse" 97s ok 60 - And "+%hi" should trigger the appropriate message 97s ok 61 - Should not have sorted changes 97s ok 62 - Should die on plan with bad name "@%hi" 97s ok 63 - Exception ident should be "parse" 97s ok 64 - And "@%hi" should trigger the appropriate message 97s ok 65 - Should not have sorted changes 97s ok 66 - Should die on plan with bad name "+hi!" 97s ok 67 - Exception ident should be "parse" 97s ok 68 - And "+hi!" should trigger the appropriate message 97s ok 69 - Should not have sorted changes 97s ok 70 - Should die on plan with bad name "@hi!" 97s ok 71 - Exception ident should be "parse" 97s ok 72 - And "@hi!" should trigger the appropriate message 97s ok 73 - Should not have sorted changes 97s ok 74 - Should die on plan with bad name "+foo@bar" 97s ok 75 - Exception ident should be "parse" 97s ok 76 - And "+foo@bar" should trigger the appropriate message 97s ok 77 - Should not have sorted changes 97s ok 78 - Should die on plan with bad name "@foo@bar" 97s ok 79 - Exception ident should be "parse" 97s ok 80 - And "@foo@bar" should trigger the appropriate message 97s ok 81 - Should not have sorted changes 97s ok 82 - Should die on plan with bad name "+foo:bar" 97s ok 83 - Exception ident should be "parse" 97s ok 84 - And "+foo:bar" should trigger the appropriate message 97s ok 85 - Should not have sorted changes 97s ok 86 - Should die on plan with bad name "@foo:bar" 97s ok 87 - Exception ident should be "parse" 97s ok 88 - And "@foo:bar" should trigger the appropriate message 97s ok 89 - Should not have sorted changes 97s ok 90 - Should die on plan with bad name "+foo\bar" 97s ok 91 - Exception ident should be "parse" 97s ok 92 - And "+foo\bar" should trigger the appropriate message 97s ok 93 - Should not have sorted changes 97s ok 94 - Should die on plan with bad name "@foo\bar" 97s ok 95 - Exception ident should be "parse" 97s ok 96 - And "@foo\bar" should trigger the appropriate message 97s ok 97 - Should not have sorted changes 97s ok 98 - Should die on plan with bad name "++foo" 97s ok 99 - Exception ident should be "parse" 97s ok 100 - And "++foo" should trigger the appropriate message 97s ok 101 - Should not have sorted changes 97s ok 102 - Should die on plan with bad name "@+foo" 97s ok 103 - Exception ident should be "parse" 97s ok 104 - And "@+foo" should trigger the appropriate message 97s ok 105 - Should not have sorted changes 97s ok 106 - Should die on plan with bad name "+-foo" 97s ok 107 - Exception ident should be "parse" 97s ok 108 - And "+-foo" should trigger the appropriate message 97s ok 109 - Should not have sorted changes 97s ok 110 - Should die on plan with bad name "@-foo" 97s ok 111 - Exception ident should be "parse" 97s ok 112 - And "@-foo" should trigger the appropriate message 97s ok 113 - Should not have sorted changes 97s ok 114 - Should die on plan with bad name "+@foo" 97s ok 115 - Exception ident should be "parse" 97s ok 116 - And "+@foo" should trigger the appropriate message 97s ok 117 - Should not have sorted changes 97s ok 118 - Should die on plan with bad name "@@foo" 97s ok 119 - Exception ident should be "parse" 97s ok 120 - And "@@foo" should trigger the appropriate message 97s ok 121 - Should not have sorted changes 97s ok 122 - Should die on plan with bad name "@foo/bar 2012-07-16T17:25:07Z X " 97s ok 123 - Exception ident should be "parse" 97s ok 124 - And "foo/bar" should trigger the appropriate message 97s ok 125 - Should not have sorted changes 97s ok 126 - Should parse "foo" 97s ok 127 - Should have captured the foo pragmas 97s ok 128 - Should have pragmas in plan with change "foo" 97s ok 129 - Should parse "@foo" 97s ok 130 - Should have pragmas in plan with tag "foo" 97s ok 131 - Should have line and change for "@foo" 97s ok 132 - Should parse "12" 97s ok 133 - Should have captured the 12 pragmas 97s ok 134 - Should have pragmas in plan with change "12" 97s ok 135 - Should parse "@12" 97s ok 136 - Should have pragmas in plan with tag "12" 97s ok 137 - Should have line and change for "@12" 97s ok 138 - Should parse "t" 97s ok 139 - Should have captured the t pragmas 97s ok 140 - Should have pragmas in plan with change "t" 97s ok 141 - Should parse "@t" 97s ok 142 - Should have pragmas in plan with tag "t" 97s ok 143 - Should have line and change for "@t" 97s ok 144 - Should parse "6" 97s ok 145 - Should have captured the 6 pragmas 97s ok 146 - Should have pragmas in plan with change "6" 97s ok 147 - Should parse "@6" 97s ok 148 - Should have pragmas in plan with tag "6" 97s ok 149 - Should have line and change for "@6" 97s ok 150 - Should parse "阱阪阬" 97s ok 151 - Should have captured the 阱阪阬 pragmas 97s ok 152 - Should have pragmas in plan with change "阱阪阬" 97s ok 153 - Should parse "@阱阪阬" 97s ok 154 - Should have pragmas in plan with tag "阱阪阬" 97s ok 155 - Should have line and change for "@阱阪阬" 97s ok 156 - Should parse "foo,bar" 97s ok 157 - Should have captured the foo,bar pragmas 97s ok 158 - Should have pragmas in plan with change "foo,bar" 97s ok 159 - Should parse "@foo,bar" 97s ok 160 - Should have pragmas in plan with tag "foo,bar" 97s ok 161 - Should have line and change for "@foo,bar" 97s ok 162 - Should parse "beta1" 97s ok 163 - Should have captured the beta1 pragmas 97s ok 164 - Should have pragmas in plan with change "beta1" 97s ok 165 - Should parse "@beta1" 97s ok 166 - Should have pragmas in plan with tag "beta1" 97s ok 167 - Should have line and change for "@beta1" 97s ok 168 - Should parse "foo_" 97s ok 169 - Should have captured the foo_ pragmas 97s ok 170 - Should have pragmas in plan with change "foo_" 97s ok 171 - Should parse "@foo_" 97s ok 172 - Should have pragmas in plan with tag "foo_" 97s ok 173 - Should have line and change for "@foo_" 97s ok 174 - Should parse "_foo" 97s ok 175 - Should have captured the _foo pragmas 97s ok 176 - Should have pragmas in plan with change "_foo" 97s ok 177 - Should parse "@_foo" 97s ok 178 - Should have pragmas in plan with tag "_foo" 97s ok 179 - Should have line and change for "@_foo" 97s ok 180 - Should parse "v1.0-1b" 97s ok 181 - Should have captured the v1.0-1b pragmas 97s ok 182 - Should have pragmas in plan with change "v1.0-1b" 97s ok 183 - Should parse "@v1.0-1b" 97s ok 184 - Should have pragmas in plan with tag "v1.0-1b" 97s ok 185 - Should have line and change for "@v1.0-1b" 97s ok 186 - Should parse "v1.2-1" 97s ok 187 - Should have captured the v1.2-1 pragmas 97s ok 188 - Should have pragmas in plan with change "v1.2-1" 97s ok 189 - Should parse "@v1.2-1" 97s ok 190 - Should have pragmas in plan with tag "v1.2-1" 97s ok 191 - Should have line and change for "@v1.2-1" 97s ok 192 - Should parse "v1.2+1" 97s ok 193 - Should have captured the v1.2+1 pragmas 97s ok 194 - Should have pragmas in plan with change "v1.2+1" 97s ok 195 - Should parse "@v1.2+1" 97s ok 196 - Should have pragmas in plan with tag "v1.2+1" 97s ok 197 - Should have line and change for "@v1.2+1" 97s ok 198 - Should parse "v1.2_1" 97s ok 199 - Should have captured the v1.2_1 pragmas 97s ok 200 - Should have pragmas in plan with change "v1.2_1" 97s ok 201 - Should parse "@v1.2_1" 97s ok 202 - Should have pragmas in plan with tag "v1.2_1" 97s ok 203 - Should have line and change for "@v1.2_1" 97s ok 204 - Should have sorted changes 26 times 97s ok 205 - Should die on plan with reserved tag "@HEAD" 97s ok 206 - @HEAD exception should have ident "plan" 97s ok 207 - And the @HEAD error message should be correct 97s ok 208 - Should have sorted @HEAD changes nonce 97s ok 209 - Should die on plan with reserved tag "@ROOT" 97s ok 210 - @ROOT exception should have ident "plan" 97s ok 211 - And the @ROOT error message should be correct 97s ok 212 - Should have sorted @ROOT changes nonce 97s ok 213 - Should die on plan with SHA1 change name 97s ok 214 - The SHA1 error ident should be "parse" 97s ok 215 - And the SHA1 error message should be correct 97s ok 216 - Should have sorted changes nonce 97s ok 217 - Should die on plan with tag but no preceding change 97s ok 218 - The missing change error ident should be "parse" 97s ok 219 - And the missing change error message should be correct 97s ok 220 - Should have sorted changes nonce 97s ok 221 - Should die on plan with dupe tag 97s ok 222 - The dupe tag error ident should be "parse" 97s ok 223 - And the missing change error message should be correct 97s ok 224 - Should have sorted changes twice 97s ok 225 - Should die on plan with dupe change 97s ok 226 - The dupe change error ident should be "parse" 97s ok 227 - And the dupe change error message should be correct 97s ok 228 - Should have sorted changes once 97s ok 229 - Should die on invalid dependency 97s ok 230 - The invalid dependency error ident should be "parse" 97s ok 231 - And the invalid dependency error message should be correct 97s ok 232 - Should have sorted changes nonce 97s ok 233 - Should die on dupe dependency 97s ok 234 - The dupe dependency error ident should be "parse" 97s ok 235 - And the dupe dependency error message should be correct 97s ok 236 - Should have sorted changes nonce 97s ok 237 - Should die on change with no timestamp 97s ok 238 - The missing timestamp error ident should be "parse" 97s ok 239 - And the missing timestamp error message should be correct 97s ok 240 - Should have sorted changes nonce 97s ok 241 - Should die on change with no planner 97s ok 242 - The missing parsener error ident should be "parse" 97s ok 243 - And the missing planner error message should be correct 97s ok 244 - Should have sorted changes nonce 97s ok 245 - Should die on change with no timestamp or planner 97s ok 246 - The missing timestamp or parsener error ident should be "parse" 97s ok 247 - And the missing timestamp or planner error message should be correct 97s ok 248 - Should have sorted changes nonce 97s ok 249 - Should parse plan with pragmas" 97s ok 250 - Should have sorted changes once 97s ok 251 - Should have captured all of the pragmas 97s ok 252 - Should have "multi.plan" lines and changes 97s ok 253 - Should parse plan with deploy and revert operators 97s ok 254 - Should have sorted changes twice 97s ok 255 - Should have captured the deploy-and-revert pragmas 97s ok 256 - Should have "deploy-and-revert.plan" lines and changes 97s ok 257 - Should get exception for nonexistent plan file 97s ok 258 - Nonexistent plan file ident should be "plan" 97s ok 259 - Nonexistent plan file message should be correct 97s ok 260 - 'Plan with sqitch with plan file with dependencies' isa 'App::Sqitch::Plan' 97s ok 261 - File should be coopied from Sqitch 97s ok 262 - Load plan with dependencies file 97s ok 263 - The changes should include the dependencies 97s ok 264 - Should have sorted changes twice 97s ok 265 - 'Plan with sqitch with plan file with project deps' isa 'App::Sqitch::Plan' 97s ok 266 - File should be coopied from Sqitch 97s ok 267 - Load plan with project deps file 97s ok 268 - The changes should include the cross-project deps 97s ok 269 - Should have sorted changes twice 97s ok 270 - 'Plan with sqitch with plan with tag dependencies' isa 'App::Sqitch::Plan' 97s ok 271 - File should be coopied from Sqitch 97s ok 272 - Should get an exception for tag with dependencies 97s ok 273 - The tag dependencies error ident should be "plan" 97s ok 274 - And the tag dependencies error message should be correct 97s ok 275 - 'Plan with sqitch with plan file' isa 'App::Sqitch::Plan' 97s ok 276 - File should be coopied from Sqitch 97s ok 277 - Lines should be parsed from file 97s ok 278 - Changes should be parsed from file 97s ok 279 - Should get all tags from tags() 97s ok 280 - Should have sorted changes twice 97s ok 281 - Load should parse plan from file 97s ok 282 - Should have captured the multi pragmas 97s ok 283 - And the parsed file should have lines and changes 97s ok 284 - Should have sorted changes twice 97s ok 285 - App::Sqitch::Plan->can(...) 97s ok 286 - Position should start at -1 97s ok 287 - Current should be undef 97s ok 288 - Get next change 97s ok 289 - 'First change' isa 'App::Sqitch::Plan::Change' 97s ok 290 - It should be the first change 97s ok 291 - Position should be at 0 97s ok 292 - Count should be 4 97s ok 293 - Current should be current 97s ok 294 - Should get first change from change_at(0) 97s ok 295 - Peek to next change 97s ok 296 - 'Peeked change' isa 'App::Sqitch::Plan::Change' 97s ok 297 - Peeked change should be second change 97s ok 298 - last() should return last change 97s ok 299 - Current should still be current 97s ok 300 - Peek should still be next 97s ok 301 - Next should be the second change 97s ok 302 - Position should be at 1 97s ok 303 - Should get second change from change_at(1) 97s ok 304 - Peek should return an object 97s ok 305 - 'Third change' isa 'App::Sqitch::Plan::Change' 97s ok 306 - It should be the foo tag 97s ok 307 - Current should be the second change 97s ok 308 - Should get third change next 97s ok 309 - Position should be at 2 97s ok 310 - Current should be third change 97s ok 311 - Should get third change from change_at(1) 97s ok 312 - Get fourth change 97s ok 313 - 'Fourth change' isa 'App::Sqitch::Plan::Change' 97s ok 314 - Fourth change should be "hey-there" 97s ok 315 - Position should be at 3 97s ok 316 - Peek should return undef 97s ok 317 - Next should return undef 97s ok 318 - Position should be at 7 97s ok 319 - Next should still return undef 97s ok 320 - Position should still be at 7 97s ok 321 - Reset the plan 97s ok 322 - Position should be back at -1 97s ok 323 - Current should still be undef 97s ok 324 - Next should return the first change again 97s ok 325 - Position should be at 0 again 97s ok 326 - Current should be first change 97s ok 327 - Index of change should be 0 97s ok 328 - Plan should contain change 97s ok 329 - Should be able to get change 0 by name 97s ok 330 - Should be able to find change 0 by name 97s ok 331 - Should be able to get change 0 by ID 97s ok 332 - Should be able to find change 0 by ID 97s ok 333 - Index of @bar should be 3 97s ok 334 - Plan should contain @bar 97s ok 335 - Should be able to get hey-there via @bar 97s ok 336 - Should be able to get hey-there via @bar ID 97s ok 337 - Should be able to find hey-there via @bar 97s ok 338 - Should be able to find hey-there via @bar ID 97s ok 339 - Seek to the "@bar" change 97s ok 340 - Position should be at 3 again 97s ok 341 - Current should be fourth again 97s ok 342 - Index of you should be 1 97s ok 343 - Plan should contain "you" 97s ok 344 - Should be able to get change 1 by name 97s ok 345 - Should be able to find change 1 by name 97s ok 346 - Seek to the "you" change 97s ok 347 - Position should be at 1 again 97s ok 348 - Current should be second again 97s ok 349 - Index of baz should be undef 97s ok 350 - Plan should not contain "baz" 97s ok 351 - Index of @baz should be 3 97s ok 352 - Plan should contain @baz 97s ok 353 - Seek to the "baz" change 97s ok 354 - Position should be at 3 again 97s ok 355 - Current should be fourth again 97s ok 356 - Should still get first change from change_at(0) 97s ok 357 - Should still get second change from change_at(1) 97s ok 358 - Should still get third change from change_at(1) 97s ok 359 - Should die seeking invalid change 97s ok 360 - Invalid seek change error ident should be "plan" 97s ok 361 - And the failure message should be correct 97s ok 362 - All should return all changes 97s ok 363 - Reset the plan again 97s ok 364 - Change hey should be passed to do sub 97s ok 365 - Change hey should be the topic in do sub 97s ok 366 - Change you should be passed to do sub 97s ok 367 - Change you should be the topic in do sub 97s ok 368 - Change this/rocks should be passed to do sub 97s ok 369 - Change this/rocks should be the topic in do sub 97s ok 370 - Change hey-there should be passed to do sub 97s ok 371 - Change hey-there should be the topic in do sub 97s ok 372 - 'search_changes() should return a code ref' isa 'CODE' 97s ok 373 - All the changes should be returned in the proper order 97s ok 374 - Direction "DESC" should work 97s ok 375 - Should get error for invalid direction 97s ok 376 - Invalid direction error ident should be "DEV" 97s ok 377 - Invalid direction error message should be correct 97s ok 378 - Direction "asc" should work 97s ok 379 - Search by change name should work 97s ok 380 - Search by change name should work as a regex 97s ok 381 - Search by change name should with a character class 97s ok 382 - Search by planner should work 97s ok 383 - Search by planner should work as a regex 97s ok 384 - Search by operation "deploy" should work 97s ok 385 - Search by operation "rever" should return nothing 97s ok 386 - Search by operation "DEPLOY" should now return two changes 97s ok 387 - Search by operation "REVERT" should return the other two 97s ok 388 - Should get an error for unknown operation 97s ok 389 - Unknown operation error ident should be "DEV" 97s ok 390 - Unknown operation error message should be correct 97s ok 391 - Search with offset 2 should work 97s ok 392 - Search with offset 2, limit 1 should work 97s ok 393 - Search with offset 3 and direction "desc" should work 97s ok 394 - Search with offset 2, limit 1, direction "desc" should work 97s ok 395 - Search with limit 3, direction "desc" should work 97s ok 396 - App::Sqitch::Plan->can('write_to') 97s ok 397 - plan.out does not exist 97s ok 398 - Write out the file 97s ok 399 - plan.out exists 97s ok 400 - The contents should look right 97s ok 401 - Write out the file from "this/rocks" 97s ok 402 - Plan should have been written from "this/rocks" through tags at end 97s ok 403 - Write the file up to "you" 97s ok 404 - Plan should have been written through "you" and its tags 97s ok 405 - Write from "@foo" to "this/rocks" 97s ok 406 - Plan should have been written from "@foo" to "this/rocks" 97s ok 407 - Write from "hey" to "@foo" 97s ok 408 - Plan should have been written from "hey" through "@foo" 97s ok 409 - App::Sqitch::Plan->can('_is_valid') 97s ok 410 - Should find "^foo" invalid 97s ok 411 - Invalid name "^foo" error ident should be "plan" 97s ok 412 - And the "^foo" error message should be correct 97s ok 413 - Should find "foo^" invalid 97s ok 414 - Invalid name "foo^" error ident should be "plan" 97s ok 415 - And the "foo^" error message should be correct 97s ok 416 - Should find "foo^6" invalid 97s ok 417 - Invalid name "foo^6" error ident should be "plan" 97s ok 418 - And the "foo^6" error message should be correct 97s ok 419 - Should find "foo^666" invalid 97s ok 420 - Invalid name "foo^666" error ident should be "plan" 97s ok 421 - And the "foo^666" error message should be correct 97s ok 422 - Should find "%hi" invalid 97s ok 423 - Invalid name "%hi" error ident should be "plan" 97s ok 424 - And the "%hi" error message should be correct 97s ok 425 - Should find "hi!" invalid 97s ok 426 - Invalid name "hi!" error ident should be "plan" 97s ok 427 - And the "hi!" error message should be correct 97s ok 428 - Should find "foo@bar" invalid 97s ok 429 - Invalid name "foo@bar" error ident should be "plan" 97s ok 430 - And the "foo@bar" error message should be correct 97s ok 431 - Should find "foo:bar" invalid 97s ok 432 - Invalid name "foo:bar" error ident should be "plan" 97s ok 433 - And the "foo:bar" error message should be correct 97s ok 434 - Should find "foo\bar" invalid 97s ok 435 - Invalid name "foo\bar" error ident should be "plan" 97s ok 436 - And the "foo\bar" error message should be correct 97s ok 437 - Should find "+foo" invalid 97s ok 438 - Invalid name "+foo" error ident should be "plan" 97s ok 439 - And the "+foo" error message should be correct 97s ok 440 - Should find "-foo" invalid 97s ok 441 - Invalid name "-foo" error ident should be "plan" 97s ok 442 - And the "-foo" error message should be correct 97s ok 443 - Should find "@foo" invalid 97s ok 444 - Invalid name "@foo" error ident should be "plan" 97s ok 445 - And the "@foo" error message should be correct 97s ok 446 - Name "foo" should be valid 97s ok 447 - Name "12" should be valid 97s ok 448 - Name "t" should be valid 97s ok 449 - Name "6" should be valid 97s ok 450 - Name "阱阪阬" should be valid 97s ok 451 - Name "foo/bar" should be valid 97s ok 452 - Name "beta1" should be valid 97s ok 453 - Name "v1.2-1" should be valid 97s ok 454 - Name "v1.2+1" should be valid 97s ok 455 - Name "v1.2_1" should be valid 97s ok 456 - Add tag "w00t" 97s ok 457 - Should have 4 changes 97s ok 458 - Should find "@w00t" in plan 97s ok 459 - Should find "@w00t" at index 3 97s ok 460 - Last change should be "hey-there" 97s ok 461 - The w00t tag should be on the last change 97s ok 462 - An object of class 'App::Sqitch::Plan::Tag' isa 'App::Sqitch::Plan::Tag' 97s ok 463 - The returned tag should be @w00t 97s ok 464 - The @w00t change should be the last change 97s ok 465 - Write out the file again 97s ok 466 - The contents should include the "w00t" tag 97s ok 467 - Add tag "@alpha" 97s ok 468 - Should find "@alpha" in plan 97s ok 469 - Should find "@alpha" at index 3 97s ok 470 - The returned tag should be @alpha 97s ok 471 - The @alpha change should be the last change 97s ok 472 - Tag change "you" 97s ok 473 - Should still have 4 changes 97s ok 474 - Should find "@blarney" in plan 97s ok 475 - Should find "@blarney" at index 1 97s ok 476 - The blarney tag should be on the second change 97s ok 477 - An object of class 'App::Sqitch::Plan::Tag' isa 'App::Sqitch::Plan::Tag' 97s ok 478 - The returned tag should be @blarney 97s ok 479 - The @blarney change should be the second change 97s ok 480 - Should get error trying to add duplicate tag 97s ok 481 - Duplicate tag error ident should be "plan" 97s ok 482 - And the error message should report it as a dupe 97s ok 483 - Should get error for invalid tag "^foo" 97s ok 484 - Invalid name "^foo" error ident should be "plan" 97s ok 485 - And the "^foo" error message should be correct 97s ok 486 - Should get error for invalid tag "foo^" 97s ok 487 - Invalid name "foo^" error ident should be "plan" 97s ok 488 - And the "foo^" error message should be correct 97s ok 489 - Should get error for invalid tag "foo^6" 97s ok 490 - Invalid name "foo^6" error ident should be "plan" 97s ok 491 - And the "foo^6" error message should be correct 97s ok 492 - Should get error for invalid tag "foo^666" 97s ok 493 - Invalid name "foo^666" error ident should be "plan" 97s ok 494 - And the "foo^666" error message should be correct 97s ok 495 - Should get error for invalid tag "%hi" 97s ok 496 - Invalid name "%hi" error ident should be "plan" 97s ok 497 - And the "%hi" error message should be correct 97s ok 498 - Should get error for invalid tag "hi!" 97s ok 499 - Invalid name "hi!" error ident should be "plan" 97s ok 500 - And the "hi!" error message should be correct 97s ok 501 - Should get error for invalid tag "foo@bar" 97s ok 502 - Invalid name "foo@bar" error ident should be "plan" 97s ok 503 - And the "foo@bar" error message should be correct 97s ok 504 - Should get error for invalid tag "foo:bar" 97s ok 505 - Invalid name "foo:bar" error ident should be "plan" 97s ok 506 - And the "foo:bar" error message should be correct 97s ok 507 - Should get error for invalid tag "foo\bar" 97s ok 508 - Invalid name "foo\bar" error ident should be "plan" 97s ok 509 - And the "foo\bar" error message should be correct 97s ok 510 - Should get error for invalid tag "+foo" 97s ok 511 - Invalid name "+foo" error ident should be "plan" 97s ok 512 - And the "+foo" error message should be correct 97s ok 513 - Should get error for invalid tag "-foo" 97s ok 514 - Invalid name "-foo" error ident should be "plan" 97s ok 515 - And the "-foo" error message should be correct 97s ok 516 - Should get error for invalid tag "foo\#bar" 97s ok 517 - Invalid name "foo\#bar" error ident should be "plan" 97s ok 518 - And the "foo\#bar" error message should be correct 97s ok 519 - Should get error for invalid tag "foo/bar" 97s ok 520 - Invalid name "foo/bar" error ident should be "plan" 97s ok 521 - And the "foo/bar" error message should be correct 97s ok 522 - Should get error for reserved tag "HEAD" 97s ok 523 - Reserved tag "HEAD" error ident should be "plan" 97s ok 524 - And the reserved tag "HEAD" message should be correct 97s ok 525 - Should get error for reserved tag "ROOT" 97s ok 526 - Reserved tag "ROOT" error ident should be "plan" 97s ok 527 - And the reserved tag "ROOT" message should be correct 97s ok 528 - Should get error for a SHA1 tag 97s ok 529 - SHA1 tag error ident should be "plan" 97s ok 530 - And the reserved name error should be output 97s ok 531 - Add change "booyah" 97s ok 532 - Should have 5 changes 97s ok 533 - Should find "booyah" in plan 97s ok 534 - Should find "booyah" at index 4 97s ok 535 - Last change should be "booyah" 97s ok 536 - An object of class 'App::Sqitch::Plan::Change' isa 'App::Sqitch::Plan::Change' 97s ok 537 - Should have plain stringification of "booya" 97s ok 538 - Write out the file again 97s ok 539 - The contents should include the "booyah" change 97s ok 540 - Add change "blow" 97s ok 541 - Should have 6 changes 97s ok 542 - Should find "blow" in plan 97s ok 543 - Should find "blow" at index 5 97s ok 544 - Last change should be "blow" 97s ok 545 - Should have nice stringification of "blow [booyah]" 97s ok 546 - The new change should have been appended to the lines, too 97s ok 547 - Add change "jive" with dupe dependency 97s ok 548 - Should have 7 changes 97s ok 549 - Should find "jive" in plan 97s ok 550 - Should find "jive" at index 6 97s ok 551 - jive change should be "jive" 97s ok 552 - Should have dependency "blow" 97s ok 553 - Should have nice stringification of "jive [blow]" 97s ok 554 - The new change should have been appended to the lines, too 97s ok 555 - Add change "moo" with dupe dependencies 97s ok 556 - Should have 8 changes 97s ok 557 - Should find "moo" in plan 97s ok 558 - Should find "moo" at index 7 97s ok 559 - moo change should be "moo" 97s ok 560 - Should require "ext:whu" 97s ok 561 - Should conflict with "blow" and "ext:whu" 97s ok 562 - Should have nice stringification of "moo [ext:foo !blow !ext:whu]" 97s ok 563 - The new change should have been appended to the lines, too 97s ok 564 - Should get error trying to add duplicate change 97s ok 565 - Duplicate change error ident should be "plan" 97s ok 566 - And the error message should suggest "rework" 97s ok 567 - Should get error for invalid change "^foo" 97s ok 568 - Invalid name "^foo" error ident should be "plan" 97s ok 569 - And the "^foo" error message should be correct 97s ok 570 - Should get error for invalid change "foo^" 97s ok 571 - Invalid name "foo^" error ident should be "plan" 97s ok 572 - And the "foo^" error message should be correct 97s ok 573 - Should get error for invalid change "foo^6" 97s ok 574 - Invalid name "foo^6" error ident should be "plan" 97s ok 575 - And the "foo^6" error message should be correct 97s ok 576 - Should get error for invalid change "foo^666" 97s ok 577 - Invalid name "foo^666" error ident should be "plan" 97s ok 578 - And the "foo^666" error message should be correct 97s ok 579 - Should get error for invalid change "%hi" 97s ok 580 - Invalid name "%hi" error ident should be "plan" 97s ok 581 - And the "%hi" error message should be correct 97s ok 582 - Should get error for invalid change "hi!" 97s ok 583 - Invalid name "hi!" error ident should be "plan" 97s ok 584 - And the "hi!" error message should be correct 97s ok 585 - Should get error for invalid change "foo@bar" 97s ok 586 - Invalid name "foo@bar" error ident should be "plan" 97s ok 587 - And the "foo@bar" error message should be correct 97s ok 588 - Should get error for invalid change "foo:bar" 97s ok 589 - Invalid name "foo:bar" error ident should be "plan" 97s ok 590 - And the "foo:bar" error message should be correct 97s ok 591 - Should get error for invalid change "foo\bar" 97s ok 592 - Invalid name "foo\bar" error ident should be "plan" 97s ok 593 - And the "foo\bar" error message should be correct 97s ok 594 - Should get error for invalid change "+foo" 97s ok 595 - Invalid name "+foo" error ident should be "plan" 97s ok 596 - And the "+foo" error message should be correct 97s ok 597 - Should get error for invalid change "-foo" 97s ok 598 - Invalid name "-foo" error ident should be "plan" 97s ok 599 - And the "-foo" error message should be correct 97s ok 600 - Should get error for invalid change "@foo" 97s ok 601 - Invalid name "@foo" error ident should be "plan" 97s ok 602 - And the "@foo" error message should be correct 97s ok 603 - Should get error for reserved name "HEAD" 97s ok 604 - Reserved name "HEAD" error ident should be "plan" 97s ok 605 - And the reserved name "HEAD" message should be correct 97s ok 606 - Should get error for reserved name "ROOT" 97s ok 607 - Reserved name "ROOT" error ident should be "plan" 97s ok 608 - And the reserved name "ROOT" message should be correct 97s ok 609 - Should get failure for failed dependency 97s ok 610 - Dependency error ident should be "plan" 97s ok 611 - The dependency error should be correct 97s ok 612 - Should get failure for invalid dependency 97s ok 613 - Invalid dependency error ident should be "plan" 97s ok 614 - The invalid dependency error should be correct 97s ok 615 - Should get failure for invalid conflict 97s ok 616 - Invalid conflict error ident should be "plan" 97s ok 617 - The invalid conflict error should be correct 97s ok 618 - Should get failure for failed tag dependency 97s ok 619 - Tag dependency error ident should be "plan" 97s ok 620 - The tag dependency error should be correct 97s ok 621 - Should get error for a SHA1 change 97s ok 622 - SHA1 tag error ident should be "plan" 97s ok 623 - And the reserved name error should be output 97s ok 624 - App::Sqitch::Plan->can('rework') 97s ok 625 - Rework change "you" 97s ok 626 - An object of class 'App::Sqitch::Plan::Change' isa 'App::Sqitch::Plan::Change' 97s ok 627 - Reworked change should be "you" 97s ok 628 - Get original "you" change 97s ok 629 - It should also be named "you" 97s ok 630 - And it should have the one rework tag 97s ok 631 - The original file should now be named you@bar.sql 97s ok 632 - It should require the previous "you" change 97s ok 633 - The new "you" should have been appended to the lines, too 97s ok 634 - Should find "you@HEAD" in plan 97s ok 635 - It should be at position 8 97s ok 636 - The plan count should be 9 97s ok 637 - Tag @beta1 97s ok 638 - Rework change "you" again 97s ok 639 - An object of class 'App::Sqitch::Plan::Change' isa 'App::Sqitch::Plan::Change' 97s ok 640 - New reworked change should be "you" 97s ok 641 - Get original "you" change again 97s ok 642 - It should still be named "you" 97s ok 643 - And it should have the one rework tag 97s ok 644 - Get you@beta1 97s ok 645 - The second "you" should be named that 97s ok 646 - And the second change should have the rework_tag "@beta1" 97s ok 647 - But the new reworked change should have no rework tags 97s ok 648 - It should require the previous "you" change 97s ok 649 - The new reworking should have been appended to the lines 97s ok 650 - Should find "you@HEAD" in plan 97s ok 651 - It should be at position 9 97s ok 652 - The plan count should be 10 97s ok 653 - rework should die on nonexistent change 97s ok 654 - Nonexistent change error ident should be "plan" 97s ok 655 - And the error should suggest "sqitch add" 97s ok 656 - rework_stpe should die on lack of intervening tag 97s ok 657 - Missing tag error ident should be "plan" 97s ok 658 - And the error should suggest "sqitch tag" 97s ok 659 - rework should die on failed dependency 97s ok 660 - Rework dependency error ident should be "plan" 97s ok 661 - The rework dependency error should be correct 97s ok 662 - Should get failure for invalid dependency 97s ok 663 - Invalid dependency error ident should be "plan" 97s ok 664 - The invalid dependency error should be correct 97s ok 665 - Should get failure for invalid conflict 97s ok 666 - Invalid conflict error ident should be "plan" 97s ok 667 - The invalid conflict error should be correct 97s ok 668 - 'Plan shoud work plan with dupe change across tags' isa 'App::Sqitch::Plan' 97s ok 669 - File should be coopied from Sqitch 97s ok 670 - Project name should be set 97s ok 671 - Lines with dupe change should be read from file 97s ok 672 - Noes with dupe change should be read from file 97s ok 673 - Should have sorted changes three times 97s ok 674 - Should find "whatever" in plan 97s ok 675 - Should get an error trying to find dupe key. 97s ok 676 - Dupe key error ident should be "plan" 97s ok 677 - Dupe key error message should be correct 97s ok 678 - Should have output listing tag-qualified changes 97s ok 679 - Should get 3 for whatever@HEAD 97s ok 680 - Should get 0 for whatever@bar 97s ok 681 - Should get an error seeking dupe key. 97s ok 682 - Dupe key error ident should be "plan" 97s ok 683 - Dupe key error message should be correct 97s ok 684 - Should have output listing tag-qualified changes 97s ok 685 - Should find whatever@HEAD at index 3 97s ok 686 - Should find whatever@HEAD at index 0 97s ok 687 - Should find first instance of whatever at index 0 97s ok 688 - Should find first instance of whatever after @bar at index 5 97s ok 689 - Seek whatever@HEAD 97s ok 690 - Position should be 3 97s ok 691 - Seek whatever@bar 97s ok 692 - Position should be 0 97s ok 693 - Last tagged change should be "hi" 97s ok 694 - App::Sqitch::Plan->can('open_script') 97s ok 695 - Open bar.sql 97s ok 696 - It should be the right file 97s ok 697 - Open baz.sql 97s ok 698 - It should be empty 97s ok 699 - open_script() should die on nonexistent file 97s ok 700 - Nonexistent file error ident should be "io" 97s ok 701 - Nonexistent file error message should be correct 97s ok 702 - App::Sqitch::Plan->can('check_changes') 97s ok 703 - Should get original order when no dependencies 97s ok 704 - Should get original order when no prepreqs 97s ok 705 - Should get original order when that requires this 97s ok 706 - Should get original order when other requires that 97s ok 707 - Should get error for out-of-order dependency 97s ok 708 - Unordered dependency error ident should be "parse" 97s ok 709 - And the unordered dependency error message should be correct 97s ok 710 - Should get error for multiple dependency errors 97s ok 711 - Multiple dependency error ident should be "parse" 97s ok 712 - And the multiple dependency error message should be correct 97s ok 713 - Should get original order when requiring a tag 97s ok 714 - Should get original order when requiring a step as-of a tag 97s ok 715 - Should get failure for a step after a tag 97s ok 716 - Step after tag error ident should be "parse" 97s ok 717 - And we the unknown change as-of a tag message should be correct 97s ok 718 - Should get failure for a cycle 97s ok 719 - Cycle error ident should be "parse" 97s ok 720 - The cycle error message should be correct 97s ok 721 - Should get failure for a two-hop cycle 97s ok 722 - Two-hope cycle error ident should be "parse" 97s ok 723 - The two-hop cycle error message should be correct 97s ok 724 - Should get original order with earlier dependency 97s ok 725 - Should get error with misordered and seen dependencies 97s ok 726 - Misorderd and seen error ident should be "parse" 97s ok 727 - And the misordered and seen error message should be correct 97s ok 728 - Should die on unknown dependency 97s ok 729 - Unknown dependency error ident should be "parse" 97s ok 730 - And the error should point to the offending change 97s ok 731 - Should die on unknown tag dependency 97s ok 732 - Unknown tag dependency error ident should be "parse" 97s ok 733 - And the error should point to the offending change 97s ok 734 - Should get original order with external dependency 97s ok 735 - Should die on self dependency 97s ok 736 - Self dependency error ident should be "parse" 97s ok 737 - And the self dependency error should be correct 97s ok 738 - Should get original order with cascading dependencies 97s ok 739 - Should get original order with multiple cascading dependencies 97s ok 740 - App::Sqitch::Plan->can('_check_dependencies') 97s ok 741 - Depend "hi" should be in project "dupe_change_diff_tag" 97s ok 742 - Dependency on "hi" should succeed 97s ok 743 - Depend "greets" should be in project "dupe_change_diff_tag" 97s ok 744 - Dependency on "greets" should succeed 97s ok 745 - Depend "whatever" should be in project "dupe_change_diff_tag" 97s ok 746 - Dependency on "whatever" should succeed 97s ok 747 - Depend "@foo" should be in project "dupe_change_diff_tag" 97s ok 748 - Dependency on "@foo" should succeed 97s ok 749 - Depend "whatever@foo" should be in project "dupe_change_diff_tag" 97s ok 750 - Dependency on "whatever@foo" should succeed 97s ok 751 - Depend "ext:larry" should be in project "ext" 97s ok 752 - Dependency on "ext:larry" should succeed 97s ok 753 - Depend "ext:greets" should be in project "ext" 97s ok 754 - Dependency on "ext:greets" should succeed 97s ok 755 - Should get error trying to depend on "wanker" 97s ok 756 - Dependency "req" error ident should be "plan" 97s ok 757 - And should get unknown dependency message for "wanker" 97s ok 758 - Should get error trying to depend on "@blah" 97s ok 759 - Dependency "req" error ident should be "plan" 97s ok 760 - And should get unknown dependency message for "@blah" 97s ok 761 - Should get error trying to depend on "greets@foo" 97s ok 762 - Dependency "req" error ident should be "plan" 97s ok 763 - And should get unknown dependency message for "greets@foo" 97s ok 764 - Should have undef URI when no pragma 97s ok 765 - 'Plan with sqitch with plan file with dependencies' isa 'App::Sqitch::Plan' 97s ok 766 - File should be coopied from Sqitch 97s ok 767 - syntax_version should be set 97s ok 768 - Project should be set 97s ok 769 - Should have URI from pragma 97s ok 770 - 'It' isa 'URI' 97s ok 771 - Should die on plan with no project pragma 97s ok 772 - Missing prorject error ident should be "parse" 97s ok 773 - The missing project error message should be correct 97s ok 774 - Should die on invalid project name "^foo" 97s ok 775 - Ident for bad proj "^foo" should be "parse" 97s ok 776 - Error message for bad project "^foo" should be correct 97s ok 777 - Should die on invalid project name "foo^" 97s ok 778 - Ident for bad proj "foo^" should be "parse" 97s ok 779 - Error message for bad project "foo^" should be correct 97s ok 780 - Should die on invalid project name "foo^6" 97s ok 781 - Ident for bad proj "foo^6" should be "parse" 97s ok 782 - Error message for bad project "foo^6" should be correct 97s ok 783 - Should die on invalid project name "foo^666" 97s ok 784 - Ident for bad proj "foo^666" should be "parse" 97s ok 785 - Error message for bad project "foo^666" should be correct 97s ok 786 - Should die on invalid project name "%hi" 97s ok 787 - Ident for bad proj "%hi" should be "parse" 97s ok 788 - Error message for bad project "%hi" should be correct 97s ok 789 - Should die on invalid project name "hi!" 97s ok 790 - Ident for bad proj "hi!" should be "parse" 97s ok 791 - Error message for bad project "hi!" should be correct 97s ok 792 - Should die on invalid project name "foo@bar" 97s ok 793 - Ident for bad proj "foo@bar" should be "parse" 97s ok 794 - Error message for bad project "foo@bar" should be correct 97s ok 795 - Should die on invalid project name "foo:bar" 97s ok 796 - Ident for bad proj "foo:bar" should be "parse" 97s ok 797 - Error message for bad project "foo:bar" should be correct 97s ok 798 - Should die on invalid project name "foo\bar" 97s ok 799 - Ident for bad proj "foo\bar" should be "parse" 97s ok 800 - Error message for bad project "foo\bar" should be correct 97s ok 801 - Should die on invalid project name "+foo" 97s ok 802 - Ident for bad proj "+foo" should be "parse" 97s ok 803 - Error message for bad project "+foo" should be correct 97s ok 804 - Should die on invalid project name "-foo" 97s ok 805 - Ident for bad proj "-foo" should be "parse" 97s ok 806 - Error message for bad project "-foo" should be correct 97s ok 807 - Should die on invalid project name "@foo" 97s ok 808 - Ident for bad proj "@foo" should be "parse" 97s ok 809 - Error message for bad project "@foo" should be correct 97s 1..809 97s ok 97s t/plan_cmd.t ........ 97s 1..234 97s ok 1 - require App::Sqitch::Command::plan; 97s ok 2 - Load a sqitch sqitch object 97s ok 3 - 'plan command' isa 'App::Sqitch::Command::plan' 97s ok 4 - App::Sqitch::Command::plan->can(...) 97s ok 5 - Options should be correct 97s ok 6 - Should parse options 97s ok 7 - Options should not conflict with core options 97s ok 8 - 'Formatter' isa 'App::Sqitch::ItemFormatter' 97s ok 9 - Should get empty hash for no config or options 97s ok 10 - Should get error for invalid date format in config 97s ok 11 - Invalid date format error ident should be "datetime" 97s ok 12 - Invalid date format error message should be correct 97s ok 13 - Should get error for invalid date format in optsions 97s ok 14 - Invalid date format error ident should be "plan" 97s ok 15 - Invalid date format error message should be correct 97s ok 16 - Should get error for invalid format in config 97s ok 17 - Invalid format error ident should be "plan" 97s ok 18 - Invalid format error message should be correct 97s ok 19 - Should get error for invalid format in optsions 97s ok 20 - Invalid format error ident should be "plan" 97s ok 21 - Invalid format error message should be correct 97s ok 22 - Configuration should respect --no-color, setting "never" 97s ok 23 - --oneline should set format 97s ok 24 - --oneline should set abbrev to 6 97s ok 25 - --oneline should not override --format 97s ok 26 - --oneline should not overrride --abbrev 97s ok 27 - Configuration should respect --no-color even when configure is set 97s ok 28 - Configuration should respect color option 97s ok 29 - Configuration should respect color config 97s ok 30 - Configuration should respect color option 97s ok 31 - Configuration should respect color config 97s ok 32 - Configuration should respect color option 97s ok 33 - Configuration should respect color config 97s ok 34 - Configuration should respect color option 97s ok 35 - Configuration should respect color config 97s ok 36 - Instantiate with format "raw" 97s ok 37 - Format "raw" should output correctly 97s ok 38 - Format "raw" should output correctly without tags 97s ok 39 - Instantiate with format "full" 97s ok 40 - Format "full" should output correctly 97s ok 41 - Instantiate with format "full" and date format "rfc" 97s ok 42 - Format "full" and date format "rfc" should output correctly 97s ok 43 - Instantiate with format "full" and date format "long" 97s ok 44 - Format "full" and date format "long" should output correctly 97s ok 45 - Instantiate with format "full" and date format "medium" 97s ok 46 - Format "full" and date format "medium" should output correctly 97s ok 47 - Format "full" should output correctly without tags 97s ok 48 - Instantiate with format "long" 97s ok 49 - Format "long" should output correctly 97s ok 50 - Format "long" should output correctly without tags 97s ok 51 - Instantiate with format "medium" 97s ok 52 - Format "medium" should output correctly 97s ok 53 - Instantiate with format "medium" and date format "rfc" 97s ok 54 - Format "medium" and date format "rfc" should output correctly 97s ok 55 - Instantiate with format "medium" and date format "long" 97s ok 56 - Format "medium" and date format "long" should output correctly 97s ok 57 - Instantiate with format "medium" and date format "medium" 97s ok 58 - Format "medium" and date format "medium" should output correctly 97s ok 59 - Instantiate with format "short" 97s ok 60 - Format "short" should output correctly 97s ok 61 - Instantiate with format "oneline" 97s ok 62 - Format "oneline" should output correctly 97s ok 63 - Format "oneline" should output correctly without tags 97s ok 64 - Format "%e" should output "deploy" 97s ok 65 - Format "%e" should output "revert" 97s ok 66 - Format "%e" should output "fail" 97s ok 67 - Format "%L" should output "Deploy" 97s ok 68 - Format "%L" should output "Revert" 97s ok 69 - Format "%L" should output "Fail" 97s ok 70 - Format "%l" should output "deploy" 97s ok 71 - Format "%l" should output "revert" 97s ok 72 - Format "%l" should output "fail" 97s ok 73 - Format "%{event}_" should output "Event: " 97s ok 74 - Format "%{change}_" should output "Change: " 97s ok 75 - Format "%{planner}_" should output "Planner: " 97s ok 76 - Format "%{by}_" should output "By: " 97s ok 77 - Format "%{date}_" should output "Date: " 97s ok 78 - Format "%{planned}_" should output "Planned: " 97s ok 79 - Format "%{name}_" should output "Name: " 97s ok 80 - Format "%{email}_" should output "Email: " 97s ok 81 - Format "%{requires}_" should output "Requires: " 97s ok 82 - Format "%{conflicts}_" should output "Conflicts:" 97s ok 83 - Format "%H" should output "123456789" 97s ok 84 - Format "%h" should output "123456789" 97s ok 85 - Format "%{5}h" should output "12345" 97s ok 86 - Format "%{7}h" should output "1234567" 97s ok 87 - Format "%n" should output "foo" 97s ok 88 - Format "%n" should output "bar" 97s ok 89 - Format "%o" should output "foo" 97s ok 90 - Format "%o" should output "bar" 97s ok 91 - Format "%F" should output "deploy/change_file.sql" 97s ok 92 - Format "%F" should output "deploy/change_file_with_tag@tag.sql" 97s ok 93 - Format "%p" should output "larry " 97s ok 94 - Format "%{n}p" should output "damian" 97s ok 95 - Format "%{name}p" should output "chip" 97s ok 96 - Format "%{e}p" should output "larry@example.com" 97s ok 97 - Format "%{email}p" should output "damian@example.com" 97s ok 98 - Format "%{date}p" should output "2024-11-02 02:02:14 +0900" 97s ok 99 - Format "%{date:rfc}p" should output "Sat, 02 Nov 2024 02:02:14 +0900" 97s ok 100 - Format "%{d:long}p" should output "November 2, 2024, 2:02:14 AM JST" 97s ok 101 - Format "%{d:cldr:HH'h' mm'm'}p" should output "02h 02m" 97s ok 102 - Format "%{d:strftime:%a at %H:%M:%S}p" should output "Sat at 02:02:14" 97s ok 103 - Format "%t" should output "" 97s ok 104 - Format "%t" should output " @foo" 97s ok 105 - Format "%t" should output " @foo, @bar" 97s ok 106 - Format "%{|}t" should output "" 97s ok 107 - Format "%{|}t" should output " @foo" 97s ok 108 - Format "%{|}t" should output " @foo|@bar" 97s ok 109 - Format "%T" should output "" 97s ok 110 - Format "%T" should output " (@foo)" 97s ok 111 - Format "%T" should output " (@foo, @bar)" 97s ok 112 - Format "%{|}T" should output "" 97s ok 113 - Format "%{|}T" should output " (@foo)" 97s ok 114 - Format "%{|}T" should output " (@foo|@bar)" 97s ok 115 - Format "%r" should output "" 97s ok 116 - Format "%r" should output " foo" 97s ok 117 - Format "%r" should output " foo, bar" 97s ok 118 - Format "%{|}r" should output "" 97s ok 119 - Format "%{|}r" should output " foo" 97s ok 120 - Format "%{|}r" should output " foo|bar" 97s ok 121 - Format "%R" should output "" 97s ok 122 - Format "%R" should output "Requires: foo[newline]" 97s ok 123 - Format "%R" should output "Requires: foo, bar[newline]" 97s ok 124 - Format "%{|}R" should output "" 97s ok 125 - Format "%{|}R" should output "Requires: foo[newline]" 97s ok 126 - Format "%{|}R" should output "Requires: foo|bar[newline]" 97s ok 127 - Format "%x" should output "" 97s ok 128 - Format "%x" should output " foo" 97s ok 129 - Format "%x" should output " foo, bax" 97s ok 130 - Format "%{|}x" should output "" 97s ok 131 - Format "%{|}x" should output " foo" 97s ok 132 - Format "%{|}x" should output " foo|bax" 97s ok 133 - Format "%X" should output "" 97s ok 134 - Format "%X" should output "Conflicts: foo[newline]" 97s ok 135 - Format "%X" should output "Conflicts: foo, bar[newline]" 97s ok 136 - Format "%{|}X" should output "" 97s ok 137 - Format "%{|}X" should output "Conflicts: foo[newline]" 97s ok 138 - Format "%{|}X" should output "Conflicts: foo|bar[newline]" 97s ok 139 - Format "%{yellow}C" should output "" 97s ok 140 - Format "%{:event}C" should output "" 97s ok 141 - Format "%v" should output "[newline]" 97s ok 142 - Format "%%" should output "%" 97s ok 143 - Format "%s" should output "hi there" 97s ok 144 - Format "%s" should output "hi there" 97s ok 145 - Format "%s" should output "subject line" 97s ok 146 - Format "%{ }s" should output " hi there" 97s ok 147 - Format "%{xx}s" should output "xxhi there" 97s ok 148 - Format "%b" should output "" 97s ok 149 - Format "%b" should output "yo" 97s ok 150 - Format "%b" should output "first graph[newline][newline]second graph[newline][newline]" 97s ok 151 - Format "%{ }b" should output "" 97s ok 152 - Format "%{xxx }b" should output "xxx yo" 97s ok 153 - Format "%{x}b" should output "xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]" 97s ok 154 - Format "%{ }b" should output " yo" 97s ok 155 - Format "%B" should output "hi there" 97s ok 156 - Format "%B" should output "hi there[newline]yo" 97s ok 157 - Format "%B" should output "subject line[newline][newline]first graph[newline][newline]second graph[newline][newline]" 97s ok 158 - Format "%{ }B" should output " hi there" 97s ok 159 - Format "%{xxx }B" should output "xxx hi there[newline]xxx yo" 97s ok 160 - Format "%{x}B" should output "xsubject line[newline]x[newline]xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]" 97s ok 161 - Format "%{ }B" should output " hi there [newline] yo" 97s ok 162 - Format "%{change}a" should output "change lolz[newline]" 97s ok 163 - Format "%{change_id}a" should output "change_id 000011112222333444[newline]" 97s ok 164 - Format "%{event}a" should output "event deploy[newline]" 97s ok 165 - Format "%{tags}a" should output "tags @beta, @gamma[newline]" 97s ok 166 - Format "%{requires}a" should output "requires foo, bar[newline]" 97s ok 167 - Format "%{conflicts}a" should output "" 97s ok 168 - Should get exception for format "%_" 97s ok 169 - %_ error ident should be "format" 97s ok 170 - %_ error message should be correct 97s ok 171 - Should get exception for unknown label in format "%_" 97s ok 172 - Invalid %_ label error ident should be "format" 97s ok 173 - Invalid %_ label error message should be correct 97s ok 174 - Instantiate with abbrev => 4 97s ok 175 - %h should respect abbrev 97s ok 176 - %H should not respect abbrev 97s ok 177 - Instantiate with date_format => "rfc" 97s ok 178 - %{date}p should respect the date_format attribute 97s ok 179 - %{iso}p should override the date_format attribute 97s ok 180 - Should get exception for unknown attribute passed to %a 97s ok 181 - %a error ident should be "format" 97s ok 182 - %a error message should be correct 97s ok 183 - Format "%{yellow}C" should output yellow 97s ok 184 - Format "%{red}C" should output red 97s ok 185 - Format "%{blue}C" should output blue 97s ok 186 - Format "%{cyan}C" should output cyan 97s ok 187 - Format "%{magenta}C" should output magenta 97s ok 188 - Format "%{:event}C" on "deploy" should output green 97s ok 189 - Format "%{:event}C" on "revert" should output blue 97s ok 190 - Format "%{:event}C" on "fail" should output red 97s ok 191 - Instantiate with format "full" again 97s ok 192 - Format "full" should output correctly with color 97s ok 193 - Instantiate with format "long" again 97s ok 194 - Format "long" should output correctly with color 97s ok 195 - Instantiate with format "medium" again 97s ok 196 - Format "medium" should output correctly with color 97s ok 197 - Instantiate with format "short" again 97s ok 198 - Format "short" should output correctly with color 97s ok 199 - Instantiate with format "oneline" again 97s ok 200 - Format "oneline" should output correctly with color 97s ok 201 - Should get an error for an invalid color 97s ok 202 - Invalid color error ident should be "format" 97s ok 203 - Invalid color error message should be correct 97s ok 204 - Should get error for no changes 97s ok 205 - no changes error ident should be "plan" 97s ok 206 - no changes exit val should be 1 97s ok 207 - no changes error message should be correct 97s ok 208 - Execute plan 97s ok 209 - The proper args should have been passed to search_events 97s ok 210 - The event should have been paged 97s ok 211 - 'plan with attributes' isa 'App::Sqitch::Command::plan' 97s ok 212 - Execute plan with attributes 97s ok 213 - All params should have been passed to search_events 97s ok 214 - Both events should have been paged without headers 97s ok 215 - Create command with raw format 97s ok 216 - Execute plan with all changes 97s ok 217 - Should have paged all changes 97s ok 218 - 'plan with bad format' isa 'App::Sqitch::Command::plan' 97s ok 219 - Should get an exception for a bad format code 97s ok 220 - bad format code format error ident should be "format" 97s ok 221 - bad format code format error message should be correct 97s ok 222 - Create plan command with unknown target option 97s ok 223 - Should get error for unknown target 97s ok 224 - Unknown target error ident should be "plan" 97s ok 225 - Unknown target changes exit val should be 2 97s ok 226 - Unknown target error message should be correct 97s ok 227 - Should have passed target for parsing 97s ok 228 - Create plan command with target option 97s ok 229 - Execute with engine arg 97s ok 230 - Should have passed engine for parsing 97s ok 231 - Create plan command with target option 97s ok 232 - Execute with multiple targets 97s ok 233 - Should have got warning for two targets 97s ok 234 - no warnings 97s ok 97s t/pragma.t .......... 97s 1..10 97s ok 1 - require App::Sqitch::Plan::Pragma; 97s ok 2 - App::Sqitch::Plan::Pragma->can(...) 97s ok 3 - An object of class 'App::Sqitch::Plan::Pragma' isa 'App::Sqitch::Plan::Pragma' 97s ok 4 - An object of class 'App::Sqitch::Plan::Pragma' isa 'App::Sqitch::Plan::Line' 97s ok 5 - Name should format as "%foo" 97s ok 6 - Value should format as "" 97s ok 7 - should stringify to "%foo" 97s ok 8 - Create pragma with more stuff 97s ok 9 - It should stringify correctly 97s ok 10 - no warnings 97s ok 98s t/rebase.t .......... 98s ok 1 - require App::Sqitch::Command::rebase; 98s ok 2 - The class (or class-like) 'App::Sqitch::Command::rebase' isa 'App::Sqitch::Command' 98s ok 3 - App::Sqitch::Command::rebase->can(...) 98s ok 4 - App::Sqitch::Command::rebase does RevertDeployCommand 98s ok 5 - App::Sqitch::Command::rebase does ConnectingCommand 98s ok 6 - App::Sqitch::Command::rebase does ContextCommand 98s ok 7 - Options should be correct 98s ok 8 - Should parse options 98s ok 9 - Options should not conflict with core options 98s ok 10 - Load a sqitch sqitch object 98s ok 11 - Should have empty default configuration with no config or opts 98s ok 12 - Should have set option 98s ok 13 - Should have mode, deploy_variables, verify, no_prompt, log_only, & lock_timeout 98s ok 14 - Should have set_revert option and no_prompt false 98s ok 15 - set_deploy and set_revert should overrid set 98s ok 16 - set_deploy and set_revert should merge with set 98s ok 17 - set_revert should merge with set_deploy 98s ok 18 - Should have deploy configuration 98s ok 19 - Should have merged variables 98s ok 20 - Should have no warnings 98s ok 21 - Should have no_prompt true 98s ok 22 - Should have false no_prompt, verify, and true prompt_accept from rebase config 98s ok 23 - Should have true no_prompt, verify, and false prompt_accept from rebase from deploy 98s ok 24 - Should have no_prompt, prompt_accept false and mode all again 98s ok 25 - Should have no_prompt false and prompt_accept true for revert config 98s ok 26 - Should have no_prompt true with -y 98s ok 27 - revert.strict should die 98s ok 28 - Strict err ident should be "rebase" 98s ok 29 - Should have corect strict error message 98s ok 30 - rebase.strict should die 98s ok 31 - Strict err ident should be "rebase" 98s ok 32 - Should have corect strict error message 98s ok 33 - App::Sqitch::X 98s ok 34 - 'new status with target' isa 'App::Sqitch::Command::rebase' 98s ok 35 - Should have target "foo" 98s ok 36 - An object of class 'App::Sqitch::Command::rebase' isa 'App::Sqitch::Command::rebase' 98s ok 37 - Should have undef target 98s ok 38 - onto_change should be undef 98s ok 39 - upto_change should be undef 98s ok 40 - modified should be false 98s ok 41 - Should collect no variables for deploy 98s ok 42 - Should collect no variables for revert 98s ok 43 - Should collect core deploy vars for deploy 98s ok 44 - Should collect core revert vars for revert 98s ok 45 - Should override core vars with deploy vars for deploy 98s ok 46 - Should override core vars with deploy vars for revert 98s ok 47 - Deploy vars should be unaffected by revert vars 98s ok 48 - Should override deploy vars with revert vars for revert 98s ok 49 - Should override deploy vars with engine vars for deploy 98s ok 50 - Should override rebase vars with engine vars for revert 98s ok 51 - Should override engine vars with deploy vars for deploy 98s ok 52 - Should override engine vars with target vars for revert 98s ok 53 - Should override target vars with --set vars for deploy 98s ok 54 - Should override target vars with --set variables for revert 98s ok 55 - Should override --set vars with --set-deploy variables for deploy 98s ok 56 - Should not override --set vars with --set-deploy variables for revert 98s ok 57 - Should not override --set vars with --set-revert variables for deploy 98s ok 58 - Should override --set vars with --set-revert variables for revert 98s ok 59 - Execute to "@alpha" 98s ok 60 - undef, and "all" should be passed to the engine deploy 98s ok 61 - No vars should have been passed through to the engine 98s ok 62 - "@alpha" should be passed to the engine revert 98s ok 63 - Engine should no be log only 98s ok 64 - The lock timeout should be set to the default 98s ok 65 - Should have no warnings 98s ok 66 - Execute with target 98s ok 67 - undef, and "all" should be passed to the engine deploy 98s ok 68 - undef should be passed to the engine revert 98s ok 69 - No vars should have been passed through to the engine 98s ok 70 - Engine should no be log only 98s ok 71 - The lock timeout should be set to the default 98s ok 72 - The target name should be as passed 98s ok 73 - Should have no warnings 98s ok 74 - Execute with onto and target 98s ok 75 - undef, and "all" should be passed to the engine deploy 98s ok 76 - "widgets" should be passed to the engine revert 98s ok 77 - No vars should have been passed through to the engine 98s ok 78 - Engine should no be log only 98s ok 79 - The lock timeout should be set to the default 98s ok 80 - The target name should be as passed 98s ok 81 - Should have no warnings 98s ok 82 - Execute with three args 98s ok 83 - "widgets", and "all" should be passed to the engine deploy 98s ok 84 - "roles" should be passed to the engine revert 98s ok 85 - No vars should have been passed through to the engine 98s ok 86 - Engine should no be log only 98s ok 87 - The lock timeout should be set to the default 98s ok 88 - The target name should be as passed 98s ok 89 - Should have no warnings 98s ok 90 - Execute 98s ok 91 - undef and "all" should be passed to the engine deploy 98s ok 92 - undef and = should be passed to the engine revert 98s ok 93 - No vars should have been passed through to the engine 98s ok 94 - Should have no warnings 98s ok 95 - 'Object with to and variables' isa 'App::Sqitch::Command::rebase' 98s ok 96 - Execute again 98s ok 97 - Target name should be from option 98s ok 98 - Engine should be log_only 98s ok 99 - The lock timeout should be set to 30 98s ok 100 - Engine should verify 98s ok 101 - the common ancestor id should be passed to the engine revert 98s ok 102 - 'Object with to and variables' isa 'App::Sqitch::Command::rebase' 98s ok 103 - Execute again 98s ok 104 - Target name should be from option 98s ok 105 - Engine should be log_only 98s ok 106 - The lock timeout should be set to 30 98s ok 107 - Engine should verify 98s ok 108 - "bar", "tag", and 1 should be passed to the engine deploy 98s ok 109 - "foo" should be passed to the engine revert 98s ok 110 - Variables should have been passed to the engine twice 98s ok 111 - The revert vars should have been passed first 98s ok 112 - The deploy vars should have been next 98s ok 113 - Should have no warnings 98s ok 114 - Execute with three args 98s ok 115 - Target name should be from option 98s ok 116 - Engine should be log_only 98s ok 117 - The lock timeout should be set to 30 98s ok 118 - Engine should verify 98s ok 119 - "bar", "tag", and 1 should be passed to the engine deploy 98s ok 120 - "foo" should be passed to the engine revert 98s ok 121 - Variables should have been passed to the engine twice 98s ok 122 - The revert vars should have been passed first 98s ok 123 - The deploy vars should have been next 98s ok 124 - Should have two warnings 98s ok 125 - Should get an exception for unknown arg 98s ok 126 - Unknown arg ident should be "rebase" 98s ok 127 - Should get an exception for two unknown arg 98s ok 128 - Should get an exception for unknown args 98s ok 129 - Unknown args ident should be "rebase" 98s ok 130 - Should get an exception for two unknown args 98s ok 131 - Execute once more 98s ok 132 - "bar", "tag", and 1 should be passed to the engine deploy 98s ok 133 - Variables should have been passed to the engine twice 98s ok 134 - The revert vars should have been passed first 98s ok 135 - The deploy vars should have been next 98s ok 136 - Should have emitted info for non-fatal revert exception 98s ok 137 - Should rethrow confirm exception 98s ok 138 - Should rethrow fatal exception 98s ok 139 - Should rethrow unknown exception 98s 1..139 98s ok 98s t/revert.t .......... 98s ok 1 - require App::Sqitch::Command::revert; 98s ok 2 - The class (or class-like) 'App::Sqitch::Command::revert' isa 'App::Sqitch::Command' 98s ok 3 - App::Sqitch::Command::revert->can(...) 98s ok 4 - App::Sqitch::Command::revert does ContextCommand 98s ok 5 - App::Sqitch::Command::revert does ConnectingCommand 98s ok 6 - Options should be correct 98s ok 7 - Should parse options 98s ok 8 - Options should not conflict with core options 98s ok 9 - Should have empty default configuration with no config or opts 98s ok 10 - Should have set option 98s ok 11 - Should have no_prompt false, prompt_accept true 98s ok 12 - Should have no_prompt true, prompt_accept false 98s ok 13 - Should have no_prompt false again 98s ok 14 - Should have no_prompt false for false config 98s ok 15 - Should have no_prompt true with -y 98s ok 16 - 'new revert with target' isa 'App::Sqitch::Command::revert' 98s ok 17 - Should have target "foo" 98s ok 18 - to_change should be undef 98s ok 19 - modified should be false 98s ok 20 - An object of class 'App::Sqitch::Command::revert' isa 'App::Sqitch::Command::revert' 98s ok 21 - Should have undef default target 98s ok 22 - to_change should be undef 98s ok 23 - modified should be false 98s ok 24 - Should collect no variables 98s ok 25 - Should collect core vars 98s ok 26 - Should override core vars with deploy vars 98s ok 27 - Should override deploy vars with revert vars 98s ok 28 - Should override revert vars with engine vars 98s ok 29 - Should override engine vars with target vars 98s ok 30 - Should override target vars with --set variables 98s ok 31 - Execute to "@alpha" 98s ok 32 - Engine should not be log_only 98s ok 33 - The engine should have the default lock_timeout 98s ok 34 - "@alpha" should be passed to the engine 98s ok 35 - Should have no warnings 98s ok 36 - Execute 98s ok 37 - undef should be passed to the engine 98s ok 38 - No vars should have been passed through to the engine 98s ok 39 - Should still have no warnings 98s ok 40 - Execute to target 98s ok 41 - Engine should not be log_only 98s ok 42 - undef" should be passed to the engine 98s ok 43 - Target name should be as passed 98s ok 44 - Should have no warnings 98s ok 45 - Execute with change and target 98s ok 46 - Engine should not be log_only 98s ok 47 - "widgets" should be passed to the engine 98s ok 48 - Target name should be as passed 98s ok 49 - Should have no warnings 98s ok 50 - Execute with target and change 98s ok 51 - Engine should not be log_only 98s ok 52 - "widgets" should be passed to the engine 98s ok 53 - Target name should be as passed 98s ok 54 - Should have no warnings 98s ok 55 - 'Object with to and variables' isa 'App::Sqitch::Command::revert' 98s ok 56 - Execute again 98s ok 57 - Engine should be log_only 98s ok 58 - The lock timeout should be set to 30 98s ok 59 - "foo" and 1 should be passed to the engine 98s ok 60 - Vars should have been passed through to the engine 98s ok 61 - Target name should be from option 98s ok 62 - Should have no warnings 98s ok 63 - Execute with options and args 98s ok 64 - Engine should be log_only 98s ok 65 - The lock timeout should be set to 30 98s ok 66 - "foo" and 1 should be passed to the engine 98s ok 67 - Vars should have been passed through to the engine 98s ok 68 - Target name should be from option 98s ok 69 - Should have two warnings 98s ok 70 - Should get an exception for unknown arg 98s ok 71 - Unknown arg ident should be "revert" 98s ok 72 - Should get an exeption for two unknown arg 98s ok 73 - Should get an exception for unknown args 98s ok 74 - Unknown args ident should be "revert" 98s ok 75 - Should get an exeption for two unknown args 98s ok 76 - 'Object with to and variables' isa 'App::Sqitch::Command::revert' 98s ok 77 - modified should be true 98s ok 78 - Execute again 98s ok 79 - Target name should be from option 98s ok 80 - the common ancestor id should be passed to the engine revert 98s ok 81 - 'new revert with target' isa 'App::Sqitch::Command::revert' 98s ok 82 - In strict mode, cannot revert without a specified change 98s ok 83 - No change in strict mode ident should be "revert:strict" 98s ok 84 - Should have expected message for no changes in strict mode error 98s ok 85 - In strict mode, too many targets is fatal 98s ok 86 - Too many targets ident should be "revert:strict" 98s ok 87 - Should have expected message for too many targets error 98s 1..87 98s ok 99s t/rework.t .......... 99s 1..256 99s ok 1 - Load a sqitch object 99s ok 2 - 'rework command' isa 'App::Sqitch::Command::rework' 99s ok 3 - App::Sqitch::Command::rework->can(...) 99s ok 4 - App::Sqitch::Command::rework does ContextCommand 99s ok 5 - Options should be set up 99s ok 6 - Should parse options 99s ok 7 - Options should not conflict with core options 99s ok 8 - Should have default configuration with no config or opts 99s ok 9 - Should have get requires, conflicts, and note options 99s ok 10 - Grabs nothing from config 99s ok 11 - Load Sqitch project 99s ok 12 - 'rework command' isa 'App::Sqitch::Command::rework' 99s ok 13 - Coerces rework.open_editor from config string boolean 99s ok 14 - Requires should be an arrayref 99s ok 15 - Conflicts should be an arrayref 99s ok 16 - Note should be an arrayref 99s ok 17 - Should get an example for nonexistent change 99s ok 18 - Nonexistent change error ident should be "plan" 99s ok 19 - Fail message should say the step does not exist 99s ok 20 - Create another add with template_directory 99s ok 21 - test-rework/deploy/foo.sql does not exist 99s ok 22 - test-rework/revert/foo.sql does not exist 99s ok 23 - test-rework/verify/foo.sql does not exist 99s ok 24 - Execute with the --change option 99s ok 25 - test-rework/deploy/foo.sql exists 99s ok 26 - test-rework/revert/foo.sql exists 99s ok 27 - test-rework/verify/foo.sql exists 99s ok 28 - Get the "foo" change 99s ok 29 - Should get an example for duplicate change 99s ok 30 - Duplicate change error ident should be "plan" 99s ok 31 - Fail message should say a tag is needed 99s ok 32 - Tag it 99s ok 33 - test-rework/deploy/foo@alpha.sql does not exist 99s ok 34 - test-rework/revert/foo@alpha.sql does not exist 99s ok 35 - test-rework/verify/foo@alpha.sql does not exist 99s ok 36 - Rework "foo" 99s ok 37 - test-rework/deploy/foo.sql exists 99s ok 38 - test-rework/revert/foo.sql exists 99s ok 39 - test-rework/verify/foo.sql exists 99s ok 40 - test-rework/deploy/foo@alpha.sql exists 99s ok 41 - test-rework/revert/foo@alpha.sql exists 99s ok 42 - test-rework/verify/foo@alpha.sql exists 99s ok 43 - test-rework/deploy/foo@alpha.sql and test-rework/deploy/foo.sql contents are the same 99s ok 44 - test-rework/verify/foo@alpha.sql and test-rework/verify/foo.sql contents are the same 99s ok 45 - test-rework/revert/foo.sql and test-rework/deploy/foo.sql contents are the same 99s ok 46 - New revert should revert 99s ok 47 - It should have prompted for a note 99s ok 48 - Reload the plan file 99s ok 49 - Get the steps 99s ok 50 - Should have two steps 99s ok 51 - First step should be "foo" 99s ok 52 - Second step should also be "foo" 99s ok 53 - Reworked step should require the previous step 99s ok 54 - And the info message should suggest editing the old files 99s ok 55 - Debug should show file copying 99s ok 56 - Create another add with template_directory 99s ok 57 - test-rework/deploy/bar.sql does not exist 99s ok 58 - test-rework/revert/bar.sql does not exist 99s ok 59 - test-rework/verify/bar.sql does not exist 99s ok 60 - test-rework/deploy/bar.sql exists 99s ok 61 - test-rework/revert/bar.sql does not exist 99s ok 62 - test-rework/verify/bar.sql does not exist 99s ok 63 - Tag it with @beta 99s ok 64 - 'rework command with requirements and conflicts' isa 'App::Sqitch::Command::rework' 99s ok 65 - test-rework/deploy/bar@beta.sql does not exist 99s ok 66 - test-rework/revert/bar@beta.sql does not exist 99s ok 67 - test-rework/verify/bar@beta.sql does not exist 99s ok 68 - Rework "bar" 99s ok 69 - test-rework/deploy/bar.sql exists 99s ok 70 - test-rework/revert/bar.sql does not exist 99s ok 71 - test-rework/verify/bar.sql does not exist 99s ok 72 - test-rework/deploy/bar@beta.sql exists 99s ok 73 - test-rework/revert/bar@beta.sql does not exist 99s ok 74 - test-rework/verify/bar@beta.sql does not exist 99s ok 75 - It should have prompted for a note 99s ok 76 - Reload the plan file again 99s ok 77 - Get the steps 99s ok 78 - Should have four steps 99s ok 79 - First step should be "foo" 99s ok 80 - Second step should also be "foo" 99s ok 81 - First step should be "bar" 99s ok 82 - Second step should also be "bar" 99s ok 83 - Requires should have been passed to reworked change 99s ok 84 - Conflicts should have been passed to reworked change 99s ok 85 - Note should have been passed as comment 99s ok 86 - And the info message should show only the one file to modify 99s ok 87 - Should have debug oputput for missing files 99s ok 88 - Create another add with open_editor 99s ok 89 - Tag it 99s ok 90 - test-rework/deploy/bar@gamma.sql does not exist 99s ok 91 - test-rework/revert/bar@gamma.sql does not exist 99s ok 92 - test-rework/verify/bar@gamma.sql does not exist 99s ok 93 - Rework "bar" 99s ok 94 - test-rework/deploy/bar.sql exists 99s ok 95 - test-rework/deploy/bar@gamma.sql exists 99s ok 96 - test-rework/revert/bar@gamma.sql does not exist 99s ok 97 - test-rework/verify/bar@gamma.sql does not exist 99s ok 98 - It should have prompted to edit sql files 99s ok 99 - And the info message should suggest editing the old files 99s ok 100 - deploy/gadgets.sql exists 99s ok 101 - revert/gadgets.sql exists 99s ok 102 - verify/gadgets.sql exists 99s ok 103 - _reworked does not exist 99s ok 104 - _reworked/deploy/gadgets@foo.sql does not exist 99s ok 105 - _reworked/revert/gadgets@foo.sql does not exist 99s ok 106 - _reworked/verify/gadgets@foo.sql does not exist 99s ok 107 - Create another rework with custom reworked_dir config 99s ok 108 - Rework change "gadgets" 99s ok 109 - Get gadgets@HEAD from the plan 99s ok 110 - Get gadgets@foo from the plan 99s ok 111 - The two gadgets should be different changes 99s ok 112 - _reworked exists 99s ok 113 - deploy/gadgets.sql exists 99s ok 114 - revert/gadgets.sql exists 99s ok 115 - verify/gadgets.sql exists 99s ok 116 - _reworked/deploy/gadgets@foo.sql exists 99s ok 117 - _reworked/revert/gadgets@foo.sql exists 99s ok 118 - _reworked/verify/gadgets@foo.sql exists 99s ok 119 - Should have listed scripts in the note prompt 99s ok 120 - And the info message should suggest editing the old files 99s ok 121 - Debug should show directory creation and file copying 99s ok 122 - Create another rework with custom multiplan config 99s ok 123 - Should have three targets 99s ok 124 - Rework change "widgets" in all plans 99s ok 125 - Get widgets@HEAD from the pg plan 99s ok 126 - Get widgets@foo from the pg plan 99s ok 127 - The two pg widgets should be different changes 99s ok 128 - Get widgets@HEAD from the sqlite plan 99s ok 129 - Get widgets@foo from the sqlite plan 99s ok 130 - The two sqlite widgets should be different changes 99s ok 131 - Get widgets@HEAD from the mysql plan 99s ok 132 - Get widgets@foo from the mysql plan 99s ok 133 - The two mysql widgets should be different changes 99s ok 134 - pg/deploy/widgets.sql exists 99s ok 135 - pg/revert/widgets.sql exists 99s ok 136 - pg/verify/widgets.sql exists 99s ok 137 - pg/deploy/widgets@foo.sql exists 99s ok 138 - pg/revert/widgets@foo.sql exists 99s ok 139 - pg/verify/widgets@foo.sql exists 99s ok 140 - pg/deploy/widgets.sql and pg/deploy/widgets@foo.sql contents are the same 99s ok 141 - pg/verify/widgets.sql and pg/verify/widgets@foo.sql contents are the same 99s ok 142 - pg/revert/widgets.sql and pg/deploy/widgets@foo.sql contents are the same 99s ok 143 - sqlite/deploy/widgets.sql exists 99s ok 144 - sqlite/revert/widgets.sql exists 99s ok 145 - sqlite/verify/widgets.sql exists 99s ok 146 - sqlite/deploy/widgets@foo.sql exists 99s ok 147 - sqlite/revert/widgets@foo.sql exists 99s ok 148 - sqlite/verify/widgets@foo.sql exists 99s ok 149 - sqlite/deploy/widgets.sql and sqlite/deploy/widgets@foo.sql contents are the same 99s ok 150 - sqlite/verify/widgets.sql and sqlite/verify/widgets@foo.sql contents are the same 99s ok 151 - sqlite/revert/widgets.sql and sqlite/deploy/widgets@foo.sql contents are the same 99s ok 152 - mysql/deploy/widgets.sql exists 99s ok 153 - mysql/revert/widgets.sql exists 99s ok 154 - mysql/verify/widgets.sql exists 99s ok 155 - mysql/deploy/widgets@foo.sql exists 99s ok 156 - mysql/revert/widgets@foo.sql exists 99s ok 157 - mysql/verify/widgets@foo.sql exists 99s ok 158 - mysql/deploy/widgets.sql and mysql/deploy/widgets@foo.sql contents are the same 99s ok 159 - mysql/verify/widgets.sql and mysql/verify/widgets@foo.sql contents are the same 99s ok 160 - mysql/revert/widgets.sql and mysql/deploy/widgets@foo.sql contents are the same 99s ok 161 - Should have listed the files in the note prompt 99s ok 162 - And the info message should show the two files to modify 99s ok 163 - Should have debug oputput for all copied files 99s ok 164 - Should get an error for --all and a target arg 99s ok 165 - Mixed arguments error ident should be "rework" 99s ok 166 - Mixed arguments error message should be correct 99s ok 167 - Create yet another rework with custom multiplan config 99s ok 168 - Rework change "gadgets" in the sqlite plan 99s ok 169 - Should still have three targets 99s ok 170 - Get gadgets@HEAD from the pg plan 99s ok 171 - Get gadgets@foo from the pg plan 99s ok 172 - The two pg gadgets should be the same change 99s ok 173 - Get gadgets@HEAD from the mysql plan 99s ok 174 - Get gadgets@foo from the mysql plan 99s ok 175 - The two mysql gadgets should be the same change 99s ok 176 - Get gadgets@HEAD from the sqlite plan 99s ok 177 - Get gadgets@foo from the sqlite plan 99s ok 178 - The two sqlite gadgets should be different changes 99s ok 179 - mysql/deploy/gadgets.sql exists 99s ok 180 - mysql/revert/gadgets.sql exists 99s ok 181 - mysql/verify/gadgets.sql exists 99s ok 182 - sqlite/deploy/gadgets.sql exists 99s ok 183 - sqlite/revert/gadgets.sql exists 99s ok 184 - sqlite/verify/gadgets.sql exists 99s ok 185 - sqlite/deploy/gadgets@foo.sql exists 99s ok 186 - sqlite/revert/gadgets@foo.sql exists 99s ok 187 - sqlite/verify/gadgets@foo.sql exists 99s ok 188 - sqlite/deploy/gadgets.sql and sqlite/deploy/gadgets@foo.sql contents are the same 99s ok 189 - sqlite/verify/gadgets.sql and sqlite/verify/gadgets@foo.sql contents are the same 99s ok 190 - sqlite/revert/gadgets.sql and sqlite/deploy/gadgets@foo.sql contents are the same 99s ok 191 - pg/deploy/gadgets.sql exists 99s ok 192 - pg/revert/gadgets.sql exists 99s ok 193 - pg/verify/gadgets.sql exists 99s ok 194 - Should have listed SQLite scripts in the note prompt 99s ok 195 - Create another rework with custom multiplan config 99s ok 196 - Should have two targets 99s ok 197 - Targets should use the same plan file 99s ok 198 - Rework change "widgets" in all plans 99s ok 199 - Get widgets@HEAD from the plan 99s ok 200 - Get widgets@foo from the plan 99s ok 201 - The two widgets should be different changes 99s ok 202 - sqlite/deploy/widgets.sql exists 99s ok 203 - sqlite/revert/widgets.sql exists 99s ok 204 - sqlite/verify/widgets.sql exists 99s ok 205 - sqlite/deploy/widgets@foo.sql exists 99s ok 206 - sqlite/revert/widgets@foo.sql exists 99s ok 207 - sqlite/verify/widgets@foo.sql exists 99s ok 208 - sqlite/deploy/widgets.sql and sqlite/deploy/widgets@foo.sql contents are the same 99s ok 209 - sqlite/verify/widgets.sql and sqlite/verify/widgets@foo.sql contents are the same 99s ok 210 - sqlite/revert/widgets.sql and sqlite/deploy/widgets@foo.sql contents are the same 99s ok 211 - pg/deploy/widgets.sql exists 99s ok 212 - pg/revert/widgets.sql exists 99s ok 213 - pg/verify/widgets.sql exists 99s ok 214 - pg/deploy/widgets@foo.sql exists 99s ok 215 - pg/revert/widgets@foo.sql exists 99s ok 216 - pg/verify/widgets@foo.sql exists 99s ok 217 - pg/deploy/widgets.sql and pg/deploy/widgets@foo.sql contents are the same 99s ok 218 - pg/verify/widgets.sql and pg/verify/widgets@foo.sql contents are the same 99s ok 219 - pg/revert/widgets.sql and pg/deploy/widgets@foo.sql contents are the same 99s ok 220 - Should have listed all the files to edit in the note prompt 99s ok 221 - And the info message should show the two files to modify 99s ok 222 - Should have debug oputput for all copied files 99s ok 223 - Create another rework with custom multiplan config 99s ok 224 - Should have two targets 99s ok 225 - Rework change "widgets" in all plans 99s ok 226 - Get widgets@HEAD from the pg plan 99s ok 227 - Get widgets@foo from the pg plan 99s ok 228 - The two pg widgets should be different changes 99s ok 229 - Get widgets@HEAD from the sqlite plan 99s ok 230 - Get widgets@bar from the sqlite plan 99s ok 231 - The two sqlite widgets should be different changes 99s ok 232 - Should have listed all the files to edit in the note prompt 99s ok 233 - And the info message should show the two files to modify 99s ok 234 - Should have debug oputput for all copied files 99s ok 235 - Create another rework with custom multiplan config 99s ok 236 - Should have two targets 99s ok 237 - Rework change "widgets" in all plans 99s ok 238 - Get widgets@HEAD from the pg plan 99s ok 239 - Get widgets@foo from the pg plan 99s ok 240 - The two pg widgets should be different changes 99s ok 241 - Get widgets@HEAD from the sqlite plan 99s ok 242 - Get widgets@foo from the sqlite plan 99s ok 243 - The two sqlite widgets should be different changes 99s ok 244 - deploy/widgets.sql exists 99s ok 245 - revert/widgets.sql exists 99s ok 246 - verify/widgets.sql exists 99s ok 247 - deploy/widgets@foo.sql exists 99s ok 248 - revert/widgets@foo.sql exists 99s ok 249 - verify/widgets@foo.sql exists 99s ok 250 - deploy/widgets.sql and deploy/widgets@foo.sql contents are the same 99s ok 251 - verify/widgets.sql and verify/widgets@foo.sql contents are the same 99s ok 252 - revert/widgets.sql and deploy/widgets@foo.sql contents are the same 99s ok 253 - Should have listed the files to edit in the note prompt 99s ok 254 - And the info message should show the two files to modify 99s ok 255 - Should have debug oputput for all copied files 99s ok 256 - no warnings 99s ok 100s t/show.t ............ 100s ok 1 - require App::Sqitch::Command::show; 100s ok 2 - The class (or class-like) 'App::Sqitch::Command::show' isa 'App::Sqitch::Command' 100s ok 3 - App::Sqitch::Command::show->can(...) 100s ok 4 - App::Sqitch::Command::show does ContextCommand 100s ok 5 - Options should be correct 100s ok 6 - Should parse options 100s ok 7 - Options should not conflict with core options 100s ok 8 - An object of class 'App::Sqitch::Command::show' isa 'App::Sqitch::Command::show' 100s ok 9 - exists_only should be false by default 100s ok 10 - Construct with exists_only 100s ok 11 - exists_only should be set 100s ok 12 - Should get empty hash for no config or options 100s ok 13 - Should get exists_only => 1 for exist in options 100s ok 14 - Get a change 100s ok 15 - Find change by id 100s ok 16 - The change info should have been emitted 100s ok 17 - Find change by name 100s ok 18 - The change info should have been emitted again 100s ok 19 - Should get an error for an unknown change 100s ok 20 - Unknown change error ident should be "show" 100s ok 21 - Should get proper error for unknown change 100s ok 22 - Should return false for uknown change and exists_only 100s ok 23 - Nothing should have been emitted 100s ok 24 - Find change by tag id 100s ok 25 - The change info should have been emitted 100s ok 26 - Find change by tag 100s ok 27 - The change info should have been emitted 100s ok 28 - Run exists with ID 100s ok 29 - There should be no output 100s ok 30 - Find tag by id 100s ok 31 - The tag info should have been emitted 100s ok 32 - Find tag by id with exists_only 100s ok 33 - Nothing should have been emitted 100s ok 34 - Find tag by name 100s ok 35 - The tag info should have been emitted 100s ok 36 - Find tag by formatted name 100s ok 37 - The tag info should have been emitted 100s ok 38 - Should get error for non-existent tag 100s ok 39 - Unknown tag error ident should be "show" 100s ok 40 - Should get proper error for unknown tag 100s ok 41 - Should return false for non-existent tag and exists_only 100s ok 42 - Nothing should have been emitted 100s ok 43 - Should get error for non-existent tag ID 100s ok 44 - Unknown tag ID error ident should be "show" 100s ok 45 - Should get proper error for unknown tag ID 100s ok 46 - Show a deploy file 100s ok 47 - The deploy file should have been emitted 100s ok 48 - Show a deploy file with exists_only 100s ok 49 - Nothing should have been emitted 100s ok 50 - Show a revert file 100s ok 51 - The revert file should have been emitted 100s ok 52 - Should get error for nonexistent varify file 100s ok 53 - Nonexistent file error ident should be "show" 100s ok 54 - Should get proper error for nonexistent file 100s ok 55 - Should return false for nonexistent file 100s ok 56 - Nothing should have been emitted 100s ok 57 - Should get error for uknown type 100s ok 58 - Unknown type error ident should be "show" 100s ok 59 - Should get proper error for unknown type 100s ok 60 - Get a change 100s ok 61 - An object of class 'App::Sqitch::Command::show' isa 'App::Sqitch::Command::show' 100s ok 62 - Target should be set 100s ok 63 - Find change by id 100s ok 64 - The change info should have been emitted 100s ok 65 - Should get usage for missing params 100s ok 66 - Nothing should have been passed to usage 100s 1..66 100s ok 100s t/snowflake.t ....... 100s ok 1 - require App::Sqitch::Engine::snowflake; 100s ok 2 - config_vars should return three vars 100s ok 3 - An object of class 'App::Sqitch::Engine::snowflake' isa 'App::Sqitch::Engine::snowflake' 100s ok 4 - Username should be sysuser 100s ok 5 - Password should be undef 100s ok 6 - Key should be "snowflake" 100s ok 7 - Name should be "Snowflake" 100s ok 8 - Driver should be DBD::ODBC 100s ok 9 - Default client should be snowsql 100s ok 10 - client should default to snowsql 100s ok 11 - Registry default should be "sqitch" 100s ok 12 - DB URI should be filled in 100s ok 13 - Destination should be URI string 100s ok 14 - Registry destination should be the same as destination 100s ok 15 - Should build URI from environment 100s ok 16 - Should read username from environment 100s ok 17 - Should read password from environment 100s ok 18 - Should read account from host 100s ok 19 - Should read warehouse from environment 100s ok 20 - Should build URI host from account and region environment vars 100s ok 21 - Should read account and region from environment 100s ok 22 - Target password should be from SQITCH_PASSWORD 100s ok 23 - Should prefer password from SQITCH_PASSWORD 100s ok 24 - An object of class 'App::Sqitch::Engine::snowflake' isa 'App::Sqitch::Engine::snowflake' 100s ok 25 - Destination should be target name 100s ok 26 - Registry destination should be the same as destination 100s ok 27 - snowsql command should be std opts-only 100s ok 28 - An object of class 'App::Sqitch::Engine::snowflake' isa 'App::Sqitch::Engine::snowflake' 100s ok 29 - Set some variables 100s ok 30 - Variables should be passed to snowsql via --set 100s ok 31 - Target name should not read $SNOWSQL_DATABASE 100s ok 32 - Registry target should be the same as destination 100s ok 33 - Target name should not read $SNOWSQL_USER 100s ok 34 - Registry target should be the same as destination 100s ok 35 - Target name should not fall back on sysuser 100s ok 36 - Registry target should be the same as destination 100s ok 37 - Target name should be the default 100s ok 38 - Registry target should be the same as destination 100s ok 39 - Should have read config from file 100s ok 40 - Should have read config from file 100s ok 41 - Should have read config from file 100s ok 42 - Should read username fron snowsql config file 100s ok 43 - Should read password fron snowsql config file 100s ok 44 - Should read accountname fron snowsql config file 100s ok 45 - Should read dbname from snowsql config file 100s ok 46 - Should read warehousename fron snowsql config file 100s ok 47 - Should read rolename fron snowsql config file 100s ok 48 - Should derive host name from config file accounte name 100s ok 49 - Create another snowflake 100s ok 50 - Should extract account from URI 100s ok 51 - Should extract username from URI 100s ok 52 - Should extract password from URI 100s ok 53 - Should extract warehouse from URI 100s ok 54 - Should extract role from URI 100s ok 55 - registry should be as configured 100s ok 56 - URI should be as configured with full domain name 100s ok 57 - Destination should omit password 100s ok 58 - client should be as configured 100s ok 59 - snowsql command should be configured from URI config 100s ok 60 - Should have _listagg_format 100s ok 61 - Should have _ts_default 100s ok 62 - Should have _regex_op 100s ok 63 - Should have _simple_from 100s ok 64 - Should have _limit_default 100s ok 65 - Should have no table error 100s ok 66 - Should have no column error 100s ok 67 - Should now have table error 100s ok 68 - Still should have no column error 100s ok 69 - Should again have no table error 100s ok 70 - Should now have no column error 100s ok 71 - Unique constraints not supported by Snowflake 100s ok 72 - Should get limit and offset 100s ok 73 - Should get limit and offset when offset only 100s ok 74 - Should get only limit with 0 offset 100s ok 75 - Should get only limit with noa offset 100s ok 76 - Should get no limit or offset for 0s 100s ok 77 - Should get no limit or offset for no args 100s ok 78 - Should use regexp_substr IS NOT NULL for regex expr 100s ok 79 - initialized() should rethrow unexpected DB error 100s ok 80 - _cid should rethrow unexpected DB error 100s ok 81 - App::Sqitch::Engine::snowflake->can(...) 100s ok 82 - Create a snowflake with sqitch with options 100s ok 83 - SNOWSQL_PWD should be "s3cr3t" 100s ok 84 - Call _run 100s ok 85 - Command should be passed to capture() 100s ok 86 - SNOWSQL_PWD should be "s3cr3t" 100s ok 87 - Call _spool 100s ok 88 - Command should be passed to spool() 100s ok 89 - SNOWSQL_PWD should be "s3cr3t" 100s ok 90 - Call _capture 100s ok 91 - Command should be passed to capture() 100s ok 92 - SNOWSQL_PWD should be "s3cr3t" 100s ok 93 - Call _probe 100s ok 94 - Command should be passed to probe() 100s ok 95 - Create a snowflake with sqitch with no pw 100s ok 96 - SNOWSQL_PWD should not exist 100s ok 97 - Call _run again 100s ok 98 - Command should be passed to capture() again 100s ok 99 - SNOWSQL_PWD should not exist 100s ok 100 - Call _spool again 100s ok 101 - Command should be passed to spool() again 100s ok 102 - SNOWSQL_PWD should not exist 100s ok 103 - Call _capture again 100s ok 104 - Command should be passed to capture() again 100s ok 105 - SNOWSQL_PWD should not exist 100s ok 106 - Call _probe again 100s ok 107 - Command should be passed to probe() again 100s ok 108 - SNOWSQL_PWD should not exist 100s ok 109 - Run foo/bar.sql 100s ok 110 - File should be passed to capture() 100s ok 111 - SNOWSQL_PWD should not exist 100s ok 112 - Spool a "file handle" 100s ok 113 - Handle should be passed to spool() 100s ok 114 - SNOWSQL_PWD should not exist 100s ok 115 - Verify foo/bar.sql again 100s ok 116 - Verifile file should be passed to run() for high verbosity 100s ok 117 - App::Sqitch::Engine::snowflake->can('_ts2char_format') 100s ok 118 - _ts2char_format should work 100s ok 119 - App::Sqitch::Engine::snowflake->can('_dt') 100s ok 120 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 100s ok 121 - DateTime year should be set 100s ok 122 - DateTime month should be set 100s ok 123 - DateTime day should be set 100s ok 124 - DateTime hour should be set 100s ok 125 - DateTime minute should be set 100s ok 126 - DateTime second should be set 100s ok 127 - DateTime TZ should be set 100s ok 128 - Construct a datetime object 100s ok 129 - Should get ISO output from _char2ts 100s ok 130 - App::Sqitch::Engine::snowflake->can(...) 100s # Subtest: live database 100s 1..0 # SKIP Unable to live-test Snowflake engine: DBD::ODBC 1.59 required to manage Snowflake at t/snowflake.t line 560. 100s ok 131 # skip Unable to live-test Snowflake engine: DBD::ODBC 1.59 required to manage Snowflake at t/snowflake.t line 560. 100s # 100s 1..131 100s ok 102s t/sqlite.t .......... 102s ok 1 - require App::Sqitch::Engine::sqlite; 102s ok 2 - config_vars should return three vars 102s ok 3 - An object of class 'App::Sqitch::Engine::sqlite' isa 'App::Sqitch::Engine::sqlite' 102s ok 4 - Key should be "sqlite" 102s ok 5 - Name should be "SQLite" 102s ok 6 - client should default to sqlite3 102s ok 7 - dbname should be filled in 102s ok 8 - Target attribute should be specified target 102s ok 9 - Destination should be uri stringified 102s ok 10 - Registry target should be registry_uri stringified 102s ok 11 - sqlite3 command should have the proper opts 102s ok 12 - Create another sqlite 102s ok 13 - client should fall back on config 102s ok 14 - dbname should fall back on config 102s ok 15 - Target should be as specified 102s ok 16 - Destination should be configured target name 102s ok 17 - registry_uri should fall back on config 102s ok 18 - Registry target should be configured registry_uri stringified 102s ok 19 - Create another sqlite 102s ok 20 - dbname should fall back on config with no extension 102s ok 21 - Target should be as specified 102s ok 22 - Destination should be configured target name 102s ok 23 - registry_uri should fall back on config wth extension 102s ok 24 - Registry target should be configured registry_uri stringified 102s ok 25 - Create another sqlite 102s ok 26 - dbname should fall back on config with no extension 102s ok 27 - Target should be as specified 102s ok 28 - Destination should be configured target name 102s ok 29 - registry_uri should fall back on config wth extension 102s ok 30 - Registry target should be configured registry_uri without password 102s ok 31 - Create another sqlite 102s ok 32 - dbname should fall back on config with no extension 102s ok 33 - Target should be as specified 102s ok 34 - Destination should be configured target name 102s ok 35 - registry_uri should fall back on config wth extension 102s ok 36 - Registry target should be configured registry_uri stringified 102s ok 37 - Instantiate with a temporary database file 102s ok 38 - App::Sqitch::Engine::sqlite->can('_read') 102s ok 39 - _read() should work 102s ok 40 - _read() should SQL-quote the file name 102s ok 41 - _read() should SQL-quote quotes, too 102s ok 42 - App::Sqitch::Engine::sqlite->can(...) 102s ok 43 - Call _run 102s ok 44 - Command should be passed to run() 102s ok 45 - Call _spool 102s ok 46 - Command should be passed to spool() 102s ok 47 - Call _capture 102s ok 48 - Command should be passed to capture() 102s ok 49 - Run foo/bar.sql 102s ok 50 - File should be passed to run() 102s ok 51 - Spool a "file handle" 102s ok 52 - Handle should be passed to spool() 102s ok 53 - Verify foo/bar.sql 102s ok 54 - Verify file should be passed to capture() 102s ok 55 - Verify foo/bar.sql again 102s ok 56 - Verifile file should be passed to run() for high verbosity 102s ok 57 - App::Sqitch::Engine::sqlite->can('_ts2char_format') 102s ok 58 - _ts2char should work 102s ok 59 - App::Sqitch::Engine::sqlite->can('_dt') 102s ok 60 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 102s ok 61 - DateTime year should be set 102s ok 62 - DateTime month should be set 102s ok 63 - DateTime day should be set 102s ok 64 - DateTime hour should be set 102s ok 65 - DateTime minute should be set 102s ok 66 - DateTime second should be set 102s ok 67 - DateTime TZ should be set 102s ok 68 - Create command for v3.3.9 102s ok 69 - Should be okay with sqlite v3.3.9 102s ok 70 - Create command for v3.3.10 102s ok 71 - Should be okay with sqlite v3.3.10 102s ok 72 - Create command for v3.3.200 102s ok 73 - Should be okay with sqlite v3.3.200 102s ok 74 - Create command for v3.4.0 102s ok 75 - Should be okay with sqlite v3.4.0 102s ok 76 - Create command for v3.4.8 102s ok 77 - Should be okay with sqlite v3.4.8 102s ok 78 - Create command for v3.7.11 102s ok 79 - Should be okay with sqlite v3.7.11 102s ok 80 - Create command for v3.8.12 102s ok 81 - Should be okay with sqlite v3.8.12 102s ok 82 - Create command for v3.10.0 102s ok 83 - Should be okay with sqlite v3.10.0 102s ok 84 - Create command for v4.1.30 102s ok 85 - Should be okay with sqlite v4.1.30 102s ok 86 - Create command for v3.3.8 102s ok 87 - Should not be okay with v3.3.8 102s ok 88 - Should get ident "sqlite" for v3.3.8 102s ok 89 - Should get proper error message for v3.3.8 102s ok 90 - Create command for v3.3.0 102s ok 91 - Should not be okay with v3.3.0 102s ok 92 - Should get ident "sqlite" for v3.3.0 102s ok 93 - Should get proper error message for v3.3.0 102s ok 94 - Create command for v3.2.8 102s ok 95 - Should not be okay with v3.2.8 102s ok 96 - Should get ident "sqlite" for v3.2.8 102s ok 97 - Should get proper error message for v3.2.8 102s ok 98 - Create command for v3.0.1 102s ok 99 - Should not be okay with v3.0.1 102s ok 100 - Should get ident "sqlite" for v3.0.1 102s ok 101 - Should get proper error message for v3.0.1 102s ok 102 - Create command for v3.0.0 102s ok 103 - Should not be okay with v3.0.0 102s ok 104 - Should get ident "sqlite" for v3.0.0 102s ok 105 - Should get proper error message for v3.0.0 102s ok 106 - Create command for v2.8.1 102s ok 107 - Should not be okay with v2.8.1 102s ok 108 - Should get ident "sqlite" for v2.8.1 102s ok 109 - Should get proper error message for v2.8.1 102s ok 110 - Create command for v2.20.0 102s ok 111 - Should not be okay with v2.20.0 102s ok 112 - Should get ident "sqlite" for v2.20.0 102s ok 113 - Should get proper error message for v2.20.0 102s ok 114 - Create command for v1.0.0 102s ok 115 - Should not be okay with v1.0.0 102s ok 116 - Should get ident "sqlite" for v1.0.0 102s ok 117 - Should get proper error message for v1.0.0 102s ok 118 - Create command for v3.7.12 with newline 102s ok 119 - Should be okay with sqlite version v3.7.12 with newline 102s ok 120 - Should have no table error 102s ok 121 - Should have no column error 102s ok 122 - Should now have table error 102s ok 123 - Still should have no column error 102s ok 124 - Should again have no table error 102s ok 125 - Should now have no column error 102s ok 126 - App::Sqitch::Engine::sqlite->can(...) 102s # Subtest: live database 102s # Detected SQLite CLI 3.46.1 102s # Connected to SQLite 3.46.1 102s ok 1 - Engine instantiated 102s ok 2 - Database should not yet be initialized 102s ok 3 - Initialize the database 102s ok 4 - Database should now be initialized 102s ok 5 - Registry should not need upgrading 102s ok 6 - The release should be registered 102s ok 7 - Registry should need upgrading 102s ok 8 - Upgrade the registry 102s ok 9 - Should have info output for upgrade 102s ok 10 - Registry should no longer need upgrading 102s ok 11 - The release should be registered again 102s ok 12 - Create engine with alternate params 102s ok 13 - No init, earliest change 102s ok 14 - No init, no latest change 102s ok 15 - Database should no longer seem initialized 102s ok 16 - Initialize the database again 102s ok 17 - Database should be initialized again 102s ok 18 - Registry should not need upgrading 102s ok 19 - Still no earlist change 102s ok 20 - Still no latest changes 102s ok 21 - Should die on existing schema 102s ok 22 - Mode should be "engine" 102s ok 23 - And it should show the proper schema in the error message 102s ok 24 - Database error should be converted to Sqitch exception 102s ok 25 - Ident should be SQL error state 102s ok 26 - The message should be from the engine 102s ok 27 - The DBI error should be in preview_exception 102s ok 28 - Current state should be undef 102s ok 29 - Should have no current changes 102s ok 30 - Should have no current tags 102s ok 31 - Should have no events 102s ok 32 - The foreign_keys pragma should be enabled 102s ok 33 - App::Sqitch::Engine::sqlite->can('register_project') 102s ok 34 - App::Sqitch::Engine::sqlite->can('registered_projects') 102s ok 35 - Should have no registered projects 102s ok 36 - Register the project 102s ok 37 - Should have one registered project, "engine" 102s ok 38 - The project should be registered 102s ok 39 - Register the project again 102s ok 40 - Should still have one registered project, "engine" 102s ok 41 - The project should still be registered only once 102s ok 42 - Register a second project 102s ok 43 - Should have both registered projects 102s ok 44 - Both projects should now be registered 102s ok 45 - Should get an error for defined URI vs NULL registered URI 102s ok 46 - Defined URI error ident should be "engine" 102s ok 47 - Defined URI error message should be correct 102s ok 48 - Should get an error for different URIs 102s ok 49 - Different URI error ident should be "engine" 102s ok 50 - Different URI error message should be correct 102s ok 51 - Should get an error for NULL plan URI 102s ok 52 - NULL plan URI error ident should be "engine" 102s ok 53 - NULL plan uri error message should be correct 102s ok 54 - Register "groovy" again 102s ok 55 - Should still have two registered projects 102s ok 56 - Both projects should still be registered 102s ok 57 - Should get error for an project with the URI 102s ok 58 - Existing URI error ident should be "engine" 102s ok 59 - Exising URI error message should be correct 102s ok 60 - Should have "users" change 102s ok 61 - The change should not be deployed 102s ok 62 - The change should not be deployed 102s ok 63 - Deploy "users" change 102s ok 64 - The change should now be deployed 102s ok 65 - The change should now be deployed 102s ok 66 - Should get users ID for earliest change ID 102s ok 67 - Should get no change offset 1 from earliest 102s ok 68 - Should get users ID for latest change ID 102s ok 69 - Should get no change offset 1 from latest 102s ok 70 - A record should have been inserted into the changes table 102s ok 71 - Should have no dependencies 102s ok 72 - Change should not be required 102s ok 73 - A record should have been inserted into the events table 102s ok 74 - The tag should have been logged 102s ok 75 - name_for_change_id() should return the change name with tag 102s ok 76 - Get the current state 102s ok 77 - 'committed_at value' isa 'App::Sqitch::DateTime' 102s ok 78 - committed_at TZ should be UTC 102s ok 79 - The rest of the state should look right 102s ok 80 - Should have one current change 102s ok 81 - Should have no current chnages for nonexistent project 102s ok 82 - Should have one current tags 102s ok 83 - Should have no current tags for nonexistent project 102s ok 84 - Should have one event 102s ok 85 - Log new tags for "users" change 102s ok 86 - The tag should be the same 102s ok 87 - Should now have no tags 102s ok 88 - Log new tags for "users" change again 102s ok 89 - The tag should be back 102s ok 90 - Revert "users" change 102s ok 91 - The change should no longer be deployed 102s ok 92 - The change should no longer be deployed 102s ok 93 - Should get undef for earliest change 102s ok 94 - Should get undef for latest change 102s ok 95 - The record should have been deleted from the changes table 102s ok 96 - And the tag record should have been removed 102s ok 97 - Should still have no dependencies 102s ok 98 - Change should not be required 102s ok 99 - The revert event should have been logged 102s ok 100 - name_for_change_id() should no longer return the change name 102s ok 101 - Current state should be undef again 102s ok 102 - Should again have no current changes 102s ok 103 - Should again have no current tags 102s ok 104 - Should have two events 102s ok 105 - Fail "users" change 102s ok 106 - The change still should not be deployed 102s ok 107 - The change still should not be deployed 102s ok 108 - Should still get undef for earliest change 102s ok 109 - Should still get undef for latest change 102s ok 110 - Still should have not changes table record 102s ok 111 - Should still have no tag records 102s ok 112 - Should still have no dependencies 102s ok 113 - Change should not be required 102s ok 114 - The fail event should have been logged 102s ok 115 - Current state should still be undef 102s ok 116 - Should still have no current changes 102s ok 117 - Should still have no current tags 102s ok 118 - Should have 3 events 102s ok 119 - Deploy the change again 102s ok 120 - The tag again should be deployed 102s ok 121 - Should again get users ID for earliest change ID 102s ok 122 - Should still get no change offset 1 from earliest 102s ok 123 - Should again get users ID for latest change ID 102s ok 124 - Should still get no change offset 1 from latest 102s ok 125 - Get the second change 102s ok 126 - Only the first change should be deployed 102s ok 127 - Set resolved ID in required depend 102s ok 128 - Deploy second change 102s ok 129 - Should still get users ID for earliest change ID 102s ok 130 - Should get "widgets" offset 1 from earliest 102s ok 131 - Should get no change offset 2 from earliest 102s ok 132 - Should get "widgets" ID for latest change ID 102s ok 133 - Should get "user" offset 1 from earliest 102s ok 134 - Should get no change offset 2 from latest 102s ok 135 - Should have both changes and requires/conflcits deployed 102s ok 136 - Both changes should be deployed 102s ok 137 - Should still have no dependencies for "users" 102s ok 138 - Should have both dependencies for "widgets" 102s ok 139 - Change "users" should be required by "widgets" 102s ok 140 - Change "widgets" should not be required 102s ok 141 - The new change deploy should have been logged 102s ok 142 - name_for_change_id() should return name with symbolic tag @HEAD 102s ok 143 - Get the current state again 102s ok 144 - 'committed_at value' isa 'App::Sqitch::DateTime' 102s ok 145 - committed_at TZ should be UTC 102s ok 146 - The state should reference new change 102s ok 147 - Should have two current changes in reverse chronological order 102s ok 148 - Should again have one current tags 102s ok 149 - Should have 5 events 102s ok 150 - App::Sqitch::Engine::sqlite->can(...) 102s ok 151 - Should have two deployed changes 102s ok 152 - Should find one deployed since the first one 102s ok 153 - Should find none deployed since the second one 102s ok 154 - Should load change 1 102s ok 155 - Should load change 2 102s ok 156 - load() should return undef for uknown change ID 102s ok 157 - Should load change with no offset 102s ok 158 - Should load change with offset 0 102s ok 159 - Should get change ID with no offset 102s ok 160 - Should get change ID with offset 0 102s ok 161 - Should find change with offset 1 102s ok 162 - Should find change with offset -1 102s ok 163 - Should find undef change with offset 2 102s ok 164 - Should find change ID with offset 1 102s ok 165 - Should find change ID with offset -1 102s ok 166 - Should find undef change ID with offset 2 102s ok 167 - Revert "widgets" 102s ok 168 - Should now have one deployed change ID 102s ok 169 - Should find none deployed since that one 102s ok 170 - Log another change 102s ok 171 - Should have both deployed change IDs 102s ok 172 - Should find only the second after the first 102s ok 173 - Should find none after the second 102s ok 174 - Get the current state once more 102s ok 175 - 'committed_at value' isa 'App::Sqitch::DateTime' 102s ok 176 - committed_at TZ should be UTC 102s ok 177 - The new state should reference latest change 102s ok 178 - Should still have two current changes in reverse chronological order 102s ok 179 - Should still have one current tags 102s ok 180 - Should have 7 events 102s ok 181 - Get the "fred" change 102s ok 182 - Deploy "fred" 102s ok 183 - Get the "barney" change 102s ok 184 - Deploy "barney" 102s ok 185 - Earliest change should sill be "users" 102s ok 186 - Should still get "widgets" offset 1 from earliest 102s ok 187 - Should get "fred" offset 2 from earliest 102s ok 188 - Should get "barney" offset 3 from earliest 102s ok 189 - Latest change should be "barney" 102s ok 190 - Should get "fred" offset 1 from latest 102s ok 191 - Should get "widgets" offset 2 from latest 102s ok 192 - Should get "users" offset 3 from latest 102s ok 193 - Barney should be in the current state 102s ok 194 - Should have all four current changes in reverse chron order 102s ok 195 - Should now have three current tags in reverse chron order 102s ok 196 - Should have 9 events 102s ok 197 - The limit param to search_events should work 102s ok 198 - The offset param to search_events should work 102s ok 199 - The limit and offset params to search_events should work together 102s ok 200 - Should work to set direction "DESC" in search_events 102s ok 201 - Should work to set direction "desc" in search_events 102s ok 202 - Should work to set direction "descending" in search_events 102s ok 203 - Should work to set direction "ASC" in search_events 102s ok 204 - Should work to set direction "asc" in search_events 102s ok 205 - Should work to set direction "ascending" in search_events 102s ok 206 - Should catch exception for invalid search direction 102s ok 207 - Search direction error ident should be "DEV" 102s ok 208 - Search direction error message should be correct 102s ok 209 - The committer param to search_events should work 102s ok 210 - The committer param to search_events should work as a regex 102s ok 211 - Committer regex should fail to match with "Simpsonized$" 102s ok 212 - The change param to search_events should work with "users" 102s ok 213 - The change param to search_events should work with "widgets" 102s ok 214 - The change param to search_events should work with "fred" 102s ok 215 - The change param to search_events should return nothing for "fre$" 102s ok 216 - The change param to search_events should return match "(er|re)" 102s ok 217 - The event param should work with "deploy" 102s ok 218 - The event param should work with "revert" 102s ok 219 - The event param should work with "fail" 102s ok 220 - The event param should work with "revert" and "fail" 102s ok 221 - The event param should work with "deploy", "revert", and "fail" 102s ok 222 - The event param should return nothing for "foo" 102s ok 223 - Create external plan 102s ok 224 - Create external change 102s ok 225 - Log the external change 102s ok 226 - The project param to search_events should work 102s ok 227 - The project param to search_events should work with external project 102s ok 228 - The project param to search_events should match across projects 102s ok 229 - Project regex should fail to match with "nonexistent" 102s ok 230 - deployed_changes should not include external change 102s ok 231 - deployed_changes_since should not include external change 102s ok 232 - Earliest change should sill be "users" 102s ok 233 - Latest change ID should not be from external project 102s ok 234 - Should catch exception for invalid search param 102s ok 235 - Invalid search param error ident should be "DEV" 102s ok 236 - Invalid search param error message should be correct 102s ok 237 - Should catch exception for invalid search params 102s ok 238 - Invalid search params error ident should be "DEV" 102s ok 239 - Invalid search params error message should be correct 102s ok 240 - Get the "groovy" state 102s ok 241 - 'groofy committed_at value' isa 'App::Sqitch::DateTime' 102s ok 242 - groovy committed_at TZ should be UTC 102s ok 243 - The rest of the state should look right 102s ok 244 - Should find id for change_id only 102s ok 245 - Should find id for change only 102s ok 246 - Should find id for change + tag 102s ok 247 - Should find id for change@HEAD 102s ok 248 - Should find id for tag only 102s ok 249 - Should find id for ROOT 102s ok 250 - Should find id for HEAD 102s ok 251 - Should find id for project:ROOT 102s ok 252 - Should find id for project:HEAD 102s ok 253 - Should find nothing for unkonwn id 102s ok 254 - Should find nothing for unkonwn change 102s ok 255 - Should find nothing for unkonwn tag 102s ok 256 - Should find nothing for change + unkonwn tag 102s ok 257 - Should find nothing for change@ROOT 102s ok 258 - Should find nothing for change + different project 102s ok 259 - Should find nothing for tag + different project 102s ok 260 - Create internal id only change 102s ok 261 - Create internal id only dependency 102s ok 262 - Internal id only depencency should not be satisfied 102s ok 263 - Log internal id only change deployment 102s ok 264 - Internal id only depencency should now be satisfied 102s ok 265 - Log internal id only change reversion 102s ok 266 - Internal id only depencency should again be unsatisfied 102s ok 267 - Create external id only change 102s ok 268 - Create external id only dependency 102s ok 269 - External id only depencency should not be satisfied 102s ok 270 - Log external id only change deployment 102s ok 271 - External id only depencency should now be satisfied 102s ok 272 - Log external id only change reversion 102s ok 273 - External id only depencency should again be unsatisfied 102s ok 274 - Create internal change + tag change 102s ok 275 - Add tag internal @epsilon 102s ok 276 - Create internal change + tag dependency 102s ok 277 - Internal change + tag depencency should not be satisfied 102s ok 278 - Log internal change + tag change deployment 102s ok 279 - Internal change + tag depencency should now be satisfied 102s ok 280 - Log internal change + tag change reversion 102s ok 281 - Internal change + tag depencency should again be unsatisfied 102s ok 282 - Create external change + tag change 102s ok 283 - Add tag external @epsilon 102s ok 284 - Create external change + tag dependency 102s ok 285 - External change + tag depencency should not be satisfied 102s ok 286 - Log external change + tag change deployment 102s ok 287 - External change + tag depencency should now be satisfied 102s ok 288 - Log external change + tag change reversion 102s ok 289 - External change + tag depencency should again be unsatisfied 102s ok 290 - Create internal change only change 102s ok 291 - Create internal change only dependency 102s ok 292 - Internal change only depencency should not be satisfied 102s ok 293 - Log internal change only change deployment 102s ok 294 - Internal change only depencency should now be satisfied 102s ok 295 - Log internal change only change reversion 102s ok 296 - Internal change only depencency should again be unsatisfied 102s ok 297 - Create external change only change 102s ok 298 - Create external change only dependency 102s ok 299 - External change only depencency should not be satisfied 102s ok 300 - Log external change only change deployment 102s ok 301 - External change only depencency should now be satisfied 102s ok 302 - Log external change only change reversion 102s ok 303 - External change only depencency should again be unsatisfied 102s ok 304 - Create internal tag only change 102s ok 305 - Add tag internal @sigma 102s ok 306 - Create internal tag only dependency 102s ok 307 - Internal tag only depencency should not be satisfied 102s ok 308 - Log internal tag only change deployment 102s ok 309 - Internal tag only depencency should now be satisfied 102s ok 310 - Log internal tag only change reversion 102s ok 311 - Internal tag only depencency should again be unsatisfied 102s ok 312 - Create external tag only change 102s ok 313 - Add tag external @sigma 102s ok 314 - Create external tag only dependency 102s ok 315 - External tag only depencency should not be satisfied 102s ok 316 - Log external tag only change deployment 102s ok 317 - External tag only depencency should now be satisfied 102s ok 318 - Log external tag only change reversion 102s ok 319 - External tag only depencency should again be unsatisfied 102s ok 320 - Create another external change 102s ok 321 - Add tag external "meta" 102s ok 322 - Log the external change with tag 102s ok 323 - Delete the engine project tags 102s ok 324 - name_for_change_id() should return "widgets@HEAD" for its ID 102s ok 325 - name_for_change_id() should return "outside_in@meta" for its ID 102s ok 326 - Should have only the "engine" changes from current_changes 102s ok 327 - Should get only requestd project changes from current_changes 102s ok 328 - Should no longer have "engine" project tags 102s ok 329 - Should get groovy tags from current_chages() 102s ok 330 - Create change "hypercritial" in current plan 102s ok 331 - Log change "hyper" 102s ok 332 - No changes should require "hypercritical" 102s ok 333 - Change "hypercritical" should require "fred" 102s ok 334 - Change "hypercritical" should require "groovy:crazyman" 102s ok 335 - Create a third external change 102s ok 336 - Log change "elsewise" 102s ok 337 - Change "fred" should be required by changes in two projects 102s ok 338 - Change "groovy:crazyman" should be required by changes in two projects 102s ok 339 - App::Sqitch::Engine::sqlite->can(...) 102s ok 340 - Begin work 102s ok 341 - Should have started a transaction 102s ok 342 - Finish work 102s ok 343 - Should have committed a transaction 102s ok 344 - Begin work again 102s ok 345 - Should have started another transaction 102s ok 346 - Rollback work 102s ok 347 - Should have rolled back a transaction 102s ok 348 - Revert "elsewise" change 102s ok 349 - Revert "hypercritical" change 102s ok 350 - Revert "outside_in" change 102s ok 351 - Revert "crazyman" change 102s ok 352 - Revert "barney" change 102s ok 353 - Revert "fred" change 102s ok 354 - Revert "widgets" change 102s ok 355 - Revert "users" change 102s ok 356 - Deploy "users" change 102s ok 357 - Deploy "widgets" change 102s ok 358 - Deploy "fred" change 102s ok 359 - Deploy "barney" change 102s ok 360 - Deploy "crazyman" change 102s ok 361 - Deploy "outside_in" change 102s ok 362 - Deploy "hypercritical" change 102s ok 363 - Deploy "elsewise" change 102s ok 364 - Rework change "widgets" 102s ok 365 - It should have the same script hash 102s ok 366 - Should die on unchanged rework deploy script 102s ok 367 - Mode should be "engine" 102s ok 368 - And it should report the script is not unique 102s ok 369 - Should re-throw if not a unique erorr 102s ok 370 - Mode should be the error state 102s ok 371 - Should not have the underlying DB error 102s ok 372 - Back up deploy file 102s ok 373 - It should no longer have the same script hash 102s ok 374 - Deploy the reworked change 102s ok 375 - The deploy should not fail 102s ok 376 - Should die on ambiguous change spec 102s ok 377 - Mode should be "engine" 102s ok 378 - And it should report change lookup failure 102s ok 379 - Should have vented output for lookup failure 102s ok 380 - Should get ID for first of ambiguous change spec 102s ok 381 - Should now have first change id 102s ok 382 - change_id_for() should find the tag-qualified change ID 102s ok 383 - change_id_for() should find the reworked change ID @HEAD 102s ok 384 - Tag the plan "theta" 102s ok 385 - Log new tag 102s ok 386 - Rework change "widgets" again 102s ok 387 - Deploy the reworked change 102s ok 388 - Should not die deploying the reworked change 102s ok 389 - Should find id for beta instance of change 102s ok 390 - Should find id for HEAD instance of change 102s ok 391 - Should find id for second instance of change by tag 102s ok 392 - Update script hashes 102s ok 393 - Should have updated script hash for barney 102s ok 394 - Should have updated script hash for users 102s ok 395 - Should have updated script hash for widgets 102s ok 396 - Should have updated script hash for hypercritical 102s ok 397 - Should have updated script hash for widgets 102s ok 398 - Should have updated script hash for fred 102s ok 399 - Should have updated script hash for widgets 102s ok 400 - Change ID and script hash should be 859114 102s ok 401 - Change ID and script hash should be d0b54c 102s ok 402 - Change ID and script hash should be ff39b6 102s 1..402 102s ok 127 - live database 102s 1..127 102s ok 103s t/status.t .......... 103s 1..124 103s ok 1 - require App::Sqitch::Command::status; 103s ok 2 - Load a sqitch object 103s ok 3 - 'status command' isa 'App::Sqitch::Command::status' 103s ok 4 - App::Sqitch::Command::status->can(...) 103s ok 5 - App::Sqitch::Command::status does ContextCommand 103s ok 6 - App::Sqitch::Command::status does ConnectingCommand 103s ok 7 - Options should be correct 103s ok 8 - Should parse options 103s ok 9 - Options should not conflict with core options 103s ok 10 - Should have error for uninitialized database 103s ok 11 - Uninitialized database error ident should be "status" 103s ok 12 - Uninitialized database error message should be correct 103s ok 13 - 'new status command' isa 'App::Sqitch::Command::status' 103s ok 14 - Should have project "foo" 103s ok 15 - Load a sqitch object with SQLite 103s ok 16 - Create another status command 103s ok 17 - Should get an error for uninitialized db 103s ok 18 - Uninitialized db error ident should be "status" 103s ok 19 - Uninitialized db error message should be correct 103s ok 20 - Should get an error for no registered projects 103s ok 21 - No projects error ident should be "status" 103s ok 22 - No projects error message should be correct 103s ok 23 - Should get an error for too many projects 103s ok 24 - Too many projects error ident should be "status" 103s ok 25 - Too many projects error message should be correct 103s ok 26 - Should find single project 103s ok 27 103s ok 28 - 'another status command' isa 'App::Sqitch::Command::status' 103s ok 29 - Should have plan project 103s ok 30 - Default target should be undef 103s ok 31 - 'new status with target' isa 'App::Sqitch::Command::status' 103s ok 32 - Should have target "foo" 103s ok 33 - Should get empty hash for no config or options 103s ok 34 - Should get error for invalid date format in config 103s ok 35 - Invalid date format error ident should be "datetime" 103s ok 36 - Invalid date format error message should be correct 103s ok 37 - Should get bool values set from config 103s ok 38 - Should get error for invalid date format in optsions 103s ok 39 - Invalid date format error ident should be "status" 103s ok 40 - Invalid date format error message should be correct 103s ok 41 - Emit the state 103s ok 42 - The state should have been emitted 103s ok 43 - Emit the state with a tag 103s ok 44 - The state should have been emitted with a tag 103s ok 45 - Emit the state with multiple tags 103s ok 46 - The state should have been emitted with multiple tags 103s ok 47 - Create status command with an engine 103s ok 48 - Try to emit changes 103s ok 49 - Should have emitted no changes 103s ok 50 - Create change-showing status command 103s ok 51 - Emit changes again 103s ok 52 - Project "foo" should have been passed to current_changes 103s ok 53 - Should have emitted one change 103s ok 54 - Emit changes thrice 103s ok 55 - Project "foo" again should have been passed to current_changes 103s ok 56 - Should have emitted three changes 103s ok 57 - Try to emit tags 103s ok 58 - No tags should have been emitted 103s ok 59 - Create tag-showing status command 103s ok 60 - Try to emit tags again 103s ok 61 - Project "bar" should be passed to current_tags() 103s ok 62 - Should have emitted a header for no tags 103s ok 63 - Emit tags 103s ok 64 - Project "bar" should again be passed to current_tags() 103s ok 65 - Should have emitted one tag 103s ok 66 - Emit tags again 103s ok 67 - Project "bar" should once more be passed to current_tags() 103s ok 68 - Should have emitted all three tags 103s ok 69 - Create status command with actual plan command 103s ok 70 - Emit status 103s ok 71 - Should have a blank comment line 103s ok 72 - Should emit up-to-date output 103s ok 73 - Emit status again 103s ok 74 - Should have a blank comment line 103s ok 75 - Should emit list of undeployed changes 103s ok 76 - Emit status thrice 103s ok 77 - Should have a blank comment line 103s ok 78 - Should emit list of undeployed changes 103s ok 79 - Die on invalid ID 103s ok 80 - Invalid ID error ident should be "status" 103s ok 81 - The invalid ID error message should be correct 103s ok 82 - Should have a blank comment line 103s ok 83 - Should have a message about inability to find the change 103s ok 84 - Recreate status command 103s ok 85 - Execute 103s ok 86 - The state should have been emitted 103s ok 87 - Should emit list of undeployed changes 103s ok 88 - No target name should have been passed to Target 103s ok 89 - Execute with target arg 103s ok 90 - The state should have been emitted 103s ok 91 - Should emit list of undeployed changes 103s ok 92 - Name "db:sqlite:" should have been passed to Target 103s ok 93 - Create status command with a target option 103s ok 94 - Execute with target attribute 103s ok 95 - The state should have been emitted 103s ok 96 - Should emit list of undeployed changes 103s ok 97 - Name "db:sqlite:" should have been passed to Target 103s ok 98 - Execute with target attribute and arg 103s ok 99 - The state should have been emitted 103s ok 100 - Should emit list of undeployed changes 103s ok 101 - Name "db:sqlite:" should have been passed to Target 103s ok 102 - Should have got warning for two targets 103s ok 103 - Create status command with no target option 103s ok 104 - Execute with plan file 103s ok 105 - The state should have been emitted 103s ok 106 - Should emit list of undeployed changes 103s ok 107 - Name "db:sqlite:" should have been passed to Target 103s ok 108 - Should have no warnings 103s ok 109 - Create status command with specified project 103s ok 110 - Execute for specified project 103s ok 111 - The specified project state should have been emitted 103s ok 112 - Should emit unknown status message for specified project 103s ok 113 - Create status command with external project 103s ok 114 - Execute for external project 103s ok 115 - The external project state should have been emitted 103s ok 116 - Should emit unknown status message for external project 103s ok 117 - Die on no state 103s ok 118 - No state error ident should be "status" 103s ok 119 - No state error message should be correct 103s ok 120 - The "On database" comment should have been emitted 103s ok 121 - Should get an error for uninitialized db 103s ok 122 - Uninitialized db error ident should be "status" 103s ok 123 - Uninitialized db error message should be correct 103s ok 124 - no warnings 103s ok 103s t/tag.t ............. 103s 1..22 103s ok 1 - require App::Sqitch::Plan::Tag; 103s ok 2 - App::Sqitch::Plan::Tag->can(...) 103s ok 3 - An object of class 'App::Sqitch::Plan::Tag' isa 'App::Sqitch::Plan::Tag' 103s ok 4 - An object of class 'App::Sqitch::Plan::Tag' isa 'App::Sqitch::Plan::Line' 103s ok 5 - Name should format as "@foo" 103s ok 6 - 'Timestamp' isa 'App::Sqitch::DateTime' 103s ok 7 - Planner name shoudld default to user name 103s ok 8 - Planner email shoudld default to user email 103s ok 9 - Planner name and email should format properly 103s ok 10 - Should as_string to "@foo" + timstamp + planner 103s ok 11 - Tag info should incldue the URI 103s ok 12 - Create tag with more stuff 103s ok 13 - It should as_string correctly 103s ok 14 - Change should be correct 103s ok 15 - Planner name and email should format properly 103s ok 16 - Change should be for previous change 103s ok 17 - Tag info should include the change 103s ok 18 - Tag ID should be correct 103s ok 19 - Create tag with UTF-8 name 103s ok 20 - The name should be decoded text in info 103s ok 21 - Tag ID should be hahsed from encoded UTF-8 103s ok 22 - no warnings 103s ok 104s t/tag_cmd.t ......... 104s 1..86 104s ok 1 - Load a sqitch sqitch object 104s ok 2 - 'tag command' isa 'App::Sqitch::Command::tag' 104s ok 3 - The all attribute should be false by default 104s ok 4 - App::Sqitch::Command::tag->can(...) 104s ok 5 - App::Sqitch::Command::tag does ContextCommand 104s ok 6 - Should have note option 104s ok 7 - Should parse options 104s ok 8 - Options should not conflict with core options 104s ok 9 - Should get empty hash for no config or options 104s ok 10 - Should not have fetched boolean tag.all config 104s ok 11 - Should get populated hash for no all options 104s ok 12 - Should not have fetched boolean tag.all config 104s ok 13 - Add change "foo" 104s ok 14 - 'new tag command' isa 'App::Sqitch::Command::tag' 104s ok 15 - Tag @alpha 104s ok 16 - Reload plan 104s ok 17 - Should have tagged "foo" 104s ok 18 - New tag should have been written 104s ok 19 - New tag should have empty note 104s ok 20 - Should have requested a note 104s ok 21 - The info message should be correct 104s ok 22 - Execute with no arg 104s ok 23 - The one tag should have been listed 104s ok 24 - Should have requested a note 104s ok 25 - Add tag @beta 104s ok 26 - Execute with no arg again 104s ok 27 - Both tags should have been listed 104s ok 28 - Should have requested a note 104s ok 29 - 'tag command with note' isa 'App::Sqitch::Command::tag' 104s ok 30 - Tag @gamma 104s ok 31 - Gamma tag should be on change "foo" 104s ok 32 - Gamma tag should have note 104s ok 33 - Reload plan 104s ok 34 - Gamma tag should have been written 104s ok 35 - Written tag should have note 104s ok 36 - Should have requested a note 104s ok 37 - The gamma note should be correct 104s ok 38 - 'tag command with note' isa 'App::Sqitch::Command::tag' 104s ok 39 - Add change "bar" 104s ok 40 - Add change "baz" 104s ok 41 - Tag change "bar" with @delta 104s ok 42 - Reload plan 104s ok 43 - Should have tagged "bar" 104s ok 44 - Reload plan 104s ok 45 - New tag should have been written 104s ok 46 - New tag should have the proper note 104s ok 47 - Should have requested a note 104s ok 48 - The info message should be correct 104s ok 49 - 'tag command with change name' isa 'App::Sqitch::Command::tag' 104s ok 50 - Tag change "bar" with @zeta 104s ok 51 - Should have tagged "bar" with @zeta 104s ok 52 - Reload plan 104s ok 53 - Tag @zeta should have been written 104s ok 54 - Tag @zeta should have the proper note 104s ok 55 - Should have requested a note 104s ok 56 - The zeta info message should be correct 104s ok 57 - Load another sqitch sqitch object 104s ok 58 - 'another tag command' isa 'App::Sqitch::Command::tag' 104s ok 59 - Tag with @whacko 104s ok 60 - Should have tagged "baz" with @whacko 104s ok 61 - The whacko info message should be correct 104s ok 62 - Should get an error for --all and a target arg 104s ok 63 - Mixed arguments error ident should be "tag" 104s ok 64 - Mixed arguments error message should be correct 104s ok 65 - Load another sqitch sqitch object 104s ok 66 - 'yet another tag command' isa 'App::Sqitch::Command::tag' 104s ok 67 - Tag with @dubdub 104s ok 68 - Should have two targets 104s ok 69 - Should have tagged pg plan change "pg_change" with @dubdub 104s ok 70 - Should have tagged sqlite plan change "sqlite_change" with @dubdub 104s ok 71 - The dubdub info message should show both plans tagged 104s ok 72 - Tag sqlite plan with @shoot 104s ok 73 - Should still have two targets 104s ok 74 - Should not have tagged pg plan change "sqlite_change" with @shoot 104s ok 75 - Should have tagged sqlite plan change "sqlite_change" with @shoot 104s ok 76 - The shoot info message should the sqlite plan getting tagged 104s ok 77 - 'yet another tag command' isa 'App::Sqitch::Command::tag' 104s ok 78 - Tag with @huwah 104s ok 79 - Should still have two targets 104s ok 80 - Should have tagged pg plan change "pg_change" with @huwah 104s ok 81 - Should not have tagged sqlite plan change "sqlite_change" with @huwah 104s ok 82 - The huwah info message should the pg plan getting tagged 104s ok 83 - Should get an error for conflict with target name 104s ok 84 - Conflicting target error ident should be "tag" 104s ok 85 - Conflicting target error message should be correct 104s ok 86 - no warnings 104s ok 104s t/target.t .......... 104s ok 1 - use App::Sqitch::Target; 104s ok 2 - Load a sqitch sqitch object 104s ok 3 - An object of class 'App::Sqitch::Target' isa 'App::Sqitch::Target' 104s ok 4 - App::Sqitch::Target->can(...) 104s ok 5 - Name should be "db:sqlite:" 104s ok 6 - Target should be alias for name 104s ok 7 - URI should be "db:sqlite:" 104s ok 8 - Sqitch should be as passed 104s ok 9 - Engine key should be "sqlite" 104s ok 10 - 'Engine' isa 'App::Sqitch::Engine::sqlite' 104s ok 11 - Should have default registry 104s ok 12 - Should have default client 104s ok 13 - Should have default top_dir 104s ok 14 - Should have default deploy_dir 104s ok 15 - Should have default revert_dir 104s ok 16 - Should have default verify_dir 104s ok 17 - Should have default reworked_dir 104s ok 18 - Should have default reworked_deploy_dir 104s ok 19 - Should have default reworked_revert_dir 104s ok 20 - Should have default reworked_verify_dir 104s ok 21 - Should have default extension 104s ok 22 - Should have default plan file 104s ok 23 - 'Should get plan' isa 'App::Sqitch::Plan' 104s ok 24 - Plan file should be copied from Target 104s ok 25 - DSN should be from URI 104s ok 26 - Username should be from URI 104s ok 27 - Password should be from URI 104s ok 28 - Variables should be empty 104s ok 29 - An object of class 'App::Sqitch::Target' isa 'App::Sqitch::Target' 104s ok 30 - Username should be from environment variable 104s ok 31 - Password should be from environment variable 104s ok 32 - Should get error for missing params 104s ok 33 - 'Target with name and URI' isa 'App::Sqitch::Target' 104s ok 34 - Name should be "foo" 104s ok 35 - Target should be alias for name 104s ok 36 - URI should be set as passed 104s ok 37 - Sqitch should be as passed 104s ok 38 - Engine key should be "pg" 104s ok 39 - 'Engine' isa 'App::Sqitch::Engine::pg' 104s ok 40 - DSN should be from URI 104s ok 41 - Username should be from URI 104s ok 42 - Password should be from environment 104s ok 43 - Variables should be set 104s ok 44 - 'Target with URI' isa 'App::Sqitch::Target' 104s ok 45 - Name should be URI without password 104s ok 46 - Target should be alias for name 104s ok 47 - Engine key should be "pg" 104s ok 48 - 'Engine' isa 'App::Sqitch::Engine::pg' 104s ok 49 - DSN should be from URI 104s ok 50 - Username should be from URI 104s ok 51 - Password should be from URI 104s ok 52 - 'Target from environment' isa 'App::Sqitch::Target' 104s ok 53 - Name should be set 104s ok 54 - URI should be set 104s ok 55 - Engine key should be "pg" 104s ok 56 - 'Engine' isa 'App::Sqitch::Engine::pg' 104s ok 57 - 'Default target' isa 'App::Sqitch::Target' 104s ok 58 - Name should be "db:sqlite:" 104s ok 59 - URI should be "db:sqlite:" 104s ok 60 - Should have tried to get engine target 104s ok 61 - 'Default target' isa 'App::Sqitch::Target' 104s ok 62 - Name should be "db:mysql:" 104s ok 63 - URI should be "db:mysql" 104s ok 64 - Should have tried to get core.target, core.engine and then the target 104s ok 65 - 'Target with URI in name' isa 'App::Sqitch::Target' 104s ok 66 - Name should be "db:pg:" 104s ok 67 - URI should be "db:pg" 104s ok 68 - Should have fetched no config 104s ok 69 - Should have error for no engine in URI 104s ok 70 - Should have target ident 104s ok 71 - Should have message about no engine-less URI 104s ok 72 - Should have error for no engine or target 104s ok 73 - Should have target ident 104s ok 74 - Should have message about no configuration 104s ok 75 - Should again have error for no engine or target 104s ok 76 - Should have target ident again 104s ok 77 - Should have message about no specified engine 104s ok 78 - 'Engineless target' isa 'App::Sqitch::Target' 104s ok 79 - Name should be "db:" 104s ok 80 - URI should be "db:" 104s ok 81 - Should not have tried to get engine target 104s ok 82 - Sqitch should be as passed 104s ok 83 - Engine key should be undef 104s ok 84 - Should get exception for no engine 104s ok 85 - Should have engine ident 104s ok 86 - Should have message about no engine 104s ok 87 - Should have default top_dir 104s ok 88 - Should have default deploy_dir 104s ok 89 - Should have default revert_dir 104s ok 90 - Should have default verify_dir 104s ok 91 - Should have default reworked_dir 104s ok 92 - Should have default reworked_deploy_dir 104s ok 93 - Should have default reworked_revert_dir 104s ok 94 - Should have default reworked_verify_dir 104s ok 95 - Should have default extension 104s ok 96 - Should have default plan file 104s ok 97 - 'Should get plan' isa 'App::Sqitch::Plan' 104s ok 98 - Plan file should be copied from Target 104s ok 99 - DSN should be empty 104s ok 100 - Username should be undef 104s ok 101 - Password should be undef 104s ok 102 - 'Engine URI target' isa 'App::Sqitch::Target' 104s ok 103 - Name should be "db:pg://a@foo/scat" 104s ok 104 - URI should be "db:pg://a:b@foo/scat" 104s ok 105 - Nothing should have been fetched from config 104s ok 106 - 'Engine URI core.target' isa 'App::Sqitch::Target' 104s ok 107 - Name should be "db:pg://s@ack/shi" 104s ok 108 - URI should be "db:pg://s:b@ack/shi" 104s ok 109 - Should have fetched core.target from config 104s ok 110 - 'Engine name core.target' isa 'App::Sqitch::Target' 104s ok 111 - Name should be "shout" 104s ok 112 - URI should be "db:pg:w:e@we/bar" 104s ok 113 - Should have fetched target.shout.uri from config 104s ok 114 - Should have exception for unknown named target 104s ok 115 - Unknown target error ident should be "target" 104s ok 116 - Unknown target error message should be correct 104s ok 117 - Should have requested target URI from config 104s ok 118 - Should have requested target.foo section 104s ok 119 - Should have exception for URL-less named target 104s ok 120 - URL-less target error ident should be "target" 104s ok 121 - URL-less target error message should be correct 104s ok 122 - Should have requested target URI from config 104s ok 123 - Should have requested target.foo section 104s ok 124 - 'Named target' isa 'App::Sqitch::Target' 104s ok 125 - Name should be "foo" 104s ok 126 - URI should be "db:pg:foo" 104s ok 127 - Should have requested target URI from config 104s ok 128 - Should not have requested deprecated pg section 104s ok 129 - 'Engine named target' isa 'App::Sqitch::Target' 104s ok 130 - Name should be "foo" 104s ok 131 - URI should be "db:sqlite:foo" 104s ok 132 - Should have requested engine target and target URI from config 104s ok 133 - Should have requested no section 104s ok 134 - 'Environment-named target' isa 'App::Sqitch::Target' 104s ok 135 - Name should be "bar" 104s ok 136 - URI should be "db:sqlite:bar" 104s ok 137 - Should have requested target URI from config 104s ok 138 - Should have requested no sections 104s ok 139 - 'URI-munged target' isa 'App::Sqitch::Target' 104s ok 140 - Should have requested no section 104s ok 141 - Name should be passwordless stringified URI 104s ok 142 - URI should be tweaked by URI params 104s ok 143 - 'Foo target' isa 'App::Sqitch::Target' 104s ok 144 - Should have requested target URI 104s ok 145 - Should have fetched no section 104s ok 146 - Name should be as passed 104s ok 147 - URI should be tweaked by URI params 104s ok 148 - 'URI target' isa 'App::Sqitch::Target' 104s ok 149 - Should have requested no config 104s ok 150 - Should have fetched no section 104s ok 151 - Name should tweaked by URI params 104s ok 152 - URI should be tweaked by URI params 104s ok 153 - Registry should be "myreg" 104s ok 154 - Client should be "pgsql" 104s ok 155 - Plan file should be "my.plan" 104s ok 156 - 'Plan file' isa 'Path::Class::File' 104s ok 157 - 'Plan' isa 'App::Sqitch::Plan' 104s ok 158 - Plan should use target plan file 104s ok 159 - Top dir should be "top" 104s ok 160 - 'Top dir' isa 'Path::Class::Dir' 104s ok 161 - Deploy dir should be "dep" 104s ok 162 - 'Deploy dir' isa 'Path::Class::Dir' 104s ok 163 - Revert dir should be "rev" 104s ok 164 - 'Revert dir' isa 'Path::Class::Dir' 104s ok 165 - Verify dir should be "ver" 104s ok 166 - 'Verify dir' isa 'Path::Class::Dir' 104s ok 167 - Reworked dir should be "wrk" 104s ok 168 - 'Reworked dir' isa 'Path::Class::Dir' 104s ok 169 - Reworked deploy dir should be "rdep" 104s ok 170 - 'Reworked deploy dir' isa 'Path::Class::Dir' 104s ok 171 - Reworked revert dir should be "rrev" 104s ok 172 - 'Reworked revert dir' isa 'Path::Class::Dir' 104s ok 173 - Reworked verify dir should be "rver" 104s ok 174 - 'Reworked verify dir' isa 'Path::Class::Dir' 104s ok 175 - Extension should be "ddl" 104s ok 176 - Should have no variables 104s ok 177 - Registry should be "yoreg" 104s ok 178 - Client should be "mycli" 104s ok 179 - Plan file should be "pg.plan" 104s ok 180 - 'Plan file' isa 'Path::Class::File' 104s ok 181 - 'Plan' isa 'App::Sqitch::Plan' 104s ok 182 - Plan should use target plan file 104s ok 183 - Top dir should be "pg" 104s ok 184 - 'Top dir' isa 'Path::Class::Dir' 104s ok 185 - Deploy dir should be "pgdep" 104s ok 186 - 'Deploy dir' isa 'Path::Class::Dir' 104s ok 187 - Revert dir should be "pgrev" 104s ok 188 - 'Revert dir' isa 'Path::Class::Dir' 104s ok 189 - Verify dir should be "pgver" 104s ok 190 - 'Verify dir' isa 'Path::Class::Dir' 104s ok 191 - Reworked dir should be "pg/r" 104s ok 192 - 'Reworked dir' isa 'Path::Class::Dir' 104s ok 193 - Reworked deploy dir should be "pgrdep" 104s ok 194 - 'Reworked deploy dir' isa 'Path::Class::Dir' 104s ok 195 - Reworked revert dir should be "pgrrev" 104s ok 196 - 'Reworked revert dir' isa 'Path::Class::Dir' 104s ok 197 - Reworked verify dir should be "pgrver" 104s ok 198 - 'Reworked verify dir' isa 'Path::Class::Dir' 104s ok 199 - Extension should be "pgddl" 104s ok 200 - Variables should be read from engine.variables 104s ok 201 - Registry should be "fooreg" 104s ok 202 - Client should be "foocli" 104s ok 203 - Plan file should be "foo.plan" 104s ok 204 - 'Plan file' isa 'Path::Class::File' 104s ok 205 - 'Plan' isa 'App::Sqitch::Plan' 104s ok 206 - Plan should use target plan file 104s ok 207 - Top dir should be "foo" 104s ok 208 - 'Top dir' isa 'Path::Class::Dir' 104s ok 209 - Deploy dir should be "foodep" 104s ok 210 - 'Deploy dir' isa 'Path::Class::Dir' 104s ok 211 - Revert dir should be "foorev" 104s ok 212 - 'Revert dir' isa 'Path::Class::Dir' 104s ok 213 - Verify dir should be "foover" 104s ok 214 - 'Verify dir' isa 'Path::Class::Dir' 104s ok 215 - Reworked dir should be "foo/r" 104s ok 216 - 'Reworked dir' isa 'Path::Class::Dir' 104s ok 217 - Reworked deploy dir should be "foodepr" 104s ok 218 - 'Reworked deploy dir' isa 'Path::Class::Dir' 104s ok 219 - Reworked revert dir should be "foorevr" 104s ok 220 - 'Reworked revert dir' isa 'Path::Class::Dir' 104s ok 221 - Reworked verify dir should be "fooverr" 104s ok 222 - 'Reworked verify dir' isa 'Path::Class::Dir' 104s ok 223 - Extension should be "fooddl" 104s ok 224 - Variables should be read from engine., and target.variables 104s ok 225 - Load all targets 104s ok 226 - Should have one target 104s ok 227 - It should be the generic core engine target 104s ok 228 - Load all targets with core target config 104s ok 229 - Should again have one target 104s ok 230 - It should be the named target 104s ok 231 - It should have no variables 104s ok 232 - Load all targets with core engine and target config 104s ok 233 - Should still have one target 104s ok 234 - It should again be the named target 104s ok 235 - It should have no variables 104s ok 236 - Load all user conf targets 104s ok 237 - Should have four user targets 104s ok 238 - Should have all the engine targets 104s ok 239 - MySQL target should have engine variables 104s ok 240 - Load all target conf targets 104s ok 241 - Should have three targets 104s ok 242 - Core engine should be default target 104s ok 243 - Should have the core target plus the named targets 104s ok 244 - Load all local conf targets 104s ok 245 - Should have two local targets 104s ok 246 - Core engine should be lead to default target 104s ok 247 - Should have the core target plus the named targets 104s ok 248 - Load all engine conf targets 104s ok 249 - Should have three engine conf targets 104s ok 250 - Should have the engine and target targets 104s ok 251 - Overload all engine conf targets 104s ok 252 - Should again have three engine conf targets 104s ok 253 - Should have set dbname on all target URIs 104s ok 254 - Should have set the registry on all targets. 104s 1..254 104s ok 105s t/target_cmd.t ...... 105s 1..243 105s ok 1 - Load a sqitch sqitch object 105s ok 2 - 'Target command' isa 'App::Sqitch::Command::target' 105s ok 3 - 'Target command' isa 'App::Sqitch::Command' 105s ok 4 - App::Sqitch::Command::target->can(...) 105s ok 5 - App::Sqitch::Command::target does TargetConfigCommand 105s ok 6 - Options should be correct 105s ok 7 - Should parse options 105s ok 8 - Options should not conflict with core options 105s ok 9 - Default properties should be empty 105s ok 10 - configure() should ignore config file 105s ok 11 - Get full config 105s ok 12 - Should have properties 105s ok 13 - 'plan_file file attribute' isa 'Path::Class::File' 105s ok 14 - 'top_dir directory attribute' isa 'Path::Class::Dir' 105s ok 15 - 'reworked_dir directory attribute' isa 'Path::Class::Dir' 105s ok 16 - 'deploy_dir directory attribute' isa 'Path::Class::Dir' 105s ok 17 - 'reworked_deploy_dir directory attribute' isa 'Path::Class::Dir' 105s ok 18 - 'revert_dir directory attribute' isa 'Path::Class::Dir' 105s ok 19 - 'reworked_revert_dir directory attribute' isa 'Path::Class::Dir' 105s ok 20 - 'verify_dir directory attribute' isa 'Path::Class::Dir' 105s ok 21 - 'reworked_verify_dir directory attribute' isa 'Path::Class::Dir' 105s ok 22 - Should fail on invalid directory name 105s ok 23 - Invalid directory ident should be "target" 105s ok 24 - The invalid directory messsage should be correct 105s ok 25 - Should fail on invalid directory names 105s ok 26 - Invalid directories ident should be "target" 105s ok 27 - The invalid properties messsage should be correct 105s ok 28 - Run list() 105s ok 29 - The list of targets should have been output 105s ok 30 - 'Verbose engine' isa 'App::Sqitch::Command::target' 105s ok 31 - Run verbose list() 105s ok 32 - The list of targets and their URIs should have been output 105s ok 33 - No name arg to add() should yield usage 105s ok 34 - No args should be passed to usage 105s ok 35 - No URI arg to add() should yield usage 105s ok 36 - No args should be passed to usage 105s ok 37 - Should get error for existing target 105s ok 38 - Existing target error ident should be "target" 105s ok 39 - Existing target error message should be correct 105s ok 40 - dir deploy does not exist 105s ok 41 - dir revert does not exist 105s ok 42 - dir verify does not exist 105s ok 43 - Add target "test" 105s ok 44 - dir deploy exists 105s ok 45 - dir revert exists 105s ok 46 - dir verify exists 105s ok 47 - Target "test" URI should have been set 105s ok 48 - Target "test" should have no client set 105s ok 49 - Target "test" should have no registry set 105s ok 50 - Target "test" should have no top_dir set 105s ok 51 - Target "test" should have no plan_file set 105s ok 52 - Target "test" should have no deploy_dir set 105s ok 53 - Target "test" should have no revert_dir set 105s ok 54 - Target "test" should have no verify_dir set 105s ok 55 - Target "test" should have no extension set 105s ok 56 - Target "test" should have no variables set 105s ok 57 - 'Target with registry' isa 'App::Sqitch::Command::target' 105s ok 58 - Add target "withreg" 105s ok 59 - Target "withreg" URI should have been set 105s ok 60 - Target "withreg" registry should have been set 105s ok 61 - Target "test" should have no client set 105s ok 62 - Target "test" should have no top_dir set 105s ok 63 - Target "test" should have no plan_file set 105s ok 64 - Target "test" should have no deploy_dir set 105s ok 65 - Target "test" should have no revert_dir set 105s ok 66 - Target "test" should have no verify_dir set 105s ok 67 - Target "test" should have no extension set 105s ok 68 - Target "withreg" should have no variables set 105s ok 69 - 'Target with client' isa 'App::Sqitch::Command::target' 105s ok 70 - Add target "withcli" 105s ok 71 - Target "withcli" URI should have been set 105s ok 72 - Target "withcli" should have client set 105s ok 73 - Target "withcli" should have no registry set 105s ok 74 - Target "withcli" should have no top_dir set 105s ok 75 - Target "withcli" should have no plan_file set 105s ok 76 - Target "withcli" should have no deploy_dir set 105s ok 77 - Target "withcli" should have no revert_dir set 105s ok 78 - Target "withcli" should have no verify_dir set 105s ok 79 - Target "withcli" should have no extension set 105s ok 80 - Target "withcli" should have no variables set 105s ok 81 - 'Target with client and registry' isa 'App::Sqitch::Command::target' 105s ok 82 - Add target "withboth" 105s ok 83 - Target "withboth" URI should have been set 105s ok 84 - Target "withboth" registry should have been set 105s ok 85 - Target "withboth" should have client set 105s ok 86 - Target "withboth" should have no top_dir set 105s ok 87 - Target "withboth" should have no plan_file set 105s ok 88 - Target "withboth" should have no deploy_dir set 105s ok 89 - Target "withboth" should have no revert_dir set 105s ok 90 - Target "withboth" should have no verify_dir set 105s ok 91 - Target "withboth" should have no extension set 105s ok 92 - Target "withboth" should have variables set 105s ok 93 - 'Target with all properties' isa 'App::Sqitch::Command::target' 105s ok 94 - my.plan does not exist 105s ok 95 - dir top/deploy does not exist 105s ok 96 - dir top/revert does not exist 105s ok 97 - dir top/verify does not exist 105s ok 98 - dir r/d does not exist 105s ok 99 - dir r/revert does not exist 105s ok 100 - dir r/verify does not exist 105s ok 101 - Add target "withall" 105s ok 102 - dir top/deploy exists 105s ok 103 - dir top/revert exists 105s ok 104 - dir top/verify exists 105s ok 105 - dir r/d exists 105s ok 106 - dir r/revert exists 105s ok 107 - dir r/verify exists 105s ok 108 - my.plan exists 105s ok 109 - Target "withall" should have uri set 105s ok 110 - Target "withall" should have client set 105s ok 111 - Target "withall" should have verify_dir set 105s ok 112 - Target "withall" should have revert_dir set 105s ok 113 - Target "withall" should have reworked_deploy_dir set 105s ok 114 - Target "withall" should have variables set 105s ok 115 - Target "withall" should have plan_file set 105s ok 116 - Target "withall" should have top_dir set 105s ok 117 - Target "withall" should have registry set 105s ok 118 - Target "withall" should have extension set 105s ok 119 - Target "withall" should have reworked_dir set 105s ok 120 - Target "withall" should have deploy_dir set 105s ok 121 - 'Target with no properties' isa 'App::Sqitch::Command::target' 105s ok 122 - No name arg to alter() should yield usage 105s ok 123 - No args should be passed to usage 105s ok 124 - Should get error for missing target 105s ok 125 - Missing target error ident should be "target" 105s ok 126 - Missing target error message should be correct 105s ok 127 - Should get error for missing target with URI 105s ok 128 - Missing target with URI error ident should be "target" 105s ok 129 - Missing target error message should include URI 105s ok 130 - 'Target with more properties' isa 'App::Sqitch::Command::target' 105s ok 131 - Alter target "withall" 105s ok 132 - Target "withall" should have client set 105s ok 133 - Target "withall" should have verify_dir set 105s ok 134 - Target "withall" should have reworked_deploy_dir set 105s ok 135 - Target "withall" should have plan_file set 105s ok 136 - Target "withall" should have registry set 105s ok 137 - Target "withall" should have extension set 105s ok 138 - Target "withall" should have uri set 105s ok 139 - Target "withall" should have deploy_dir set 105s ok 140 - Target "withall" should have revert_dir set 105s ok 141 - Target "withall" should have merged variables set 105s ok 142 - Target "withall" should have top_dir set 105s ok 143 - Target "withall" should have reworked_dir set 105s ok 144 - 'Target with new top_dir property' isa 'App::Sqitch::Command::target' 105s ok 145 - dir big does not exist 105s ok 146 - dir big/deploy does not exist 105s ok 147 - dir big/revert does not exist 105s ok 148 - dir big/verify does not exist 105s ok 149 - Alter target "withall" 105s ok 150 - dir big exists 105s ok 151 - dir big/deploy exists 105s ok 152 - dir big/revert exists 105s ok 153 - dir big/verify exists 105s ok 154 - The withall top_dir should have been set 105s ok 155 - No name args to rename() should yield usage 105s ok 156 - No args should be passed to usage 105s ok 157 - No second arg to rename() should yield usage 105s ok 158 - No args should be passed to usage 105s ok 159 - Should get error for nonexistent target 105s ok 160 - Nonexistent target error ident should be "target" 105s ok 161 - Nonexistent target error message should be correct 105s ok 162 - Rename 105s ok 163 - Target "àlafois" should now be present 105s ok 164 - Target "àlafois" variables should now be present 105s ok 165 - Target "withboth" should no longer be present 105s ok 166 - Target "withboth" variables should be gone 105s ok 167 - Target "àlafois" should have variables 105s ok 168 - Should get error renaming a target with dependencies 105s ok 169 - Dependency target error ident should be "target" 105s ok 170 - Dependency target error message should be correct 105s ok 171 - Rename "test" 105s ok 172 - Target "funky" should now be present 105s ok 173 - Target "test" should no longer be present 105s ok 174 - Target "funcky" should have no variables 105s ok 175 - No name args to remove() should yield usage 105s ok 176 - No args should be passed to usage 105s ok 177 - Should get error for nonexistent target 105s ok 178 - Nonexistent target error ident should be "target" 105s ok 179 - Nonexistent target error message should be correct 105s ok 180 - Remove 105s ok 181 - Target "àlafois" should now be gone 105s ok 182 - Target "àlafois" variables should be gone, too 105s ok 183 - Should get error removing a target with dependencies 105s ok 184 - Dependency target error ident should be "target" 105s ok 185 - Dependency target error message should be correct 105s ok 186 - Remove "funky" 105s ok 187 - Target "funky" should now be gone 105s ok 188 - Run show() 105s ok 189 - Show with no names should emit the list of targets 105s ok 190 - Show dev 105s ok 191 - The "dev" target should have been shown 105s ok 192 - Show withcli 105s ok 193 - The "with_cli" target should have been shown 105s ok 194 - Show withreg 105s ok 195 - The "withreg" target should have been shown 105s ok 196 - Show withall 105s ok 197 - The "withall" target should have been shown with variables 105s ok 198 - Show three targets 105s ok 199 - All three targets should have been shown 105s ok 200 - 'Simple target' isa 'App::Sqitch::Command::target' 105s ok 201 - Execute undef 105s ok 202 - list() should have been called 105s ok 203 - Execute undef with args 105s ok 204 - list() should have been passed args 105s ok 205 - Execute list 105s ok 206 - list() should have been called 105s ok 207 - Execute list with args 105s ok 208 - list() should have been passed args 105s ok 209 - Execute add 105s ok 210 - add() should have been called 105s ok 211 - Execute add with args 105s ok 212 - add() should have been passed args 105s ok 213 - Execute remove 105s ok 214 - remove() should have been called 105s ok 215 - Execute remove with args 105s ok 216 - remove() should have been passed args 105s ok 217 - Execute rm 105s ok 218 - remove() should have been called 105s ok 219 - Execute rm with args 105s ok 220 - remove() should have been passed args 105s ok 221 - Execute rename 105s ok 222 - rename() should have been called 105s ok 223 - Execute rename with args 105s ok 224 - rename() should have been passed args 105s ok 225 - Execute show 105s ok 226 - show() should have been called 105s ok 227 - Execute show with args 105s ok 228 - show() should have been passed args 105s ok 229 - Should get an exception for a nonexistent action 105s ok 230 - Nonexistent action message should be passed to usage 105s ok 231 - Invalid URI rock should throw an error 105s ok 232 - Invalid URI rock error ident should be "target" 105s ok 233 - Invalid URI rock error message should be correct 105s ok 234 - Invalid URI https://www.google.com/ should throw an error 105s ok 235 - Invalid URI https://www.google.com/ error ident should be "target" 105s ok 236 - Invalid URI https://www.google.com/ error message should be correct 105s ok 237 - Engineless URI should throw an error 105s ok 238 - Engineless URI error ident should be "target" 105s ok 239 - Engineless URI error message should be correct 105s ok 240 - Unknown engine URI should throw an error 105s ok 241 - Unknown engine URI error ident should be "target" 105s ok 242 - Unknown engine URI error message should be correct 105s ok 243 - no warnings 105s ok 106s t/upgrade.t ......... 106s 1..25 106s ok 1 - require App::Sqitch::Command::upgrade; 106s ok 2 - Load a sqitch object 106s ok 3 - 'upgrade command' isa 'App::Sqitch::Command::upgrade' 106s ok 4 - App::Sqitch::Command::upgrade->can(...) 106s ok 5 - App::Sqitch::Command::upgrade does ConnectingCommand 106s ok 6 - Options should be correct 106s ok 7 - Should parse options 106s ok 8 - Options should not conflict with core options 106s ok 9 - Execute upgrade 106s ok 10 - Upgrade should not have been called 106s ok 11 - Should get output for up-to-date registry 106s ok 12 - Execute upgrade with target 106s ok 13 - Upgrade should again not have been called 106s ok 14 - Should get output for up-to-date registry with target 106s ok 15 - Execute upgrade with engine 106s ok 16 - Upgrade should again not have been called 106s ok 17 - Should get output for up-to-date registry with target 106s ok 18 - 'upgrade command with target' isa 'App::Sqitch::Command::upgrade' 106s ok 19 - Execute upgrade with target option 106s ok 20 - Upgrade should still not have been called 106s ok 21 - Should get output for up-to-date registry with target option 106s ok 22 - Execute upgrade with out-of-date registry 106s ok 23 - Upgrade should now have been called 106s ok 24 - Should get output for the upgrade 106s ok 25 - no warnings 106s ok 106s t/verify.t .......... 106s ok 1 - require App::Sqitch::Command::verify; 106s ok 2 - The class (or class-like) 'App::Sqitch::Command::verify' isa 'App::Sqitch::Command' 106s ok 3 - App::Sqitch::Command::verify->can(...) 106s ok 4 - App::Sqitch::Command::verify does ContextCommand 106s ok 5 - App::Sqitch::Command::verify does ConnectingCommand 106s ok 6 - Options should be correct 106s ok 7 - Should parse options 106s ok 8 - Options should not conflict with core options 106s ok 9 - Should have default configuration with no config or opts 106s ok 10 - Should have changes and variables from options 106s ok 11 - Should have no config if no options 106s ok 12 - 'new status with target' isa 'App::Sqitch::Command::verify' 106s ok 13 - Should have target "foo" 106s ok 14 - An object of class 'App::Sqitch::Command::verify' isa 'App::Sqitch::Command::verify' 106s ok 15 - Default target should be undef 106s ok 16 - from_change should be undef 106s ok 17 - to_change should be undef 106s ok 18 - Should collect no variables 106s ok 19 - Should collect core vars 106s ok 20 - Should override core vars with deploy vars 106s ok 21 - Should override deploy vars with verify vars 106s ok 22 - Should override verify vars with engine vars 106s ok 23 - Should override engine vars with target vars 106s ok 24 - Should override target vars with --set variables 106s ok 25 - Execute with nothing. 106s ok 26 - Two undefs should be passed to the engine 106s ok 27 - Should have no warnings 106s ok 28 - Execute from "@alpha" 106s ok 29 - "@alpha" and undef should be passed to the engine 106s ok 30 - Should again have no warnings 106s ok 31 - Execute from "@alpha" to "@beta" 106s ok 32 - "@alpha" and "@beat" should be passed to the engine 106s ok 33 - Should still have no warnings 106s ok 34 - 'Object with from, to, and variables' isa 'App::Sqitch::Command::verify' 106s ok 35 - Execute again 106s ok 36 - "foo" and "bar" should be passed to the engine 106s ok 37 - Vars should have been passed through to the engine 106s ok 38 - Still should have no warnings 106s ok 39 - Execute with command-line args 106s ok 40 - "foo" and "bar" should be passed to the engine 106s ok 41 - Vars should have been passed through to the engine 106s ok 42 - Should have warning about which roles are used 106s ok 43 - Execute with target arg 106s ok 44 - The target should have been passed to the engine 106s ok 45 - "foo" and "bar" should be passed to the engine 106s ok 46 - Vars should have been passed through to the engine 106s ok 47 - Should once again have no warnings 106s ok 48 - 'Object with target' isa 'App::Sqitch::Command::verify' 106s ok 49 - Execute with no args 106s ok 50 - The target option should have been passed to the engine 106s ok 51 - Undefs should be passed to the engine 106s ok 52 - No vars should have been passed through to the engine 106s ok 53 - Should once again have no warnings 106s ok 54 - Execute with two targegs and two changes 106s ok 55 - The target option should have been passed to the engine 106s ok 56 - The two changes should be passed to the engine 106s ok 57 - No vars should have been passed through to the engine 106s ok 58 - Should have warning about too many targets 106s ok 59 - Should get an exception for unknown arg 106s ok 60 - Unknown arg ident should be "verify" 106s ok 61 - Should get an exeption for two unknown arg 106s ok 62 - Should get an exception for unknown args 106s ok 63 - Unknown args ident should be "verify" 106s ok 64 - Should get an exeption for two unknown args 106s 1..64 106s ok 106s t/vertica.t ......... 106s ok 1 - require App::Sqitch::Engine::vertica; 106s ok 2 - config_vars should return three vars 106s ok 3 - An object of class 'App::Sqitch::Engine::vertica' isa 'App::Sqitch::Engine::vertica' 106s ok 4 - Key should be "vertica" 106s ok 5 - Name should be "Vertica" 106s ok 6 - client should default to vsql 106s ok 7 - registry default should be "sqitch" 106s ok 8 - DB URI should be "db:vertica:" 106s ok 9 - Destination should fall back on environment variables 106s ok 10 - Registry destination should be the same as destination 106s ok 11 - vsql command should be username and std opts-only 106s ok 12 - An object of class 'App::Sqitch::Engine::vertica' isa 'App::Sqitch::Engine::vertica' 106s ok 13 - Set some variables 106s ok 14 - Variables should be passed to vsql via --set 106s ok 15 - Target name should not read $VSQL_DATABASE 106s ok 16 - Registry target should be the same as destination 106s ok 17 - Should have username when VSQL_DATABASE set 106s ok 18 - Should have password when VSQL_DATABASE set 106s ok 19 - Target name should not read $VSQL_USER 106s ok 20 - Registry target should be the same as destination 106s ok 21 - Should have username when VSQL_USER set 106s ok 22 - Should have password when VSQL_USER set 106s ok 23 - Target name should not read $VSQL_PASSWORD 106s ok 24 - Registry target should be the same as destination 106s ok 25 - Should have username when VSQL_PASSWORD set 106s ok 26 - Should have password when VSQL_PASSWORD set 106s ok 27 - Target name should not fall back on sysuser 106s ok 28 - Registry target should be the same as destination 106s ok 29 - Target name should be the default 106s ok 30 - Registry target should be the same as destination 106s ok 31 - Create another vertica 106s ok 32 - client should be as configured 106s ok 33 - uri should be as configured 106s ok 34 - registry should be as configured 106s ok 35 - vsql command should be configured from URI config 106s ok 36 - App::Sqitch::Engine::vertica->can(...) 106s ok 37 - VSQL_PASSWORD should be "s3cr3t" 106s ok 38 - Call _run 106s ok 39 - Command should be passed to run() 106s ok 40 - VSQL_PASSWORD should be "s3cr3t" 106s ok 41 - Call _spool 106s ok 42 - Command should be passed to spool() 106s ok 43 - VSQL_PASSWORD should be "s3cr3t" 106s ok 44 - Call _capture 106s ok 45 - Command should be passed to capture() 106s ok 46 - VSQL_PASSWORD should be "s3cr3t" 106s ok 47 - Call _probe 106s ok 48 - Should have expected arguments to _probe 106s ok 49 - Create a vertica with sqitch with no pw 106s ok 50 - VSQL_PASSWORD should not exist 106s ok 51 - Call _run again 106s ok 52 - Command should be passed to run() again 106s ok 53 - VSQL_PASSWORD should not exist 106s ok 54 - Call _spool again 106s ok 55 - Command should be passed to spool() again 106s ok 56 - VSQL_PASSWORD should not exist 106s ok 57 - Call _capture again 106s ok 58 - Command should be passed to capture() again 106s ok 59 - VSQL_PASSWORD should not exist 106s ok 60 - Call _probe again 106s ok 61 - Should again have expected arguments to _probe 106s ok 62 - VSQL_PASSWORD should not exist 106s ok 63 - Run foo/bar.sql 106s ok 64 - File should be passed to run() 106s ok 65 - VSQL_PASSWORD should not exist 106s ok 66 - Spool a "file handle" 106s ok 67 - Handle should be passed to spool() 106s ok 68 - VSQL_PASSWORD should not exist 106s ok 69 - Verify foo/bar.sql 106s ok 70 - Verify file should be passed to capture() 106s ok 71 - VSQL_PASSWORD should not exist 106s ok 72 - Verify foo/bar.sql again 106s ok 73 - Verifile file should be passed to run() for high verbosity 106s ok 74 - App::Sqitch::Engine::vertica->can('_ts2char_format') 106s ok 75 - _ts2char_format should work 106s ok 76 - App::Sqitch::Engine::vertica->can('_dt') 106s ok 77 - 'Return value of _dt()' isa 'App::Sqitch::DateTime' 106s ok 78 - DateTime year should be set 106s ok 79 - DateTime month should be set 106s ok 80 - DateTime day should be set 106s ok 81 - DateTime hour should be set 106s ok 82 - DateTime minute should be set 106s ok 83 - DateTime second should be set 106s ok 84 - DateTime TZ should be set 106s ok 85 - Should have no listagg format 106s ok 86 - Should have no table error 106s ok 87 - Should have no column error 106s ok 88 - Should now have table error 106s ok 89 - Still should have no column error 106s ok 90 - Should again have no table error 106s ok 91 - Should now have no column error 106s ok 92 - current_state should propagate an error when it's not a column error 106s ok 93 - _cid should propagate an error when it's not a table or column error 106s ok 94 - App::Sqitch::Engine::vertica->can(...) 106s # Subtest: live database 106s 1..0 # SKIP Unable to live-test Vertica engine: DBD::ODBC 1.59 required to manage Vertica at t/vertica.t line 372. 106s ok 95 # skip Unable to live-test Vertica engine: DBD::ODBC 1.59 required to manage Vertica at t/vertica.t line 372. 106s # 106s 1..95 106s ok 107s t/win32.t ........... 107s 1..2 107s ok 1 - Should have "MSWin32" 107s ok 2 - CAN_OUTPUT_COLOR should be set properly 107s ok 107s t/x.t ............... 107s ok 1 - require App::Sqitch::X; 107s ok 2 - 'X object' isa 'App::Sqitch::X' 107s ok 3 - X object does Throwable 107s ok 4 - X object does StackTrace::Auto 107s ok 5 - Create X without ident 107s ok 6 - Default ident should be "DEV" 107s ok 7 - threw App::Sqitch::X 107s ok 8 - 'Thrown object' isa 'App::Sqitch::X' 107s ok 9 - Ident should be "basic" 107s ok 10 - The message should have been passed 107s ok 11 - It should have a stack trace 107s ok 12 - Exit val should be 2 107s ok 13 - The trace should start in this file 107s ok 14 - threw App::Sqitch::X 107s ok 15 - 'Thrown object' isa 'App::Sqitch::X' 107s ok 16 - Ident should be "DEV" 107s ok 17 - The message should have been passed 107s ok 18 - Exit val should again be 2 107s ok 19 - Previous exception should have been passed 107s ok 20 - threw App::Sqitch::X 107s ok 21 - 'Thrown object' isa 'App::Sqitch::X' 107s ok 22 - The params should have been passed 107s ok 23 - Exit val should be 1 107s ok 24 - Stringification should work 107s ok 25 - Stringification should work 107s ok 26 - Should be an "io" exception 107s ok 27 - Should catch error called via &goto 107s 1..27 107s ok 107s All tests successful. 107s Files=50, Tests=7508, 26 wallclock secs ( 0.42 usr 0.13 sys + 19.37 cusr 4.46 csys = 24.38 CPU) 107s Result: PASS 107s autopkgtest [17:02:24]: test autodep8-perl-build-deps: -----------------------] 107s autopkgtest [17:02:24]: test autodep8-perl-build-deps: - - - - - - - - - - results - - - - - - - - - - 107s autodep8-perl-build-deps PASS 107s autopkgtest [17:02:24]: test autodep8-perl: preparing testbed 1229s autopkgtest [17:21:06]: testbed dpkg architecture: amd64 1229s autopkgtest [17:21:06]: testbed apt version: 2.9.8 1229s autopkgtest [17:21:06]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1229s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 1229s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 1229s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [2480 kB] 1229s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [40.4 kB] 1229s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [175 kB] 1229s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [163 kB] 1229s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [235 kB] 1229s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 1229s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [928 kB] 1230s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [1856 kB] 1230s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [68.4 kB] 1230s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [22.0 kB] 1230s Fetched 6082 kB in 1s (10.6 MB/s) 1230s Reading package lists... 1231s Reading package lists... 1232s Building dependency tree... 1232s Reading state information... 1232s Calculating upgrade... 1232s The following packages will be upgraded: 1232s python3-zipp 1232s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1232s Need to get 10.1 kB of archives. 1232s After this operation, 2048 B disk space will be freed. 1232s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-zipp all 3.20.2-1 [10.1 kB] 1233s Fetched 10.1 kB in 0s (560 kB/s) 1233s (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 ... 75323 files and directories currently installed.) 1233s Preparing to unpack .../python3-zipp_3.20.2-1_all.deb ... 1233s Unpacking python3-zipp (3.20.2-1) over (3.20.0-1) ... 1233s Setting up python3-zipp (3.20.2-1) ... 1233s Reading package lists... 1234s Building dependency tree... 1234s Reading state information... 1234s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1234s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 1234s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1234s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1234s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1236s Reading package lists... 1236s Reading package lists... 1236s Building dependency tree... 1236s Reading state information... 1236s Calculating upgrade... 1236s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1236s Reading package lists... 1237s Building dependency tree... 1237s Reading state information... 1237s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1238s Reading package lists... 1238s Building dependency tree... 1238s Reading state information... 1239s Starting pkgProblemResolver with broken count: 0 1239s Starting 2 pkgProblemResolver with broken count: 0 1239s Done 1239s The following additional packages will be installed: 1239s autodep8 dctrl-tools libalgorithm-backoff-perl libalgorithm-c3-perl 1239s libb-hooks-endofscope-perl libb-hooks-op-check-perl libclass-c3-perl 1239s libclass-data-inheritable-perl libclass-inspector-perl 1239s libclass-method-modifiers-perl libclass-singleton-perl 1239s libclass-xsaccessor-perl libclone-choose-perl libclone-perl 1239s libconfig-gitlike-perl libdata-optlist-perl libdatetime-locale-perl 1239s libdatetime-perl libdatetime-timezone-perl libdbd-pg-perl libdbi-perl 1239s libdevel-callchecker-perl libdevel-stacktrace-perl 1239s libdynaloader-functions-perl libencode-locale-perl libeval-closure-perl 1239s libexception-class-perl libexporter-tiny-perl libfile-sharedir-perl 1239s libfile-which-perl libhash-merge-perl libimport-into-perl libintl-perl 1239s libio-pager-perl libipc-run3-perl libipc-system-simple-perl 1239s liblist-moreutils-perl liblist-moreutils-xs-perl 1239s libmodule-implementation-perl libmodule-runtime-perl libmoo-perl 1239s libmoox-types-mooselike-perl libmro-compat-perl libnamespace-autoclean-perl 1239s libnamespace-clean-perl libpackage-stash-perl libparams-classify-perl 1239s libparams-util-perl libparams-validationcompiler-perl libpath-class-perl 1239s libperlio-utf8-strict-perl libpod-parser-perl libpq5 librole-tiny-perl 1239s libspecio-perl libstring-formatter-perl libstring-shellquote-perl 1239s libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl 1239s libsub-install-perl libsub-name-perl libsub-quote-perl libtemplate-tiny-perl 1239s libterm-readkey-perl libthrowable-perl libtry-tiny-perl libtype-tiny-perl 1239s liburi-db-perl liburi-nested-perl liburi-perl libvariable-magic-perl 1239s libxstring-perl pkg-perl-autopkgtest postgresql-client postgresql-client-16 1239s postgresql-client-common sqitch 1239s Suggested packages: 1239s debtags libmldbm-perl libnet-daemon-perl libsql-statement-perl 1239s libmoox-types-mooselike-numeric-perl libmoox-types-setobject-perl 1239s libscalar-number-perl libtest-fatal-perl libdevel-lexalias-perl 1239s libbusiness-isbn-perl libmime-base32-perl libregexp-ipv6-perl libwww-perl 1239s postgresql-16 postgresql-doc-16 1239s Recommended packages: 1239s libclass-c3-xs-perl libdevel-lexalias-perl libintl-xs-perl 1239s libpackage-stash-xs-perl libref-util-perl libtype-tiny-xs-perl 1239s libtemplate-perl 1239s The following NEW packages will be installed: 1239s autodep8 autopkgtest-satdep dctrl-tools libalgorithm-backoff-perl 1239s libalgorithm-c3-perl libb-hooks-endofscope-perl libb-hooks-op-check-perl 1239s libclass-c3-perl libclass-data-inheritable-perl libclass-inspector-perl 1239s libclass-method-modifiers-perl libclass-singleton-perl 1239s libclass-xsaccessor-perl libclone-choose-perl libclone-perl 1239s libconfig-gitlike-perl libdata-optlist-perl libdatetime-locale-perl 1239s libdatetime-perl libdatetime-timezone-perl libdbd-pg-perl libdbi-perl 1239s libdevel-callchecker-perl libdevel-stacktrace-perl 1239s libdynaloader-functions-perl libencode-locale-perl libeval-closure-perl 1239s libexception-class-perl libexporter-tiny-perl libfile-sharedir-perl 1239s libfile-which-perl libhash-merge-perl libimport-into-perl libintl-perl 1239s libio-pager-perl libipc-run3-perl libipc-system-simple-perl 1239s liblist-moreutils-perl liblist-moreutils-xs-perl 1239s libmodule-implementation-perl libmodule-runtime-perl libmoo-perl 1239s libmoox-types-mooselike-perl libmro-compat-perl libnamespace-autoclean-perl 1239s libnamespace-clean-perl libpackage-stash-perl libparams-classify-perl 1239s libparams-util-perl libparams-validationcompiler-perl libpath-class-perl 1239s libperlio-utf8-strict-perl libpod-parser-perl libpq5 librole-tiny-perl 1239s libspecio-perl libstring-formatter-perl libstring-shellquote-perl 1239s libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl 1239s libsub-install-perl libsub-name-perl libsub-quote-perl libtemplate-tiny-perl 1239s libterm-readkey-perl libthrowable-perl libtry-tiny-perl libtype-tiny-perl 1239s liburi-db-perl liburi-nested-perl liburi-perl libvariable-magic-perl 1239s libxstring-perl pkg-perl-autopkgtest postgresql-client postgresql-client-16 1239s postgresql-client-common sqitch 1239s 0 upgraded, 79 newly installed, 0 to remove and 0 not upgraded. 1239s Need to get 9432 kB/9433 kB of archives. 1239s After this operation, 53.0 MB of additional disk space will be used. 1239s Get:1 /tmp/autopkgtest.vsPEeX/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [720 B] 1239s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 dctrl-tools amd64 2.24-3build3 [106 kB] 1239s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 autodep8 all 0.28+nmu1ubuntu1 [13.7 kB] 1239s Get:4 http://ftpmaster.internal/ubuntu plucky/universe amd64 libalgorithm-backoff-perl all 0.010-1 [37.3 kB] 1239s Get:5 http://ftpmaster.internal/ubuntu plucky/universe amd64 libalgorithm-c3-perl all 0.11-2 [10.2 kB] 1239s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libb-hooks-op-check-perl amd64 0.22-3build2 [9624 B] 1239s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libdynaloader-functions-perl all 0.004-1 [11.4 kB] 1239s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libdevel-callchecker-perl amd64 0.009-1build1 [14.2 kB] 1239s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libparams-classify-perl amd64 0.015-2build6 [20.1 kB] 1239s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libmodule-runtime-perl all 0.016-2 [16.4 kB] 1239s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libtry-tiny-perl all 0.31-2 [20.8 kB] 1239s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libmodule-implementation-perl all 0.09-2 [12.0 kB] 1239s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-exporter-progressive-perl all 0.001013-3 [6718 B] 1239s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libvariable-magic-perl amd64 0.64-1build1 [36.3 kB] 1239s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libb-hooks-endofscope-perl all 0.28-1 [15.8 kB] 1239s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 libclass-c3-perl all 0.35-2 [18.4 kB] 1239s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-data-inheritable-perl all 0.08-3 [8084 B] 1239s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-inspector-perl all 1.36-3 [15.4 kB] 1239s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-method-modifiers-perl all 2.15-1 [16.1 kB] 1239s Get:20 http://ftpmaster.internal/ubuntu plucky/universe amd64 libclass-singleton-perl all 1.6-2 [11.5 kB] 1239s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libclass-xsaccessor-perl amd64 1.19-4build5 [33.0 kB] 1239s Get:22 http://ftpmaster.internal/ubuntu plucky/universe amd64 libclone-choose-perl all 0.010-2 [7738 B] 1239s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libclone-perl amd64 0.47-1 [10.7 kB] 1239s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libimport-into-perl all 1.002005-2 [10.7 kB] 1239s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 librole-tiny-perl all 2.002004-1 [16.3 kB] 1239s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-quote-perl all 2.006008-1ubuntu1 [20.7 kB] 1239s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libmoo-perl all 2.005005-1 [47.4 kB] 1239s Get:28 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmoox-types-mooselike-perl all 0.29-2 [16.7 kB] 1239s Get:29 http://ftpmaster.internal/ubuntu plucky/universe amd64 libconfig-gitlike-perl all 1.18-2 [33.8 kB] 1239s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 libparams-util-perl amd64 1.102-3build1 [21.4 kB] 1239s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-install-perl all 0.929-1 [9764 B] 1239s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 libdata-optlist-perl all 0.114-1 [9708 B] 1239s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 libdbi-perl amd64 1.645-1 [828 kB] 1239s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 libpq5 amd64 17.0-1 [249 kB] 1239s Get:35 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdbd-pg-perl amd64 3.18.0-1build4 [192 kB] 1239s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libdevel-stacktrace-perl all 2.0500-1 [22.1 kB] 1239s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 libencode-locale-perl all 1.05-3 [11.6 kB] 1239s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-exporter-perl all 0.990-1 [49.0 kB] 1239s Get:39 http://ftpmaster.internal/ubuntu plucky/universe amd64 libeval-closure-perl all 0.14-3 [10.1 kB] 1239s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 libexception-class-perl all 1.45-1 [28.6 kB] 1239s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 libexporter-tiny-perl all 1.006002-1 [36.8 kB] 1239s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 libfile-sharedir-perl all 1.118-3 [14.0 kB] 1239s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 libfile-which-perl all 1.27-2 [12.5 kB] 1239s Get:44 http://ftpmaster.internal/ubuntu plucky/universe amd64 libhash-merge-perl all 0.302-1 [13.0 kB] 1239s Get:45 http://ftpmaster.internal/ubuntu plucky/main amd64 libintl-perl all 1.33-1build4 [703 kB] 1239s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 libterm-readkey-perl amd64 2.38-2build5 [23.2 kB] 1239s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 libio-pager-perl all 2.10-1 [50.5 kB] 1239s Get:48 http://ftpmaster.internal/ubuntu plucky/main amd64 libipc-system-simple-perl all 1.30-2 [22.3 kB] 1239s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 liblist-moreutils-xs-perl amd64 0.430-4build1 [42.9 kB] 1239s Get:50 http://ftpmaster.internal/ubuntu plucky/universe amd64 liblist-moreutils-perl all 0.430-2 [38.2 kB] 1239s Get:51 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmro-compat-perl all 0.15-2 [10.1 kB] 1239s Get:52 http://ftpmaster.internal/ubuntu plucky/main amd64 libpackage-stash-perl all 0.40-1 [19.5 kB] 1239s Get:53 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-identify-perl amd64 0.14-3build4 [9904 B] 1239s Get:54 http://ftpmaster.internal/ubuntu plucky/main amd64 libsub-name-perl amd64 0.27-1build4 [10.9 kB] 1239s Get:55 http://ftpmaster.internal/ubuntu plucky/main amd64 libnamespace-clean-perl all 0.27-2 [14.0 kB] 1239s Get:56 http://ftpmaster.internal/ubuntu plucky/universe amd64 libnamespace-autoclean-perl all 0.29-2 [11.7 kB] 1239s Get:57 http://ftpmaster.internal/ubuntu plucky/universe amd64 libparams-validationcompiler-perl all 0.31-1 [28.3 kB] 1239s Get:58 http://ftpmaster.internal/ubuntu plucky/universe amd64 libpath-class-perl all 0.37-4 [36.8 kB] 1239s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 libperlio-utf8-strict-perl amd64 0.010-1build4 [11.1 kB] 1239s Get:60 http://ftpmaster.internal/ubuntu plucky/main amd64 libpod-parser-perl all 1.67-1 [80.6 kB] 1239s Get:61 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxstring-perl amd64 0.005-2build4 [7940 B] 1239s Get:62 http://ftpmaster.internal/ubuntu plucky/universe amd64 libspecio-perl all 0.48-1 [137 kB] 1239s Get:63 http://ftpmaster.internal/ubuntu plucky/universe amd64 libstring-formatter-perl all 1.235-1 [21.3 kB] 1239s Get:64 http://ftpmaster.internal/ubuntu plucky/main amd64 libstring-shellquote-perl all 1.04-3 [11.3 kB] 1239s Get:65 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtemplate-tiny-perl all 1.14-2 [11.0 kB] 1239s Get:66 http://ftpmaster.internal/ubuntu plucky/universe amd64 libthrowable-perl all 1.001-2 [14.2 kB] 1239s Get:67 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtype-tiny-perl all 2.004000-1 [354 kB] 1239s Get:68 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 liburi-perl all 5.30-1 [94.4 kB] 1239s Get:69 http://ftpmaster.internal/ubuntu plucky/universe amd64 liburi-nested-perl all 0.10-4 [7926 B] 1239s Get:70 http://ftpmaster.internal/ubuntu plucky/universe amd64 liburi-db-perl all 0.22-1 [20.2 kB] 1239s Get:71 http://ftpmaster.internal/ubuntu plucky/main amd64 postgresql-client-common all 262 [36.7 kB] 1239s Get:72 http://ftpmaster.internal/ubuntu plucky/main amd64 postgresql-client-16 amd64 16.4-3 [1278 kB] 1239s Get:73 http://ftpmaster.internal/ubuntu plucky/main amd64 postgresql-client all 16+262 [11.8 kB] 1239s Get:74 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdatetime-locale-perl all 1:1.41-1 [3193 kB] 1239s Get:75 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdatetime-timezone-perl all 1:2.62-1+2024a [262 kB] 1239s Get:76 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdatetime-perl amd64 2:1.65-1build3 [95.8 kB] 1239s Get:77 http://ftpmaster.internal/ubuntu plucky/main amd64 libipc-run3-perl all 0.049-1 [28.8 kB] 1239s Get:78 http://ftpmaster.internal/ubuntu plucky/universe amd64 sqitch all 1.4.1-1 [609 kB] 1239s Get:79 http://ftpmaster.internal/ubuntu plucky/universe amd64 pkg-perl-autopkgtest all 0.79 [18.5 kB] 1240s Fetched 9432 kB in 0s (45.1 MB/s) 1240s Selecting previously unselected package dctrl-tools. 1240s (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 ... 75323 files and directories currently installed.) 1240s Preparing to unpack .../00-dctrl-tools_2.24-3build3_amd64.deb ... 1240s Unpacking dctrl-tools (2.24-3build3) ... 1240s Selecting previously unselected package autodep8. 1240s Preparing to unpack .../01-autodep8_0.28+nmu1ubuntu1_all.deb ... 1240s Unpacking autodep8 (0.28+nmu1ubuntu1) ... 1240s Selecting previously unselected package libalgorithm-backoff-perl. 1240s Preparing to unpack .../02-libalgorithm-backoff-perl_0.010-1_all.deb ... 1240s Unpacking libalgorithm-backoff-perl (0.010-1) ... 1240s Selecting previously unselected package libalgorithm-c3-perl. 1240s Preparing to unpack .../03-libalgorithm-c3-perl_0.11-2_all.deb ... 1240s Unpacking libalgorithm-c3-perl (0.11-2) ... 1240s Selecting previously unselected package libb-hooks-op-check-perl:amd64. 1240s Preparing to unpack .../04-libb-hooks-op-check-perl_0.22-3build2_amd64.deb ... 1240s Unpacking libb-hooks-op-check-perl:amd64 (0.22-3build2) ... 1240s Selecting previously unselected package libdynaloader-functions-perl. 1240s Preparing to unpack .../05-libdynaloader-functions-perl_0.004-1_all.deb ... 1240s Unpacking libdynaloader-functions-perl (0.004-1) ... 1240s Selecting previously unselected package libdevel-callchecker-perl:amd64. 1240s Preparing to unpack .../06-libdevel-callchecker-perl_0.009-1build1_amd64.deb ... 1240s Unpacking libdevel-callchecker-perl:amd64 (0.009-1build1) ... 1240s Selecting previously unselected package libparams-classify-perl:amd64. 1240s Preparing to unpack .../07-libparams-classify-perl_0.015-2build6_amd64.deb ... 1240s Unpacking libparams-classify-perl:amd64 (0.015-2build6) ... 1240s Selecting previously unselected package libmodule-runtime-perl. 1240s Preparing to unpack .../08-libmodule-runtime-perl_0.016-2_all.deb ... 1240s Unpacking libmodule-runtime-perl (0.016-2) ... 1240s Selecting previously unselected package libtry-tiny-perl. 1240s Preparing to unpack .../09-libtry-tiny-perl_0.31-2_all.deb ... 1240s Unpacking libtry-tiny-perl (0.31-2) ... 1240s Selecting previously unselected package libmodule-implementation-perl. 1240s Preparing to unpack .../10-libmodule-implementation-perl_0.09-2_all.deb ... 1240s Unpacking libmodule-implementation-perl (0.09-2) ... 1240s Selecting previously unselected package libsub-exporter-progressive-perl. 1240s Preparing to unpack .../11-libsub-exporter-progressive-perl_0.001013-3_all.deb ... 1240s Unpacking libsub-exporter-progressive-perl (0.001013-3) ... 1240s Selecting previously unselected package libvariable-magic-perl. 1240s Preparing to unpack .../12-libvariable-magic-perl_0.64-1build1_amd64.deb ... 1240s Unpacking libvariable-magic-perl (0.64-1build1) ... 1240s Selecting previously unselected package libb-hooks-endofscope-perl. 1240s Preparing to unpack .../13-libb-hooks-endofscope-perl_0.28-1_all.deb ... 1240s Unpacking libb-hooks-endofscope-perl (0.28-1) ... 1240s Selecting previously unselected package libclass-c3-perl. 1240s Preparing to unpack .../14-libclass-c3-perl_0.35-2_all.deb ... 1240s Unpacking libclass-c3-perl (0.35-2) ... 1240s Selecting previously unselected package libclass-data-inheritable-perl. 1240s Preparing to unpack .../15-libclass-data-inheritable-perl_0.08-3_all.deb ... 1240s Unpacking libclass-data-inheritable-perl (0.08-3) ... 1240s Selecting previously unselected package libclass-inspector-perl. 1240s Preparing to unpack .../16-libclass-inspector-perl_1.36-3_all.deb ... 1240s Unpacking libclass-inspector-perl (1.36-3) ... 1240s Selecting previously unselected package libclass-method-modifiers-perl. 1240s Preparing to unpack .../17-libclass-method-modifiers-perl_2.15-1_all.deb ... 1240s Unpacking libclass-method-modifiers-perl (2.15-1) ... 1240s Selecting previously unselected package libclass-singleton-perl. 1240s Preparing to unpack .../18-libclass-singleton-perl_1.6-2_all.deb ... 1240s Unpacking libclass-singleton-perl (1.6-2) ... 1240s Selecting previously unselected package libclass-xsaccessor-perl. 1240s Preparing to unpack .../19-libclass-xsaccessor-perl_1.19-4build5_amd64.deb ... 1240s Unpacking libclass-xsaccessor-perl (1.19-4build5) ... 1240s Selecting previously unselected package libclone-choose-perl. 1240s Preparing to unpack .../20-libclone-choose-perl_0.010-2_all.deb ... 1240s Unpacking libclone-choose-perl (0.010-2) ... 1240s Selecting previously unselected package libclone-perl:amd64. 1240s Preparing to unpack .../21-libclone-perl_0.47-1_amd64.deb ... 1240s Unpacking libclone-perl:amd64 (0.47-1) ... 1240s Selecting previously unselected package libimport-into-perl. 1240s Preparing to unpack .../22-libimport-into-perl_1.002005-2_all.deb ... 1240s Unpacking libimport-into-perl (1.002005-2) ... 1241s Selecting previously unselected package librole-tiny-perl. 1241s Preparing to unpack .../23-librole-tiny-perl_2.002004-1_all.deb ... 1241s Unpacking librole-tiny-perl (2.002004-1) ... 1241s Selecting previously unselected package libsub-quote-perl. 1241s Preparing to unpack .../24-libsub-quote-perl_2.006008-1ubuntu1_all.deb ... 1241s Unpacking libsub-quote-perl (2.006008-1ubuntu1) ... 1241s Selecting previously unselected package libmoo-perl. 1241s Preparing to unpack .../25-libmoo-perl_2.005005-1_all.deb ... 1241s Unpacking libmoo-perl (2.005005-1) ... 1241s Selecting previously unselected package libmoox-types-mooselike-perl. 1241s Preparing to unpack .../26-libmoox-types-mooselike-perl_0.29-2_all.deb ... 1241s Unpacking libmoox-types-mooselike-perl (0.29-2) ... 1241s Selecting previously unselected package libconfig-gitlike-perl. 1241s Preparing to unpack .../27-libconfig-gitlike-perl_1.18-2_all.deb ... 1241s Unpacking libconfig-gitlike-perl (1.18-2) ... 1241s Selecting previously unselected package libparams-util-perl. 1241s Preparing to unpack .../28-libparams-util-perl_1.102-3build1_amd64.deb ... 1241s Unpacking libparams-util-perl (1.102-3build1) ... 1241s Selecting previously unselected package libsub-install-perl. 1241s Preparing to unpack .../29-libsub-install-perl_0.929-1_all.deb ... 1241s Unpacking libsub-install-perl (0.929-1) ... 1241s Selecting previously unselected package libdata-optlist-perl. 1241s Preparing to unpack .../30-libdata-optlist-perl_0.114-1_all.deb ... 1241s Unpacking libdata-optlist-perl (0.114-1) ... 1241s Selecting previously unselected package libdbi-perl:amd64. 1241s Preparing to unpack .../31-libdbi-perl_1.645-1_amd64.deb ... 1241s Unpacking libdbi-perl:amd64 (1.645-1) ... 1241s Selecting previously unselected package libpq5:amd64. 1241s Preparing to unpack .../32-libpq5_17.0-1_amd64.deb ... 1241s Unpacking libpq5:amd64 (17.0-1) ... 1241s Selecting previously unselected package libdbd-pg-perl. 1241s Preparing to unpack .../33-libdbd-pg-perl_3.18.0-1build4_amd64.deb ... 1241s Unpacking libdbd-pg-perl (3.18.0-1build4) ... 1241s Selecting previously unselected package libdevel-stacktrace-perl. 1241s Preparing to unpack .../34-libdevel-stacktrace-perl_2.0500-1_all.deb ... 1241s Unpacking libdevel-stacktrace-perl (2.0500-1) ... 1241s Selecting previously unselected package libencode-locale-perl. 1241s Preparing to unpack .../35-libencode-locale-perl_1.05-3_all.deb ... 1241s Unpacking libencode-locale-perl (1.05-3) ... 1241s Selecting previously unselected package libsub-exporter-perl. 1241s Preparing to unpack .../36-libsub-exporter-perl_0.990-1_all.deb ... 1241s Unpacking libsub-exporter-perl (0.990-1) ... 1241s Selecting previously unselected package libeval-closure-perl. 1241s Preparing to unpack .../37-libeval-closure-perl_0.14-3_all.deb ... 1241s Unpacking libeval-closure-perl (0.14-3) ... 1241s Selecting previously unselected package libexception-class-perl. 1241s Preparing to unpack .../38-libexception-class-perl_1.45-1_all.deb ... 1241s Unpacking libexception-class-perl (1.45-1) ... 1241s Selecting previously unselected package libexporter-tiny-perl. 1241s Preparing to unpack .../39-libexporter-tiny-perl_1.006002-1_all.deb ... 1241s Unpacking libexporter-tiny-perl (1.006002-1) ... 1241s Selecting previously unselected package libfile-sharedir-perl. 1241s Preparing to unpack .../40-libfile-sharedir-perl_1.118-3_all.deb ... 1241s Unpacking libfile-sharedir-perl (1.118-3) ... 1241s Selecting previously unselected package libfile-which-perl. 1241s Preparing to unpack .../41-libfile-which-perl_1.27-2_all.deb ... 1241s Unpacking libfile-which-perl (1.27-2) ... 1241s Selecting previously unselected package libhash-merge-perl. 1241s Preparing to unpack .../42-libhash-merge-perl_0.302-1_all.deb ... 1241s Unpacking libhash-merge-perl (0.302-1) ... 1241s Selecting previously unselected package libintl-perl. 1241s Preparing to unpack .../43-libintl-perl_1.33-1build4_all.deb ... 1241s Unpacking libintl-perl (1.33-1build4) ... 1241s Selecting previously unselected package libterm-readkey-perl. 1241s Preparing to unpack .../44-libterm-readkey-perl_2.38-2build5_amd64.deb ... 1241s Unpacking libterm-readkey-perl (2.38-2build5) ... 1241s Selecting previously unselected package libio-pager-perl. 1241s Preparing to unpack .../45-libio-pager-perl_2.10-1_all.deb ... 1241s Unpacking libio-pager-perl (2.10-1) ... 1241s Selecting previously unselected package libipc-system-simple-perl. 1241s Preparing to unpack .../46-libipc-system-simple-perl_1.30-2_all.deb ... 1241s Unpacking libipc-system-simple-perl (1.30-2) ... 1241s Selecting previously unselected package liblist-moreutils-xs-perl. 1241s Preparing to unpack .../47-liblist-moreutils-xs-perl_0.430-4build1_amd64.deb ... 1241s Unpacking liblist-moreutils-xs-perl (0.430-4build1) ... 1241s Selecting previously unselected package liblist-moreutils-perl. 1241s Preparing to unpack .../48-liblist-moreutils-perl_0.430-2_all.deb ... 1241s Unpacking liblist-moreutils-perl (0.430-2) ... 1241s Selecting previously unselected package libmro-compat-perl. 1241s Preparing to unpack .../49-libmro-compat-perl_0.15-2_all.deb ... 1241s Unpacking libmro-compat-perl (0.15-2) ... 1241s Selecting previously unselected package libpackage-stash-perl. 1241s Preparing to unpack .../50-libpackage-stash-perl_0.40-1_all.deb ... 1241s Unpacking libpackage-stash-perl (0.40-1) ... 1241s Selecting previously unselected package libsub-identify-perl. 1241s Preparing to unpack .../51-libsub-identify-perl_0.14-3build4_amd64.deb ... 1241s Unpacking libsub-identify-perl (0.14-3build4) ... 1241s Selecting previously unselected package libsub-name-perl:amd64. 1241s Preparing to unpack .../52-libsub-name-perl_0.27-1build4_amd64.deb ... 1241s Unpacking libsub-name-perl:amd64 (0.27-1build4) ... 1241s Selecting previously unselected package libnamespace-clean-perl. 1241s Preparing to unpack .../53-libnamespace-clean-perl_0.27-2_all.deb ... 1241s Unpacking libnamespace-clean-perl (0.27-2) ... 1241s Selecting previously unselected package libnamespace-autoclean-perl. 1241s Preparing to unpack .../54-libnamespace-autoclean-perl_0.29-2_all.deb ... 1241s Unpacking libnamespace-autoclean-perl (0.29-2) ... 1241s Selecting previously unselected package libparams-validationcompiler-perl. 1241s Preparing to unpack .../55-libparams-validationcompiler-perl_0.31-1_all.deb ... 1241s Unpacking libparams-validationcompiler-perl (0.31-1) ... 1241s Selecting previously unselected package libpath-class-perl. 1242s Preparing to unpack .../56-libpath-class-perl_0.37-4_all.deb ... 1242s Unpacking libpath-class-perl (0.37-4) ... 1242s Selecting previously unselected package libperlio-utf8-strict-perl. 1242s Preparing to unpack .../57-libperlio-utf8-strict-perl_0.010-1build4_amd64.deb ... 1242s Unpacking libperlio-utf8-strict-perl (0.010-1build4) ... 1242s Selecting previously unselected package libpod-parser-perl. 1242s Preparing to unpack .../58-libpod-parser-perl_1.67-1_all.deb ... 1242s Adding 'diversion of /usr/bin/podselect to /usr/bin/podselect.bundled by libpod-parser-perl' 1242s Adding 'diversion of /usr/share/man/man1/podselect.1.gz to /usr/share/man/man1/podselect.bundled.1.gz by libpod-parser-perl' 1242s Unpacking libpod-parser-perl (1.67-1) ... 1242s Selecting previously unselected package libxstring-perl:amd64. 1242s Preparing to unpack .../59-libxstring-perl_0.005-2build4_amd64.deb ... 1242s Unpacking libxstring-perl:amd64 (0.005-2build4) ... 1242s Selecting previously unselected package libspecio-perl. 1242s Preparing to unpack .../60-libspecio-perl_0.48-1_all.deb ... 1242s Unpacking libspecio-perl (0.48-1) ... 1242s Selecting previously unselected package libstring-formatter-perl. 1242s Preparing to unpack .../61-libstring-formatter-perl_1.235-1_all.deb ... 1242s Unpacking libstring-formatter-perl (1.235-1) ... 1242s Selecting previously unselected package libstring-shellquote-perl. 1242s Preparing to unpack .../62-libstring-shellquote-perl_1.04-3_all.deb ... 1242s Unpacking libstring-shellquote-perl (1.04-3) ... 1242s Selecting previously unselected package libtemplate-tiny-perl. 1242s Preparing to unpack .../63-libtemplate-tiny-perl_1.14-2_all.deb ... 1242s Unpacking libtemplate-tiny-perl (1.14-2) ... 1242s Selecting previously unselected package libthrowable-perl. 1242s Preparing to unpack .../64-libthrowable-perl_1.001-2_all.deb ... 1242s Unpacking libthrowable-perl (1.001-2) ... 1242s Selecting previously unselected package libtype-tiny-perl. 1242s Preparing to unpack .../65-libtype-tiny-perl_2.004000-1_all.deb ... 1242s Unpacking libtype-tiny-perl (2.004000-1) ... 1242s Selecting previously unselected package liburi-perl. 1242s Preparing to unpack .../66-liburi-perl_5.30-1_all.deb ... 1242s Unpacking liburi-perl (5.30-1) ... 1242s Selecting previously unselected package liburi-nested-perl. 1242s Preparing to unpack .../67-liburi-nested-perl_0.10-4_all.deb ... 1242s Unpacking liburi-nested-perl (0.10-4) ... 1242s Selecting previously unselected package liburi-db-perl. 1242s Preparing to unpack .../68-liburi-db-perl_0.22-1_all.deb ... 1242s Unpacking liburi-db-perl (0.22-1) ... 1242s Selecting previously unselected package postgresql-client-common. 1242s Preparing to unpack .../69-postgresql-client-common_262_all.deb ... 1242s Unpacking postgresql-client-common (262) ... 1242s Selecting previously unselected package postgresql-client-16. 1242s Preparing to unpack .../70-postgresql-client-16_16.4-3_amd64.deb ... 1242s Unpacking postgresql-client-16 (16.4-3) ... 1242s Selecting previously unselected package postgresql-client. 1242s Preparing to unpack .../71-postgresql-client_16+262_all.deb ... 1242s Unpacking postgresql-client (16+262) ... 1242s Selecting previously unselected package libdatetime-locale-perl. 1242s Preparing to unpack .../72-libdatetime-locale-perl_1%3a1.41-1_all.deb ... 1242s Unpacking libdatetime-locale-perl (1:1.41-1) ... 1243s Selecting previously unselected package libdatetime-timezone-perl. 1243s Preparing to unpack .../73-libdatetime-timezone-perl_1%3a2.62-1+2024a_all.deb ... 1243s Unpacking libdatetime-timezone-perl (1:2.62-1+2024a) ... 1243s Selecting previously unselected package libdatetime-perl. 1243s Preparing to unpack .../74-libdatetime-perl_2%3a1.65-1build3_amd64.deb ... 1243s Unpacking libdatetime-perl (2:1.65-1build3) ... 1243s Selecting previously unselected package libipc-run3-perl. 1243s Preparing to unpack .../75-libipc-run3-perl_0.049-1_all.deb ... 1243s Unpacking libipc-run3-perl (0.049-1) ... 1243s Selecting previously unselected package sqitch. 1243s Preparing to unpack .../76-sqitch_1.4.1-1_all.deb ... 1243s Unpacking sqitch (1.4.1-1) ... 1243s Selecting previously unselected package pkg-perl-autopkgtest. 1243s Preparing to unpack .../77-pkg-perl-autopkgtest_0.79_all.deb ... 1243s Unpacking pkg-perl-autopkgtest (0.79) ... 1243s Selecting previously unselected package autopkgtest-satdep. 1243s Preparing to unpack .../78-2-autopkgtest-satdep.deb ... 1243s Unpacking autopkgtest-satdep (0) ... 1243s Setting up postgresql-client-common (262) ... 1243s Setting up libfile-which-perl (1.27-2) ... 1243s Setting up libclass-inspector-perl (1.36-3) ... 1243s Setting up libdynaloader-functions-perl (0.004-1) ... 1243s Setting up libclass-method-modifiers-perl (2.15-1) ... 1243s Setting up libpath-class-perl (0.37-4) ... 1243s Setting up libclone-perl:amd64 (0.47-1) ... 1243s Setting up libsub-identify-perl (0.14-3build4) ... 1243s Setting up libalgorithm-backoff-perl (0.010-1) ... 1243s Setting up libtry-tiny-perl (0.31-2) ... 1243s Setting up libpq5:amd64 (17.0-1) ... 1243s Setting up libclone-choose-perl (0.010-2) ... 1243s Setting up libclass-singleton-perl (1.6-2) ... 1243s Setting up libencode-locale-perl (1.05-3) ... 1243s Setting up libxstring-perl:amd64 (0.005-2build4) ... 1243s Setting up libstring-shellquote-perl (1.04-3) ... 1243s Setting up libsub-install-perl (0.929-1) ... 1243s Setting up libclass-data-inheritable-perl (0.08-3) ... 1243s Setting up libalgorithm-c3-perl (0.11-2) ... 1243s Setting up libipc-system-simple-perl (1.30-2) ... 1243s Setting up libperlio-utf8-strict-perl (0.010-1build4) ... 1243s Setting up libvariable-magic-perl (0.64-1build1) ... 1243s Setting up libpod-parser-perl (1.67-1) ... 1243s Setting up libb-hooks-op-check-perl:amd64 (0.22-3build2) ... 1243s Setting up liblist-moreutils-xs-perl (0.430-4build1) ... 1243s Setting up libparams-util-perl (1.102-3build1) ... 1243s Setting up libsub-exporter-progressive-perl (0.001013-3) ... 1243s Setting up libsub-name-perl:amd64 (0.27-1build4) ... 1243s Setting up librole-tiny-perl (2.002004-1) ... 1243s Setting up libintl-perl (1.33-1build4) ... 1243s Setting up libipc-run3-perl (0.049-1) ... 1243s Setting up libfile-sharedir-perl (1.118-3) ... 1243s Setting up libsub-quote-perl (2.006008-1ubuntu1) ... 1243s Setting up libdevel-stacktrace-perl (2.0500-1) ... 1243s Setting up libclass-xsaccessor-perl (1.19-4build5) ... 1243s Setting up libtemplate-tiny-perl (1.14-2) ... 1243s Setting up libexporter-tiny-perl (1.006002-1) ... 1243s Setting up libterm-readkey-perl (2.38-2build5) ... 1243s Setting up liburi-perl (5.30-1) ... 1243s Setting up libdbi-perl:amd64 (1.645-1) ... 1243s Setting up dctrl-tools (2.24-3build3) ... 1243s Setting up autodep8 (0.28+nmu1ubuntu1) ... 1243s Setting up libio-pager-perl (2.10-1) ... 1243s Setting up liblist-moreutils-perl (0.430-2) ... 1243s Setting up postgresql-client-16 (16.4-3) ... 1243s update-alternatives: using /usr/share/postgresql/16/man/man1/psql.1.gz to provide /usr/share/man/man1/psql.1.gz (psql.1.gz) in auto mode 1243s Setting up libhash-merge-perl (0.302-1) ... 1243s Setting up libtype-tiny-perl (2.004000-1) ... 1243s Setting up liburi-nested-perl (0.10-4) ... 1243s Setting up libdbd-pg-perl (3.18.0-1build4) ... 1243s Setting up libexception-class-perl (1.45-1) ... 1243s Setting up libclass-c3-perl (0.35-2) ... 1243s Setting up libdevel-callchecker-perl:amd64 (0.009-1build1) ... 1243s Setting up liburi-db-perl (0.22-1) ... 1243s Setting up libdata-optlist-perl (0.114-1) ... 1243s Setting up pkg-perl-autopkgtest (0.79) ... 1243s Setting up libmro-compat-perl (0.15-2) ... 1243s Setting up libsub-exporter-perl (0.990-1) ... 1243s Setting up libeval-closure-perl (0.14-3) ... 1243s Setting up libparams-validationcompiler-perl (0.31-1) ... 1243s Setting up postgresql-client (16+262) ... 1243s Setting up libparams-classify-perl:amd64 (0.015-2build6) ... 1243s Setting up libmodule-runtime-perl (0.016-2) ... 1243s Setting up libstring-formatter-perl (1.235-1) ... 1243s Setting up libmodule-implementation-perl (0.09-2) ... 1243s Setting up libpackage-stash-perl (0.40-1) ... 1243s Setting up libimport-into-perl (1.002005-2) ... 1243s Setting up libmoo-perl (2.005005-1) ... 1243s Setting up libspecio-perl (0.48-1) ... 1243s Setting up libmoox-types-mooselike-perl (0.29-2) ... 1243s Setting up libb-hooks-endofscope-perl (0.28-1) ... 1243s Setting up libconfig-gitlike-perl (1.18-2) ... 1243s Setting up libthrowable-perl (1.001-2) ... 1243s Setting up libnamespace-clean-perl (0.27-2) ... 1243s Setting up libnamespace-autoclean-perl (0.29-2) ... 1243s Setting up libdatetime-locale-perl (1:1.41-1) ... 1243s Setting up libdatetime-timezone-perl (1:2.62-1+2024a) ... 1243s Setting up libdatetime-perl (2:1.65-1build3) ... 1243s Setting up sqitch (1.4.1-1) ... 1243s Setting up autopkgtest-satdep (0) ... 1243s Processing triggers for man-db (2.12.1-3) ... 1245s Processing triggers for libc-bin (2.40-1ubuntu3) ... 1249s (Reading database ... 81075 files and directories currently installed.) 1249s Removing autopkgtest-satdep (0) ... 1249s autopkgtest [17:21:26]: test autodep8-perl: /usr/share/pkg-perl-autopkgtest/runner runtime-deps 1249s autopkgtest [17:21:26]: test autodep8-perl: [----------------------- 1250s /usr/share/pkg-perl-autopkgtest/runtime-deps.d/use.t .. 1250s 1..4 1250s ok 1 - /usr/bin/perl -w -M"App::Sqitch" -e 1 2>&1 exited successfully 1250s ok 2 - /usr/bin/perl -w -M"App::Sqitch" -e 1 2>&1 produced no (non-whitelisted) output 1250s ok 3 - env PERL_DL_NONLAZY=1 /usr/bin/perl -w -M"App::Sqitch" -e 1 2>&1 exited successfully 1250s ok 4 - env PERL_DL_NONLAZY=1 /usr/bin/perl -w -M"App::Sqitch" -e 1 2>&1 produced no (non-whitelisted) output 1250s ok 1250s All tests successful. 1250s Files=1, Tests=4, 1 wallclock secs ( 0.02 usr 0.01 sys + 0.49 cusr 0.09 csys = 0.61 CPU) 1250s Result: PASS 1250s autopkgtest [17:21:27]: test autodep8-perl: -----------------------] 1251s autodep8-perl PASS (superficial) 1251s autopkgtest [17:21:28]: test autodep8-perl: - - - - - - - - - - results - - - - - - - - - - 1251s autopkgtest [17:21:28]: test autodep8-perl-recommends: preparing testbed 1251s Reading package lists... 1251s Building dependency tree... 1251s Reading state information... 1252s Starting pkgProblemResolver with broken count: 0 1252s Starting 2 pkgProblemResolver with broken count: 0 1252s Done 1252s The following additional packages will be installed: 1252s libappconfig-perl libtemplate-perl libtype-tiny-xs-perl 1252s Suggested packages: 1252s libtemplate-plugin-gd-perl libtemplate-plugin-xml-perl 1252s The following NEW packages will be installed: 1252s autopkgtest-satdep libappconfig-perl libtemplate-perl libtype-tiny-xs-perl 1252s 0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. 1252s Need to get 587 kB/588 kB of archives. 1252s After this operation, 1756 kB of additional disk space will be used. 1252s Get:1 /tmp/autopkgtest.vsPEeX/3-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [748 B] 1252s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libappconfig-perl all 1.71-2.3 [64.8 kB] 1252s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 libtemplate-perl amd64 2.27-1build11 [498 kB] 1252s Get:4 http://ftpmaster.internal/ubuntu plucky/universe amd64 libtype-tiny-xs-perl amd64 0.025-2build1 [25.0 kB] 1253s Fetched 587 kB in 0s (13.2 MB/s) 1253s Selecting previously unselected package libappconfig-perl. 1253s (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 ... 81075 files and directories currently installed.) 1253s Preparing to unpack .../libappconfig-perl_1.71-2.3_all.deb ... 1253s Unpacking libappconfig-perl (1.71-2.3) ... 1253s Selecting previously unselected package libtemplate-perl. 1253s Preparing to unpack .../libtemplate-perl_2.27-1build11_amd64.deb ... 1253s Unpacking libtemplate-perl (2.27-1build11) ... 1253s Selecting previously unselected package libtype-tiny-xs-perl:amd64. 1253s Preparing to unpack .../libtype-tiny-xs-perl_0.025-2build1_amd64.deb ... 1253s Unpacking libtype-tiny-xs-perl:amd64 (0.025-2build1) ... 1253s Selecting previously unselected package autopkgtest-satdep. 1253s Preparing to unpack .../3-autopkgtest-satdep.deb ... 1253s Unpacking autopkgtest-satdep (0) ... 1253s Setting up libtype-tiny-xs-perl:amd64 (0.025-2build1) ... 1253s Setting up libappconfig-perl (1.71-2.3) ... 1253s Setting up libtemplate-perl (2.27-1build11) ... 1253s Setting up autopkgtest-satdep (0) ... 1253s Processing triggers for man-db (2.12.1-3) ... 1255s (Reading database ... 81259 files and directories currently installed.) 1255s Removing autopkgtest-satdep (0) ... 1256s autopkgtest [17:21:33]: test autodep8-perl-recommends: /usr/share/pkg-perl-autopkgtest/runner runtime-deps-and-recommends 1256s autopkgtest [17:21:33]: test autodep8-perl-recommends: [----------------------- 1256s Test skipped 1256s autopkgtest [17:21:33]: test autodep8-perl-recommends: -----------------------] 1256s autodep8-perl-recommends SKIP exit status 77 and marked as skippable 1256s autopkgtest [17:21:33]: test autodep8-perl-recommends: - - - - - - - - - - results - - - - - - - - - - 1256s autopkgtest [17:21:33]: @@@@@@@@@@@@@@@@@@@@ summary 1256s autodep8-perl-build-deps PASS 1256s autodep8-perl PASS (superficial) 1256s autodep8-perl-recommends SKIP exit status 77 and marked as skippable 1266s nova [W] Skipping flock for amd64 1266s Creating nova instance adt-plucky-amd64-sqitch-20241102-170037-juju-7f2275-prod-proposed-migration-environment-15-d556bb86-514e-48cf-8681-c98104533083 from image adt/ubuntu-plucky-amd64-server-20241102.img (UUID 640916e2-9412-4fa2-8155-f822a4055b51)... 1266s nova [W] Skipping flock for amd64 1266s Creating nova instance adt-plucky-amd64-sqitch-20241102-170037-juju-7f2275-prod-proposed-migration-environment-15-d556bb86-514e-48cf-8681-c98104533083 from image adt/ubuntu-plucky-amd64-server-20241102.img (UUID 640916e2-9412-4fa2-8155-f822a4055b51)...