Move Controller::ActionRole's functionality into the core.
[catagits/Catalyst-Runtime.git] / t / lib / TestApp / Controller / ActionRoles.pm
1 package TestApp::Controller::ActionRoles;
2
3 use Moose;
4
5 BEGIN { extends 'Catalyst::Controller' }
6
7 __PACKAGE__->config(
8     action_roles => ['~Kooh'],
9     action_args => {
10         frew => { boo => 'hello' },
11     },
12 );
13
14 sub foo  : Local Does('Moo')  {}
15 sub bar  : Local Does('~Moo') {}
16 sub baz  : Local Does('+Moo') {}
17 sub quux : Local Does('Zoo')  {}
18
19 sub corge : Local Does('Moo') ActionClass('TestAfter') {
20     my ($self, $ctx) = @_;
21     $ctx->stash(after_message => 'moo');
22 }
23
24 sub frew : Local Does('Boo')  {
25     my ($self, $ctx) = @_;
26     my $boo = $ctx->stash->{action_boo};
27     $ctx->response->body($boo);
28 }
29
30 1;