From: Carl Worth Date: Fri, 5 Nov 2010 21:20:52 +0000 (-0700) Subject: test: Generate a little run_emacs script to help debug any failures. X-Git-Tag: 0.5~71 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=a09921bdfb47ff15f32bcea9f24e8399b1b8db36 test: Generate a little run_emacs script to help debug any failures. After any emacs test failure, the tmp.emacs directory will have this run_emacs script in it which the user can use to run emacs within the test suite environment, (pointing at the test suite's notmuch database, using the local notmuch command-line program, and the local notmuch emacs lisp code). --- diff --git a/test/test-lib.sh b/test/test-lib.sh index 8f39aa78..168123a2 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -742,12 +742,29 @@ test_done () { } test_emacs () { - emacs_code="$1" - emacs --batch --no-site-file --directory ../../emacs --load notmuch.el \ + # Construct a little test script here for the benefit of the user, + # (who can easily run "run_emacs" to get the same emacs environment + # for investigating any failures). + cat < run_emacs +#!/bin/sh +export PATH=$PATH +export HOME=$HOME +export NOTMUCH_CONFIG=$NOTMUCH_CONFIG + +# We assume that the user will give a command-line argument only if +# wanting to run in batch mode. +if [ \$# -gt 0 ]; then + BATCH=--batch +fi + +emacs \$BATCH --no-site-file --directory ../../emacs --load notmuch.el \ --eval "(defun notmuch-test-wait () (while (get-buffer-process (current-buffer)) (sleep-for 0.1)))" \ - --eval "(progn (set-frame-width (window-frame (get-buffer-window)) 80) ${emacs_code})" + --eval "(progn (set-frame-width (window-frame (get-buffer-window)) 80) \$@)" +EOF + chmod a+x ./run_emacs + ./run_emacs "$@" }