unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
blob a1ed1c2b90ec7c821d6033a013ba44155a2296f1 3311 bytes (raw)
name: test/T440-emacs-hello.sh 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 
#!/usr/bin/env bash

test_description="emacs notmuch-hello view"
. $(dirname "$0")/test-lib.sh || exit 1
. $NOTMUCH_SRCDIR/test/test-lib-emacs.sh || exit 1

EXPECTED=$NOTMUCH_SRCDIR/test/emacs.expected-output

test_require_emacs
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 $EXPECTED/notmuch-hello-new-section OUTPUT

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 $EXPECTED/notmuch-hello-section-with-empty OUTPUT

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 $EXPECTED/notmuch-hello-section-hidden-tag OUTPUT

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 $EXPECTED/notmuch-hello-section-counts OUTPUT

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 $EXPECTED/notmuch-hello-empty-custom-tags-section OUTPUT

test_begin_subtest "Empty custom queries section"
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 $EXPECTED/notmuch-hello-empty-custom-queries-section OUTPUT

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 $EXPECTED/notmuch-hello-long-names OUTPUT

test_begin_subtest "notmuch-hello with nonexistent CWD"
test_emacs '
      (notmuch-hello)
      (test-log-error
        (let ((default-directory "/nonexistent"))
	  (notmuch-hello-update)))'
test_expect_equal "$(cat MESSAGES)" "COMPLETE"

test_done

debug log:

solving a1ed1c2b ...
found a1ed1c2b in https://yhetil.org/notmuch.git/

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).