lemonldap-ng/modules/lemonldap-ng-portal/t/27-Lemonldap-NG-Portal-IssuerDBOpenID.t

58 lines
1.6 KiB
Perl
Raw Normal View History

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; };
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');
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
}