Storing the length of all the overloading names saves a strlen() in a
[p5sagit/p5-mst-13.2.git] / t / op / push.t
index f62a4e9..8b12e61 100755 (executable)
@@ -1,7 +1,5 @@
 #!./perl
 
-# $RCSfile: push.t,v $$Revision: 4.1 $$Date: 92/08/07 18:28:13 $
-
 @tests = split(/\n/, <<EOF);
 0 3,                   0 1 2,          3 4 5 6 7
 0 0 a b c,             ,               a b c 0 1 2 3 4 5 6 7
@@ -16,7 +14,7 @@
 -4,                    4 5 6 7,        0 1 2 3
 EOF
 
-print "1..", 2 + @tests, "\n";
+print "1..", 4 + @tests, "\n";
 die "blech" unless @tests;
 
 @x = (1,2,3);
@@ -25,7 +23,13 @@ if (join(':',@x) eq '1:2:3:1:2:3') {print "ok 1\n";} else {print "not ok 1\n";}
 push(@x,4);
 if (join(':',@x) eq '1:2:3:1:2:3:4') {print "ok 2\n";} else {print "not ok 2\n";}
 
-$test = 3;
+# test for push/pop intuiting @ on array
+push(x,3);
+if (join(':',@x) eq '1:2:3:1:2:3:4:3') {print "ok 3\n";} else {print "not ok 3\n";}
+pop(x);
+if (join(':',@x) eq '1:2:3:1:2:3:4') {print "ok 4\n";} else {print "not ok 4\n";}
+
+$test = 5;
 foreach $line (@tests) {
     ($list,$get,$leave) = split(/,\t*/,$line);
     ($pos, $len, @list) = split(' ',$list);