6 use Test::More tests => 75;
7 use Data::Dump qw(dump);
13 sub ldap_check_error {
15 ok( ! $o->code, 'no errror' );
16 diag $o->error if $o->code;
19 ok( my $ldap = Net::LDAP->new( 'localhost:2389' ), 'new Net::LDAP' );
21 ok( my $bind = $ldap->bind, 'bind' );
22 ldap_check_error $bind;
24 sub check_search_attributes {
27 foreach my $entry ( $search->entries ) {
29 map { ok( $_, "attribute $_" ) } grep { /^\Q$_\E$/i } $entry->attributes;
34 my ($ldap,$search) = @_;
35 ok( my $search = $ldap->search( filter => $search ), "search $search" );
36 ldap_check_error $search;
37 ok( $search->entries, 'have results' );
41 foreach my $search ( qw/
43 pager=E00401001F77E218
45 my $entries = search $ldap => $search;
46 check_search_attributes $entries => 'uid', 'mail', 'pager', 'memberOf';
48 $entries = search $ldap => "(&(objectclass=HrEduPerson)($search))";
49 check_search_attributes $entries => 'uid', 'mail', 'pager', 'memberOf';
52 search $ldap => $_ foreach ( qw/
53 objectclass=organizationalUnit
57 ok( $ldap->unbind, 'unbind' );