File: unit_controller_actions.t

package info (click to toggle)
libcatalyst-perl 5.90132-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 3,016 kB
  • sloc: perl: 11,061; makefile: 7
file content (26 lines) | stat: -rw-r--r-- 762 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use strict;
use warnings;
use Test::More tests => 4;

use Catalyst ();
{
    package TestController;
    use Moose;
    BEGIN { extends 'Catalyst::Controller' }

    sub action : Local {}

    sub foo : Path {}

    no Moose;
}

my $mock_app = Class::MOP::Class->create_anon_class( superclasses => ['Catalyst'] );
my $app = $mock_app->name->new;
my $controller = TestController->new($app, {actions => { foo => { Path => '/some/path' }}});

ok $controller->can('_controller_actions');
is_deeply $controller->_controller_actions => { foo => { Path => '/some/path' }};
is_deeply $controller->{actions} => { foo => { Path => '/some/path' }}; # Back compat.
is_deeply [ sort grep { ! /^_/ } map { $_->name } $controller->get_action_methods ], [sort qw/action foo/];