X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2FT560-lib-error.sh;h=5a5f66b8c193073d26a739b2a13691da6dc3af52;hp=a50eca807700f7a3d87d58c5374c40b404fd3857;hb=87d462a20423a25eaf4b54a90bfd538dd93da675;hpb=b10ce6bc23002d48916b1b2f375480e7540e3164 diff --git a/test/T560-lib-error.sh b/test/T560-lib-error.sh index a50eca80..5a5f66b8 100755 --- a/test/T560-lib-error.sh +++ b/test/T560-lib-error.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash test_description="error reporting for library" -. ./test-lib.sh || exit 1 +. $(dirname "$0")/test-lib.sh || exit 1 add_email_corpus @@ -318,4 +318,44 @@ EOF test_expect_equal_file EXPECTED OUTPUT.clean restore_database +cat < c_head2 +#include +#include +#include +#include +int main (int argc, char** argv) +{ + notmuch_database_t *db; + notmuch_status_t stat; + char *msg = NULL; + notmuch_message_t *message = NULL; + const char *id = "1258471718-6781-1-git-send-email-dottedmag@dottedmag.net"; + + stat = notmuch_database_open_verbose (argv[1], NOTMUCH_DATABASE_MODE_READ_WRITE, &db, &msg); + if (stat != NOTMUCH_STATUS_SUCCESS) { + fprintf (stderr, "error opening database: %d %s\n", stat, msg ? msg : ""); + exit (1); + } + EXPECT0(notmuch_database_find_message (db, id, &message)); + assert(message != NULL); + EXPECT0(notmuch_database_close (db)); +EOF + +backup_database +test_begin_subtest "Handle getting message-id from closed database" +cat c_head2 - c_tail <<'EOF' | test_C ${MAIL_DIR} + { + const char *id2; + id2=notmuch_message_get_message_id (message); + printf("%s\n%d\n", id, id2==NULL); + } +EOF +cat < EXPECTED +== stdout == +1258471718-6781-1-git-send-email-dottedmag@dottedmag.net +1 +== stderr == +EOF +test_expect_equal_file EXPECTED OUTPUT + test_done