2010-10-14 07:55:28 +02:00
|
|
|
package My::Portal;
|
|
|
|
|
|
|
|
use Test::More tests => 8;
|
|
|
|
use strict;
|
|
|
|
|
|
|
|
our @ISA = qw(Lemonldap::NG::Portal::IssuerDBOpenID
|
|
|
|
Lemonldap::NG::Portal::OpenID::SREG);
|
|
|
|
|
|
|
|
sub lmLog {
|
|
|
|
my ( $self, $msg, $level ) = splice @_;
|
|
|
|
#print STDERR "[$level] $msg\n";
|
|
|
|
}
|
|
|
|
|
|
|
|
our $CONFIRM;
|
|
|
|
|
|
|
|
sub param {
|
|
|
|
my ( $self, $key ) = splice @_;
|
|
|
|
return { confirm => $CONFIRM, }->{$key};
|
|
|
|
}
|
|
|
|
|
|
|
|
sub info { }
|
|
|
|
sub _sub { }
|
|
|
|
sub updatePersistentSession { }
|
2010-10-05 20:39:15 +02:00
|
|
|
|
|
|
|
SKIP: {
|
|
|
|
eval { require Net::OpenID::Server; };
|
2010-10-14 07:55:28 +02:00
|
|
|
skip(
|
|
|
|
"Net::OpenID::Consumer is not installed, so "
|
|
|
|
. "Lemonldap::NG::Portal::AuthOpenID will not be useable",
|
|
|
|
2
|
|
|
|
) if ($@);
|
2010-10-05 20:39:15 +02:00
|
|
|
use_ok('Lemonldap::NG::Portal::OpenID::Server');
|
|
|
|
use_ok('Lemonldap::NG::Portal::IssuerDBOpenID');
|
2010-10-14 07:55:28 +02:00
|
|
|
use_ok('Lemonldap::NG::Portal::OpenID::SREG');
|
|
|
|
|
|
|
|
my $p = bless {}, __PACKAGE__;
|
|
|
|
|
|
|
|
my ( $r, $h );
|
|
|
|
( $r, $h ) = $p->sregHook( '', '', 0, 0, {} );
|
|
|
|
ok( $r == 0, 'Call sregHook with untrusted request' );
|
|
|
|
$CONFIRM = -1;
|
|
|
|
ok( !$p->sregHook( '', '', 1, 1, {} ), 'Call sregHook with confirm => -1' );
|
|
|
|
$CONFIRM = 1;
|
|
|
|
ok( $p->sregHook( '', '', 1, 1, {} ), 'Call sregHook without arguments' );
|
|
|
|
( $r, $h ) =
|
|
|
|
$p->sregHook( '', '', 1, 1,
|
|
|
|
{ required => 'fullname,email', optional => 'nickname' },
|
|
|
|
);
|
|
|
|
ok( $r == 0, 'Unconfigured required attributes' );
|
|
|
|
$p->{openIdSreg_fullname} = '$uid';
|
|
|
|
$p->{openIdSreg_email} = '$mail';
|
|
|
|
( $r, $h ) =
|
|
|
|
$p->sregHook( '', '', 1, 1,
|
|
|
|
{ required => 'fullname,email', optional => 'nickname' },
|
|
|
|
);
|
|
|
|
ok( $r == 1, 'Configured required attributes' );
|
2010-10-05 20:39:15 +02:00
|
|
|
}
|