test/emacs: test for functions in notmuch-search-result-format.

Based on the commit message in id:20210221151902.2301690-3-dme@dme.org

Add the function notmuch-test-result-flags to test-lib.el to avoid
repeating it in 3 T*.sh files.
This commit is contained in:
David Bremner 2021-08-30 12:49:06 -07:00
parent 17bfc25bb3
commit dc8262bd33
7 changed files with 192 additions and 0 deletions

View file

@ -41,6 +41,20 @@ test_emacs '(notmuch-search "tag:inbox")
(test-output)' (test-output)'
test_expect_equal_file $EXPECTED/notmuch-search-tag-inbox OUTPUT test_expect_equal_file $EXPECTED/notmuch-search-tag-inbox OUTPUT
test_begin_subtest "Functions in search-result-format"
test_emacs '(let
((notmuch-search-result-format
(quote ((notmuch-test-result-flags . "%s ")
("date" . "%12s ")
("count" . "%9s ")
("authors" . "%-30s ")
("subject" . "%s ")
("tags" . "(%s)")))))
(notmuch-search "tag:inbox")
(notmuch-test-wait)
(test-output))'
test_expect_equal_file $EXPECTED/search-result-format-function OUTPUT
test_begin_subtest "Incremental parsing of search results" test_begin_subtest "Incremental parsing of search results"
test_emacs "(cl-letf* (((symbol-function 'orig) test_emacs "(cl-letf* (((symbol-function 'orig)
(symbol-function 'notmuch-search-process-filter)) (symbol-function 'notmuch-search-process-filter))

View file

@ -179,4 +179,19 @@ output=$(test_emacs '(notmuch-tree "tag:inbox")
(notmuch-show-stash-message-id)') (notmuch-show-stash-message-id)')
test_expect_equal "$output" "\"Stashed: id:1258493565-13508-1-git-send-email-keithp@keithp.com\"" test_expect_equal "$output" "\"Stashed: id:1258493565-13508-1-git-send-email-keithp@keithp.com\""
test_begin_subtest "Functions in tree-result-format"
test_emacs '
(let
((notmuch-tree-result-format
(quote (("date" . "%12s ")
("authors" . "%-20s")
((("tree" . "%s")
("subject" . "%s")) . " %-54s ")
(notmuch-test-result-flags . "(%s)")))))
(notmuch-tree "tag:inbox")
(notmuch-test-wait)
(test-output))
'
test_expect_equal_file $EXPECTED/result-format-function OUTPUT
test_done test_done

View file

@ -6,6 +6,8 @@ test_description="emacs unthreaded interface"
test_require_emacs test_require_emacs
EXPECTED=$NOTMUCH_SRCDIR/test/emacs-unthreaded.expected-output
generate_message "[id]=large-thread-1" '[subject]="large thread"' generate_message "[id]=large-thread-1" '[subject]="large thread"'
printf " 2001-01-05 Notmuch Test Suite large thread%43s(inbox unread)\n" >> EXPECTED.unthreaded printf " 2001-01-05 Notmuch Test Suite large thread%43s(inbox unread)\n" >> EXPECTED.unthreaded
@ -34,4 +36,19 @@ output=$(test_emacs '(let ((max-lisp-eval-depth 10))
"SUCCESS")' ) "SUCCESS")' )
test_expect_equal "$output" '"SUCCESS"' test_expect_equal "$output" '"SUCCESS"'
add_email_corpus
test_begin_subtest "Functions in unthreaded-result-format"
test_emacs '
(let
((notmuch-unthreaded-result-format
(quote (("date" . "%12s ")
("authors" . "%-20s")
("subject" . "%-54s")
(notmuch-test-result-flags . "(%s)")))))
(notmuch-unthreaded "tag:inbox")
(notmuch-test-wait)
(test-output))
'
test_expect_equal_file $EXPECTED/result-format-function OUTPUT
test_done test_done

View file

@ -0,0 +1,53 @@
2010-12-29 François Boulogne ─►[aur-general] Guidelines: cp, mkdir vs install ( ui)
2010-12-16 Olivier Berger ─►Essai accentué ( ui)
2009-11-18 Chris Wilson ─►[notmuch] [PATCH 1/2] Makefile: evaluate pkg-config once ( ui)
2009-11-18 Alex Botero-Lowry ┬►[notmuch] [PATCH] Error out if no query is supplied to search instead of going into an infinite loop (& ui)
2009-11-18 Carl Worth ╰─►[notmuch] [PATCH] Error out if no query is supplied to search instead of going into an infinite loop ( ui)
2009-11-17 Ingmar Vanhassel ┬►[notmuch] [PATCH] Typsos ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Adrian Perez de Cast ┬►[notmuch] Introducing myself ( =ui)
2009-11-18 Keith Packard ├─► ... ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Israel Herraiz ┬►[notmuch] New to the list ( ui)
2009-11-18 Keith Packard ├─► ... ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Jan Janak ┬►[notmuch] What a great idea! ( ui)
2009-11-17 Jan Janak ├─► ... ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Jan Janak ┬►[notmuch] [PATCH] Older versions of install do not support -C. ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Aron Griffis ┬►[notmuch] archive ( ui)
2009-11-18 Keith Packard ╰┬► ... ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Keith Packard ┬►[notmuch] [PATCH] Make notmuch-show 'X' (and 'x') commands remove inbox (and unread) tags ( ui)
2009-11-18 Carl Worth ╰─►[notmuch] [PATCH] Make notmuch-show 'X' (and 'x') commands remove inbox (and unread) tags ( ui)
2009-11-17 Lars Kellogg-Stedman ┬►[notmuch] Working with Maildir storage? ( = i)
2009-11-17 Mikhail Gusarov ├┬► ... ( =ui)
2009-11-17 Lars Kellogg-Stedman │╰┬► ... ( =ui)
2009-11-17 Mikhail Gusarov │ ├─► ... ( ui)
2009-11-17 Keith Packard │ ╰┬► ... ( ui)
2009-11-18 Lars Kellogg-Stedman │ ╰─► ... ( =ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-17 Mikhail Gusarov ┬►[notmuch] [PATCH 1/2] Close message file after parsing message headers ( i)
2009-11-17 Mikhail Gusarov ├─►[notmuch] [PATCH 2/2] Include <stdint.h> to get uint32_t in C++ file with gcc 4.4 ( ui)
2009-11-17 Carl Worth ╰┬►[notmuch] [PATCH 1/2] Close message file after parsing message headers ( ui)
2009-11-17 Keith Packard ╰┬► ... ( ui)
2009-11-18 Carl Worth ╰─► ... ( ui)
2009-11-18 Keith Packard ┬►[notmuch] [PATCH] Create a default notmuch-show-hook that highlights URLs and uses word-wrap ( ui)
2009-11-18 Alexander Botero-Low ╰─►[notmuch] [PATCH] Create a default notmuch-show-hook that highlights URLs and uses word-wrap ( ui)
2009-11-18 Alexander Botero-Low ─►[notmuch] request for pull ( ui)
2009-11-18 Jjgod Jiang ┬►[notmuch] Mac OS X/Darwin compatibility issues ( ui)
2009-11-18 Alexander Botero-Low ╰┬► ... ( ui)
2009-11-18 Jjgod Jiang ╰┬► ... ( ui)
2009-11-18 Alexander Botero-Low ╰─► ... ( ui)
2009-11-18 Rolland Santimano ─►[notmuch] Link to mailing list archives ? ( ui)
2009-11-18 Jan Janak ─►[notmuch] [PATCH] notmuch new: Support for conversion of spool subdirectories into tags ( ui)
2009-11-18 Stewart Smith ─►[notmuch] [PATCH] count_files: sort directory in inode order before statting ( ui)
2009-11-18 Stewart Smith ─►[notmuch] [PATCH 2/2] Read mail directory in inode number order ( ui)
2009-11-18 Stewart Smith ─►[notmuch] [PATCH] Fix linking with gcc to use g++ to link in C++ libs. ( ui)
2009-11-18 Lars Kellogg-Stedman ┬►[notmuch] "notmuch help" outputs to stderr? (&=ui)
2009-11-18 Lars Kellogg-Stedman ╰─► ... (&=ui)
2009-11-17 Mikhail Gusarov ─►[notmuch] [PATCH] Handle rename of message file ( ui)
2009-11-17 Alex Botero-Lowry ┬►[notmuch] preliminary FreeBSD support (& ui)
2009-11-17 Carl Worth ╰─► ... ( ui)
End of search results.

View file

@ -0,0 +1,53 @@
2010-12-29 François Boulogne [aur-general] Guidelines: cp, mkdir vs install ( ui)
2010-12-16 Olivier Berger Essai accentué ( ui)
2009-11-18 Chris Wilson [notmuch] [PATCH 1/2] Makefile: evaluate pkg-config once( ui)
2009-11-18 Carl Worth [notmuch] [PATCH] Error out if no query is supplied to search instead of going into an infinite loop( ui)
2009-11-18 Carl Worth [notmuch] [PATCH] Typsos ( ui)
2009-11-18 Carl Worth [notmuch] Introducing myself ( ui)
2009-11-18 Carl Worth [notmuch] New to the list ( ui)
2009-11-18 Carl Worth [notmuch] What a great idea! ( ui)
2009-11-18 Carl Worth [notmuch] [PATCH] Older versions of install do not support -C.( ui)
2009-11-18 Carl Worth [notmuch] archive ( ui)
2009-11-18 Carl Worth [notmuch] [PATCH] Make notmuch-show 'X' (and 'x') commands remove inbox (and unread) tags( ui)
2009-11-18 Carl Worth [notmuch] Working with Maildir storage? ( ui)
2009-11-18 Carl Worth [notmuch] [PATCH 1/2] Close message file after parsing message headers( ui)
2009-11-18 Alexander Botero-Low[notmuch] [PATCH] Create a default notmuch-show-hook that highlights URLs and uses word-wrap( ui)
2009-11-18 Keith Packard [notmuch] [PATCH] Create a default notmuch-show-hook that highlights URLs and uses word-wrap( ui)
2009-11-18 Alexander Botero-Low[notmuch] request for pull ( ui)
2009-11-18 Alexander Botero-Low[notmuch] Mac OS X/Darwin compatibility issues ( ui)
2009-11-18 Jjgod Jiang [notmuch] Mac OS X/Darwin compatibility issues ( ui)
2009-11-18 Alexander Botero-Low[notmuch] Mac OS X/Darwin compatibility issues ( ui)
2009-11-18 Rolland Santimano [notmuch] Link to mailing list archives ? ( ui)
2009-11-18 Jan Janak [notmuch] [PATCH] notmuch new: Support for conversion of spool subdirectories into tags( ui)
2009-11-18 Jjgod Jiang [notmuch] Mac OS X/Darwin compatibility issues ( ui)
2009-11-18 Stewart Smith [notmuch] [PATCH] count_files: sort directory in inode order before statting( ui)
2009-11-18 Keith Packard [notmuch] archive ( ui)
2009-11-18 Keith Packard [notmuch] Introducing myself ( ui)
2009-11-18 Keith Packard [notmuch] New to the list ( ui)
2009-11-18 Stewart Smith [notmuch] [PATCH 2/2] Read mail directory in inode number order( ui)
2009-11-18 Stewart Smith [notmuch] [PATCH] Fix linking with gcc to use g++ to link in C++ libs.( ui)
2009-11-18 Lars Kellogg-Stedman[notmuch] "notmuch help" outputs to stderr? (&=ui)
2009-11-18 Lars Kellogg-Stedman[notmuch] "notmuch help" outputs to stderr? (&=ui)
2009-11-18 Lars Kellogg-Stedman[notmuch] Working with Maildir storage? ( =ui)
2009-11-18 Alex Botero-Lowry [notmuch] [PATCH] Error out if no query is supplied to search instead of going into an infinite loop(& ui)
2009-11-17 Ingmar Vanhassel [notmuch] [PATCH] Typsos ( ui)
2009-11-17 Aron Griffis [notmuch] archive ( ui)
2009-11-17 Adrian Perez de Cast[notmuch] Introducing myself ( =ui)
2009-11-17 Israel Herraiz [notmuch] New to the list ( ui)
2009-11-17 Jan Janak [notmuch] What a great idea! ( ui)
2009-11-17 Jan Janak [notmuch] What a great idea! ( ui)
2009-11-17 Jan Janak [notmuch] [PATCH] Older versions of install do not support -C.( ui)
2009-11-17 Keith Packard [notmuch] [PATCH] Make notmuch-show 'X' (and 'x') commands remove inbox (and unread) tags( ui)
2009-11-17 Keith Packard [notmuch] Working with Maildir storage? ( ui)
2009-11-17 Keith Packard [notmuch] [PATCH 1/2] Close message file after parsing message headers( ui)
2009-11-17 Mikhail Gusarov [notmuch] [PATCH] Handle rename of message file ( ui)
2009-11-17 Mikhail Gusarov [notmuch] Working with Maildir storage? ( ui)
2009-11-17 Lars Kellogg-Stedman[notmuch] Working with Maildir storage? ( =ui)
2009-11-17 Carl Worth [notmuch] preliminary FreeBSD support ( ui)
2009-11-17 Alex Botero-Lowry [notmuch] preliminary FreeBSD support (& ui)
2009-11-17 Mikhail Gusarov [notmuch] Working with Maildir storage? ( =ui)
2009-11-17 Lars Kellogg-Stedman[notmuch] Working with Maildir storage? ( =ui)
2009-11-17 Carl Worth [notmuch] [PATCH 1/2] Close message file after parsing message headers( ui)
2009-11-17 Mikhail Gusarov [notmuch] [PATCH 2/2] Include <stdint.h> to get uint32_t in C++ file with gcc 4.4( ui)
2009-11-17 Mikhail Gusarov [notmuch] [PATCH 1/2] Close message file after parsing message headers( ui)
End of search results.

View file

@ -0,0 +1,25 @@
ui 2010-12-29 [1/1] François Boulogne [aur-general] Guidelines: cp, mkdir vs install (inbox unread)
ui 2010-12-16 [1/1] Olivier Berger Essai accentué (inbox unread)
ui 2009-11-18 [1/1] Chris Wilson [notmuch] [PATCH 1/2] Makefile: evaluate pkg-config once (inbox unread)
& ui 2009-11-18 [2/2] Alex Botero-Lowry, Carl Worth [notmuch] [PATCH] Error out if no query is supplied to search instead of going into an infinite loop (attachment inbox unread)
ui 2009-11-18 [2/2] Ingmar Vanhassel, Carl Worth [notmuch] [PATCH] Typsos (inbox unread)
=ui 2009-11-18 [3/3] Adrian Perez de Castro, Keith Packard, Carl Worth [notmuch] Introducing myself (inbox signed unread)
ui 2009-11-18 [3/3] Israel Herraiz, Keith Packard, Carl Worth [notmuch] New to the list (inbox unread)
ui 2009-11-18 [3/3] Jan Janak, Carl Worth [notmuch] What a great idea! (inbox unread)
ui 2009-11-18 [2/2] Jan Janak, Carl Worth [notmuch] [PATCH] Older versions of install do not support -C. (inbox unread)
ui 2009-11-18 [3/3] Aron Griffis, Keith Packard, Carl Worth [notmuch] archive (inbox unread)
ui 2009-11-18 [2/2] Keith Packard, Carl Worth [notmuch] [PATCH] Make notmuch-show 'X' (and 'x') commands remove inbox (and unread) tags (inbox unread)
=ui 2009-11-18 [7/7] Lars Kellogg-Stedman, Mikhail Gusarov, Keith Packard, Carl Worth [notmuch] Working with Maildir storage? (inbox signed unread)
ui 2009-11-18 [5/5] Mikhail Gusarov, Carl Worth, Keith Packard [notmuch] [PATCH 1/2] Close message file after parsing message headers (inbox unread)
ui 2009-11-18 [2/2] Keith Packard, Alexander Botero-Lowry [notmuch] [PATCH] Create a default notmuch-show-hook that highlights URLs and uses word-wrap (inbox unread)
ui 2009-11-18 [1/1] Alexander Botero-Lowry [notmuch] request for pull (inbox unread)
ui 2009-11-18 [4/4] Jjgod Jiang, Alexander Botero-Lowry [notmuch] Mac OS X/Darwin compatibility issues (inbox unread)
ui 2009-11-18 [1/1] Rolland Santimano [notmuch] Link to mailing list archives ? (inbox unread)
ui 2009-11-18 [1/1] Jan Janak [notmuch] [PATCH] notmuch new: Support for conversion of spool subdirectories into tags (inbox unread)
ui 2009-11-18 [1/1] Stewart Smith [notmuch] [PATCH] count_files: sort directory in inode order before statting (inbox unread)
ui 2009-11-18 [1/1] Stewart Smith [notmuch] [PATCH 2/2] Read mail directory in inode number order (inbox unread)
ui 2009-11-18 [1/1] Stewart Smith [notmuch] [PATCH] Fix linking with gcc to use g++ to link in C++ libs. (inbox unread)
&=ui 2009-11-18 [2/2] Lars Kellogg-Stedman [notmuch] "notmuch help" outputs to stderr? (attachment inbox signed unread)
ui 2009-11-17 [1/1] Mikhail Gusarov [notmuch] [PATCH] Handle rename of message file (inbox unread)
& ui 2009-11-17 [2/2] Alex Botero-Lowry, Carl Worth [notmuch] preliminary FreeBSD support (attachment inbox unread)
End of search results.

View file

@ -159,6 +159,21 @@ running, quit if it terminated."
(lambda (x) `(prog1 ,x (notmuch-post-command))) (lambda (x) `(prog1 ,x (notmuch-post-command)))
body))) body)))
;; For testing functions in
;; notmuch-{search,tree,unsorted}-result-format
(defun notmuch-test-result-flags (format-string result)
(let ((tags-to-letters (quote (("attachment" . "&")
("signed" . "=")
("unread" . "u")
("inbox" . "i"))))
(tags (plist-get result :tags)))
(format format-string
(mapconcat (lambda (t2l)
(if (member (car t2l) tags)
(cdr t2l)
" "))
tags-to-letters ""))))
;; For historical reasons, we hide deleted tags by default in the test ;; For historical reasons, we hide deleted tags by default in the test
;; suite ;; suite
(setq notmuch-tag-deleted-formats (setq notmuch-tag-deleted-formats