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:
authorGeorg Ehrke <developer@georgehrke.com>2018-10-14 20:09:55 +0300
committerGeorg Ehrke <developer@georgehrke.com>2018-10-15 14:27:58 +0300
commit2db26d87c444ba385850d63e8d27f3b759102cfe (patch)
tree20eeff3bfbeec2b83558f09f61f53d90611a7788 /tests
parent0fca815b4dd601381a909656a1e3e7a7e89714d2 (diff)
filter null values for UserManager::getByEmail
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/User/ManagerTest.php33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/lib/User/ManagerTest.php b/tests/lib/User/ManagerTest.php
index d2e48ffa538..e0b6aadf2ac 100644
--- a/tests/lib/User/ManagerTest.php
+++ b/tests/lib/User/ManagerTest.php
@@ -668,4 +668,37 @@ class ManagerTest extends TestCase {
$manager->get('foo')->delete();
$this->assertFalse($manager->userExists('foo'));
}
+
+ public function testGetByEmail() {
+ $config = $this->getMockBuilder(IConfig::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $config
+ ->expects($this->at(0))
+ ->method('getUsersForUserValue')
+ ->with('settings', 'email', 'test@example.com')
+ ->will($this->returnValue(['uid1', 'uid99', 'uid2']));
+
+ $backend = $this->createMock(\Test\Util\User\Dummy::class);
+ $backend->expects($this->at(0))
+ ->method('userExists')
+ ->with($this->equalTo('uid1'))
+ ->will($this->returnValue(true));
+ $backend->expects($this->at(1))
+ ->method('userExists')
+ ->with($this->equalTo('uid99'))
+ ->will($this->returnValue(false));
+ $backend->expects($this->at(2))
+ ->method('userExists')
+ ->with($this->equalTo('uid2'))
+ ->will($this->returnValue(true));
+
+ $manager = new \OC\User\Manager($config);
+ $manager->registerBackend($backend);
+
+ $users = $manager->getByEmail('test@example.com');
+ $this->assertCount(2, $users);
+ $this->assertEquals('uid1', $users[0]->getUID());
+ $this->assertEquals('uid2', $users[1]->getUID());
+ }
}