aboutsummaryrefslogtreecommitdiff
path: root/test/T560-lib-error.sh
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2020-07-08 21:17:05 -0300
committerDavid Bremner <david@tethera.net>2020-07-20 08:54:42 -0300
commit9244f588608ccedeab5e82e965a86c04a22be4b7 (patch)
tree6fd28248a7982dcab802ff79eba482bad6f4e3a3 /test/T560-lib-error.sh
parenta2b90dc084c0224e56c1e63773048545788c7ad4 (diff)
test: regression tests of n_m_freeze and n_m_thaw on closed db
Neither of these accesses the database, so should be safe. Add the tests to catch any changes in exception throwing.
Diffstat (limited to 'test/T560-lib-error.sh')
-rwxr-xr-xtest/T560-lib-error.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/T560-lib-error.sh b/test/T560-lib-error.sh
index 5b5ad765..1ee9bd06 100755
--- a/test/T560-lib-error.sh
+++ b/test/T560-lib-error.sh
@@ -598,4 +598,36 @@ cat <<EOF > EXPECTED
EOF
test_expect_equal_file EXPECTED OUTPUT
+test_begin_subtest "Handle freezing message with closed db"
+cat c_head2 - c_tail <<'EOF' | test_C ${MAIL_DIR}
+ {
+ notmuch_status_t status;
+ status = notmuch_message_freeze (message);
+ printf("%d\n%d\n", message != NULL, status == NOTMUCH_STATUS_SUCCESS);
+ }
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+1
+1
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
+test_begin_subtest "Handle thawing message with closed db"
+cat c_head2 - c_tail <<'EOF' | test_C ${MAIL_DIR}
+ {
+ notmuch_status_t status;
+ status = notmuch_message_thaw (message);
+ printf("%d\n%d\n", message != NULL, status == NOTMUCH_STATUS_UNBALANCED_FREEZE_THAW);
+ }
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+1
+1
+== stderr ==
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
test_done