6 use Test::More tests => 3;
14 sub foo { 'Foo::foo(' . (inner() || '') . ')' };
27 augment 'foo' => sub {
28 die "infinite loop on Baz::foo" if $foo_call_counter++ > 1;
29 return 'Baz::foo and ' . Bar->new->foo;
39 When a subclass which augments foo(), calls a subclass which does not augment
40 foo(), there is a chance for some confusion. If Mouse does not realize that
41 Bar does not augment foo(), because it is in the call flow of Baz which does,
42 then we may have an infinite loop.
47 'Foo::foo(Baz::foo and Foo::foo())',
48 '... got the right value for 1 augmented subclass calling non-augmented subclass');