summaryrefslogtreecommitdiffstats
path: root/tests/ts/colcrt
diff options
context:
space:
mode:
authorSami Kerola2015-09-22 11:40:13 +0200
committerSami Kerola2016-02-02 18:27:28 +0100
commit5abd5d8aec088d097bc82cab805560672bc97ec1 (patch)
tree4ebbd518f3f1d5b598ae2496d785da2590e66152 /tests/ts/colcrt
parentsfdisk: make --quiet really quiet (diff)
downloadkernel-qcow2-util-linux-5abd5d8aec088d097bc82cab805560672bc97ec1.tar.gz
kernel-qcow2-util-linux-5abd5d8aec088d097bc82cab805560672bc97ec1.tar.xz
kernel-qcow2-util-linux-5abd5d8aec088d097bc82cab805560672bc97ec1.zip
tests: add colcrt functional tests
Output formats are based on colcrt before recent asan fixes and magic constant replace, that are the commits ee24ab6f1..70e3fcf29. It seems the fixes caused unintentional, and not detected change to output format - which to me means colcrt has a regression that got to be part of release v2.27. Signed-off-by: Sami Kerola <kerolasa@iki.fi>
Diffstat (limited to 'tests/ts/colcrt')
-rwxr-xr-xtests/ts/colcrt/functional50
-rw-r--r--tests/ts/colcrt/nasty-inputbin0 -> 545 bytes
-rw-r--r--tests/ts/colcrt/underlines23
3 files changed, 73 insertions, 0 deletions
diff --git a/tests/ts/colcrt/functional b/tests/ts/colcrt/functional
new file mode 100755
index 000000000..5c97d2441
--- /dev/null
+++ b/tests/ts/colcrt/functional
@@ -0,0 +1,50 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This file is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+TS_TOPDIR="${0%/*}/../.."
+TS_DESC="functional"
+
+export LC_CTYPE='C'
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+ts_check_test_command "$TS_CMD_COLCRT"
+
+ts_init_subtest 'no-options'
+$TS_CMD_COLCRT < $TS_SELF/nasty-input >> $TS_OUTPUT 2>&1
+$TS_CMD_COLCRT < $TS_SELF/underlines >> $TS_OUTPUT 2>&1
+echo "return value: $?" >> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest 'no-underlining'
+$TS_CMD_COLCRT --no-underlining < $TS_SELF/nasty-input >> $TS_OUTPUT 2>&1
+$TS_CMD_COLCRT --no-underlining < $TS_SELF/underlines >> $TS_OUTPUT 2>&1
+echo "return value: $?" >> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest 'half-lines'
+$TS_CMD_COLCRT --half-lines < $TS_SELF/nasty-input >> $TS_OUTPUT 2>&1
+$TS_CMD_COLCRT --half-lines < $TS_SELF/underlines >> $TS_OUTPUT 2>&1
+echo "return value: $?" >> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest 'short-options'
+$TS_CMD_COLCRT - -2 $TS_SELF/nasty-input >> $TS_OUTPUT 2>&1
+$TS_CMD_COLCRT - -2 $TS_SELF/underlines >> $TS_OUTPUT 2>&1
+echo "return value: $?" >> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_finalize
diff --git a/tests/ts/colcrt/nasty-input b/tests/ts/colcrt/nasty-input
new file mode 100644
index 000000000..5e541bc32
--- /dev/null
+++ b/tests/ts/colcrt/nasty-input
Binary files differ
diff --git a/tests/ts/colcrt/underlines b/tests/ts/colcrt/underlines
new file mode 100644
index 000000000..940c7a87a
--- /dev/null
+++ b/tests/ts/colcrt/underlines
@@ -0,0 +1,23 @@
+ 200 ___
+ 201 abc
+ 202 _abc
+ 203 a_bc
+ 204 ab_c
+ 205 abc_
+ 206 __abc
+ 207 a__bc
+ 208 ab__c
+ 209 abc__
+ 210 _a_bc
+ 211 _ab_c
+ 212 a_b_c
+ 213 a__bc
+ 214 a_bc_
+ 215 abc__
+ 216 _abc_
+ 217 _a_b_c
+ 218 _a__bc
+ 219 a__bc_
+ 220 _abc__
+ 221 ___abc
+ 222 abc___