]> source.dussan.org Git - nextcloud-server.git/commitdiff
adjust tests
authorBjoern Schiessle <bjoern@schiessle.org>
Tue, 9 Oct 2018 16:31:33 +0000 (18:31 +0200)
committerBjoern Schiessle <bjoern@schiessle.org>
Tue, 9 Oct 2018 16:32:09 +0000 (18:32 +0200)
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
lib/private/Collaboration/Collaborators/LookupPlugin.php
tests/lib/Collaboration/Collaborators/LookupPluginTest.php

index 6355500de0c79c677e702c5fbf5184e0421e64ed..6f983b66b08b94038f4216a6f044c5dd1c53e7bf 100644 (file)
@@ -82,7 +82,7 @@ class LookupPlugin implements ISearchPlugin {
                        foreach ($body as $lookup) {
                                $remote = $this->cloudIdManager->resolveCloudId($lookup['federationId'])->getRemote();
                                if ($this->currentUserRemote === $remote) continue;
-                               $name = $lookup['name']['value'];
+                               $name = isset($lookup['name']['value']) ? $lookup['name']['value'] : '';
                                $label = empty($name) ? $lookup['federationId'] : $name . ' (' . $lookup['federationId'] . ')';
                                $result[] = [
                                        'label' => $label,
index 83d366cf46762412743dcd395caba345f9814e95..20a1f962306a9b461ae62c28187e3fb6778ab976 100644 (file)
@@ -25,12 +25,17 @@ namespace Test\Collaboration\Collaborators;
 
 
 use OC\Collaboration\Collaborators\LookupPlugin;
+use OC\Federation\CloudId;
 use OCP\Collaboration\Collaborators\ISearchResult;
 use OCP\Collaboration\Collaborators\SearchResultType;
+use OCP\Federation\ICloudId;
+use OCP\Federation\ICloudIdManager;
 use OCP\Http\Client\IClient;
 use OCP\Http\Client\IClientService;
 use OCP\Http\Client\IResponse;
 use OCP\IConfig;
+use OCP\IUser;
+use OCP\IUserSession;
 use OCP\Share;
 use Test\TestCase;
 
@@ -40,16 +45,36 @@ class LookupPluginTest extends TestCase {
        protected $config;
        /** @var  IClientService|\PHPUnit_Framework_MockObject_MockObject */
        protected $clientService;
+       /** @var IUserSession|\PHPUnit_Framework_MockObject_MockObject */
+       protected $userSession;
+       /** @var ICloudIdManager|\PHPUnit_Framework_MockObject_MockObject */
+       protected $cloudIdManager;
        /** @var  LookupPlugin */
        protected $plugin;
 
        public function setUp() {
                parent::setUp();
 
+               $this->userSession = $this->createMock(IUserSession::class);
+               $this->cloudIdManager = $this->createMock(ICloudIdManager::class);
                $this->config = $this->createMock(IConfig::class);
                $this->clientService = $this->createMock(IClientService::class);
+               $cloudId = $this->createMock(ICloudId::class);
+               $cloudId->expects($this->any())->method('getRemote')->willReturn('myNextcloud.net');
+               $user = $this->createMock(IUser::class);
+               $user->expects($this->any())->method('getCloudId')->willReturn('user@myNextcloud.net');
+               $this->userSession->expects($this->any())->method('getUser')
+                       ->willReturn($user);
+               $this->cloudIdManager->expects($this->any())->method('resolveCloudId')
+                       ->willReturnCallback(function($cloudId) {
+                               if ($cloudId === 'user@myNextcloud.net') {
+                                       return new CloudId('user@myNextcloud.net', 'user', 'myNextcloud.net');
+                               }
+                               return new CloudId('user@someNextcloud.net', 'user', 'someNextcloud.net');
+                       });
+
 
-               $this->plugin = new LookupPlugin($this->config, $this->clientService);
+               $this->plugin = new LookupPlugin($this->config, $this->clientService, $this->userSession, $this->cloudIdManager);
        }
 
        /**
@@ -69,7 +94,11 @@ class LookupPluginTest extends TestCase {
                        ->method('getAppValue')
                        ->with('files_sharing', 'lookupServerEnabled', 'no')
                        ->willReturn('yes');
-               $this->config->expects($this->once())
+               $this->config->expects($this->at(0))
+                       ->method('getSystemValue')
+                       ->with('gs.enabled', false)
+                       ->willReturn(false);
+               $this->config->expects($this->at(2))
                        ->method('getSystemValue')
                        ->with('lookup_server', 'https://lookup.nextcloud.com')
                        ->willReturn($searchParams['server']);