Dancer2-Plugin-Auth-Extensible

 view release on metacpan or  search on metacpan

t/disable_roles.t  view on Meta::CPAN

use Test::More;
use Test::Fatal;
use Plack::Test;
use HTTP::Request::Common;

BEGIN {
    $ENV{DANCER_CONFDIR} = 't/lib';
    $ENV{DANCER_ENVIRONMENT} = 'disable-roles';
}

like exception {
    package RequireAllRoles;
    use Dancer2;
    use Dancer2::Plugin::Auth::Extensible;

    get '/require_all_roles' => require_all_roles [qw(Foo Bar)] => sub {
        return 1;
    };
},
  qr/roles are disabled by disable_roles setting/,
  "App using require_all_roles dies during route setup";


like exception {
    package RequireAnyRole;
    use Dancer2;
    use Dancer2::Plugin::Auth::Extensible;

    get '/require_any_role' => require_any_role [qw(Foo Bar)] => sub {
        return 1;
    };
},
  qr/roles are disabled by disable_roles setting/,
  "App using require_any_role dies during route setup";

like exception {
    package RequireRole;
    use Dancer2;
    use Dancer2::Plugin::Auth::Extensible;

    get '/require_role' => require_role Foo => sub {
        return 1;
    };
},
  qr/roles are disabled by disable_roles setting/,
  "App using require_role dies during route setup";

{
    package TestApp;
    use Dancer2;
    use Dancer2::Plugin::Auth::Extensible;

    set logger => 'capture';
    set log => 'error';

    get '/user_has_role' => sub {
        user_has_role('Foo');
        return 1;
    };

    get '/user_roles' => sub {
        user_roles;



( run in 0.672 second using v1.01-cache-2.11-cpan-54e63673c56 )