[PATCH] test: use dtach(1) instead of screen(1) in emacs tests

Dmitry Kurochkin dmitry.kurochkin at gmail.com
Fri Nov 11 13:06:40 PST 2011


On Fri, 11 Nov 2011 22:48:13 +0200, Tomi Ollila <too at iki.fi> wrote:
> dtach is simpler than screen and is not setuid/setgid program so
> TMPDIR does not get cleared by dynamic loader when executed.
> ---
> 
> Updated version after discussion with DmitryKurochkin and amdragon
> on IRC. Thank you.
> 

Looks good to me (though I did not test it).

Few minor comments below.

>  test/test-lib.sh |   25 +++++++++++++------------
>  1 files changed, 13 insertions(+), 12 deletions(-)
> 
> diff --git a/test/test-lib.sh b/test/test-lib.sh
> index c81c709..c232130 100755
> --- a/test/test-lib.sh
> +++ b/test/test-lib.sh
> @@ -39,7 +39,7 @@ done,*)
>  	;;
>  esac
>  
> -# Keep the original TERM for say_color
> +# Keep the original TERM for say_color and emacs tests

s/emacs tests/test_emacs/ for consistency with say_color?

>  ORIGINAL_TERM=$TERM
>  
>  # For repeatability, reset the environment to known value.
> @@ -843,12 +841,15 @@ EOF
>  test_emacs () {
>  	if [ -z "$EMACS_SERVER" ]; then
>  		EMACS_SERVER="notmuch-test-suite-$$"
> -		# start a detached screen session with an emacs server
> -		screen -S "$EMACS_SERVER" -d -m "$TMP_DIRECTORY/run_emacs" \
> -			--no-window-system \
> -			--eval "(setq server-name \"$EMACS_SERVER\")" \
> -			--eval '(server-start)' \
> -			--eval "(orphan-watchdog $$)" || return
> +		# start a detached session with an emacs server
> +		# user's TERM is given to dtach which assumes a minimally
> +		# VT100-compatible terminal -- and emacs inherits that
> +		TERM=$ORIGINAL_TERM dtach -n "$TMP_DIRECTORY/emacs-dtach-socket.$$" \
> +		 	sh -c "stty rows 24 cols 80; exec '$TMP_DIRECTORY/run_emacs' \

The above line has a space after two tabs.

Regards,
  Dmitry

> +				--no-window-system \
> +				--eval '(setq server-name \"$EMACS_SERVER\")' \
> +				--eval '(server-start)' \
> +				--eval '(orphan-watchdog $$)'" || return
>  		# wait until the emacs server is up
>  		until test_emacs '()' 2>/dev/null; do
>  			sleep 1
> -- 
> 1.7.6.1
> 
> _______________________________________________
> notmuch mailing list
> notmuch at notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch


More information about the notmuch mailing list