X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2FT050-new.sh;h=66ea10fee3f064821a3328702f0908a25eeee6e3;hp=f27423dac30b13f7fafc317c1559367904c764f2;hb=e2fb06d369bf7a532b4438ab576ca2969a8882a3;hpb=a755c9d6a9099366cc82ba3a4bee8e6d2b83d529 diff --git a/test/T050-new.sh b/test/T050-new.sh index f27423da..66ea10fe 100755 --- a/test/T050-new.sh +++ b/test/T050-new.sh @@ -63,15 +63,18 @@ test_begin_subtest "Renamed message" generate_message notmuch new > /dev/null mv "$gen_msg_filename" "${gen_msg_filename}"-renamed -output=$(NOTMUCH_NEW) -test_expect_equal "$output" "No new mail. Detected 1 file rename." +output=$(NOTMUCH_NEW --debug) +test_expect_equal "$output" "(D) add_files_recursive, pass 2: queuing passed file ${gen_msg_filename} for deletion from database +No new mail. Detected 1 file rename." test_begin_subtest "Deleted message" rm "${gen_msg_filename}"-renamed -output=$(NOTMUCH_NEW) -test_expect_equal "$output" "No new mail. Removed 1 message." +output=$(NOTMUCH_NEW --debug) +test_expect_equal "$output" "(D) add_files_recursive, pass 3: queuing leftover file ${gen_msg_filename}-renamed for deletion from database +No new mail. Removed 1 message." + test_begin_subtest "Renamed directory" @@ -163,7 +166,7 @@ rm -rf "${MAIL_DIR}"/two output=$(NOTMUCH_NEW) test_expect_equal "$output" "No new mail. Removed 3 messages." -test_begin_subtest "Support single-message mbox (deprecated)" +test_begin_subtest "Support single-message mbox" cat > "${MAIL_DIR}"/mbox_file1 < @@ -173,11 +176,7 @@ Subject: Test mbox message 1 Body. EOF output=$(NOTMUCH_NEW 2>&1) -test_expect_equal "$output" \ -"Warning: ${MAIL_DIR}/mbox_file1 is an mbox containing a single message, -likely caused by misconfigured mail delivery. Support for single-message -mboxes is deprecated and may be removed in the future. -Added 1 new message to the database." +test_expect_equal "$output" "Added 1 new message to the database." # This test requires that notmuch new has been run at least once. test_begin_subtest "Skip and report non-mail files" @@ -248,4 +247,43 @@ ln -s i_do_not_exist "${MAIL_DIR}"/broken_link output=$(NOTMUCH_NEW 2>&1) test_expect_equal "$output" "No new mail." +test_begin_subtest "Quiet: No new mail." +output=$(NOTMUCH_NEW --quiet) +test_expect_equal "$output" "" + +test_begin_subtest "Quiet: new, removed and renamed messages." +# new +generate_message +# deleted +notmuch search --format=text0 --output=files --limit=1 '*' | xargs -0 rm +# moved +mkdir "${MAIL_DIR}"/moved_messages +notmuch search --format=text0 --output=files --offset=1 --limit=1 '*' | xargs -0 -I {} mv {} "${MAIL_DIR}"/moved_messages +output=$(NOTMUCH_NEW --quiet) +test_expect_equal "$output" "" + +OLDCONFIG=$(notmuch config get new.tags) + +test_begin_subtest "Empty tags in new.tags are forbidden" +notmuch config set new.tags "foo;;bar" +output=$(NOTMUCH_NEW 2>&1) +test_expect_equal "$output" "Error: tag '' in new.tags: empty tag forbidden" + +test_begin_subtest "Tags starting with '-' in new.tags are forbidden" +notmuch config set new.tags "-foo;bar" +output=$(NOTMUCH_NEW 2>&1) +test_expect_equal "$output" "Error: tag '-foo' in new.tags: tag starting with '-' forbidden" + +test_expect_code 1 "Invalid tags set exit code" \ + "NOTMUCH_NEW 2>&1" + +notmuch config set new.tags $OLDCONFIG + + +test_begin_subtest "Xapian exception: read only files" +chmod u-w ${MAIL_DIR}/.notmuch/xapian/*.DB +output=$(NOTMUCH_NEW 2>&1 | sed 's/: .*$//' ) +chmod u+w ${MAIL_DIR}/.notmuch/xapian/*.DB +test_expect_equal "$output" "A Xapian exception occurred opening database" + test_done