File: overload.t

package info (click to toggle)
libio-all-perl 0.38-1
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 508 kB
  • ctags: 312
  • sloc: perl: 2,647; makefile: 14
file content (75 lines) | stat: -rw-r--r-- 2,286 bytes parent folder | download | duplicates (3)
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
64
65
66
67
68
69
70
71
72
73
74
75
use lib 't', 'lib';
use strict;
use warnings;
use Test::More tests => 23;
use IO_All_Test;
use IO::All;

unlink('t/output/overload1');
unlink('t/output/overload2');
unlink('t/output/overload3');

my $data < io('t/mystuff');
test_file_contents($data, 't/mystuff');
my $data1 = $data;
my $data2 = $data . $data;
$data << io('t/mystuff');
is($data, $data2);
$data < io('t/mystuff');
is($data, $data1);

io('t/mystuff') > $data;
test_file_contents($data, 't/mystuff');
io('t/mystuff') >> $data;
is($data, $data2);
io('t/mystuff') > $data;
is($data, $data1);

$data > io('t/output/overload1');
test_file_contents($data, 't/output/overload1');
$data > io('t/output/overload1');
test_file_contents($data, 't/output/overload1');
$data >> io('t/output/overload1');
test_file_contents($data2, 't/output/overload1');

io('t/output/overload1') < $data;
test_file_contents($data, 't/output/overload1');
io('t/output/overload1') < $data;
test_file_contents($data, 't/output/overload1');
io('t/output/overload1') << $data;
test_file_contents($data2, 't/output/overload1');

$data > io('t/output/overload1');
test_file_contents($data, 't/output/overload1');
io('t/output/overload1') > io('t/output/overload2');
test_matching_files('t/output/overload1', 't/output/overload2');
io('t/output/overload3') < io('t/output/overload2');
test_matching_files('t/output/overload1', 't/output/overload3');
io('t/output/overload3') << io('t/output/overload2');
io('t/output/overload1') >> io('t/output/overload2');
test_matching_files('t/output/overload2', 't/output/overload3');
test_file_contents($data2, 't/output/overload3');

is(io('foo') . '', 'foo');

is("@{io 't/mydir'}", 
   flip_slash 
     't/mydir/dir1 t/mydir/dir2 t/mydir/file1 t/mydir/file2 t/mydir/file3',
);

is(join(' ', sort keys %{io 't/mydir'}), 
   'dir1 dir2 file1 file2 file3',
);

is(join(' ', sort map {"$_"} values %{io 't/mydir'}), 
   flip_slash
     't/mydir/dir1 t/mydir/dir2 t/mydir/file1 t/mydir/file2 t/mydir/file3',
);

${io('t/mystuff')} . ${io('t/mystuff')} > io('t/output/overload1');
test_file_contents2('t/output/overload1', $data2);

${io('t/mystuff')} . "xxx\n" . ${io('t/mystuff')} > io('t/output/overload1');
$data < io('t/mystuff');
my $cat3 = $data . "xxx\n" . $data;
test_file_contents2('t/output/overload1', $cat3);