test/dump-restore: add tests for restore --accumulate

Flesh out what ``notmuch restore --accumulate'' is supposed to do.
Its tests are currently XFAILed; the functionality will be added in
future patch(es).

Based on a patch by Thomas Schwinge:

      id:"1317317811-29540-1-git-send-email-thomas@schwinge.name"
This commit is contained in:
David Bremner 2011-10-21 13:04:46 -03:00
parent 941cb03e57
commit 42c80dfd07

View file

@ -9,12 +9,27 @@ test_expect_success 'Dumping all tags' \
notmuch new && notmuch new &&
notmuch dump > dump.expected' 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' \ test_expect_success 'Clearing all tags' \
'sed -e "s/(\([^(]*\))$/()/" < dump.expected > clear.expected && 'sed -e "s/(\([^(]*\))$/()/" < dump.expected > clear.expected &&
notmuch restore clear.expected && notmuch restore clear.expected &&
notmuch dump > clear.actual && notmuch dump > clear.actual &&
test_cmp clear.expected 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' \ test_expect_success 'Restoring original tags' \
'notmuch restore dump.expected && 'notmuch restore dump.expected &&
notmuch dump > dump.actual && notmuch dump > dump.actual &&
@ -25,6 +40,18 @@ test_expect_success 'Restore with nothing to do' \
notmuch dump > dump.actual && notmuch dump > dump.actual &&
test_cmp dump.expected 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. # notmuch restore currently only considers the first argument.
test_subtest_known_broken test_subtest_known_broken
test_expect_success 'Invalid restore invocation' \ test_expect_success 'Invalid restore invocation' \