From 6eaadb43adae2cca2f8023830d498ef3164f7fe9 Mon Sep 17 00:00:00 2001 From: David Bremner Date: Sun, 5 Jul 2020 10:00:16 -0300 Subject: [PATCH] lib: add regression test for n_m_get_date; clarify API This function catches Xapian exceptions. The test is intended to make sure it stays that way. --- lib/notmuch.h | 2 ++ test/T560-lib-error.sh | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/lib/notmuch.h b/lib/notmuch.h index e544aafd..50d804fa 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -1503,6 +1503,8 @@ notmuch_message_set_flag (notmuch_message_t *message, * For the original textual representation of the Date header from the * message call notmuch_message_get_header() with a header value of * "date". + * + * Returns 0 in case of error. */ time_t notmuch_message_get_date (notmuch_message_t *message); diff --git a/test/T560-lib-error.sh b/test/T560-lib-error.sh index 68aadcdb..c043e35e 100755 --- a/test/T560-lib-error.sh +++ b/test/T560-lib-error.sh @@ -454,5 +454,21 @@ cat < EXPECTED EOF test_expect_equal_file EXPECTED OUTPUT +test_begin_subtest "Handle getting date from closed database" +cat c_head2 - c_tail <<'EOF' | test_C ${MAIL_DIR} + { + time_t result; + result = notmuch_message_get_date (message); + printf("%d\n%d\n", message != NULL, result == 0); + } +EOF +cat < EXPECTED +== stdout == +1 +1 +== stderr == +EOF +test_expect_equal_file EXPECTED OUTPUT + test_done -- 2.43.0