From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id CwVDA98KCGFP8AAAgWs5BA (envelope-from ) for ; Mon, 02 Aug 2021 17:10:23 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id MPxJOd4KCGGlKQAAbx9fmQ (envelope-from ) for ; Mon, 02 Aug 2021 15:10:22 +0000 Received: from mail.notmuchmail.org (nmbug.tethera.net [144.217.243.247]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A4A397A40 for ; Mon, 2 Aug 2021 17:10:22 +0200 (CEST) Received: from nmbug.tethera.net (localhost [127.0.0.1]) by mail.notmuchmail.org (Postfix) with ESMTP id 287892C085; Mon, 2 Aug 2021 11:09:53 -0400 (EDT) Received: from fethera.tethera.net (fethera.tethera.net [198.245.60.197]) by mail.notmuchmail.org (Postfix) with ESMTP id 6A8602C052 for ; Mon, 2 Aug 2021 11:09:39 -0400 (EDT) Received: by fethera.tethera.net (Postfix, from userid 1001) id 420825FD5C; Mon, 2 Aug 2021 11:09:39 -0400 (EDT) Received: (nullmailer pid 3234742 invoked by uid 1000); Mon, 02 Aug 2021 15:09:30 -0000 From: David Bremner To: notmuch@notmuchmail.org Cc: David Bremner Subject: [PATCH 1/8] test/path-config: define config_subtest Date: Mon, 2 Aug 2021 12:09:15 -0300 Message-Id: <20210802150922.3234616-2-david@tethera.net> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210802150922.3234616-1-david@tethera.net> References: <87bl9lx864.fsf@kisara.moe> <20210802150922.3234616-1-david@tethera.net> MIME-Version: 1.0 Message-ID-Hash: U5LSQRRAGYQO64S36LSGFMGWY7PV4FPP X-Message-ID-Hash: U5LSQRRAGYQO64S36LSGFMGWY7PV4FPP X-MailFrom: bremner@tethera.net X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-notmuch.notmuchmail.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.1 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1627917022; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=L5lOBxiiBxwg+Kq99ezHfGVXEQLMU6TvoS9bzxDfpHI=; b=aDWi6WCA7OQDzegp3AHcL2Dwf9wQdnYKU43UCO4F7Xp7Iv0wSU2SuSZSiZIdbrxqwsfV/Q aDGWVjdssgBPL+bdPVb6aIKUYYEvH6TIjmQeEdQzj/yi072Q0oNF8aDRADCP8DaZAT4Poz YngaoZbwUq58hi6iBww7iTA6RiKP4LpMiDK+/l6YtIgHu7WJuKgeavrtIozaaxmAWdoVFG CnL60l8iOyGvOBYV21mEwhBFjEQUVAjpga0O6zJBgAwcGGgZO1PHYavIKH2Y6IAJ+c62x4 GuPcKlAcBwBXMRrGcypQ+R0br57vFo1Xe9GI6VpaswTJBx/lLZN3BAL6t1689w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1627917022; a=rsa-sha256; cv=none; b=dueJDbpX8T3oxnkgLi+lg739U+0iqQB/192vjOsDErIAE5WDUESJEa9Wy9mlvxVT2OPG6O 4WHMrufhtWfULCb7cqAclX5+CgZ65MVj5JGv4lTRiI35ESnMcPfcC0cLSUJbHRbXmvRQ7u YwYk/QYAnMrouw9+TxvN10hFxOD8W8vHd6fEs9A36PsZtH8x4f9gr4I6l8NhQSdWp0crvC h0U55z7jt44fO0cuN8AApfC+i54mjN0wMZFZ7aTeftHB56Mt8jnnoB9lEtIR2iGrim4Bsi t6B+kT9o6EbouNShqgKuH6HYKEpsKd8WbdwL7HaTkzstH1o/3uMiajqQPk5o3Q== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 144.217.243.247 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Spam-Score: 0.49 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 144.217.243.247 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Queue-Id: A4A397A40 X-Spam-Score: 0.49 X-Migadu-Scanner: scn0.migadu.com X-TUID: /x2NK6Jo0nkh 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 <EXPECTED Carl Worth @@ -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 < 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 "' \ [to]=test_suite@notmuchmail.org \ [subject]=notmuch-reply-test \ @@ -190,7 +200,7 @@ On Tue, 05 Jan 2010 15:43:56 -0000, Sender 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 < 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