diff options
author | Jesse Luehrs <doy@tozt.net> | 2011-05-09 02:16:50 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2011-05-09 02:16:50 -0500 |
commit | ea81da0f3d0ace97640a5579fd9755f08a92519b (patch) | |
tree | 5ce006674a7d758dc2ef558f6f6f0e204c48fd6e /t/12-reinitialize.t | |
parent | 1ce41cfaf1acdf738cf0eed14011ddf076265ee9 (diff) | |
download | moosex-nonmoose-ea81da0f3d0ace97640a5579fd9755f08a92519b.tar.gz moosex-nonmoose-ea81da0f3d0ace97640a5579fd9755f08a92519b.zip |
fix metaclass reinitialization
Diffstat (limited to 't/12-reinitialize.t')
-rw-r--r-- | t/12-reinitialize.t | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/t/12-reinitialize.t b/t/12-reinitialize.t new file mode 100644 index 0000000..5e4aa11 --- /dev/null +++ b/t/12-reinitialize.t @@ -0,0 +1,32 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More; +use Test::Fatal; + +{ + package Foo; + sub new { bless {}, shift } +} + +{ + package Foo::Meta::Role; + use Moose::Role; +} + +{ + package Foo::Sub; + use Moose; + use MooseX::NonMoose; + extends 'Foo'; + Moose::Util::MetaRole::apply_metaroles( + for => __PACKAGE__, + class_metaroles => { + class => ['Foo::Meta::Role'], + }, + ); + ::is(::exception { __PACKAGE__->meta->make_immutable }, undef, + "can make_immutable after reinitialization"); +} + +done_testing; |