[PATCH 1/8] test/path-config: define config_subtest

Subject: [PATCH 1/8] test/path-config: define config_subtest

Date: Mon, 2 Aug 2021 12:09:15 -0300

To: notmuch@notmuchmail.org

Cc: David Bremner

From: David Bremner


This will allow adding "hook code" to be run for a particular
configuration, in particular marking all tests in a given
configuration as broken.
---
 test/T055-path-config.sh | 48 ++++++++++++++++++++++++----------------
 1 file changed, 29 insertions(+), 19 deletions(-)

diff --git a/test/T055-path-config.sh b/test/T055-path-config.sh
index bb3bf665..2061b116 100755
--- a/test/T055-path-config.sh
+++ b/test/T055-path-config.sh
@@ -79,6 +79,13 @@ xdg_config () {
     notmuch --config=${CONFIG_PATH} config set database.path
 }
 
+config_subtest () {
+    local title=$1
+    local config=$2
+
+    test_begin_subtest "$title ($config)"
+}
+
 for config in traditional split XDG XDG+profile symlink home_mail; do
     #start each set of tests with an known set of messages
     add_email_corpus
@@ -106,20 +113,23 @@ for config in traditional split XDG XDG+profile symlink home_mail; do
 	home_mail)
 	    home_mail_config
 	    ;;
+	maildir_env)
+	    maildir_env_config
+	    ;;
     esac
 
-    test_begin_subtest "count ($config)"
+    config_subtest "count" "$config"
     output=$(notmuch count '*')
     test_expect_equal "$output" '52'
 
-    test_begin_subtest "count+tag ($config)"
+    config_subtest "count+tag" "$config"
     tag="tag${RANDOM}"
     notmuch tag +$tag '*'
     output=$(notmuch count tag:$tag)
     notmuch tag -$tag '*'
     test_expect_equal "$output" '52'
 
-    test_begin_subtest "address ($config)"
+    config_subtest "address" "$config"
     notmuch address --deduplicate=no --sort=newest-first --output=sender --output=recipients path:foo >OUTPUT
     cat <<EOF >EXPECTED
 Carl Worth <cworth@cworth.org>
@@ -127,7 +137,7 @@ notmuch@notmuchmail.org
 EOF
     test_expect_equal_file EXPECTED OUTPUT
 
-    test_begin_subtest "dump ($config)"
+    config_subtest "dump" "$config"
     notmuch dump is:attachment and is:signed | sort > OUTPUT
     cat <<EOF > EXPECTED
 #notmuch-dump batch-tag:3 config,properties,tags
@@ -136,43 +146,43 @@ EOF
 EOF
     test_expect_equal_file EXPECTED OUTPUT
 
-    test_begin_subtest "dump + tag + restore ($config)"
+    config_subtest "dump + tag + restore" "$config"
     notmuch dump '*' > EXPECTED
     notmuch tag -inbox '*'
     notmuch restore < EXPECTED
     notmuch dump > OUTPUT
     test_expect_equal_file EXPECTED OUTPUT
 
-    test_begin_subtest "reindex ($config)"
+    config_subtest "reindex" "$config"
     notmuch search --output=messages '*' > EXPECTED
     notmuch reindex '*'
     notmuch search --output=messages '*' > OUTPUT
     test_expect_equal_file EXPECTED OUTPUT
 
-    test_begin_subtest "use existing database ($config)"
+    config_subtest "use existing database" "$config"
     output=$(notmuch new)
     test_expect_equal "$output" 'No new mail.'
 
-    test_begin_subtest "create database ($config)"
+    config_subtest "create database" "$config"
     rm -rf $DATABASE_PATH/{.notmuch,}/xapian
     notmuch new
     output=$(notmuch count '*')
     test_expect_equal "$output" '52'
 
-    test_begin_subtest "detect new files ($config)"
+    config_subtest "detect new files" "$config"
     generate_message
     generate_message
     notmuch new
     output=$(notmuch count '*')
     test_expect_equal "$output" '54'
 
-    test_begin_subtest "Show a raw message ($config)"
+    config_subtest "Show a raw message" "$config"
     add_message
     notmuch show --format=raw id:$gen_msg_id > OUTPUT
     test_expect_equal_file $gen_msg_filename OUTPUT
     rm -f $gen_msg_filename
 
-    test_begin_subtest "reply ($config)"
+    config_subtest "reply" "$config"
     add_message '[from]="Sender <sender@example.com>"' \
 		[to]=test_suite@notmuchmail.org \
 		[subject]=notmuch-reply-test \
@@ -190,7 +200,7 @@ On Tue, 05 Jan 2010 15:43:56 -0000, Sender <sender@example.com> wrote:
 > basic reply test
 EOF
     test_expect_equal_file EXPECTED OUTPUT
-    test_begin_subtest "insert+search ($config)"
+    config_subtest "insert+search" "$config"
     generate_message \
 	"[subject]=\"insert-subject\"" \
 	"[date]=\"Sat, 01 Jan 2000 12:00:00 -0000\"" \
@@ -201,13 +211,13 @@ EOF
     test_expect_equal_file "$cur_msg_filename" "$gen_msg_filename"
 
 
-    test_begin_subtest "compact+search ($config)"
+    config_subtest "compact+search" "$config"
     notmuch search --output=messages '*' | sort > EXPECTED
     notmuch compact
     notmuch search --output=messages '*' | sort > OUTPUT
     test_expect_equal_file EXPECTED OUTPUT
 
-    test_begin_subtest "upgrade backup ($config)"
+    config_subtest "upgrade backup" "$config"
     features=$(xapian-metadata get $XAPIAN_PATH features | grep -v "^relative directory paths")
     xapian-metadata set $XAPIAN_PATH features "$features"
     output=$(notmuch new | grep Welcome)
@@ -215,7 +225,7 @@ EOF
 	"$output" \
 	"Welcome to a new version of notmuch! Your database will now be upgraded."
 
-    test_begin_subtest "notmuch +config -database suggests notmuch new ($config)"
+    config_subtest "notmuch +config -database suggests notmuch new" "$config"
     mv "$XAPIAN_PATH" "${XAPIAN_PATH}.bak"
     notmuch > OUTPUT
 cat <<EOF > EXPECTED
@@ -231,7 +241,7 @@ EOF
 
    test_expect_equal_file EXPECTED OUTPUT
 
-   test_begin_subtest "Set config value ($config)"
+   config_subtest "Set config value" "$config"
    name=${RANDOM}
    value=${RANDOM}
    notmuch config set test${test_count}.${name} ${value}
@@ -240,7 +250,7 @@ EOF
    output2=$(notmuch config get test${test_count}.${name})
    test_expect_equal "${output}+${output2}" "${value}+"
 
-   test_begin_subtest "Set config value in database ($config)"
+   config_subtest "Set config value in database" "$config"
    name=${RANDOM}
    value=${RANDOM}
    notmuch config set --database test${test_count}.${name} ${value}
@@ -249,7 +259,7 @@ EOF
    output2=$(notmuch config get test${test_count}.${name})
    test_expect_equal "${output}+${output2}" "${value}+"
 
-   test_begin_subtest "Config list ($config)"
+   config_subtest "Config list" "$config"
    notmuch config list | notmuch_dir_sanitize | sed -e "s/^database.backup_dir=.*$/database.backup_dir/"  \
 						    -e "s/^database.hook_dir=.*$/database.hook_dir/" \
 						    -e "s/^database.path=.*$/database.path/"  \
@@ -276,7 +286,7 @@ EOF
 
    case $config in
        XDG*)
-	   test_begin_subtest "Set shadowed config value in database ($config)"
+	   config_subtest "Set shadowed config value in database" "$config"
 	   name=${RANDOM}
 	   value=${RANDOM}
 	   key=test${test_count}.${name}
-- 
2.30.2
_______________________________________________
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-leave@notmuchmail.org

Thread: