]> git.notmuchmail.org Git - notmuch/blobdiff - test/dump-restore
test/dump-restore: add tests for restore --accumulate
[notmuch] / test / dump-restore
index b66db997ed3fd743f16c6c8d5ec1a188db7240f1..0f62d9da2e8b0ad6ffc1c7e333e4eeef0883007f 100755 (executable)
@@ -9,12 +9,27 @@ test_expect_success 'Dumping all tags' \
   notmuch new &&
   notmuch dump > dump.expected'
 
+# The use of from:cworth is rather arbitrary: it matches some of the
+# email corpus' messages, but not all of them.
+
+test_expect_success 'Dumping all tags II' \
+  'notmuch tag +ABC +DEF -- from:cworth &&
+  notmuch dump > dump-ABC_DEF.expected &&
+  ! cmp dump.expected dump-ABC_DEF.expected'
+
 test_expect_success 'Clearing all tags' \
   'sed -e "s/(\([^(]*\))$/()/" < dump.expected > clear.expected &&
   notmuch restore clear.expected &&
   notmuch dump > clear.actual &&
   test_cmp clear.expected clear.actual'
 
+test_subtest_known_broken      # missing --accumuluate
+test_expect_success 'Accumulate original tags' \
+  'notmuch tag +ABC +DEF -- from:cworth &&
+  notmuch restore --accumulate < dump.expected &&
+  notmuch dump > dump.actual &&
+  test_cmp dump-ABC_DEF.expected dump.actual'
+
 test_expect_success 'Restoring original tags' \
   'notmuch restore dump.expected &&
   notmuch dump > dump.actual &&
@@ -25,6 +40,18 @@ test_expect_success 'Restore with nothing to do' \
   notmuch dump > dump.actual &&
   test_cmp dump.expected dump.actual'
 
+test_subtest_known_broken      # missing --accumuluate
+test_expect_success 'Restore with nothing to do, II' \
+  'notmuch restore --accumulate dump.expected &&
+  notmuch dump > dump.actual &&
+  test_cmp dump.expected dump.actual'
+
+test_subtest_known_broken      # missing --accumuluate
+test_expect_success 'Restore with nothing to do, III' \
+  'notmuch restore --accumulate < clear.expected &&
+  notmuch dump > dump.actual &&
+  test_cmp dump.expected dump.actual'
+
 # notmuch restore currently only considers the first argument.
 test_subtest_known_broken
 test_expect_success 'Invalid restore invocation' \