From fc097a80f50d9959c5bccaf9e8ed55adce4be8bd Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Mon, 11 Sep 2017 13:31:50 +0200 Subject: [PATCH] improve and extend paging integration test Signed-off-by: Arthur Schiwon --- .../Integration/Lib/IntegrationTestPaging.php | 39 +++++++++++++------ .../setup-scripts/createExplicitUsers.php | 2 +- 2 files changed, 29 insertions(+), 12 deletions(-) diff --git a/apps/user_ldap/tests/Integration/Lib/IntegrationTestPaging.php b/apps/user_ldap/tests/Integration/Lib/IntegrationTestPaging.php index f9be6d6f67..f6d6175c93 100644 --- a/apps/user_ldap/tests/Integration/Lib/IntegrationTestPaging.php +++ b/apps/user_ldap/tests/Integration/Lib/IntegrationTestPaging.php @@ -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; } diff --git a/apps/user_ldap/tests/Integration/setup-scripts/createExplicitUsers.php b/apps/user_ldap/tests/Integration/setup-scripts/createExplicitUsers.php index 11f3ce310d..c181c16009 100644 --- a/apps/user_ldap/tests/Integration/setup-scripts/createExplicitUsers.php +++ b/apps/user_ldap/tests/Integration/setup-scripts/createExplicitUsers.php @@ -50,7 +50,7 @@ if (true) { } } -$users = ['alice', 'boris']; +$users = ['alice', 'boris', 'cynthia', 'derek']; foreach ($users as $uid) { $newDN = 'uid=' . $uid . ',' . $ouDN;