diff options
Diffstat (limited to 'tests/ts/misc/line')
-rwxr-xr-x | tests/ts/misc/line | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/tests/ts/misc/line b/tests/ts/misc/line index 71d5c0424..186a78958 100755 --- a/tests/ts/misc/line +++ b/tests/ts/misc/line @@ -19,19 +19,40 @@ TS_DESC="line" ts_init "$*" ts_check_test_command "$TS_CMD_LINE" +ts_check_test_command "$TS_CMD_HEXDUMP" -# usually behave like "head -n 1" +ts_log '# usually behave like "head -n 1"' printf "a\nb\n" | - $TS_CMD_LINE > $TS_OUTPUT 2>&1 + $TS_CMD_LINE >> $TS_OUTPUT 2>&1 echo "ret: $?" >> $TS_OUTPUT -# never consume more than one line +ts_log '# never consume more than one line' printf "1\n2\n" | ($TS_CMD_LINE && $TS_CMD_LINE) >> $TS_OUTPUT 2>&1 echo "ret: $?" >> $TS_OUTPUT -# always print one newline, return 1 on EOF +ts_log '# add a newline' +printf "abc" | + $TS_CMD_LINE >> $TS_OUTPUT 2>&1 +echo "ret: $?" >> $TS_OUTPUT + +ts_log '# print one newline on empty input' +printf "" | + $TS_CMD_LINE >> $TS_OUTPUT 2>&1 +echo "ret: $?" >> $TS_OUTPUT + +ts_log '# add a newline, return 1 when EOF' +(printf "xyz" && cat </dev/null) | + $TS_CMD_LINE >> $TS_OUTPUT 2>&1 +echo "ret: $?" >> $TS_OUTPUT + +ts_log '# print one newline on empty input, return 1 when EOF' $TS_CMD_LINE </dev/null >> $TS_OUTPUT 2>&1 echo "ret: $?" >> $TS_OUTPUT +ts_log '# large line of zero bytes' +dd if=/dev/zero bs=1k count=1k 2>/dev/null | + $TS_CMD_LINE line | $TS_CMD_HEXDUMP -C >> $TS_OUTPUT 2>&1 +echo "ret: $?" >> $TS_OUTPUT + ts_finalize |