diff --git a/test/notmuch-test b/test/notmuch-test index 273408ef..2e5eb245 100755 --- a/test/notmuch-test +++ b/test/notmuch-test @@ -501,6 +501,39 @@ execute_expecting "search DURINGUUDATA" "" printf " Ensure content after uu data is indexed..." execute_expecting "search afteruudata" "thread:XXX 2000-01-01 [1/1] Notmuch Test Suite; uuencodetest (inbox unread)" +printf "\nTesting \"notmuch dump\" and \"notmuch restore\":\n" + +printf " Dumping all tags...\t\t" +$NOTMUCH dump dump.expected +echo " PASS" + +printf " Clearing all tags...\t\t" +sed -e 's/(\([^(]*\))$/()/' < dump.expected > clear.expected +$NOTMUCH restore clear.expected +$NOTMUCH dump clear.actual +if diff clear.expected clear.actual > /dev/null; then + echo " PASS" +else + echo " FAIL" + echo " Expected output: See file clear.expected" + echo " Actual output: See file clear.actual" +fi + +printf " Restoring original tags...\t" +$NOTMUCH restore dump.expected +$NOTMUCH dump dump.actual +if diff dump.expected dump.actual > /dev/null; then + echo " PASS" +else + echo " FAIL" + echo " Expected output: See file dump.expected" + echo " Actual output: See file dump.actual" +fi + +printf " Restore with nothing to do...\t" +$NOTMUCH restore dump.expected +echo " PASS" + cat <