Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 3.9.x will end* 10 May 2021 (12 months).
  • Bug fixes for security issues in 3.9.x will end* 8 May 2023 (36 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.

Differences Between: [Versions 39 and 311] [Versions 39 and 400] [Versions 39 and 401] [Versions 39 and 402] [Versions 39 and 403]

ldap tests.

Copyright: Damyon Wiese, IƱaki Arenaza 2014
License: http://www.gnu.org/copyleft/gpl.html GNU Public License
File Size: 474 lines (18 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class


Class: core_ldaplib_testcase  - X-Ref

test_ldap_addslashes()   X-Ref
No description

test_ldap_stripslashes()   X-Ref
No description

test_ldap_normalise_objectclass($args, $expected)   X-Ref
Tests for ldap_normalise_objectclass.

param: array $args Arguments passed to ldap_normalise_objectclass
param: string $expected The expected objectclass filter

ldap_normalise_objectclass_provider()   X-Ref
Data provider for the test_ldap_normalise_objectclass testcase.

return: array of testcases.

test_ldap_get_entries_moodle()   X-Ref
Tests for ldap_get_entries_moodle.

NOTE: in order to execute this test you need to set up OpenLDAP server with core,
cosine, nis and internet schemas and add configuration constants to
config.php or phpunit.xml configuration file.  The bind users *needs*
permissions to create objects in the LDAP server, under the bind domain.

define('TEST_LDAPLIB_HOST_URL', 'ldap://127.0.0.1');
define('TEST_LDAPLIB_BIND_DN', 'cn=someuser,dc=example,dc=local');
define('TEST_LDAPLIB_BIND_PW', 'somepassword');
define('TEST_LDAPLIB_DOMAIN',  'dc=example,dc=local');


get_ldap_get_entries_moodle_test_objects()   X-Ref
Provide the array of test objects for the ldap_get_entries_moodle test case.

return: array of test objects

create_test_container($connection, $container)   X-Ref
Create a new container in the LDAP domain, to hold the test objects. The
container is created as a domain component (dc) + organizational unit (ou) object.

param: object $connection Valid LDAP connection
param: string $container Name of the test container to create.
return: string or false Distinguished name for the created container, or false on error.

remove_test_container($connection, $containerdn)   X-Ref
Remove the container in the LDAP domain root that holds the test objects. The container
*must* be empty before trying to remove it. Otherwise this function fails.

param: object $connection Valid LDAP connection
param: string $containerdn The distinguished of the container to remove.

add_test_objects($connection, $containerdn, $testobjects)   X-Ref
Add the test objects to the test container.

param: resource $connection Valid LDAP connection
param: string $containerdn The distinguished name of the container for the created objects.
param: array $testobjects Array of the tests objects to create. The structure of
return: boolean True on success, false otherwise.

remove_test_objects($connection, $containerdn, $testobjects)   X-Ref
Remove the test objects from the test container.

param: resource $connection Valid LDAP connection
param: string $containerdn The distinguished name of the container for the objects to remove.
param: array $testobjects Array of the tests objects to create. The structure of

get_object_dn($object, $containerdn)   X-Ref
Get the distinguished name (DN) for a given object.

param: object $object The LDAP object to calculate the DN for.
param: string $containerdn The DN of the container to use for objects with relative DNs.
return: string The calculated DN.