File: 20-mock-node.t

package info (click to toggle)
libtest-net-ldap-perl 0.07-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 204 kB
  • sloc: perl: 2,017; makefile: 2
file content (39 lines) | stat: -rw-r--r-- 1,589 bytes parent folder | download | duplicates (2)
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
#!perl -T
use strict;
use warnings;

use Test::More tests => 25;

use Test::Net::LDAP::Mock::Node;

ok my $root = Test::Net::LDAP::Mock::Node->new;

is($root->get_node({dc => 'com'}), undef);
ok my $com = $root->make_node({dc => 'com'});
cmp_ok($root->get_node({dc => 'com'}), '==', $com);
cmp_ok($root->get_node([{dc => 'com'}]), '==', $com);
cmp_ok($root->get_node('dc=com'), '==', $com);

is($com->get_node({dc => 'example'}), undef);
ok my $example = $com->make_node({dc => 'example'});
cmp_ok($com->get_node({dc => 'example'}), '==', $example);
cmp_ok($root->get_node([{dc => 'example'}, {dc => 'com'}]), '==', $example);
cmp_ok($root->get_node('dc=example, dc=com'), '==', $example);

ok my $example2 = $com->make_node('dc=example');
cmp_ok($example, '==', $example2);
cmp_ok($com->get_node('dc=example'), '==', $example2);
cmp_ok($root->get_node('dc=example, dc=com'), '==', $example2);

ok my $foobar = $root->make_node('cn=foo+uid=bar, dc=example, dc=com');
cmp_ok($example->get_node({cn => 'foo', uid => 'bar'}), '==', $foobar);
cmp_ok($root->get_node([{cn => 'foo', uid => 'bar'}, {dc => 'example'}, {dc => 'com'}]), '==', $foobar);
cmp_ok($root->get_node('cn=foo+uid=bar, dc=example, dc=com'), '==', $foobar);
cmp_ok($root->get_node('uid=bar+cn=foo, dc=example, dc=com'), '==', $foobar);
is($root->get_node('cn=foo, dc=example, dc=com'), undef);
is($root->get_node('uid=bar, dc=example, dc=com'), undef);

# DN is case-insensitive
ok my $example3 = $com->make_node('DC=Example');
cmp_ok($example, '==', $example3);
cmp_ok($root->get_node('Dc=EXAMPLE,dC=Com'), '==', $example);