From 1224d2b9a3965e40a9c5605eb455ff8a3372380b Mon Sep 17 00:00:00 2001 From: doy Date: Mon, 20 Apr 2009 00:31:16 -0500 Subject: add a test for inline_constructor => 0 --- t/006-disable.t | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 t/006-disable.t (limited to 't') diff --git a/t/006-disable.t b/t/006-disable.t new file mode 100644 index 0000000..aea55ec --- /dev/null +++ b/t/006-disable.t @@ -0,0 +1,33 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More tests => 3; + +package Foo; + +sub new { + my $class = shift; + bless {}, $class; +} + +package Foo::Moose; +use Moose; +use MooseX::NonMoose; +extends 'Foo'; + +package Foo::Moose2; +use Moose; +use MooseX::NonMoose; +extends 'Foo'; + +package main; + +ok(Foo::Moose->meta->has_method('new'), 'Foo::Moose has a constructor'); +my $method = Foo::Moose->meta->get_method('new'); +Foo::Moose->meta->make_immutable; +isnt($method, Foo::Moose->meta->get_method('new'), + 'make_immutable replaced the constructor with an inlined version'); +my $method2 = Foo::Moose2->meta->get_method('new'); +Foo::Moose->meta->make_immutable(inline_constructor => 0); +is($method2, Foo::Moose2->meta->get_method('new'), + 'make_immutable doesn\'t replace the constructor if we ask it not to'); -- cgit v1.2.3-54-g00ecf