diff options
author | Carl Worth <cworth@cworth.org> | 2011-03-10 16:53:46 -0800 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2011-03-10 16:53:46 -0800 |
commit | 708c4f46caae76d4366a6a8de369943a3adef443 (patch) | |
tree | 1ffe5201a5b4f9efb97e9478f4120b3257e827f6 /test | |
parent | 8a534dc60d5f4bf579eabda9ae482a1982de3e4e (diff) |
emacs: Don't drop error messages from "notmuch search"
With the previous commit, unexpected output before or between search results
would be displayed. However, trailing junk from the "notmuch search" output
would still be silently swallowed.
The most common case for an error message from "notmuch search" would be
an invalid command-line, and in that case, there would be no search results
and the trailing error message would get swallowed.
We fix the process sentinel to check for leftover data and add it to the
final buffer. We also add a test case to ensure this works.
Diffstat (limited to 'test')
-rwxr-xr-x | test/emacs-large-search-buffer | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/test/emacs-large-search-buffer b/test/emacs-large-search-buffer index 78b3ae8b..a3b5c79c 100755 --- a/test/emacs-large-search-buffer +++ b/test/emacs-large-search-buffer @@ -18,10 +18,16 @@ done notmuch new > /dev/null -test_begin_subtest 'Comparing emacs result to "notmuch search"' +test_begin_subtest "Ensure that emacs doesn't drop results" expected="$(notmuch search '*' | sed -e 's/^thread:[0-9a-f]* //' -e 's/;//' -e 's/xx*/[BLOB]/') End of search results." output=$(test_emacs '(notmuch-search "*") (notmuch-test-wait) (message (buffer-string))' 2>&1 | sed -e s', *, ,g' -e 's/xxx*/[BLOB]/g') test_expect_equal "$output" "$expected" +test_begin_subtest "Ensure that emacs doesn't drop error messages" +output=$(test_emacs '(notmuch-search "--this-option-does-not-exist") (notmuch-test-wait) (message (buffer-string))' 2>&1) +test_expect_equal "$output" "Error: Unexpected output from notmuch search: +Unrecognized option: --this-option-does-not-exist +End of search results. (process returned 1)" + test_done |