diff options
author | Carl Worth <cworth@cworth.org> | 2010-10-22 17:02:07 -0700 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2010-10-22 17:02:07 -0700 |
commit | a8aa437bbcd9df6ba739ddd4d0ba402d65847d01 (patch) | |
tree | 928dfafbe1bf380d3bca9e85b96340d35f14d5ce /test | |
parent | 6307f306fd162cae12a39df3f291ecba2823fc58 (diff) |
test: Add simple tests for navigating notmuch-hello and notmuch-search views
We simulate the act of selecting the "inbox" saved search from
notmuch-hello and the act of selecting a desired thread from the
notmuch-search results.
The test for the navigation of notmuch-hello is currently marked as
BROKEN since its output is in the opposite order compared to the
'(notmuch-search "tag:inbox")' test. This question of ordering is a
currently open issue on the notmuch mailing list, so we'll let the
test suite reflect that for now.
Finally, this commit also abstracts some common emacs lisp code,
(waiting for the current buffer's process to complete), into a new
notmuch-test-wait function that is made available to anything calling
test_emacs.
Diffstat (limited to 'test')
-rwxr-xr-x | test/emacs | 11 | ||||
-rw-r--r-- | test/test-lib.sh | 6 |
2 files changed, 15 insertions, 2 deletions
@@ -12,13 +12,22 @@ expected=$(cat $EXPECTED/notmuch-hello) test_expect_equal "$output" "$expected" test_begin_subtest "Basic notmuch-search view in emacs" -output=$(test_emacs '(notmuch-search "tag:inbox") (while (get-buffer-process (current-buffer)) (sleep-for 0.1)) (message (buffer-string))' 2>&1) +output=$(test_emacs '(notmuch-search "tag:inbox") (notmuch-test-wait) (message (buffer-string))' 2>&1) expected=$(cat $EXPECTED/notmuch-search-tag-inbox) test_expect_equal "$output" "$expected" +test_begin_subtest "Navigation of notmuch-hello to search results + [XXX: Need to decide the correct order of the search results]" +output=$(test_emacs '(notmuch-hello) (goto-char (point-min)) (re-search-forward "inbox") (widget-button-press (point)) (notmuch-test-wait) (message (buffer-string))' 2>&1) +test_expect_equal_failure "$output" "$expected" + test_begin_subtest "Basic notmuch-show view in emacs" output=$(test_emacs '(notmuch-show "thread:0000000000000009") (message (buffer-string))' 2>&1) expected=$(cat $EXPECTED/notmuch-show-thread-9) test_expect_equal "$output" "$expected" +test_begin_subtest "Navigation of notmuch-search to thread view" +output=$(test_emacs '(notmuch-search "tag:inbox") (notmuch-test-wait) (goto-char (point-min)) (re-search-forward "Working with Maildir") (notmuch-search-show-thread) (notmuch-test-wait) (message (buffer-string))' 2>&1) +test_expect_equal "$output" "$expected" + test_done diff --git a/test/test-lib.sh b/test/test-lib.sh index 6c9c93e..d9bb254 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -735,7 +735,11 @@ test_done () { test_emacs () { emacs_code="$1" - emacs --batch --no-site-file --directory ../../emacs --load notmuch.el --eval "(progn (set-frame-width (window-frame (get-buffer-window)) 80) ${emacs_code})" + emacs --batch --no-site-file --directory ../../emacs --load notmuch.el \ + --eval "(defun notmuch-test-wait () + (while (get-buffer-process (current-buffer)) + (sleep-for 0.1)))" \ + --eval "(progn (set-frame-width (window-frame (get-buffer-window)) 80) ${emacs_code})" } |