Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@owncloud.com>2014-03-15 11:11:10 +0400
committerArthur Schiwon <blizzz@owncloud.com>2014-04-23 15:35:00 +0400
commit6aeb5996b63cd542bb75ce139700eee27d13a620 (patch)
treee3b4e9c658b7135ba9bf27b5c663c5b88fed7102 /tests
parentaf45da94b363f3989e9d579b877e0a4245dbdd42 (diff)
test for group manager's displayNamesInGroup
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/group/manager.php50
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/lib/group/manager.php b/tests/lib/group/manager.php
index 830eb1b48bf..18be3eb96c1 100644
--- a/tests/lib/group/manager.php
+++ b/tests/lib/group/manager.php
@@ -310,4 +310,54 @@ class Manager extends \PHPUnit_Framework_TestCase {
$this->assertEquals('group1', $group1->getGID());
$this->assertEquals('group2', $group2->getGID());
}
+
+ public function testDisplayNamesInGroupMultipleUserBackends() {
+ $user1 = new User('user1', null);
+ $user2 = new User('user2', null);
+ $user3 = new User('user3', null);
+ $user4 = new User('user33', null);
+
+ /**
+ * @var \PHPUnit_Framework_MockObject_MockObject | \OC_Group_Backend $backend1
+ */
+ $backend = $this->getMock('\OC_Group_Database');
+ $backend->expects($this->exactly(2))
+ ->method('groupExists')
+ ->with('testgroup')
+ ->will($this->returnValue(true));
+
+ $backend->expects($this->once())
+ ->method('usersInGroup')
+ ->with('testgroup', '', -1, 0)
+ ->will($this->returnValue(array('user2', 'user33')));
+
+ /**
+ * @var \OC\User\Manager $userManager
+ */
+ $userManager = $this->getMock('\OC\User\Manager');
+ $userManager->expects($this->once())
+ ->method('search')
+ ->with('user3')
+ ->will($this->returnValue(array('user3' => $user3, 'user33' => $user4)));
+
+ $userManager->expects($this->any())
+ ->method('get')
+ ->will($this->returnCallback(function($uid) {
+ switch($uid) {
+ case 'user1' : return new User('user1', null);
+ case 'user2' : return new User('user2', null);
+ case 'user3' : return new User('user3', null);
+ case 'user33': return new User('user33', null);
+ default:
+ return null;
+ }
+ }));
+
+ $manager = new \OC\Group\Manager($userManager);
+ $manager->addBackend($backend);
+
+ $users = $manager->displayNamesInGroup('testgroup', 'user3');
+ $this->assertEquals(1, count($users));
+ $this->assertTrue(isset($users['user33']));
+ }
}