X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F010_basics%2F012_rebless.t;h=2ec0c205a57f3269fab91587c865dd14f4974517;hb=06d16be025b59d5bb71c237c6ab27c6053c2b615;hp=5ce90bf253ae4fedba9347f4291359b44993e820;hpb=a415408189a8c3756fd76c4b81d32d5fa25a0d09;p=gitmo%2FMoose.git diff --git a/t/010_basics/012_rebless.t b/t/010_basics/012_rebless.t index 5ce90bf..2ec0c20 100644 --- a/t/010_basics/012_rebless.t +++ b/t/010_basics/012_rebless.t @@ -3,14 +3,11 @@ use strict; use warnings; -use Test::More tests => 13; +use Test::More; use Test::Exception; use Scalar::Util 'blessed'; -BEGIN { - use_ok('Moose'); - use_ok("Moose::Util::TypeConstraints"); -} +use Moose::Util::TypeConstraints; subtype 'Positive' => as 'Num' @@ -64,8 +61,12 @@ is($foo->lazy_classname, 'Parent', "lazy attribute initialized"); lives_ok { $foo->type_constrained(10.5) } "Num type constraint for now.."; # try to rebless, except it will fail due to Child's stricter type constraint -throws_ok { Child->meta->rebless_instance($foo) } qr/^Attribute \(type_constrained\) does not pass the type constraint \(Int\) with '10\.5'/; -throws_ok { Child->meta->rebless_instance($bar) } qr/^Attribute \(type_constrained\) does not pass the type constraint \(Int\) with '5\.5'/; +throws_ok { Child->meta->rebless_instance($foo) } +qr/^Attribute \(type_constrained\) does not pass the type constraint because\: Validation failed for 'Int' with value 10\.5/, +'... this failed cause of type check'; +throws_ok { Child->meta->rebless_instance($bar) } +qr/^Attribute \(type_constrained\) does not pass the type constraint because\: Validation failed for 'Int' with value 5\.5/, +'... this failed cause of type check';; $foo->type_constrained(10); $bar->type_constrained(5); @@ -79,4 +80,8 @@ is($foo->name, 'Junior', "Child->name's default came through"); is($foo->lazy_classname, 'Parent', "lazy attribute was already initialized"); is($bar->lazy_classname, 'Child', "lazy attribute just now initialized"); -throws_ok { $foo->type_constrained(10.5) } qr/^Attribute \(type_constrained\) does not pass the type constraint \(Int\) with 10\.5 /; +throws_ok { $foo->type_constrained(10.5) } +qr/^Attribute \(type_constrained\) does not pass the type constraint because\: Validation failed for 'Int' with value 10\.5/, +'... this failed cause of type check'; + +done_testing;