mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-25 12:28:09 +01:00
test: Test buttonization of id: links
This matches the current behavior of the buttonizer, so it passes, but many of these cases are not what you'd want (and some of them aren't even valid Xapian queries). The next patch will fix the handling of these cases and update the test.
This commit is contained in:
parent
b173037398
commit
65801835ee
2 changed files with 64 additions and 0 deletions
|
@ -106,5 +106,55 @@ test_emacs '(notmuch-search "from:lars@seas.harvard.edu and subject:\"Maildir st
|
||||||
(test-visible-output)'
|
(test-visible-output)'
|
||||||
test_expect_equal_file OUTPUT $EXPECTED/notmuch-show-indent-thread-content-off
|
test_expect_equal_file OUTPUT $EXPECTED/notmuch-show-indent-thread-content-off
|
||||||
|
|
||||||
|
test_begin_subtest "id buttonization"
|
||||||
|
add_message '[body]="
|
||||||
|
id:abc
|
||||||
|
id:abc.def. id:abc,def, id:abc;def; id:abc:def:
|
||||||
|
id:foo@bar.?baz? id:foo@bar!.baz!
|
||||||
|
(id:foo@bar.baz) [id:foo@bar.baz]
|
||||||
|
id:foo@bar.baz...
|
||||||
|
id:2+2=5
|
||||||
|
id:=_-:/.[]@$%+
|
||||||
|
id:abc)def
|
||||||
|
id:ab\"c def
|
||||||
|
id:\"abc\"def
|
||||||
|
id:\"ab\"\"c\"def
|
||||||
|
id:\"ab c\"def
|
||||||
|
id:\"abc\".def
|
||||||
|
id:\"abc
|
||||||
|
\"
|
||||||
|
id:)
|
||||||
|
id:
|
||||||
|
cid:xxx"'
|
||||||
|
test_emacs '(notmuch-show "id:'$gen_msg_id'")
|
||||||
|
(notmuch-test-mark-links)
|
||||||
|
(test-visible-output)'
|
||||||
|
cat <<EOF >EXPECTED
|
||||||
|
Notmuch Test Suite <test_suite@notmuchmail.org> (2001-01-05) (inbox)
|
||||||
|
Subject: id buttonization
|
||||||
|
To: Notmuch Test Suite <test_suite@notmuchmail.org>
|
||||||
|
Date: Fri, 05 Jan 2001 15:43:57 +0000
|
||||||
|
|
||||||
|
<<id:abc>>
|
||||||
|
<<id:abc.def.>> <<id:abc,def,>> <<id:abc;def;>> <<id:abc:def:>>
|
||||||
|
<<id:foo@bar.?baz?>> <<id:foo@bar!.baz!>>
|
||||||
|
(<<id:foo@bar.baz)>> [<<id:foo@bar.baz]>>
|
||||||
|
<<id:foo@bar.baz...>>
|
||||||
|
<<id:2+2=5>>
|
||||||
|
<<id:=_-:/.[]@$%+>>
|
||||||
|
<<id:abc)def>>
|
||||||
|
<<id:ab>>"c def
|
||||||
|
<<id:"abc">>def
|
||||||
|
<<id:"ab">>"c"def
|
||||||
|
id:"ab c"def
|
||||||
|
<<id:"abc">>.def
|
||||||
|
id:"abc
|
||||||
|
"
|
||||||
|
<<id:)>>
|
||||||
|
id:
|
||||||
|
c<<id:xxx>>
|
||||||
|
EOF
|
||||||
|
test_expect_equal_file OUTPUT EXPECTED
|
||||||
|
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
|
@ -107,6 +107,20 @@ nothing."
|
||||||
(ad-set-arg 1 (char-to-string char))
|
(ad-set-arg 1 (char-to-string char))
|
||||||
ad-do-it))))
|
ad-do-it))))
|
||||||
|
|
||||||
|
(defun notmuch-test-mark-links ()
|
||||||
|
"Enclose links in the current buffer with << and >>."
|
||||||
|
;; Links are often created by jit-lock functions
|
||||||
|
(jit-lock-fontify-now)
|
||||||
|
(save-excursion
|
||||||
|
(let ((inhibit-read-only t))
|
||||||
|
(goto-char (point-min))
|
||||||
|
(let ((button))
|
||||||
|
(while (setq button (next-button (point)))
|
||||||
|
(goto-char (button-start button))
|
||||||
|
(insert "<<")
|
||||||
|
(goto-char (button-end button))
|
||||||
|
(insert ">>"))))))
|
||||||
|
|
||||||
(defmacro notmuch-test-run (&rest body)
|
(defmacro notmuch-test-run (&rest body)
|
||||||
"Evaluate a BODY of test expressions and output the result."
|
"Evaluate a BODY of test expressions and output the result."
|
||||||
`(with-temp-buffer
|
`(with-temp-buffer
|
||||||
|
|
Loading…
Reference in a new issue