1 |
dpavlin |
36 |
#!/usr/bin/env perl |
2 |
|
|
use warnings; |
3 |
|
|
use strict; |
4 |
|
|
|
5 |
|
|
=head1 DESCRIPTION |
6 |
|
|
|
7 |
|
|
test LDAP module |
8 |
|
|
|
9 |
|
|
=cut |
10 |
|
|
|
11 |
dpavlin |
106 |
use Jifty::Test tests => 29; |
12 |
|
|
use Data::Dump qw/dump/; |
13 |
dpavlin |
36 |
|
14 |
|
|
use_ok('A3C::LDAP'); |
15 |
|
|
|
16 |
dpavlin |
40 |
ok( my $ldap = A3C::LDAP->new, 'new' ); |
17 |
|
|
|
18 |
|
|
isa_ok( $ldap, 'A3C::LDAP' ); |
19 |
|
|
|
20 |
dpavlin |
106 |
isa_ok( $ldap->objectClass, 'HASH', 'have objectClass' ); |
21 |
|
|
isa_ok( $ldap->link, 'HASH', 'have link' ); |
22 |
|
|
|
23 |
|
|
diag "objectClass = ",dump( $ldap->objectClass ); |
24 |
|
|
diag "link = ",dump( $ldap->link ); |
25 |
|
|
|
26 |
dpavlin |
36 |
ok( |
27 |
dpavlin |
40 |
$ldap->search( |
28 |
dpavlin |
36 |
base => 'dc=skole,dc=hr', |
29 |
|
|
filter => '(objectClass=hrEduOrg)', |
30 |
dpavlin |
42 |
sizelimit => 10, |
31 |
dpavlin |
36 |
) |
32 |
|
|
), 'search'; |
33 |
|
|
|
34 |
dpavlin |
40 |
isa_ok( $ldap, 'A3C::LDAP' ); |
35 |
dpavlin |
36 |
|
36 |
dpavlin |
42 |
cmp_ok( $ldap->count, '==', 10, 'count' ); |
37 |
dpavlin |
36 |
|
38 |
dpavlin |
40 |
foreach my $i ( 1 .. 10 ) { |
39 |
|
|
ok( my $entry = $ldap->next, "next $i" ); |
40 |
|
|
# $entry->dump; |
41 |
|
|
} |
42 |
dpavlin |
42 |
|
43 |
dpavlin |
112 |
my $org_oc = $ldap->objectClass->{organization}; |
44 |
|
|
|
45 |
dpavlin |
47 |
foreach my $limit ( 3, 7, 14 ) { |
46 |
dpavlin |
112 |
ok( my $collection = $ldap->collection( $org_oc, limit => $limit), "collection $org_oc limit = $limit" ); |
47 |
|
|
isa_ok( $collection, "A3C::Model::${org_oc}Collection" ); |
48 |
dpavlin |
47 |
is( $collection->count, $limit, 'count' ); |
49 |
|
|
} |
50 |
dpavlin |
53 |
|
51 |
dpavlin |
112 |
my $person_oc = $ldap->objectClass->{person}; |
52 |
|
|
|
53 |
|
|
ok( my $coll = $ldap->collection( $person_oc, filter => '(HrEduPersonHomeOrg=aa-test-zz)'), 'collection with filter' ); |
54 |
dpavlin |
53 |
is( $coll->count, 0, 'no results' ); |