aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Carl Worth <cworth@cworth.org>2010-10-22 12:05:17 -0700
committerGravatar Carl Worth <cworth@cworth.org>2010-10-22 12:09:56 -0700
commit209e756cd4571964821221d5d4d8447b0aadd43d (patch)
treef0ef89b2891560f04ba73b5175a6ce3603b36bab
parentb97a763dc110f4bc74390e34acb29033c0c8bc90 (diff)
test: Add a new test_emacs function to test-lib.sh
This should be quite handy for doing automated testing of the emacs-based functionality in notmuch. This function invokes emacs with the necessary command-line arguments, (to run in batch mode with no local initialization, to load the notmuch code from the source directory, and to ensure an 80-column width).
-rw-r--r--test/README8
-rw-r--r--test/test-lib.sh6
2 files changed, 14 insertions, 0 deletions
diff --git a/test/README b/test/README
index 86afab5c..1a5b5167 100644
--- a/test/README
+++ b/test/README
@@ -154,6 +154,14 @@ library for your script to use.
argument. This is primarily meant for use during the
development of a new test script.
+ test_emacs <emacs-lisp-expressions>
+
+ This function executes the provided emacs lisp script within
+ emacs. The script can be a sequence of emacs lisp expressions,
+ (that is, they will be evaluated within a progn form). The lisp
+ expressions can call `message' to generate output on stdout to be
+ examined by the calling test script.
+
test_done
Your test script must have test_done at the end. Its purpose
diff --git a/test/test-lib.sh b/test/test-lib.sh
index f1b07cc4..f67fbd1b 100644
--- a/test/test-lib.sh
+++ b/test/test-lib.sh
@@ -715,6 +715,12 @@ test_done () {
fi
}
+test_emacs () {
+ emacs_code="$1"
+ emacs --batch --no-site-file --directory ../../emacs --load notmuch.el --eval "(progn (set-frame-width (window-frame (get-buffer-window)) 80) ${emacs_code})"
+}
+
+
find_notmuch_path ()
{
dir="$1"