[asperl] various changes to get asperl working under Borland
[p5sagit/p5-mst-13.2.git] / t / lib / filecopy.t
1 #!./perl
2
3 BEGIN {
4     chdir 't' if -d 't';
5     @INC = '../lib';
6 }
7
8 print "1..11\n";
9
10 $| = 1;
11
12 use File::Copy;
13
14 # First we create a file
15 open(F, ">file-$$") or die;
16 binmode F; # for DOSISH platforms, because test 3 copies to stdout
17 print F "ok 3\n";
18 close F;
19
20 copy "file-$$", "copy-$$";
21
22 open(F, "copy-$$") or die;
23 $foo = <F>;
24 close(F);
25
26 print "not " if -s "file-$$" != -s "copy-$$";
27 print "ok 1\n";
28
29 print "not " unless $foo eq "ok 3\n";
30 print "ok 2\n";
31
32 copy "copy-$$", \*STDOUT;
33 unlink "copy-$$" or die "unlink: $!";
34
35 open(F,"file-$$");
36 copy(*F, "copy-$$");
37 open(R, "copy-$$") or die "open copy-$$: $!"; $foo = <R>; close(R);
38 print "not " unless $foo eq "ok 3\n";
39 print "ok 4\n";
40 unlink "copy-$$" or die "unlink: $!";
41 open(F,"file-$$");
42 copy(\*F, "copy-$$");
43 close(F) or die "close: $!";
44 open(R, "copy-$$") or die; $foo = <R>; close(R) or die "close: $!";
45 print "not " unless $foo eq "ok 3\n";
46 print "ok 5\n";
47 unlink "copy-$$" or die "unlink: $!";
48
49 require IO::File;
50 $fh = IO::File->new(">copy-$$") or die "Cannot open copy-$$:$!";
51 binmode $fh or die;
52 copy("file-$$",$fh);
53 $fh->close or die "close: $!";
54 open(R, "copy-$$") or die; $foo = <R>; close(R);
55 print "# foo=`$foo'\nnot " unless $foo eq "ok 3\n";
56 print "ok 6\n";
57 unlink "copy-$$" or die "unlink: $!";
58 require FileHandle;
59 my $fh = FileHandle->new(">copy-$$") or die "Cannot open copy-$$:$!";
60 binmode $fh or die;
61 copy("file-$$",$fh);
62 $fh->close;
63 open(R, "copy-$$") or die; $foo = <R>; close(R);
64 print "not " unless $foo eq "ok 3\n";
65 print "ok 7\n";
66 unlink "file-$$" or die "unlink: $!";
67
68 print "# moved missing file.\nnot " if move("file-$$", "copy-$$");
69 print "# target disappeared.\nnot " if not -e "copy-$$";
70 print "ok 8\n";
71
72 move "copy-$$", "file-$$" or print "# move did not succeed.\n";
73 print "# not moved: $!\nnot " unless -e "file-$$" and not -e "copy-$$";
74 open(R, "file-$$") or die; $foo = <R>; close(R);
75 print "# foo=`$foo'\nnot " unless $foo eq "ok 3\n";
76 print "ok 9\n";
77
78 copy "file-$$", "lib";
79 open(R, "lib/file-$$") or die; $foo = <R>; close(R);
80 print "not " unless $foo eq "ok 3\n";
81 print "ok 10\n";
82 unlink "lib/file-$$" or die "unlink: $!";
83
84 move "file-$$", "lib";
85 open(R, "lib/file-$$") or die "open lib/file-$$: $!"; $foo = <R>; close(R);
86 print "not " unless $foo eq "ok 3\n" and not -e "file-$$";;
87 print "ok 11\n";
88 unlink "lib/file-$$" or die "unlink: $!";
89