X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F005_w_versions_and_authority_check.t;h=50b5a15ad657b7307bb8288146fe4cedb6792f6b;hb=c2d52f94beb56939250944a12df15d7d90779866;hp=8d99b02589f9abd59f7d3595bfdc4bf45deed156;hpb=c1830046f3b22e250cb83c7595b0f818edb47afc;p=gitmo%2FMooseX-Storage.git diff --git a/t/005_w_versions_and_authority_check.t b/t/005_w_versions_and_authority_check.t index 8d99b02..50b5a15 100644 --- a/t/005_w_versions_and_authority_check.t +++ b/t/005_w_versions_and_authority_check.t @@ -1,10 +1,9 @@ -#!/usr/bin/perl - use strict; use warnings; use Test::More tests => 8; -use Test::Exception; +use Test::Deep; +use Test::Fatal; BEGIN { use_ok('MooseX::Storage'); @@ -12,7 +11,7 @@ BEGIN { =pod -This tests that the version and authority +This tests that the version and authority checks are performed upon object expansion. =cut @@ -21,27 +20,27 @@ checks are performed upon object expansion. package Bar; use Moose; use MooseX::Storage; - + our $VERSION = '0.01'; our $AUTHORITY = 'cpan:JRANDOM'; with Storage; - + has 'number' => (is => 'ro', isa => 'Int'); - + package Foo; use Moose; use MooseX::Storage; our $VERSION = '0.01'; - our $AUTHORITY = 'cpan:JRANDOM'; + our $AUTHORITY = 'cpan:JRANDOM'; - with Storage; + with Storage; - has 'bar' => ( - is => 'ro', - isa => 'Bar' - ); + has 'bar' => ( + is => 'ro', + isa => 'Bar' + ); } { @@ -49,15 +48,15 @@ checks are performed upon object expansion. bar => Bar->new(number => 1) ); isa_ok( $foo, 'Foo' ); - - is_deeply( + + cmp_deeply( $foo->pack, { __CLASS__ => 'Foo-0.01-cpan:JRANDOM', bar => { __CLASS__ => 'Bar-0.01-cpan:JRANDOM', number => 1, - } + } }, '... got the right frozen class' ); @@ -70,46 +69,45 @@ checks are performed upon object expansion. bar => { __CLASS__ => 'Bar-0.01-cpan:JRANDOM', number => 1, - } - }, + } + }, ); isa_ok( $foo, 'Foo' ); isa_ok( $foo->bar, 'Bar' ); is( $foo->bar->number, 1 , '... got the right number too' ); - + } -Moose::Meta::Class->create('Bar', +Moose::Meta::Class->create('Bar', version => '0.02', authority => 'cpan:JRANDOM', ); -dies_ok { +ok(exception { Foo->unpack( { __CLASS__ => 'Foo-0.01-cpan:JRANDOM', bar => { __CLASS__ => 'Bar-0.01-cpan:JRANDOM', number => 1, - } - } + } + } ); -} '... could not unpack, versions are different'; +}, '... could not unpack, versions are different ' . $@); -Moose::Meta::Class->create('Bar', +Moose::Meta::Class->create('Bar', version => '0.01', authority => 'cpan:DSTATIC', ); - -dies_ok { +ok(exception { Foo->unpack( { __CLASS__ => 'Foo-0.01-cpan:JRANDOM', bar => { __CLASS__ => 'Bar-0.01-cpan:JRANDOM', number => 1, - } - } + } + } ); -} '... could not unpack, authorities are different'; +}, '... could not unpack, authorities are different');