File: irs.t

package info (click to toggle)
libperl6-slurp-perl 0.051000-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 144 kB
  • sloc: perl: 145; makefile: 2
file content (63 lines) | stat: -rwxr-xr-x 1,552 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
use Test::More "no_plan";
BEGIN {use_ok(Perl6::Slurp)};

my $desc;
sub TEST { $desc = $_[0] };

my $line1 = "line 1\n";
my $line2 = "line 2\n";
my $line3 = "line 3\n";
my $line4 = "line 4\n";

my $para1 = $line1.$line2."\n";
my $para2 = $line3.$line4;

my $data = $para1.$para2;

TEST "scalar slurp no irs";
$str = slurp \$data;
is $str, $data, $desc;

TEST "list slurp no irs";
@str = slurp \$data;
is_deeply \@str, [$line1, $line2, "\n", $line3, $line4], $desc;

TEST "scalar slurp :irs(\"\\n\")";
$str = slurp \$data, {irs=>"\n"};
is $str, $data, $desc;

TEST "list slurp :irs(\"\\n\")";
@str = slurp \$data, {irs=>"\n"};
is_deeply \@str, [$line1, $line2, "\n", $line3, $line4], $desc;

TEST "scalar slurp :irs(\"\\n\\n\")";
$str = slurp \$data, {irs=>"\n\n"};
is $str, $data, $desc;

TEST "list slurp :irs(\"\\n\\n\")";
@str = slurp \$data, {irs=>"\n\n"};
is_deeply \@str, [$para1, $para2], $desc;

TEST "scalar slurp :irs(undef)";
$str = slurp \$data, {irs=>undef};
is $str, $data, $desc;

TEST "list slurp :irs(undef)";
@str = slurp \$data, {irs=>undef};
is_deeply \@str, [$data], $desc;

TEST "scalar slurp :irs('ne')";
$str = slurp \$data, {irs=>'ne'};
is $str, $data, $desc;

TEST "list slurp :irs('ne')";
@str = slurp \$data, {irs=>'ne'};
is_deeply \@str, [split /(?<=ne)/, $data], $desc;

TEST "scalar slurp :irs(qr/\\n+|3/)";
$str = slurp \$data, {irs=>qr/\n+|3/};
is $str, $data, $desc;

TEST "list slurp :irs(qr/\\n+|3/)";
@str = slurp \$data, {irs=>qr/\n+|3/};
is_deeply \@str, ["line 1\n","line 2\n\n","line 3","\n","line 4\n"], $desc;