X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2FT560-lib-error.sh;h=1ef4ff23a37f1e30a69c878d8d81b67e01339e97;hp=c99b17ed2fee141a43fb9faca006d3318f20d98e;hb=02a2eeb427d6b424029f6e5e5ddad4c6ec987741;hpb=294bb6de20de7d9c83a45dca22888d557ece588a diff --git a/test/T560-lib-error.sh b/test/T560-lib-error.sh index c99b17ed..1ef4ff23 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 +. ./test-lib.sh || exit 1 backup_database () { rm -rf notmuch-dir-backup @@ -35,7 +35,7 @@ Error: Cannot open a database for a NULL path. EOF test_expect_equal_file EXPECTED OUTPUT -test_begin_subtest "Open nonexistent database" +test_begin_subtest "Open relative path" test_C <<'EOF' #include #include @@ -49,7 +49,43 @@ EOF cat <<'EOF' >EXPECTED == stdout == == stderr == -Error opening database at ./nonexistent/foo/.notmuch: No such file or directory +Error: Database path must be absolute. +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "Create database in relative path" +test_C <<'EOF' +#include +#include +int main (int argc, char** argv) +{ + notmuch_database_t *db; + notmuch_status_t stat; + stat = notmuch_database_create ("./nonexistent/foo", &db); +} +EOF +cat <<'EOF' >EXPECTED +== stdout == +== stderr == +Error: Database path must be absolute. +EOF +test_expect_equal_file EXPECTED OUTPUT + +test_begin_subtest "Open nonexistent database" +test_C ${PWD}/nonexistent/foo <<'EOF' +#include +#include +int main (int argc, char** argv) +{ + notmuch_database_t *db; + notmuch_status_t stat; + stat = notmuch_database_open (argv[1], 0, 0); +} +EOF +cat <<'EOF' >EXPECTED +== stdout == +== stderr == +Error opening database at CWD/nonexistent/foo/.notmuch: No such file or directory EOF test_expect_equal_file EXPECTED OUTPUT @@ -70,21 +106,21 @@ Error: Cannot create a database for a NULL path. EOF test_expect_equal_file EXPECTED OUTPUT -test_begin_subtest "Create database in non-existant directory" -test_C <<'EOF' +test_begin_subtest "Create database in nonexistent directory" +test_C ${PWD}/nonexistent/foo<<'EOF' #include #include int main (int argc, char** argv) { notmuch_database_t *db; notmuch_status_t stat; - stat = notmuch_database_create ("./nonexistent/foo", &db); + stat = notmuch_database_create (argv[1], &db); } EOF cat <<'EOF' >EXPECTED == stdout == == stderr == -Error: Cannot create database at ./nonexistent/foo: No such file or directory. +Error: Cannot create database at CWD/nonexistent/foo: No such file or directory. EOF test_expect_equal_file EXPECTED OUTPUT