slapdtest
Spawning test instances of OpenLDAP’s slapd server¶
The module is used for testing python-ldap itself but can be used for automatically testing any OpenLDAP-based configuration setup.
This module is pure Python and does not rely on any non-standard modules. Therefore it can be used stand-alone without the rest of the python-ldap package.
Test fixtures for the popular pytest framework are developed in an external project, pytest-ldap.
Functions¶
Classes¶
-
class
slapdtest.
SlapdObject
¶ Controller class for a slapd instance, OpenLDAP’s server.
This class creates a temporary data store for slapd, runs it listening on a private Unix domain socket and TCP port, and initializes it with a top-level entry and the root user.
When a reference to an instance of this class is lost, the slapd server is shut down.
An instance can be used as a context manager. When exiting the context manager, the slapd server is shut down and the temporary data store is removed.
Parameters: openldap_schema_files – A list of schema names or schema paths to load at startup. By default this only contains core. Changed in version 3.1: Added context manager functionality
-
gen_config
()¶ generates a slapd.conf and returns it as one string
for generating specific static configuration files you have to override this method
-
ldapadd
(ldif, extra_args=None)¶ Runs ldapadd on this slapd instance, passing it the ldif content
-
ldapdelete
(dn, recursive=False, extra_args=None)¶ Runs ldapdelete on this slapd instance, deleting ‘dn’
-
ldapmodify
(ldif, extra_args=None)¶ Runs ldapadd on this slapd instance, passing it the ldif content
-
ldapwhoami
(extra_args=None)¶ Runs ldapwhoami on this slapd instance
-
restart
()¶ Restarts the slapd server with same data
-
setup_rundir
()¶ creates rundir structure
for setting up a custom directory structure you have to override this method
-
slapadd
(ldif, extra_args=None)¶ Runs slapadd on this slapd instance, passing it the ldif content
-
start
()¶ Starts the slapd server process running, and waits for it to come up.
-
stop
()¶ Stops the slapd server, and waits for it to terminate and cleans up
-
wait
()¶ Waits for the slapd process to terminate by itself.
-
-
class
slapdtest.
SlapdTestCase
(methodName='runTest')¶ test class which also clones or initializes a running slapd
-
server_class
¶ alias of
SlapdObject
-
classmethod
setUpClass
()¶ Hook method for setting up class fixture before running tests in the class.
-
classmethod
tearDownClass
()¶ Hook method for deconstructing the class fixture after running all tests in the class.
-