mirror of
https://github.com/powerline/powerline.git
synced 2025-07-26 07:16:31 +02:00
On travis there are differences in CRs for some reason
This commit strips CRs from *.ok files and test output. Test failure used to be not recognized due to pipe: `cat -v` always succeeds meaning that `if ! diff … | cat -v` always succeeds too.
This commit is contained in:
parent
0c0b4282fe
commit
56ef798218
@ -24,6 +24,9 @@ with codecs.open(fname, 'r', encoding='utf-8') as R:
|
|||||||
if not found_cd:
|
if not found_cd:
|
||||||
found_cd = ('cd tests/shell/3rd' in line)
|
found_cd = ('cd tests/shell/3rd' in line)
|
||||||
continue
|
continue
|
||||||
|
line = line.translate({
|
||||||
|
ord('\r'): None
|
||||||
|
})
|
||||||
line = line.replace(pid, 'PID')
|
line = line.replace(pid, 'PID')
|
||||||
line = line.replace(hostname, 'HOSTNAME')
|
line = line.replace(hostname, 'HOSTNAME')
|
||||||
line = line.replace(user, 'USER')
|
line = line.replace(user, 'USER')
|
||||||
|
@ -11,21 +11,32 @@ else
|
|||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
check_screen_log() {
|
||||||
|
diff -u tests/test_shells/${1}.ok tests/shell/screen.log
|
||||||
|
# Explicit is better then implicit
|
||||||
|
return $?
|
||||||
|
}
|
||||||
|
|
||||||
run_test() {
|
run_test() {
|
||||||
SH="$1"
|
SH="$1"
|
||||||
SESNAME="powerline-shell-test-$$"
|
SESNAME="powerline-shell-test-$$"
|
||||||
screen -L -c tests/test_shells/screenrc -d -m -S "$SESNAME" \
|
screen -L -c tests/test_shells/screenrc -d -m -S "$SESNAME" \
|
||||||
env LANG=en_US.UTF-8 BINDFILE="$BINDFILE" "$@"
|
env LANG=en_US.UTF-8 BINDFILE="$BINDFILE" "$@"
|
||||||
screen -S "$SESNAME" -X readreg a tests/test_shells/input.$SH
|
screen -S "$SESNAME" -X readreg a tests/test_shells/input.$SH
|
||||||
|
# Wait for screen to initialize
|
||||||
sleep 0.3s
|
sleep 0.3s
|
||||||
screen -S "$SESNAME" -p 0 -X width 300 1
|
screen -S "$SESNAME" -p 0 -X width 300 1
|
||||||
screen -S "$SESNAME" -p 0 -X logfile tests/shell/screen.log
|
screen -S "$SESNAME" -p 0 -X logfile tests/shell/screen.log
|
||||||
screen -S "$SESNAME" -p 0 -X paste a
|
screen -S "$SESNAME" -p 0 -X paste a
|
||||||
|
# Wait for screen to exit (sending command to non-existing screen session
|
||||||
|
# fails; when launched instance exits corresponding session is deleted)
|
||||||
while screen -S "$SESNAME" -X blankerprg "" > /dev/null ; do
|
while screen -S "$SESNAME" -X blankerprg "" > /dev/null ; do
|
||||||
sleep 1s
|
sleep 0.1s
|
||||||
done
|
done
|
||||||
./tests/test_shells/postproc.py tests/shell/screen.log
|
./tests/test_shells/postproc.py tests/shell/screen.log
|
||||||
if ! diff -u tests/test_shells/${SH}.ok tests/shell/screen.log | cat -v ; then
|
if ! check_screen_log ${SH} ; then
|
||||||
|
# Repeat the diff to make it better viewable in travis output
|
||||||
|
check_screen_log ${SH} | cat -v
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user