improve and extend paging integration test

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
This commit is contained in:
Arthur Schiwon 2017-09-11 13:31:50 +02:00
parent 30bf1c158d
commit 51e4b49ee9
No known key found for this signature in database
GPG Key ID: 7424F1874854DF23
2 changed files with 29 additions and 12 deletions

View File

@ -36,6 +36,9 @@ class IntegrationTestPaging extends AbstractIntegrationTest {
/** @var User_LDAP */
protected $backend;
/** @var int */
protected $pagingSize = 2;
/**
* prepares the LDAP environment and sets up a test configuration for
* the LDAP backend.
@ -50,7 +53,7 @@ class IntegrationTestPaging extends AbstractIntegrationTest {
public function initConnection() {
parent::initConnection();
$this->connection->setConfiguration([
'ldapPagingSize' => 1
'ldapPagingSize' => $this->pagingSize
]);
}
@ -61,19 +64,33 @@ class IntegrationTestPaging extends AbstractIntegrationTest {
* @return bool
*/
protected function case1() {
$offset = 0;
$filter = 'objectclass=inetorgperson';
$attributes = ['cn', 'dn'];
$users = [];
do {
$result = $this->access->searchUsers($filter, $attributes, null, $offset);
foreach($result as $user) {
$users[] = $user['cn'];
}
$offset += count($users);
} while ($this->access->hasMoreResults());
if(count($users) === 2) {
$result = $this->access->searchUsers($filter, $attributes);
foreach($result as $user) {
$users[] = $user['cn'];
}
if(count($users) === 4) {
return true;
}
return false;
}
protected function case2() {
$filter = 'objectclass=inetorgperson';
$attributes = ['cn', 'dn'];
$users = [];
$result = $this->access->searchUsers($filter, $attributes, null, $this->pagingSize);
foreach($result as $user) {
$users[] = $user['cn'];
}
if(count($users) === 4 - $this->pagingSize) {
return true;
}

View File

@ -50,7 +50,7 @@ if (true) {
}
}
$users = ['alice', 'boris'];
$users = ['alice', 'boris', 'cynthia', 'derek'];
foreach ($users as $uid) {
$newDN = 'uid=' . $uid . ',' . $ouDN;