Revert "test-lib.sh: do tests for color support after changing HOME"

This reverts commit 102fc80d32094ad6598b17ab9d607516ee8edc4a. There are two issues with that commit: * It is buggy. In pseudocode, it is doing: color is set || TERM != dumb && color works && color=t when it should be doing: color is set || { TERM != dumb && color works && color=t } * It unnecessarily disables color when tput needs to read ~/.terminfo to get the control sequences. Signed-off-by: Junio C Hamano <gitster@pobox.com>

Richard Hansen committed Jun 17, 2015 at 15:06 UTC ca92a660bf085efd8867861b4d80d95659dd49a3
1 file changed +43 -47
t/test-lib.sh
+43 -47
@@ -184,8 +184,16 @@ export _x05 _x40 _z40 LF u200c
184 # This test checks if command xyzzy does the right thing...
185 # '
186 # . ./test-lib.sh
187 +test "x$ORIGINAL_TERM" != "xdumb" && (
188 + TERM=$ORIGINAL_TERM &&
189 + export TERM &&
190 + test -t 1 &&
191 + tput bold >/dev/null 2>&1 &&
192 + tput setaf 1 >/dev/null 2>&1 &&
193 + tput sgr0 >/dev/null 2>&1
194 + ) &&
195 + color=t
196
188 -unset color
197 while test "$#" -ne 0
198 do
199 case "$1" in
@@ -250,6 +258,40 @@ then
258 verbose=t
259 fi
260
261 +if test -n "$color"
262 +then
263 + say_color () {
264 + (
265 + TERM=$ORIGINAL_TERM
266 + export TERM
267 + case "$1" in
268 + error)
269 + tput bold; tput setaf 1;; # bold red
270 + skip)
271 + tput setaf 4;; # blue
272 + warn)
273 + tput setaf 3;; # brown/yellow
274 + pass)
275 + tput setaf 2;; # green
276 + info)
277 + tput setaf 6;; # cyan
278 + *)
279 + test -n "$quiet" && return;;
280 + esac
281 + shift
282 + printf "%s" "$*"
283 + tput sgr0
284 + echo
285 + )
286 + }
287 +else
288 + say_color() {
289 + test -z "$1" && test -n "$quiet" && return
290 + shift
291 + printf "%s\n" "$*"
292 + }
293 +fi
294 +
295 error () {
296 say_color error "error: $*"
297 GIT_EXIT_OK=t
@@ -815,52 +857,6 @@ HOME="$TRASH_DIRECTORY"
857 GNUPGHOME="$HOME/gnupg-home-not-used"
858 export HOME GNUPGHOME
859
818 -# run the tput tests *after* changing HOME (in case ncurses needs
819 -# ~/.terminfo for $TERM)
820 -test -n "${color+set}" || test "x$ORIGINAL_TERM" != "xdumb" && (
821 - TERM=$ORIGINAL_TERM &&
822 - export TERM &&
823 - test -t 1 &&
824 - tput bold >/dev/null 2>&1 &&
825 - tput setaf 1 >/dev/null 2>&1 &&
826 - tput sgr0 >/dev/null 2>&1
827 - ) &&
828 - color=t
829 -
830 -if test -n "$color"
831 -then
832 - say_color () {
833 - (
834 - TERM=$ORIGINAL_TERM
835 - export TERM
836 - case "$1" in
837 - error)
838 - tput bold; tput setaf 1;; # bold red
839 - skip)
840 - tput setaf 4;; # blue
841 - warn)
842 - tput setaf 3;; # brown/yellow
843 - pass)
844 - tput setaf 2;; # green
845 - info)
846 - tput setaf 6;; # cyan
847 - *)
848 - test -n "$quiet" && return;;
849 - esac
850 - shift
851 - printf "%s" "$*"
852 - tput sgr0
853 - echo
854 - )
855 - }
856 -else
857 - say_color() {
858 - test -z "$1" && test -n "$quiet" && return
859 - shift
860 - printf "%s\n" "$*"
861 - }
862 -fi
863 -
860 if test -z "$TEST_NO_CREATE_REPO"
861 then
862 test_create_repo "$TRASH_DIRECTORY"