aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2020-08-01 09:26:00 -0300
committerDavid Bremner <david@tethera.net>2020-08-03 21:00:25 -0300
commite8ffbf84ffa5ae6c02afd339a75ebb24c0a958b2 (patch)
tree683fa4fe2c5293cc2b12100183d4c59fcadd498f /test
parentf4f5db0f1a6e89f56bfd73f8517c1cac7af20290 (diff)
test: regression test for n_directory_{get,set}_mtime
The mtime is cached, so closing the db is not a problem. Writing the mtime throws an exception, which is caught.
Diffstat (limited to 'test')
-rwxr-xr-xtest/T563-lib-directory.sh18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/T563-lib-directory.sh b/test/T563-lib-directory.sh
index 7e44e805..28325ff2 100755
--- a/test/T563-lib-directory.sh
+++ b/test/T563-lib-directory.sh
@@ -109,4 +109,22 @@ EOF
test_expect_equal_file EXPECTED OUTPUT
restore_database
+backup_database
+test_begin_subtest "get/set mtime of directory for a closed db"
+cat c_head - c_tail <<'EOF' | test_C ${MAIL_DIR}
+ {
+ time_t stamp = notmuch_directory_get_mtime (dir);
+ stat = notmuch_directory_set_mtime (dir, stamp);
+ printf ("%d\n", stat == NOTMUCH_STATUS_XAPIAN_EXCEPTION);
+ }
+EOF
+cat <<EOF > EXPECTED
+== stdout ==
+1
+== stderr ==
+A Xapian exception occurred setting directory mtime: Database has been closed.
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+restore_database
+
test_done