notmuch/test/emacs-hello
Dmitry Kurochkin 512df7ec47 test: add Emacs notmuch-hello tests for custom tags and queries section.
The tests use default values from customization widgets to make sure
that these customization widgets work (at least on basic level).

The custom queries section test is currently broken.
2012-05-06 19:44:42 -03:00

70 lines
2.9 KiB
Bash
Executable file

#!/usr/bin/env bash
test_description="Testing emacs notmuch-hello view"
. test-lib.sh
EXPECTED=$TEST_DIRECTORY/emacs.expected-output
add_email_corpus
test_begin_subtest "User-defined section with inbox tag"
test_emacs "(let ((notmuch-hello-sections
(list (lambda () (notmuch-hello-insert-searches
\"Test\" '((\"inbox\" . \"tag:inbox\")))))))
(notmuch-hello)
(test-output))"
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-new-section
test_begin_subtest "User-defined section with empty, hidden entry"
test_emacs "(let ((notmuch-hello-sections
(list (lambda () (notmuch-hello-insert-searches
\"Test-with-empty\"
'((\"inbox\" . \"tag:inbox\")
(\"doesnotexist\" . \"tag:doesnotexist\"))
:hide-empty-searches t)))))
(notmuch-hello)
(test-output))"
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-section-with-empty
test_begin_subtest "User-defined section, unread tag filtered out"
test_emacs "(let ((notmuch-hello-sections
(list (lambda () (notmuch-hello-insert-tags-section
\"Test-with-filtered\"
:hide-tags '(\"unread\"))))))
(notmuch-hello)
(test-output))"
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-section-hidden-tag
test_begin_subtest "User-defined section, different query for counts"
test_emacs "(let ((notmuch-hello-sections
(list (lambda () (notmuch-hello-insert-tags-section
\"Test-with-counts\"
:filter-count \"tag:signed\")))))
(notmuch-hello)
(test-output))"
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-section-counts
test_begin_subtest "Empty custom tags section"
test_emacs "(let* ((widget (widget-create 'notmuch-hello-tags-section))
(notmuch-hello-sections (list (widget-value widget))))
(notmuch-hello)
(test-output))"
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-empty-custom-tags-section
test_begin_subtest "Empty custom queries section"
test_subtest_known_broken
test_emacs "(let* ((widget (widget-create 'notmuch-hello-query-section))
(notmuch-hello-sections (list (widget-value widget))))
(notmuch-hello)
(test-output))"
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-empty-custom-queries-section
test_begin_subtest "Column alignment for tag/queries with long names"
tag=a-very-long-tag # length carefully calculated for 80 characters window width
notmuch tag +$tag '*'
test_emacs '(notmuch-hello)
(test-output)'
notmuch tag -$tag '*'
test_expect_equal_file OUTPUT $EXPECTED/notmuch-hello-long-names
test_done