Blame tests/colors

Packit Service fdd496
#!/bin/sh
Packit Service fdd496
Packit Service fdd496
. "${srcdir=.}/init.sh"; path_prepend_ ../src
Packit Service fdd496
Packit Service fdd496
TZ=UTC0
Packit Service fdd496
export TZ
Packit Service fdd496
Packit Service fdd496
fail=0
Packit Service fdd496
Packit Service fdd496
echo a > a
Packit Service fdd496
echo b > b
Packit Service fdd496
Packit Service fdd496
epoch='1970-01-01 00:00:00'
Packit Service fdd496
touch -t 197001010000.00 a b
Packit Service fdd496
Packit Service fdd496
e=$(printf '\033')
Packit Service fdd496
tab=$(printf '\t')
Packit Service fdd496
Packit Service fdd496
gen_exp_u()
Packit Service fdd496
{
Packit Service fdd496
    local epoch_plus="$epoch.000000000 +0000"
Packit Service fdd496
    local rs=$(printf "$e[${rs}m")
Packit Service fdd496
    local hd=$(printf "$e[${hd}m")
Packit Service fdd496
    local ad=$(printf "$e[${ad}m")
Packit Service fdd496
    local de=$(printf "$e[${de}m")
Packit Service fdd496
    local ln=$(printf "$e[${ln}m")
Packit Service fdd496
    printf '%s' \
Packit Service fdd496
"$hd--- a$tab$epoch_plus
Packit Service fdd496
+++ b$tab$epoch_plus
Packit Service fdd496
$rs${ln}@@ -1 +1 @@$rs
Packit Service fdd496
$de-a$rs
Packit Service fdd496
$ad+b$rs
Packit Service fdd496
"
Packit Service fdd496
}
Packit Service fdd496
Packit Service fdd496
gen_exp_c()
Packit Service fdd496
{
Packit Service fdd496
    local epoch_posix_1003_1_2001="Thu Jan  1 00:00:00 1970"
Packit Service fdd496
    local rs=$(printf "$e[${rs}m")
Packit Service fdd496
    local hd=$(printf "$e[${hd}m")
Packit Service fdd496
    local ad=$(printf "$e[${ad}m")
Packit Service fdd496
    local de=$(printf "$e[${de}m")
Packit Service fdd496
    local ln=$(printf "$e[${ln}m")
Packit Service fdd496
    printf '%s' \
Packit Service fdd496
"$hd*** a$tab$epoch_posix_1003_1_2001
Packit Service fdd496
--- b$tab$epoch_posix_1003_1_2001
Packit Service fdd496
$rs***************
Packit Service fdd496
$ln*** 1 ****$rs
Packit Service fdd496
$de! a$rs
Packit Service fdd496
$ln--- 1 ----$rs
Packit Service fdd496
$ad! b$rs
Packit Service fdd496
"
Packit Service fdd496
}
Packit Service fdd496
Packit Service fdd496
gen_exp_default()
Packit Service fdd496
{
Packit Service fdd496
    printf '%s' \
Packit Service fdd496
"1c1
Packit Service fdd496
< a
Packit Service fdd496
---
Packit Service fdd496
> b
Packit Service fdd496
"
Packit Service fdd496
}
Packit Service fdd496
Packit Service fdd496
gen_exp_default_colors()
Packit Service fdd496
{
Packit Service fdd496
    local rs=$(printf "$e[${rs}m")
Packit Service fdd496
    local hd=$(printf "$e[${hd}m")
Packit Service fdd496
    local ad=$(printf "$e[${ad}m")
Packit Service fdd496
    local de=$(printf "$e[${de}m")
Packit Service fdd496
    local ln=$(printf "$e[${ln}m")
Packit Service fdd496
    printf '%s' \
Packit Service fdd496
"${ln}1c1$rs
Packit Service fdd496
$de< a$rs
Packit Service fdd496
---
Packit Service fdd496
$ad> b$rs
Packit Service fdd496
"
Packit Service fdd496
}
Packit Service fdd496
Packit Service fdd496
# Compare with some known outputs
Packit Service fdd496
Packit Service fdd496
rs=0 hd=1 ad=32 de=31 ln=36
Packit Service fdd496
Packit Service fdd496
returns_ 1 diff --color=auto a b > out || fail=1
Packit Service fdd496
gen_exp_default > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
returns_ 1 env TERM=dumb diff ---presume-output-tty --color=auto a b > out \
Packit Service fdd496
  || fail=1
Packit Service fdd496
gen_exp_default > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
returns_ 1 diff --color=never a b > out || fail=1
Packit Service fdd496
gen_exp_default > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
returns_ 1 diff a b > out || fail=1
Packit Service fdd496
gen_exp_default > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
returns_ 1 diff --color=always a b > out || fail=1
Packit Service fdd496
gen_exp_default_colors > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
returns_ 1 diff -u --color=always a b > out || fail=1
Packit Service fdd496
gen_exp_u > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
returns_ 1 diff -c --color=always a b > out || fail=1
Packit Service fdd496
gen_exp_c > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
rs=0 hd=33 ad=34 de=35 ln=36
Packit Service fdd496
returns_ 1 diff -u --color=always \
Packit Service fdd496
  --palette="rs=0:hd=33:ad=34:de=35:ln=36" a b > out || fail=1
Packit Service fdd496
gen_exp_u > exp || framework_failure_
Packit Service fdd496
compare exp out || fail=1
Packit Service fdd496
Packit Service fdd496
# Before the fix in http://debbugs.gnu.org/22067,
Packit Service fdd496
# this test would trigger an infinite loop bug.
Packit Service fdd496
mkfifo fifo
Packit Service fdd496
printf '%*s-a' 1000000 > a
Packit Service fdd496
printf '%*s-b' 1000000 > b
Packit Service fdd496
head -c 10 < fifo > /dev/null &
Packit Service fdd496
diff --color=always ---presume-output-tty a b > fifo
Packit Service fdd496
test $? = 141 || fail=1
Packit Service fdd496
Packit Service fdd496
Exit $fail