X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F002_basic_w_subtypes.t;h=61e341bed43987ba6bb0a95f5221ee2a1379e7ab;hb=619ab942be0a8bd8f530c57ca5b0c8d833cdc89b;hp=3806d0209bb6c4b8de5450e8271bc9be63f7e60e;hpb=913d96ddbab15f9b2d870b8dba5bd8f8f11e36d1;p=gitmo%2FMooseX-Storage.git diff --git a/t/002_basic_w_subtypes.t b/t/002_basic_w_subtypes.t index 3806d02..61e341b 100644 --- a/t/002_basic_w_subtypes.t +++ b/t/002_basic_w_subtypes.t @@ -3,12 +3,21 @@ use strict; use warnings; -use Test::More no_plan => 1; +use Test::More tests => 11; +use Test::Deep; BEGIN { use_ok('MooseX::Storage'); } +=pod + +This extends the 001_basic test to +show that subtypes will DWIM in most +cases. + +=cut + { package Foo; @@ -59,17 +68,17 @@ BEGIN { ); isa_ok( $foo, 'Foo' ); - is_deeply( + cmp_deeply( $foo->pack, { - __class__ => 'Foo', + __CLASS__ => 'Foo', number => 10, string => 'foo', float => 10.5, array => [ 1 .. 10 ], hash => { map { $_ => undef } ( 1 .. 10 ) }, object => { - __class__ => 'Foo', + __CLASS__ => 'Foo', number => 2 }, }, @@ -80,14 +89,14 @@ BEGIN { { my $foo = Foo->unpack( { - __class__ => 'Foo', + __CLASS__ => 'Foo', number => 10, string => 'foo', float => 10.5, array => [ 1 .. 10 ], hash => { map { $_ => undef } ( 1 .. 10 ) }, object => { - __class__ => 'Foo', + __CLASS__ => 'Foo', number => 2 }, } @@ -97,8 +106,8 @@ BEGIN { is( $foo->number, 10, '... got the right number' ); is( $foo->string, 'foo', '... got the right string' ); is( $foo->float, 10.5, '... got the right float' ); - is_deeply( $foo->array, [ 1 .. 10 ], '... got the right array' ); - is_deeply( + cmp_deeply( $foo->array, [ 1 .. 10 ], '... got the right array' ); + cmp_deeply( $foo->hash, { map { $_ => undef } ( 1 .. 10 ) }, '... got the right hash'