mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-22 02:48:08 +01:00
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.
This commit is contained in:
parent
6307f306fd
commit
a8aa437bbc
2 changed files with 15 additions and 2 deletions
11
test/emacs
11
test/emacs
|
@ -12,13 +12,22 @@ expected=$(cat $EXPECTED/notmuch-hello)
|
||||||
test_expect_equal "$output" "$expected"
|
test_expect_equal "$output" "$expected"
|
||||||
|
|
||||||
test_begin_subtest "Basic notmuch-search view in emacs"
|
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)
|
expected=$(cat $EXPECTED/notmuch-search-tag-inbox)
|
||||||
test_expect_equal "$output" "$expected"
|
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"
|
test_begin_subtest "Basic notmuch-show view in emacs"
|
||||||
output=$(test_emacs '(notmuch-show "thread:0000000000000009") (message (buffer-string))' 2>&1)
|
output=$(test_emacs '(notmuch-show "thread:0000000000000009") (message (buffer-string))' 2>&1)
|
||||||
expected=$(cat $EXPECTED/notmuch-show-thread-9)
|
expected=$(cat $EXPECTED/notmuch-show-thread-9)
|
||||||
test_expect_equal "$output" "$expected"
|
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
|
test_done
|
||||||
|
|
|
@ -735,7 +735,11 @@ test_done () {
|
||||||
|
|
||||||
test_emacs () {
|
test_emacs () {
|
||||||
emacs_code="$1"
|
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})"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue