diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 1999-07-11 22:00:13 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 1999-07-11 22:00:13 +0000 |
commit | 8fae27067e2569b3f7cec978d3d70aff08a42bf5 (patch) | |
tree | bff941ac6d472c042da275112fca4ecc50875c54 /t | |
parent | 500eb3bf7664bac7059c824751ab6d6c8bf97246 (diff) | |
parent | ed7ab888f26e9b2a3bcf98806b630e993179f8b4 (diff) | |
download | perl-8fae27067e2569b3f7cec978d3d70aff08a42bf5.tar.gz |
Integrate with Sarathy.
p4raw-id: //depot/cfgperl@3666
Diffstat (limited to 't')
-rwxr-xr-x | t/op/lex_assign.t | 63 |
1 files changed, 62 insertions, 1 deletions
diff --git a/t/op/lex_assign.t b/t/op/lex_assign.t index b2acd65d75..01e0ba0019 100755 --- a/t/op/lex_assign.t +++ b/t/op/lex_assign.t @@ -22,11 +22,72 @@ $nn = $n = 2; sub subb {"in s"} @INPUT = <DATA>; -print "1..", (scalar @INPUT), "\n"; +print "1..", (8 + @INPUT), "\n"; $ord = 0; sub wrn {"@_"} +# Check correct optimization of ucfirst etc +$ord++; +my $a = "AB"; +my $b = "\u\L$a"; +print "not " unless $b eq 'Ab'; +print "ok $ord\n"; + +# Check correct destruction of objects: +my $dc = 0; +sub A::DESTROY {$dc += 1} +$a=8; +my $b; +{ my $c = 6; $b = bless \$c, "A"} + +$ord++; +print "not " unless $dc == 0; +print "ok $ord\n"; + +$b = $a+5; + +$ord++; +print "not " unless $dc == 1; +print "ok $ord\n"; + +{ # Check calling STORE + my $sc = 0; + sub B::TIESCALAR {bless [11], 'B'} + sub B::FETCH { -(shift->[0]) } + sub B::STORE { $sc++; my $o = shift; $o->[0] = 17 + shift } + + my $m; + tie $m, 'B'; + $m = 100; + + $ord++; + print "not " unless $sc == 1; + print "ok $ord\n"; + + my $t = 11; + $m = $t + 89; + + $ord++; + print "not " unless $sc == 2; + print "ok $ord\n"; + + $ord++; + print "# $m\nnot " unless $m == -117; + print "ok $ord\n"; + + $m += $t; + + $ord++; + print "not " unless $sc == 3; + print "ok $ord\n"; + + $ord++; + print "# $m\nnot " unless $m == 89; + print "ok $ord\n"; + +} + for (@INPUT) { $ord++; ($op, undef, $comment) = /^([^\#]+)(\#\s+(.*))?/; |