This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[inseparable changes from match from perl-5.003_97 to perl-5.003_97a]
[perl5.git] / t / lib / io_tell.t
... / ...
CommitLineData
1#!./perl
2
3BEGIN {
4 unless(grep /blib/, @INC) {
5 chdir 't' if -d 't';
6 @INC = '../lib' if -d '../lib';
7 $tell_file = "TEST";
8 }
9 else {
10 $tell_file = "Makefile";
11 }
12}
13
14use Config;
15
16BEGIN {
17 if(-d "lib" && -f "TEST") {
18 if ($Config{'extensions'} !~ /\bIO\b/ && $^O ne 'VMS') {
19 print "1..0\n";
20 exit 0;
21 }
22 }
23}
24
25print "1..13\n";
26
27use IO::File;
28
29$tst = IO::File->new("$tell_file","r") || die("Can't open $tell_file");
30binmode $tst if $^O eq 'MSWin32';
31if ($tst->eof) { print "not ok 1\n"; } else { print "ok 1\n"; }
32
33$firstline = <$tst>;
34$secondpos = tell;
35
36$x = 0;
37while (<$tst>) {
38 if (eof) {$x++;}
39}
40if ($x == 1) { print "ok 2\n"; } else { print "not ok 2\n"; }
41
42$lastpos = tell;
43
44unless (eof) { print "not ok 3\n"; } else { print "ok 3\n"; }
45
46if ($tst->seek(0,0)) { print "ok 4\n"; } else { print "not ok 4\n"; }
47
48if (eof) { print "not ok 5\n"; } else { print "ok 5\n"; }
49
50if ($firstline eq <$tst>) { print "ok 6\n"; } else { print "not ok 6\n"; }
51
52if ($secondpos == tell) { print "ok 7\n"; } else { print "not ok 7\n"; }
53
54if ($tst->seek(0,1)) { print "ok 8\n"; } else { print "not ok 8\n"; }
55
56if ($tst->eof) { print "not ok 9\n"; } else { print "ok 9\n"; }
57
58if ($secondpos == tell) { print "ok 10\n"; } else { print "not ok 10\n"; }
59
60if ($tst->seek(0,2)) { print "ok 11\n"; } else { print "not ok 11\n"; }
61
62if ($lastpos == $tst->tell) { print "ok 12\n"; } else { print "not ok 12\n"; }
63
64unless (eof) { print "not ok 13\n"; } else { print "ok 13\n"; }