diff options
Diffstat (limited to 't/original.t')
-rw-r--r-- | t/original.t | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/t/original.t b/t/original.t new file mode 100644 index 0000000..aa2a98f --- /dev/null +++ b/t/original.t @@ -0,0 +1,55 @@ +#!/usr/bin/perl -I. + +# try to honor possible tempdirs +$tmp = "file_$$"; + +$short = <<END; +small +file +END + +$long = <<END; +This is a much longer bit of contents +to store in a file. +END + +print "1..7\n"; + +use File::Slurp; + +&write_file($tmp, $long); +if (&read_file($tmp) eq $long) {print "ok 1\n";} else {print "not ok 1\n";} + +@x = &read_file($tmp); +@y = grep( $_ ne '', split(/(.*?\n)/, $long)); +while (@x && @y) { + last unless $x[0] eq $y[0]; + shift @x; + shift @y; +} +if (@x == @y && (@x ? $x[0] eq $y[0] : 1)) { print "ok 2\n";} else {print "not ok 2\n"} + +&append_file($tmp, $short); +if (&read_file($tmp) eq "$long$short") {print "ok 3\n";} else {print "not ok 3\n";} + +$iold = (stat($tmp))[1]; +&overwrite_file($tmp, $short); +$inew = (stat($tmp))[1]; + +if (&read_file($tmp) eq $short) {print "ok 4\n";} else {print "not ok 4\n";} + +if ($inew == $iold) {print "ok 5\n";} else {print "not ok 5\n";} + +unlink($tmp); + +&overwrite_file($tmp, $long); +if (&read_file($tmp) eq $long) {print "ok 6\n";} else {print "not ok 6\n";} + +unlink($tmp); + +&append_file($tmp, $short); +if (&read_file($tmp) eq $short) {print "ok 7\n";} else {print "not ok 7\n";} + +unlink($tmp); + + |