lib: add regression test for n_m_get_date; clarify API
authorDavid Bremner <david@tethera.net>
Sun, 5 Jul 2020 13:00:16 +0000 (10:00 -0300)
committerDavid Bremner <david@tethera.net>
Tue, 14 Jul 2020 10:12:52 +0000 (07:12 -0300)
This function catches Xapian exceptions. The test is intended to make
sure it stays that way.

lib/notmuch.h
test/T560-lib-error.sh

index e544aafd60b6b28e6dacee5671b3a87c7d31f830..50d804fa99f935fcbf00d5454b3639675aa687ef 100644 (file)
@@ -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);
index 68aadcdbc0137d845ea69c2ddb32505c19e39565..c043e35eed55f3cf84ed7aea6a8037b7b6b4961f 100755 (executable)
@@ -454,5 +454,21 @@ cat <<EOF > 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 <<EOF > EXPECTED
+== stdout ==
+1
+1
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
 
 test_done