aboutsummaryrefslogtreecommitdiffstats
path: root/apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php')
-rw-r--r--apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php48
1 files changed, 23 insertions, 25 deletions
diff --git a/apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php b/apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php
index 9925ce12c44..c20c78c6e16 100644
--- a/apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php
+++ b/apps/settings/tests/SetupChecks/DataDirectoryProtectedTest.php
@@ -6,7 +6,7 @@ declare(strict_types=1);
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
-namespace OCA\Settings\Tests;
+namespace OCA\Settings\Tests\SetupChecks;
use OCA\Settings\SetupChecks\DataDirectoryProtected;
use OCP\Http\Client\IClientService;
@@ -20,19 +20,17 @@ use Psr\Log\LoggerInterface;
use Test\TestCase;
class DataDirectoryProtectedTest extends TestCase {
- private IL10N|MockObject $l10n;
- private IConfig|MockObject $config;
- private IURLGenerator|MockObject $urlGenerator;
- private IClientService|MockObject $clientService;
- private LoggerInterface|MockObject $logger;
- private DataDirectoryProtected|MockObject $setupcheck;
+ private IL10N&MockObject $l10n;
+ private IConfig&MockObject $config;
+ private IURLGenerator&MockObject $urlGenerator;
+ private IClientService&MockObject $clientService;
+ private LoggerInterface&MockObject $logger;
+ private DataDirectoryProtected&MockObject $setupcheck;
protected function setUp(): void {
parent::setUp();
- /** @var IL10N|MockObject */
- $this->l10n = $this->getMockBuilder(IL10N::class)
- ->disableOriginalConstructor()->getMock();
+ $this->l10n = $this->createMock(IL10N::class);
$this->l10n->expects($this->any())
->method('t')
->willReturnCallback(function ($message, array $replace) {
@@ -45,7 +43,7 @@ class DataDirectoryProtectedTest extends TestCase {
$this->logger = $this->createMock(LoggerInterface::class);
$this->setupcheck = $this->getMockBuilder(DataDirectoryProtected::class)
- ->onlyMethods(['runHEAD'])
+ ->onlyMethods(['runRequest'])
->setConstructorArgs([
$this->l10n,
$this->config,
@@ -56,36 +54,36 @@ class DataDirectoryProtectedTest extends TestCase {
->getMock();
}
- /**
- * @dataProvider dataTestStatusCode
- */
- public function testStatusCode(array $status, string $expected): void {
- $responses = array_map(function ($state) {
+ #[\PHPUnit\Framework\Attributes\DataProvider('dataTestStatusCode')]
+ public function testStatusCode(array $status, string $expected, bool $hasBody): void {
+ $responses = array_map(function ($state) use ($hasBody) {
$response = $this->createMock(IResponse::class);
$response->expects($this->any())->method('getStatusCode')->willReturn($state);
+ $response->expects(($this->atMost(1)))->method('getBody')->willReturn($hasBody ? '# Nextcloud data directory' : 'something else');
return $response;
}, $status);
$this->setupcheck
->expects($this->once())
- ->method('runHEAD')
+ ->method('runRequest')
->will($this->generate($responses));
$this->config
->expects($this->once())
- ->method('getSystemValue')
+ ->method('getSystemValueString')
->willReturn('');
$result = $this->setupcheck->run();
$this->assertEquals($expected, $result->getSeverity());
}
- public function dataTestStatusCode(): array {
+ public static function dataTestStatusCode(): array {
return [
- 'success: forbidden access' => [[403], SetupResult::SUCCESS],
- 'error: can access' => [[200], SetupResult::ERROR],
- 'error: one forbidden one can access' => [[403, 200], SetupResult::ERROR],
- 'warning: connection issue' => [[], SetupResult::WARNING],
+ 'success: forbidden access' => [[403], SetupResult::SUCCESS, true],
+ 'success: forbidden access with redirect' => [[200], SetupResult::SUCCESS, false],
+ 'error: can access' => [[200], SetupResult::ERROR, true],
+ 'error: one forbidden one can access' => [[403, 200], SetupResult::ERROR, true],
+ 'warning: connection issue' => [[], SetupResult::WARNING, true],
];
}
@@ -95,12 +93,12 @@ class DataDirectoryProtectedTest extends TestCase {
$this->setupcheck
->expects($this->once())
- ->method('runHEAD')
+ ->method('runRequest')
->will($this->generate([]));
$this->config
->expects($this->once())
- ->method('getSystemValue')
+ ->method('getSystemValueString')
->willReturn('');
$result = $this->setupcheck->run();