#!/usr/bin/perl
my
@files
=
qw(foo bar baz)
;
my
@dirs
=
qw(1 2 3)
;
my
$t
= Directory::Scratch->new;
my
@list
;
foreach
my
$dir
(
@dirs
){
my
$tmp
=
$t
->
mkdir
(
$dir
);
ok(
$tmp
,
"mkdir $dir"
);
push
@list
,
$dir
;
foreach
my
$file
(
@files
){
my
$name
= file(
$dir
,
$file
);
$tmp
=
$t
->touch(
$name
);
ok(
$tmp
,
"touch $tmp"
);
push
@list
,
$name
;
}
}
my
@result
=
$t
->ls;
@list
=
sort
@list
;
@result
=
sort
@result
;
is_deeply(\
@result
, \
@list
,
"listed everything"
);
@result
=
$t
->ls;
@result
=
sort
@result
;
is_deeply(\
@result
, \
@list
,
"listed everything (with /)"
);
@result
=
sort
$t
->ls(
'1'
);
my
@possible
=
map
{file(
'1'
,
$_
)}
qw(bar baz foo)
;
is_deeply(\
@result
, \
@possible
,
'listed 1'
);
$t
->touch(
'fooo'
);
is_deeply([
$t
->ls(
'fooo'
)], [
'fooo'
],
"listing a single file is OK"
);