X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=test%2FT310-emacs.sh;h=61bc369af494208aa919073f244d835a3912ca45;hb=a5c1536d9a631f15c74602ef12a0867d278a7af0;hp=863219d9f9e973395e66a8507eeac6b5e044a9c9;hpb=a755c9d6a9099366cc82ba3a4bee8e6d2b83d529;p=notmuch
diff --git a/test/T310-emacs.sh b/test/T310-emacs.sh
index 863219d9..61bc369a 100755
--- a/test/T310-emacs.sh
+++ b/test/T310-emacs.sh
@@ -1,12 +1,16 @@
#!/usr/bin/env bash
test_description="emacs interface"
-. ./test-lib.sh
+. ./test-lib.sh || exit 1
EXPECTED=$TEST_DIRECTORY/emacs.expected-output
add_email_corpus
+# syntax errors in test-lib.el cause mysterious failures
+test_expect_success 'Syntax of emacs test library' \
+ "${TEST_EMACS} -Q --batch --load $TEST_DIRECTORY/test-lib.el"
+
test_begin_subtest "Basic notmuch-hello view in emacs"
test_emacs '(notmuch-hello)
(test-output)'
@@ -479,7 +483,7 @@ test_expect_equal_file OUTPUT EXPECTED
test_begin_subtest "Reply within emacs to an html-only message"
add_message '[content-type]="text/html"' \
'[body]="Hi,
This is an HTML test message.
OK?"'
-test_emacs "(let ((message-hidden-headers '()) (mm-text-html-renderer 'html2text))
+test_emacs "(let ((message-hidden-headers '()))
(notmuch-show \"id:${gen_msg_id}\")
(notmuch-show-reply)
(test-output))"
@@ -723,7 +727,7 @@ inbox,stashtest
${gen_msg_filename}
http://mid.gmane.org/bought
http://marc.info/?i=bought
-http://mail-archive.com/search?l=mid&q=bought
+http://mid.mail-archive.com/bought
EOF
test_expect_equal_file OUTPUT EXPECTED
@@ -873,7 +877,8 @@ exit 1
EOF
chmod a+x notmuch_fail
test_emacs "(let ((notmuch-command \"$PWD/notmuch_fail\"))
- (with-current-buffer \"*Messages*\" (erase-buffer))
+ (with-current-buffer \"*Messages*\"
+ (let ((inhibit-read-only t)) (erase-buffer)))
(with-current-buffer (get-buffer-create \"*Notmuch errors*\")
(erase-buffer))
(notmuch-search \"tag:inbox\")
@@ -905,7 +910,8 @@ exit 0
EOF
chmod a+x notmuch_fail
test_emacs "(let ((notmuch-command \"$PWD/notmuch_fail\"))
- (with-current-buffer \"*Messages*\" (erase-buffer))
+ (with-current-buffer \"*Messages*\"
+ (let ((inhibit-read-only t)) (erase-buffer)))
(with-current-buffer (get-buffer-create \"*Notmuch errors*\")
(erase-buffer))
(notmuch-search \"tag:inbox\")
@@ -949,4 +955,15 @@ test_emacs '(notmuch-search "subject:\"search race test\" -subject:two")
output=$(notmuch search --output=messages 'tag:search-global-race-tag')
test_expect_equal "$output" "id:$gen_msg_id_1"
+test_begin_subtest "Term escaping"
+output=$(test_emacs "(mapcar 'notmuch-escape-boolean-term (list
+ \"\"
+ \"abc\`~\!@#\$%^&*-=_+123\"
+ \"(abc\"
+ \")abc\"
+ \"\\\"abc\"
+ \"\x01xyz\"
+ \"\\x201cxyz\\x201d\"))")
+test_expect_equal "$output" '("\"\"" "abc`~!@#$%^&*-=_+123" "\"(abc\"" "\")abc\"" "\"\"\"abc\"" "\"'$'\x01''xyz\"" "\"âxyzâ\"")'
+
test_done