| #!/bin/sh |
| # Copyright 2008 by Denys Vlasenko |
| # Licensed under GPLv2, see file LICENSE in this source tree. |
| |
| . ./testing.sh |
| test -f "$bindir/.config" && . "$bindir/.config" |
| |
| # testing "test name" "options" "expected result" "file input" "stdin" |
| |
| testing "unexpand case 1" "unexpand" \ |
| "\t12345678\n" "" " 12345678\n" \ |
| |
| testing "unexpand case 2" "unexpand" \ |
| "\t 12345678\n" "" " 12345678\n" \ |
| |
| testing "unexpand case 3" "unexpand" \ |
| "\t 12345678\n" "" " 12345678\n" \ |
| |
| testing "unexpand case 4" "unexpand" \ |
| "\t12345678\n" "" " \t12345678\n" \ |
| |
| testing "unexpand case 5" "unexpand" \ |
| "\t12345678\n" "" " \t12345678\n" \ |
| |
| testing "unexpand case 6" "unexpand" \ |
| "\t12345678\n" "" " \t12345678\n" \ |
| |
| testing "unexpand case 7" "unexpand" \ |
| "123\t 45678\n" "" "123 \t 45678\n" \ |
| |
| testing "unexpand case 8" "unexpand" \ |
| "a b\n" "" "a b\n" \ |
| |
| testcase() |
| { |
| testing "unexpand flags $*" "unexpand $*" \ |
| "$want" "" ' a b c' |
| } |
| |
| # tabs=8, Convert only leading sequences of blanks |
| want='\ta b c' |
| testcase |
| testcase -f |
| testcase -f -t8 |
| testcase -t8 -f |
| testcase -t8 --first-only |
| |
| # tabs=8, Convert all blanks |
| want='\ta\tb c' |
| testcase -a |
| testcase -t8 |
| testcase -a -t8 |
| |
| # tabs=4, Convert all blanks |
| want='\t\ta\t\tb\t c' |
| testcase -t4 |
| testcase -a -t4 |
| testcase -t4 -a |
| |
| # tabs=4, Convert only leading sequences of blanks |
| want='\t\ta b c' |
| testcase -t4 -f |
| testcase -f -t4 |
| testcase -t4 --first-only |
| testcase --first-only -t4 |
| |
| test x"$CONFIG_UNICODE_SUPPORT" = x"y" \ |
| && test x"$CONFIG_UNICODE_USING_LOCALE" != x"y" \ |
| && testing "unexpand with unicode characher 0x394" "unexpand" \ |
| "1ΔΔΔ5\t99999\n" "" "1ΔΔΔ5 99999\n" |
| |
| exit $FAILCOUNT |