X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=t%2Fclass_traits.t;h=8730822fd21b1e86be58b03db0fa7ddc15eaa12b;hp=8c65b384bf15e3a70fd7db81a7fffb890699d7bf;hb=a21b003477f442246a2e68d0d4ec8267332b09bf;hpb=7dac038c9d0d69aefa96bde4a1d574d0f983c684 diff --git a/t/class_traits.t b/t/class_traits.t index 8c65b38..8730822 100644 --- a/t/class_traits.t +++ b/t/class_traits.t @@ -4,36 +4,66 @@ use Test::More; use Class::MOP; BEGIN { + my %hidden = map { (my $m = "$_.pm") =~ s{::}{/}g; $m => 1 } qw( + Foo + Bar + ); + unshift @INC, sub { + return unless exists $hidden{$_[1]}; + die "Can't locate $_[1] in \@INC (hidden)\n"; + }; +} + +BEGIN { package TestRole; + $INC{'TestRole'} = __FILE__; use Moose::Role; sub a { 'a' } sub b { 'b' } package Catalyst::TraitFor::Request::Foo; + $INC{'Catalyst/TraitFor/Request/Foo.pm'} = __FILE__; use Moose::Role; sub c { 'c' } package TestApp::TraitFor::Request::Bar; + $INC{'TestApp/TraitFor/Request/Bar.pm'} = __FILE__; use Moose::Role; sub d { 'd' } package Catalyst::TraitFor::Response::Foo; + $INC{'Catalyst/TraitFor/Response/Foo.pm'} = __FILE__; + use Moose::Role; sub c { 'c' } package TestApp::TraitFor::Response::Bar; + $INC{'TestApp/TraitFor/Response/Bar.pm'} = __FILE__; + use Moose::Role; sub d { 'd' } } - + +BEGIN { + package TestApp::Controller::Root; + $INC{'TestApp/Controller/Root.pm'} = __FILE__; + + use Moose; + + BEGIN { extends 'Catalyst::Controller' }; + + sub root :Path('/') {} +} + { package TestApp; - + $INC{'TestApp.pm'} = __FILE__; + use Catalyst; __PACKAGE__->request_class_traits([qw/TestRole Foo Bar/]); @@ -42,8 +72,8 @@ BEGIN { __PACKAGE__->setup; } - - + + foreach my $class_prefix (qw/request response stats/) { my $method = 'composed_' .$class_prefix. '_class'; ok(