notmuch/test/T465-emacs-unthreaded.sh
David Bremner 37f84d6d21 emacs/tree use notmuch-show-single-message
This is more efficient than notmuch-show-only-matching-messages, since
we do not parse the potentially large thread structure to find a
single message.

This is only a partial fix for notmuch-tree view, because displaying
the thread structure in the tree-mode window still crashes on long
threads. It is however enough to make unthreaded view handle long
threads.
2021-06-27 14:41:23 -03:00

37 lines
1.2 KiB
Bash
Executable file

#!/usr/bin/env bash
test_description="emacs unthreaded interface"
. $(dirname "$0")/test-lib.sh || exit 1
. $NOTMUCH_SRCDIR/test/test-lib-emacs.sh || exit 1
test_require_emacs
generate_message "[id]=large-thread-1" '[subject]="large thread"'
printf " 2001-01-05 Notmuch Test Suite large thread%43s(inbox unread)\n" >> EXPECTED.unthreaded
for num in $(seq 2 64); do
prev=$((num - 1))
generate_message '[subject]="large thread"' "[id]=large-thread-$num" "[in-reply-to]=\<large-thread-$prev\>"
printf " 2001-01-05 Notmuch Test Suite large thread%43s(inbox unread)\n" >> EXPECTED.unthreaded
done
printf "End of search results.\n" >> EXPECTED.unthreaded
notmuch new > new.output 2>&1
test_begin_subtest "large thread"
test_emacs '(let ((max-lisp-eval-depth 10))
(notmuch-unthreaded "subject:large-thread")
(notmuch-test-wait)
(test-output))'
test_expect_equal_file EXPECTED.unthreaded OUTPUT
test_begin_subtest "message from large thread (status)"
output=$(test_emacs '(let ((max-lisp-eval-depth 10))
(notmuch-unthreaded "subject:large-thread")
(notmuch-test-wait)
(notmuch-tree-show-message nil)
(notmuch-test-wait)
"SUCCESS")' )
test_expect_equal "$output" '"SUCCESS"'
test_done