Add the following packages libalgorithm-diff-perl libspiffy-perl libtext-diff-perl...
[pkg-perl] / deb-src / libtext-diff-perl / libtext-diff-perl-0.35 / t / inputs.t
1 #!/usr/local/bin/perl -w
2
3 use strict;
4 use Test;
5 use Text::Diff;
6
7 my @A = map "$_\n", qw( 1 2 3 4 );
8 my @B = map "$_\n", qw( 1 2 3 5 );
9
10 my $A = join "", @A;
11 my $B = join "", @B;
12
13 my $Af = "io_A";
14 my $Bf = "io_B";
15
16 open A, ">$Af" or die $!; print A @A or die $! ; close A or die $! ;
17 open B, ">$Bf" or die $!; print B @B or die $! ; close B or die $! ;
18
19 my @tests = (
20 sub { ok !diff \@A, \@A },
21 sub {
22     my $d = diff \@A, \@B;
23     $d =~ /-4.*\+5/s ? ok 1 : ok $d, "a valid diff";
24 },
25 sub { ok !diff \$A, \$A },
26 sub {
27     my $d = diff \$A, \$B;
28     $d =~ /-4.*\+5/s ? ok 1 : ok $d, "a valid diff";
29 },
30 sub { ok !diff $Af, $Af },
31 sub {
32     my $d = diff $Af, $Bf;
33     $d =~ /-4.*\+5/s ? ok 1 : ok $d, "a valid diff";
34 },
35 sub { 
36     open A1, "<$Af" or die $!;
37     open A2, "<$Af" or die $!;
38     ok !diff \*A1, \*A2;
39     close A1;
40     close A2;
41 },
42 sub { 
43     open A, "<$Af" or die $!;
44     open B, "<$Bf" or die $!;
45     my $d = diff \*A, \*B;
46     $d =~ /-4.*\+5/s ? ok 1 : ok $d, "a valid diff";
47     close A;
48     close B;
49 },
50 sub {
51     ok !diff sub { \@A}, sub { \@A };
52 },
53 sub {
54     my $d = diff sub { \@A }, sub { \@B };
55     $d =~ /-4.*\+5/s ? ok 1 : ok $d, "a valid diff";
56 },
57 );
58
59 plan tests => scalar @tests;
60
61 $_->() for @tests;
62
63 unlink "io_A" or warn $!;
64 unlink "io_B" or warn $!;