mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
test: add two known broken tests for missing config files
The documentation claims that the database will be set to NULL in this case, but it is currently not happening. Based on a reproducer [1] from Austin Ray. [1]: id:20211021190401.imirxau2ewke6e2m@athena
This commit is contained in:
parent
fb02817943
commit
a942cb8ee3
1 changed files with 43 additions and 0 deletions
|
@ -849,4 +849,47 @@ zzzafter afterval
|
|||
EOF
|
||||
test_expect_equal_file EXPECTED OUTPUT
|
||||
|
||||
cat <<EOF > c_head3
|
||||
#include <notmuch-test.h>
|
||||
int main (int argc, char **argv) {
|
||||
notmuch_status_t stat;
|
||||
notmuch_database_t *db = NULL;
|
||||
EOF
|
||||
|
||||
cat <<EOF > c_tail3
|
||||
printf("db == NULL: %d\n", db == NULL);
|
||||
}
|
||||
EOF
|
||||
|
||||
test_begin_subtest "open: database set to null on missing config"
|
||||
test_subtest_known_broken
|
||||
cat c_head3 - c_tail3 <<'EOF' | test_C ${MAIL_DIR}
|
||||
notmuch_status_t st = notmuch_database_open_with_config(argv[1],
|
||||
NOTMUCH_DATABASE_MODE_READ_ONLY,
|
||||
"/nonexistent", NULL, &db, NULL);
|
||||
EOF
|
||||
cat <<EOF> EXPECTED
|
||||
== stdout ==
|
||||
db == NULL: 1
|
||||
== stderr ==
|
||||
EOF
|
||||
test_expect_equal_file EXPECTED OUTPUT
|
||||
|
||||
test_begin_subtest "open: database set to null on missing config (env)"
|
||||
test_subtest_known_broken
|
||||
old_NOTMUCH_CONFIG=${NOTMUCH_CONFIG}
|
||||
NOTMUCH_CONFIG="/nonexistent"
|
||||
cat c_head3 - c_tail3 <<'EOF' | test_C ${MAIL_DIR}
|
||||
notmuch_status_t st = notmuch_database_open_with_config(argv[1],
|
||||
NOTMUCH_DATABASE_MODE_READ_ONLY,
|
||||
NULL, NULL, &db, NULL);
|
||||
EOF
|
||||
NOTMUCH_CONFIG=${old_NOTMUCH_CONFIG}
|
||||
cat <<EOF> EXPECTED
|
||||
== stdout ==
|
||||
db == NULL: 1
|
||||
== stderr ==
|
||||
EOF
|
||||
test_expect_equal_file EXPECTED OUTPUT
|
||||
|
||||
test_done
|
||||
|
|
Loading…
Reference in a new issue