File: 03_username.t

package info (click to toggle)
libcgi-application-plugin-authorization-perl 0.07-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 332 kB
  • ctags: 81
  • sloc: perl: 1,236; sh: 29; makefile: 2
file content (71 lines) | stat: -rw-r--r-- 1,782 bytes parent folder | download | duplicates (3)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/usr/bin/perl
use Test::More tests => 3;
use Scalar::Util;
use CGI;

use strict;
use warnings;
use lib './t';

{
    {
        package TestAppUsernameSub;

        use base qw(CGI::Application);
        use CGI::Application::Plugin::Authorization;
    }

    my $cgiapp = TestAppUsernameSub->new();
    $cgiapp->authz->config(
        DRIVER       => [ 'Generic', sub { 1 } ],
        GET_USERNAME => sub { 'get_username' },
    );
    is($cgiapp->authz->username, 'get_username', 'GET_USERNAME returned the correct username');
}


SKIP: {
    eval "require CGI::Application::Plugin::Authentication";
    skip "CGI::Application::Plugin::Authentication required for this test", 1 if $@;

    {
        package TestAppUsernameAuthen;

        use base qw(CGI::Application);
        use CGI::Application::Plugin::Authorization;
        CGI::Application::Plugin::Authentication->import;
    }

    my $query = CGI->new( { authen_username => 'authentication', authen_password => '123' } );

    my $cgiapp = TestAppUsernameAuthen->new( QUERY => $query );
    $cgiapp->authen->config(
        DRIVER => [ 'Generic', { authentication => '123' } ],
    );
    $cgiapp->authz->config(
        DRIVER       => [ 'Generic', sub { 1 } ],
    );
    is($cgiapp->authz->username, 'authentication', 'Authentication provided the correct username');
    undef $cgiapp;

}



{
    {
        package TestAppUsernameRemoteUser;

        use base qw(CGI::Application);
        use CGI::Application::Plugin::Authorization;
    }

    $ENV{REMOTE_USER} = 'remoteuser';
    my $cgiapp = TestAppUsernameRemoteUser->new();
    $cgiapp->authz->config(
        DRIVER       => [ 'Generic', sub { 1 } ],
    );
    is($cgiapp->authz->username, 'remoteuser', 'REMOTE_USER returned the correct username');
}