-
Notifications
You must be signed in to change notification settings - Fork 54
/
Auth_with_ldap.t
executable file
·45 lines (38 loc) · 1.21 KB
/
Auth_with_ldap.t
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
#!/bin/perl
#
use strict;
use warnings;
use Test::More;
use vars qw(%cases $dbh $config $context $ldap);
BEGIN {
%cases = (
# users from t/LDAP/example3.ldif
sss => 'password1',
jts => 'password1',
rch => 'password2',
jmf => 'password3',
);
plan tests => 7 + scalar(keys %cases);
use_ok('C4::Context');
use_ok('C4::Auth_with_ldap', qw(checkpw_ldap));
}
sub do_checkpw_ldap (;$$) {
my ($user,$pass) = (shift,shift);
diag "($user,$pass)";
my $ret;
return ($ret = checkpw_ldap($dbh,$user,$pass), sprintf("(%s,%s) returns '%s'",$user,$pass,$ret));
}
ok($context= C4::Context->new(), "Getting new C4::Context object");
ok($dbh = C4::Context->dbh(), "Getting dbh from C4::Context");
ok($dbh = $context->dbh(), "Getting dbh from \$context object");
diag("The basis of Authentication is that we don't auth everybody.");
diag("Let's make sure we reject on bad calls.");
my $ret;
ok(!($ret = checkpw_ldap($dbh)), "should reject ( no arguments) returns '$ret'");
ok(!($ret = checkpw_ldap($dbh,'','')), "should reject (empty arguments) returns '$ret'");
print "\n";
diag("Now let's check " . scalar(keys %cases) . " test cases: ");
foreach (sort keys %cases) {
ok do_checkpw_ldap($_, $cases{$_});
}
1;