0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-05-20 13:10:13 +00:00
nextcloud_server/apps/dav/tests/unit/CapabilitiesTest.php
provokateurin 46f5b07322
feat(dav): Enable chunked upload for public shares
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-05-05 13:23:11 +02:00

79 lines
2.3 KiB
PHP

<?php
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCA\DAV\Tests\unit;
use OCA\DAV\Capabilities;
use OCP\IConfig;
use OCP\User\IAvailabilityCoordinator;
use Test\TestCase;
/**
* @package OCA\DAV\Tests\unit
*/
class CapabilitiesTest extends TestCase {
public function testGetCapabilities(): void {
$config = $this->createMock(IConfig::class);
$config->expects($this->once())
->method('getSystemValueBool')
->with('bulkupload.enabled', $this->isType('bool'))
->willReturn(false);
$coordinator = $this->createMock(IAvailabilityCoordinator::class);
$coordinator->expects($this->once())
->method('isEnabled')
->willReturn(false);
$capabilities = new Capabilities($config, $coordinator);
$expected = [
'dav' => [
'chunking' => '1.0',
'public_shares_chunking' => true,
],
];
$this->assertSame($expected, $capabilities->getCapabilities());
}
public function testGetCapabilitiesWithBulkUpload(): void {
$config = $this->createMock(IConfig::class);
$config->expects($this->once())
->method('getSystemValueBool')
->with('bulkupload.enabled', $this->isType('bool'))
->willReturn(true);
$coordinator = $this->createMock(IAvailabilityCoordinator::class);
$coordinator->expects($this->once())
->method('isEnabled')
->willReturn(false);
$capabilities = new Capabilities($config, $coordinator);
$expected = [
'dav' => [
'chunking' => '1.0',
'public_shares_chunking' => true,
'bulkupload' => '1.0',
],
];
$this->assertSame($expected, $capabilities->getCapabilities());
}
public function testGetCapabilitiesWithAbsence(): void {
$config = $this->createMock(IConfig::class);
$config->expects($this->once())
->method('getSystemValueBool')
->with('bulkupload.enabled', $this->isType('bool'))
->willReturn(false);
$coordinator = $this->createMock(IAvailabilityCoordinator::class);
$coordinator->expects($this->once())
->method('isEnabled')
->willReturn(true);
$capabilities = new Capabilities($config, $coordinator);
$expected = [
'dav' => [
'chunking' => '1.0',
'public_shares_chunking' => true,
'absence-supported' => true,
'absence-replacement' => true,
],
];
$this->assertSame($expected, $capabilities->getCapabilities());
}
}