test: use vt100 as "smart" terminal for known dumb/unknown terminals

Otherwise use whatever user environment has set for TERM so
that there is more chance to test on users' actual environments.
This commit is contained in:
Tomi Ollila 2016-10-20 11:19:45 +03:00 committed by David Bremner
parent a3ee732c52
commit c008dd1352

View file

@ -55,9 +55,15 @@ export PS4='+(${BASH_SOURCE}:${LINENO}): ${FUNCNAME[0]:+${FUNCNAME[0]}(): }'
# Keep the original TERM for say_color and test_emacs
ORIGINAL_TERM=$TERM
# dtach(1) provides more capable terminal environment to anything
# that requires more than dumb terminal...
[ x"${TERM:-dumb}" = xdumb ] && SMART_TERM=vt100 || SMART_TERM=$TERM
# Set SMART_TERM to vt100 for known dumb/unknown terminal.
# Otherwise use whatever TERM is currently used so that
# users' actual TERM environments are being used in tests.
case ${TERM-} in
'' | dumb | unknown )
SMART_TERM=vt100 ;;
*)
SMART_TERM=$TERM ;;
esac
# For repeatability, reset the environment to known value.
LANG=C
@ -1168,8 +1174,8 @@ test_emacs () {
fi
server_name="notmuch-test-suite-$$"
# start a detached session with an emacs server
# user's TERM (or 'vt100' in case user's TERM is unset, empty
# or 'dumb') is given to dtach which assumes a minimally
# user's TERM (or 'vt100' in case user's TERM is known dumb
# or unknown) is given to dtach which assumes a minimally
# VT100-compatible terminal -- and emacs inherits that
TERM=$SMART_TERM dtach -n "$TEST_TMPDIR/emacs-dtach-socket.$$" \
sh -c "stty rows 24 cols 80; exec '$TMP_DIRECTORY/run_emacs' \