8 echo 1>&2 "$0: configure didn't find a usable version of Perl, so can't run this test"
13 exec $PERL -w -I$srcdir/..
-MFetish -- - << \EOF
17 (my
$program_name = $0) =~ s|.
*/||
;
19 # Turn off localisation of executable's ouput.
20 @ENV
{qw
(LANGUAGE LANG LC_ALL
)} = ('C') x
3;
22 my
$mkdir = {PRE
=> sub
{mkdir
'd',0755 or die
"d: $!\n"}};
23 my
$rmdir = {POST
=> sub
{rmdir 'd' or die
"d: $!\n"}};
25 my
$mkdir2 = {PRE
=> sub
{mkdir
'd',0755 or die
"d: $!\n";
26 mkdir
'd/e',0755 or die
"d/e: $!\n" }};
27 my
$rmdir2 = {POST
=> sub
{rmdir 'd/e' or die
"d/e: $!\n";
28 rmdir 'd' or die
"d: $!\n" }};
30 my
$slink_d = {PRE
=> sub
{symlink
'/', 'd' or die
"d: $!\n"}};
31 my
$unlink_d = {POST
=> sub
{unlink
'd' or die
"d: $!\n"}};
33 my
$q_bell = {IN
=> {"q\a" => ''}};
36 # test-name options input expected-output
38 # quoting tests............................................
39 ['q-', $q_bell, {OUT
=> "q\a\n"}, {EXIT
=> 0}],
40 ['q-N', '-N', $q_bell, {OUT
=> "q\a\n"}, {ERR
=> ''}],
41 ['q-q', '-q', $q_bell, {OUT
=> "q?\n"}],
42 ['q-Q', '-Q', $q_bell, {OUT
=> "\"q\\a\"\n"}],
44 ['q-lit-q', '--quoting=literal -q', $q_bell, {OUT
=> "q?\n"}],
45 ['q-qs-lit', '--quoting=literal', $q_bell, {OUT
=> "q\a\n"}],
46 ['q-qs-sh', '--quoting=shell', $q_bell, {OUT
=> "q\a\n"}],
47 ['q-qs-sh-a', '--quoting=shell-always', $q_bell, {OUT
=> "'q\a'\n"}],
48 ['q-qs-c', '--quoting=c', $q_bell, {OUT
=> "\"q\\a\"\n"}],
49 ['q-qs-esc', '--quoting=escape', $q_bell, {OUT
=> "q\\a\n"}],
50 ['q-qs-c-1', '--quoting=c',
51 {IN
=> {"t\004" => ''}}, {OUT
=> "\"t\\004\"\n"}],
53 ['emptydir', 'd', {OUT
=> ''}, $mkdir, $rmdir],
54 ['emptydir-x2', 'd d', {OUT
=> "d:\n\nd:\n"}, $mkdir, $rmdir],
55 ['emptydir-R', '-R d', {OUT
=> "d:\n"}, $mkdir, $rmdir],
57 # test `ls -R .' ............................................
58 ['R-dot', '--ignore="[a-ce-zA-Z]*" -R .', {OUT
=> ".:\nd\n\n\./d:\n"},
61 ['slink-dir-F', '-F d', {OUT
=> "d@\n"}, $slink_d, $unlink_d],
62 ['slink-dir-dF', '-dF d', {OUT
=> "d@\n"}, $slink_d, $unlink_d],
63 ['slinkdir-dFH', '-dFH d', {OUT
=> "d/\n"}, $slink_d, $unlink_d],
64 ['slinkdir-dFL', '-dFL d', {OUT
=> "d/\n"}, $slink_d, $unlink_d],
66 # From Stéphane Chazelas.
67 ['no-a-isdir-b', 'no-dir d',
69 {ERR
=> "ls: no-dir: No such file or directory\n"},
70 $mkdir, $rmdir, {EXIT
=> 1}],
72 ['recursive-2', '-R d', {OUT
=> "d:\ne\n\nd/e:\n"}, $mkdir2, $rmdir2],
75 my
$save_temps = $ENV{SAVE_TEMPS
};
76 my
$verbose = $ENV{VERBOSE
};
78 my
$prog = $ENV{PROG
} || die
"$0: \$PROG not specified in environment\n";
79 my
$fail = run_tests
($program_name, $prog, \@Tests
, $save_temps, $verbose);