From 8e817aa407eec8e9a63e0b697411d9398e842e98 Mon Sep 17 00:00:00 2001 From: Tomi Ollila Date: Wed, 23 Jan 2013 11:35:36 +0200 Subject: [PATCH] [PATCH 1/1] test/test-lib.sh: use vt100 as dtach terminal if TERM nonexistent or dumb --- 6e/291a5b789da17d3e51e940c6fb322eec7821be | 87 +++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 6e/291a5b789da17d3e51e940c6fb322eec7821be diff --git a/6e/291a5b789da17d3e51e940c6fb322eec7821be b/6e/291a5b789da17d3e51e940c6fb322eec7821be new file mode 100644 index 000000000..3a90a7760 --- /dev/null +++ b/6e/291a5b789da17d3e51e940c6fb322eec7821be @@ -0,0 +1,87 @@ +Return-Path: +X-Original-To: notmuch@notmuchmail.org +Delivered-To: notmuch@notmuchmail.org +Received: from localhost (localhost [127.0.0.1]) + by olra.theworths.org (Postfix) with ESMTP id D0CC8431FC0 + for ; Wed, 23 Jan 2013 01:35:49 -0800 (PST) +X-Virus-Scanned: Debian amavisd-new at olra.theworths.org +X-Spam-Flag: NO +X-Spam-Score: 0 +X-Spam-Level: +X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none] + autolearn=disabled +Received: from olra.theworths.org ([127.0.0.1]) + by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id Vp6bGp5XlZSw for ; + Wed, 23 Jan 2013 01:35:49 -0800 (PST) +Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) + by olra.theworths.org (Postfix) with ESMTP id E02C5431FAF + for ; Wed, 23 Jan 2013 01:35:48 -0800 (PST) +Received: by guru.guru-group.fi (Postfix, from userid 501) + id 2AE06100093; Wed, 23 Jan 2013 11:35:38 +0200 (EET) +From: Tomi Ollila +To: notmuch@notmuchmail.org +Subject: [PATCH 1/1] test/test-lib.sh: use vt100 as dtach terminal if TERM + nonexistent or dumb +Date: Wed, 23 Jan 2013 11:35:36 +0200 +Message-Id: <1358933736-300-1-git-send-email-tomi.ollila@iki.fi> +X-Mailer: git-send-email 1.8.0 +Cc: tomi.ollila@iki.fi +X-BeenThere: notmuch@notmuchmail.org +X-Mailman-Version: 2.1.13 +Precedence: list +List-Id: "Use and development of the notmuch mail system." + +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +X-List-Received-Date: Wed, 23 Jan 2013 09:35:50 -0000 + +The TERM environment variable is set to 'dumb' when running tests, but +the original value of it is stored for echoing colors and running (emacs +(somewhat interactively) in detached session. Emacs requires some +terminal control sequences to be available for interactive operation. +In case original TERM is (also) 'dumb' (or nonexistent) emacs cannot run +interactively. To fix this problem dtach (and emacs as it's child +process) is run with TERM=vt100 in case original TERM was nonexistent or +dumb. This way there is a chance to run emacs tests with different user +terminals and potentially find problems there. +--- + test/test-lib.sh | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/test/test-lib.sh b/test/test-lib.sh +index 6ce3b31..3bc67f7 100644 +--- a/test/test-lib.sh ++++ b/test/test-lib.sh +@@ -41,6 +41,10 @@ esac + # 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 ] && DTACH_TERM=vt100 || DTACH_TERM=$TERM ++ + # For repeatability, reset the environment to known value. + LANG=C + LC_ALL=C +@@ -996,9 +1000,10 @@ test_emacs () { + fi + server_name="notmuch-test-suite-$$" + # start a detached session with an emacs server +- # user's TERM is given to dtach which assumes a minimally ++ # user's TERM (or 'vt100' om case user's term is nonexistent ++ # or 'dumb') is given to dtach which assumes a minimally + # VT100-compatible terminal -- and emacs inherits that +- TERM=$ORIGINAL_TERM dtach -n "$TEST_TMPDIR/emacs-dtach-socket.$$" \ ++ TERM=$DTACH_TERM dtach -n "$TEST_TMPDIR/emacs-dtach-socket.$$" \ + sh -c "stty rows 24 cols 80; exec '$TMP_DIRECTORY/run_emacs' \ + --no-window-system \ + $load_emacs_tests \ +-- +1.8.1 + -- 2.26.2