From: John Napiorkowski Date: Mon, 20 Jun 2016 16:35:17 +0000 (-0500) Subject: set correct %INC X-Git-Tag: 5.90106~2 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=0f0fedb2b03e13e16636b61fd5e82b6563d2ee9c;p=catagits%2FCatalyst-Runtime.git set correct %INC --- diff --git a/t/class_traits.t b/t/class_traits.t index 2f6e4f3..edccea2 100644 --- a/t/class_traits.t +++ b/t/class_traits.t @@ -18,7 +18,7 @@ BEGIN { sub c { 'c' } package TestApp::TraitFor::Request::Bar; - $INC{'Catalyst/TraitFor/Request/Bar.pm'} = __FILE__; + $INC{'TestApp/TraitFor/Request/Bar.pm'} = __FILE__; use Moose::Role; sub d { 'd' } @@ -31,7 +31,7 @@ BEGIN { sub c { 'c' } package TestApp::TraitFor::Response::Bar; - $INC{'Catalyst/TraitFor/Response/Bar.pm'} = __FILE__; + $INC{'TestApp/TraitFor/Response/Bar.pm'} = __FILE__; use Moose::Role; diff --git a/t/class_traits_CAR_bug.t b/t/class_traits_CAR_bug.t new file mode 100644 index 0000000..d160e73 --- /dev/null +++ b/t/class_traits_CAR_bug.t @@ -0,0 +1,70 @@ +use strict; +use warnings; +use Test::More; +use Class::MOP; + +BEGIN { + use Test::More; + eval "use Catalyst::Action::REST; 1" || do { + plan skip_all => "Trouble loading Catalyst::Action::REST => $@"; + }; +} + +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 TestApp::Controller::Root; + $INC{'TestApp/Controller/Root.pm'} = __FILE__; + + use Moose; + use MooseX::MethodAttributes; + + +} + +{ + package TestApp; + $INC{'TestApp.pm'} = __FILE__; + + use Catalyst; + + __PACKAGE__->request_class_traits([qw/TestRole Foo Bar/]); + __PACKAGE__->setup; +} + + +foreach my $class_prefix (qw/request/) { + my $method = 'composed_' .$class_prefix. '_class'; + ok( + Class::MOP::class_of(TestApp->$method)->does_role('TestRole'), + "$method does TestRole", + ); +} + +use Catalyst::Test 'TestApp'; + +my ($res, $c) = ctx_request '/'; + +is $c->req->a, 'a'; +is $c->req->b, 'b'; +is $c->req->c, 'c'; +is $c->req->d, 'd'; + +done_testing;