Peter Karman > Net-LDAP-Server-Test > Net::LDAP::Server::Test

Download:
Net-LDAP-Server-Test-0.08.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
Report a bug
Module Version: 0.08   Source  

NAME ^

Net::LDAP::Server::Test - test Net::LDAP code

SYNOPSIS ^

    use Test::More tests => 10;
    use Net::LDAP::Server::Test;
    
    ok( my $server = Net::LDAP::Server::Test->new(8080), 
            "test LDAP server spawned");
    
    # connect to port 8080 with your Net::LDAP code.
    ok(my $ldap = Net::LDAP->new( 'localhost', port => 8080 ),
             "new LDAP connection" );
             
    # ... test stuff with $ldap ...
    
    # server will exit when you call final LDAP unbind().
    ok($ldap->unbind(), "LDAP server unbound");

DESCRIPTION ^

Now you can test your Net::LDAP code without having a real LDAP server available.

METHODS ^

Only one user-level method is implemented: new().

new( port, key_value_args )

Create a new server. Basically this just fork()s a child process listing on port and handling requests using Net::LDAP::Server.

port defaults to 10636.

key_value_args may be:

data

data is optional data to return from the Net::LDAP search() function. Typically it would be an array ref of Net::LDAP::Entry objects.

auto_schema

A true value means the add(), modify() and delete() methods will store internal in-memory data based on DN values, so that search() will mimic working on a real LDAP schema.

active_directory

Work in Active Directory mode. This means that entries are automatically assigned a objectSID, and some effort is made to mimic the member/memberOf linking between AD Users and Groups.

new() will croak() if there was a problem fork()ing a new server.

Returns a Net::LDAP::Server::Test object, which is just a blessed reference to the PID of the forked server.

DESTROY

When a LDAP test server object is destroyed, waitpid() is called on the associated child process. Typically this is unnecessary, but implemented here as an exercise.

AUTHOR ^

Peter Karman, <karman at cpan.org>

BUGS ^

Please report any bugs or feature requests to bug-net-ldap-server-test at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-LDAP-Server-Test. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT ^

You can find documentation for this module with the perldoc command.

    perldoc Net::LDAP::Server::Test

You can also look for information at:

ACKNOWLEDGEMENTS ^

The Minnesota Supercomputing Institute http://www.msi.umn.edu/ sponsored the development of this software.

COPYRIGHT & LICENSE ^

Copyright 2007 by the Regents of the University of Minnesota.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO ^

Net::LDAP::Server