X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=t%2F001_mouse%2F060-threads.t;h=06748dbb57dff557973cc5df4131f42c142a9cb8;hp=32eb2bc564bba5ae4b0838c223fa232c549ec64e;hb=aff73a9e6d34b45a21123586c0893921df98181b;hpb=f152b0997e523b60b2dbcefff8d102fc1096bf49 diff --git a/t/001_mouse/060-threads.t b/t/001_mouse/060-threads.t index 32eb2bc..06748db 100644 --- a/t/001_mouse/060-threads.t +++ b/t/001_mouse/060-threads.t @@ -11,29 +11,36 @@ use Test::More HAS_THREADS ? (tests => 6) : (skip_all => "This is a test for thr has foo => ( is => 'rw', - isa => 'Int', + isa => 'Foo', + ); + + package Foo; + use Mouse; + + has value => ( + is => 'rw', ); } -my $o = MyClass->new(foo => 42); +my $o = MyClass->new(foo => Foo->new(value => 42)); threads->create(sub{ - my $x = MyClass->new(foo => 1); - is $x->foo, 1; + my $x = MyClass->new(foo => Foo->new(value => 1)); + is $x->foo->value, 1; - $x->foo(2); + $x->foo(Foo->new(value => 2)); - is $x->foo, 2; + is $x->foo->value, 2; MyClass->meta->make_immutable(); - $x = MyClass->new(foo => 10); - is $x->foo, 10; + $x = MyClass->new(foo => Foo->new(value => 10)); + is $x->foo->value, 10; - $x->foo(20); + $x->foo(Foo->new(value => 20)); - is $x->foo, 20; + is $x->foo->value, 20; })->join(); -is $o->foo, 42; +is $o->foo->value, 42; ok !$o->meta->is_immutable;