[PATCH 8/8] test: error handling in _n_message_{add,remove}_filename

Subject: [PATCH 8/8] test: error handling in _n_message_{add,remove}_filename

Date: Mon, 23 May 2022 20:39:01 -0300

To: notmuch@notmuchmail.org

Cc:

From: David Bremner


Use a closed database to force throwing a Xapian exception. Leave the
check vague to accomodate a potential explicit check for open database.
---
 test/T566-lib-message.sh | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/test/T566-lib-message.sh b/test/T566-lib-message.sh
index 5b6c937e..30040634 100755
--- a/test/T566-lib-message.sh
+++ b/test/T566-lib-message.sh
@@ -340,6 +340,38 @@ cat <<EOF > EXPECTED
 EOF
 test_expect_equal_file EXPECTED OUTPUT
 
+test_begin_subtest "_notmuch_message_add_filename on closed db"
+cat c_head - c_tail <<'EOF' | test_private_C ${MAIL_DIR}
+    {
+	notmuch_private_status_t status;
+	status = _notmuch_message_add_filename (message, "some-filename");
+	printf("%d\n%d\n", message != NULL, status != NOTMUCH_STATUS_SUCCESS);
+    }
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+1
+1
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
+test_begin_subtest "_notmuch_message_remove_filename on closed db"
+cat c_head - c_tail <<'EOF' | test_private_C ${MAIL_DIR}
+    {
+	notmuch_private_status_t status;
+	status = _notmuch_message_remove_filename (message, "some-filename");
+	printf("%d\n%d\n", message != NULL, status != NOTMUCH_STATUS_SUCCESS);
+    }
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+1
+1
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
 test_begin_subtest "Handle removing all tags with closed db"
 cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
     {
-- 
2.35.2

_______________________________________________
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-leave@notmuchmail.org

Thread: