android_external_toybox/tests/vi.test
Jarno Mäkipää a459a19c9c vi: Add tests
Test file integrity after load, move, delete and save+exit. Drawing
of buffer is not tested yet.

Added -s script option, accept file that is run as startup script of
commands. File is parsed byte at time and handled as you had typed it.
If EOF has been reached without editor close command, editing is
continued normally using keyboard. This functionality is in vim and
neovim, but not in POSIX vi standard. nvi (vi used in some macs) has
-s with different meaning...

Some simple tests added, dw last line test fails, so test is disabled.
2020-01-25 20:49:02 -06:00

73 lines
1.7 KiB
Bash

#!/bin/bash
[ -f testing.sh ] && . testing.sh
# setup
cp $FILES/vi/ascii.txt in.txt
cp $FILES/vi/dd_first.in cmd.txt
cp $FILES/vi/ascii_dd_first.out out.txt
testing "dd first line ascii" \
"vi -s cmd.txt in.txt 1>/dev/null 2>/dev/null && cmp in.txt out.txt && echo yes" "yes\n" "" ""
# teardown
rm in.txt cmd.txt out.txt
# setup
cp $FILES/vi/ascii.txt in.txt
cp $FILES/vi/dd_last.in cmd.txt
cp $FILES/vi/ascii_dd_last.out out.txt
testing "dd last line ascii" \
"vi -s cmd.txt in.txt 1>/dev/null 2>/dev/null && cmp in.txt out.txt && echo yes" "yes\n" "" ""
# teardown
rm in.txt cmd.txt out.txt
## setup
#cp $FILES/vi/ascii.txt in.txt
#cp $FILES/vi/dw_last.in cmd.txt
#cp $FILES/vi/ascii_dw_last.out out.txt
#
#testing "dw last line ascii" \
# "vi -s cmd.txt in.txt 1>/dev/null 2>/dev/null && cmp in.txt out.txt && echo yes" "yes\n" "" ""
#
## teardown
#rm in.txt cmd.txt out.txt
# setup
cp $FILES/vi/ascii.txt in.txt
cp $FILES/vi/dw_first.in cmd.txt
cp $FILES/vi/ascii_dw_first.out out.txt
testing "dw first line ascii" \
"vi -s cmd.txt in.txt 1>/dev/null 2>/dev/null && cmp in.txt out.txt && echo yes" "yes\n" "" ""
# teardown
rm in.txt cmd.txt out.txt
# setup
cp $FILES/vi/ascii.txt in.txt
cp $FILES/vi/D_first.in cmd.txt
cp $FILES/vi/ascii_D_first.out out.txt
testing "D first line ascii" \
"vi -s cmd.txt in.txt 1>/dev/null 2>/dev/null && cmp in.txt out.txt && echo yes" "yes\n" "" ""
# teardown
rm in.txt cmd.txt out.txt
# setup
cp $FILES/vi/ascii.txt in.txt
cp $FILES/vi/D_last.in cmd.txt
cp $FILES/vi/ascii_D_last.out out.txt
testing "D last line ascii" \
"vi -s cmd.txt in.txt 1>/dev/null 2>/dev/null && cmp in.txt out.txt && echo yes" "yes\n" "" ""
# teardown
rm in.txt cmd.txt out.txt