1N/A#!/usr/bin/perl
1N/A
1N/Amy $file = "tf$$.txt";
1N/A$: = Tie::File::_default_recsep();
1N/Amy $data = "rec1$:rec2$:rec3$:";
1N/A
1N/Aprint "1..6\n";
1N/A
1N/Amy $N = 1;
1N/Ause Tie::File;
1N/Aprint "ok $N\n"; $N++;
1N/A
1N/Aopen F, "> $file" or die $!;
1N/Abinmode F;
1N/Aprint F $data;
1N/Aclose F;
1N/A
1N/A
1N/Amy $o = tie @a, 'Tie::File', $file, autochomp => 0;
1N/Aprint $o ? "ok $N\n" : "not ok $N\n";
1N/A$N++;
1N/A
1N/A$: = $o->{recsep};
1N/A
1N/Amy $n;
1N/A
1N/A# 3 test array element count
1N/A$n = @a;
1N/Aprint $n == 3 ? "ok $N\n" : "not ok $N # n=$n\n";
1N/A$N++;
1N/A
1N/A# 4 same thing again
1N/A$n = @a;
1N/Aprint $n == 3 ? "ok $N\n" : "not ok $N # n=$n\n";
1N/A$N++;
1N/A
1N/A# 5 test $#a notation
1N/A$n = $#a;
1N/Aprint $n == 2 ? "ok $N\n" : "not ok $N # n=$n\n";
1N/A$N++;
1N/A
1N/A# 6 test looping over array elements
1N/Amy $q;
1N/Afor (@a) { $q .= $_ }
1N/Aprint $q eq $data ? "ok $N\n" : "not ok $N # n=$n\n";
1N/A$N++;
1N/A
1N/AEND {
1N/A undef $o;
1N/A untie @a;
1N/A 1 while unlink $file;
1N/A}
1N/A