Skip to content

Commit 7f08204

Browse files
committed
test: mock ocm discovery in external share test
saves ~50s while running tests Signed-off-by: Robin Appelman <robin@icewind.nl>
1 parent e757101 commit 7f08204

2 files changed

Lines changed: 13 additions & 1 deletion

File tree

apps/files_sharing/lib/External/Storage.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public function __construct($options) {
6262
$this->manager = $options['manager'];
6363
$this->cloudId = $options['cloudId'];
6464
$this->logger = Server::get(LoggerInterface::class);
65-
$discoveryService = Server::get(IOCMDiscoveryService::class);
65+
$discoveryService = $options['discoveryService'] ?? Server::get(IOCMDiscoveryService::class);
6666
$this->config = Server::get(IConfig::class);
6767
$this->appConfig = Server::get(IAppConfig::class);
6868
$this->shareManager = Server::get(IShareManager::class);

apps/files_sharing/tests/ExternalStorageTest.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
use OCP\Http\Client\IClientService;
1515
use OCP\Http\Client\IResponse;
1616
use OCP\ICertificateManager;
17+
use OCP\OCM\IOCMDiscoveryService;
18+
use OCP\OCM\IOCMProvider;
1719
use OCP\Server;
1820

1921
/**
@@ -61,6 +63,9 @@ private function getTestStorage($uri) {
6163
$manager = $this->createMock(ExternalShareManager::class);
6264
$client = $this->createMock(IClient::class);
6365
$response = $this->createMock(IResponse::class);
66+
$discoveryService = $this->createMock(IOCMDiscoveryService::class);
67+
$ocmProvider = $this->createMock(IOCMProvider::class);
68+
6469
$client
6570
->expects($this->any())
6671
->method('get')
@@ -73,6 +78,12 @@ private function getTestStorage($uri) {
7378
->expects($this->any())
7479
->method('newClient')
7580
->willReturn($client);
81+
$discoveryService->method('discover')
82+
->willReturn($ocmProvider);
83+
$ocmProvider->method('extractProtocolEntry')
84+
->willReturn('/public.php/webdav');
85+
$ocmProvider->method('getEndPoint')
86+
->willReturn($uri);
7687

7788
return new TestSharingExternalStorage(
7889
[
@@ -85,6 +96,7 @@ private function getTestStorage($uri) {
8596
'manager' => $manager,
8697
'certificateManager' => $certificateManager,
8798
'HttpClientService' => $httpClientService,
99+
'discoveryService' => $discoveryService,
88100
]
89101
);
90102
}

0 commit comments

Comments
 (0)