diff options
author | Jesse Luehrs <doy@tozt.net> | 2010-06-15 01:36:37 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2010-06-15 01:36:37 -0500 |
commit | 60c5f48aff6a579ce22bd4b4245f7be346609901 (patch) | |
tree | 7025b94a0470cef60d9c3694d0dbf247f5b30aaa /t/023-FOREIGNBUILDARGS.t | |
parent | 571bfa3b91ff5567338948776b6fce84d3ede09e (diff) | |
download | moosex-nonmoose-60c5f48aff6a579ce22bd4b4245f7be346609901.tar.gz moosex-nonmoose-60c5f48aff6a579ce22bd4b4245f7be346609901.zip |
convert to new dzil stuff
Diffstat (limited to 't/023-FOREIGNBUILDARGS.t')
-rw-r--r-- | t/023-FOREIGNBUILDARGS.t | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/t/023-FOREIGNBUILDARGS.t b/t/023-FOREIGNBUILDARGS.t deleted file mode 100644 index 43529dd..0000000 --- a/t/023-FOREIGNBUILDARGS.t +++ /dev/null @@ -1,79 +0,0 @@ -#!/usr/bin/env perl -use strict; -use warnings; -use Test::More tests => 12; - -package Foo; - -sub new { - my $class = shift; - bless { foo_base => $_[0] }, $class; -} - -sub foo_base { shift->{foo_base} } - -package Foo::Moose; -use Moose; -use MooseX::NonMoose; -extends 'Foo'; - -has foo => ( - is => 'rw', -); - -sub FOREIGNBUILDARGS { - my $class = shift; - my %args = @_; - return "$args{foo}_base"; -} - -package Bar::Moose; -use Moose; -use MooseX::NonMoose; -extends 'Foo'; - -has bar => ( - is => 'rw', -); - -sub FOREIGNBUILDARGS { - my $class = shift; - return "$_[0]_base"; -} - -sub BUILDARGS { - my $class = shift; - return { bar => shift }; -} - -package Baz::Moose; -use Moose; -extends 'Bar::Moose'; - -has baz => ( - is => 'rw', -); - -package main; - -my $foo = Foo::Moose->new(foo => 'bar'); -is($foo->foo, 'bar', 'subclass constructor gets the right args'); -is($foo->foo_base, 'bar_base', 'subclass constructor gets the right args'); -my $bar = Bar::Moose->new('baz'); -is($bar->bar, 'baz', 'subclass constructor gets the right args'); -is($bar->foo_base, 'baz_base', 'subclass constructor gets the right args'); -my $baz = Baz::Moose->new('bazbaz'); -is($baz->bar, 'bazbaz', 'extensions of extensions of the nonmoose class respect BUILDARGS'); -is($baz->foo_base, 'bazbaz_base', 'extensions of extensions of the nonmoose class respect FOREIGNBUILDARGS'); -Foo::Moose->meta->make_immutable; -Bar::Moose->meta->make_immutable; -Baz::Moose->meta->make_immutable; -$foo = Foo::Moose->new(foo => 'bar'); -is($foo->foo, 'bar', 'subclass constructor gets the right args (immutable)'); -is($foo->foo_base, 'bar_base', 'subclass constructor gets the right args (immutable)'); -$bar = Bar::Moose->new('baz'); -is($bar->bar, 'baz', 'subclass constructor gets the right args (immutable)'); -is($bar->foo_base, 'baz_base', 'subclass constructor gets the right args (immutable)'); -$baz = Baz::Moose->new('bazbaz'); -is($baz->bar, 'bazbaz', 'extensions of extensions of the nonmoose class respect BUILDARGS (immutable)'); -is($baz->foo_base, 'bazbaz_base', 'extensions of extensions of the nonmoose class respect FOREIGNBUILDARGS (immutable)'); |