This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
a97add566c0e756bf747a88a8f499f34b16a9814
[perl5.git] / t / io / inplace.t
1 #!./perl
2
3 $^I = $^O eq 'VMS' ? '_bak' : '.bak';
4
5 # $RCSfile: inplace.t,v $$Revision: 4.1 $$Date: 92/08/07 18:27:29 $
6
7 print "1..2\n";
8
9 @ARGV = ('.a','.b','.c');
10 if ($^O eq 'MSWin32') {
11   $CAT = '.\perl -e "print<>"';
12   `.\\perl -le "print 'foo'" > .a`;
13   `.\\perl -le "print 'foo'" > .b`;
14   `.\\perl -le "print 'foo'" > .c`;
15 }
16 elsif ($^O eq 'NetWare') {
17   $CAT = 'perl -e "print<>"';
18   `perl -le "print 'foo'" > .a`;
19   `perl -le "print 'foo'" > .b`;
20   `perl -le "print 'foo'" > .c`;
21 }
22 elsif ($^O eq 'MacOS') {
23   $CAT = "$^X -e \"print<>\"";
24   `$^X -le "print 'foo'" > .a`;
25   `$^X -le "print 'foo'" > .b`;
26   `$^X -le "print 'foo'" > .c`;
27 }
28 elsif ($^O eq 'VMS') {
29   $CAT = 'MCR []perl. -e "print<>"';
30   `MCR []perl. -le "print 'foo'" > ./.a`;
31   `MCR []perl. -le "print 'foo'" > ./.b`;
32   `MCR []perl. -le "print 'foo'" > ./.c`;
33 }
34 else {
35   $CAT = 'cat';
36   `echo foo | tee .a .b .c`;
37 }
38 while (<>) {
39     s/foo/bar/;
40 }
41 continue {
42     print;
43 }
44
45 if (`$CAT .a .b .c` eq "bar\nbar\nbar\n") {print "ok 1\n";} else {print "not ok 1\n";}
46 if (`$CAT .a$^I .b$^I .c$^I` eq "foo\nfoo\nfoo\n") {print "ok 2\n";} else {print "not ok 2\n";}
47
48 unlink '.a', '.b', '.c', ".a$^I", ".b$^I", ".c$^I";