]> git.notmuchmail.org Git - notmuch/blobdiff - test/T530-upgrade.sh
complete ghost-on-removal-when-shared-thread-exists
[notmuch] / test / T530-upgrade.sh
index 2139618c00c5151c91b14adae0fda7237d533ffc..a3a7d39c5251acd32edc987041596bb4601e40db 100755 (executable)
@@ -1,13 +1,13 @@
 #!/usr/bin/env bash
 test_description="database upgrade"
 
-. ./test-lib.sh
+. ./test-lib.sh || exit 1
 
 dbtarball=database-v1.tar.xz
 
 # XXX: Accomplish the same with test lib helpers
 if [ ! -e ${TEST_DIRECTORY}/test-databases/${dbtarball} ]; then
-    test_subtest_missing_external_prereq_["${dbtarball}"]=t
+    test_subtest_missing_external_prereq_["${dbtarball} - fetch with 'make download-test-databases'"]=t
 fi
 
 test_expect_success \
@@ -25,13 +25,21 @@ test_begin_subtest "path: search does not work with old database version"
 output=$(notmuch search path:foo)
 test_expect_equal "$output" ""
 
+test_expect_success 'pre upgrade dump' 'notmuch dump | sort > pre-upgrade-dump'
+
 test_begin_subtest "database upgrade from format version 1"
-output=$(notmuch new)
+output=$(notmuch new | sed -e 's/^Backing up tags to .*$/Backing up tags to FILENAME/')
 test_expect_equal "$output" "\
 Welcome to a new version of notmuch! Your database will now be upgraded.
-Your notmuch database has now been upgraded to database format version 2.
+This process is safe to interrupt.
+Backing up tags to FILENAME
+Your notmuch database has now been upgraded.
 No new mail."
 
+test_begin_subtest "tag backup matches pre-upgrade dump"
+gunzip -c ${MAIL_DIR}/.notmuch/dump-*.gz | sort > backup-dump
+test_expect_equal_file pre-upgrade-dump backup-dump
+
 test_begin_subtest "folder: no longer matches in the middle of path"
 output=$(notmuch search folder:baz)
 test_expect_equal "$output" ""