diff options
Diffstat (limited to 'apps/federation/tests')
3 files changed, 41 insertions, 135 deletions
diff --git a/apps/federation/tests/BackgroundJob/GetSharedSecretTest.php b/apps/federation/tests/BackgroundJob/GetSharedSecretTest.php index 021c8646cc7..3da2e2e15e4 100644 --- a/apps/federation/tests/BackgroundJob/GetSharedSecretTest.php +++ b/apps/federation/tests/BackgroundJob/GetSharedSecretTest.php @@ -20,6 +20,7 @@ use OCP\Http\Client\IResponse; use OCP\IConfig; use OCP\IURLGenerator; use OCP\OCS\IDiscoveryService; +use PHPUnit\Framework\MockObject\MockObject; use Psr\Log\LoggerInterface; /** @@ -31,35 +32,16 @@ use Psr\Log\LoggerInterface; */ class GetSharedSecretTest extends TestCase { - /** @var \PHPUnit\Framework\MockObject\MockObject|IClient */ - private $httpClient; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IClientService */ - private $httpClientService; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IJobList */ - private $jobList; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IURLGenerator */ - private $urlGenerator; - - /** @var \PHPUnit\Framework\MockObject\MockObject|TrustedServers */ - private $trustedServers; - - /** @var \PHPUnit\Framework\MockObject\MockObject|LoggerInterface */ - private $logger; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IResponse */ - private $response; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IDiscoveryService */ - private $discoverService; - - /** @var \PHPUnit\Framework\MockObject\MockObject|ITimeFactory */ - private $timeFactory; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IConfig */ - private $config; + private MockObject&IClient $httpClient; + private MockObject&IClientService $httpClientService; + private MockObject&IJobList $jobList; + private MockObject&IURLGenerator $urlGenerator; + private MockObject&TrustedServers $trustedServers; + private MockObject&LoggerInterface $logger; + private MockObject&IResponse $response; + private MockObject&IDiscoveryService $discoverService; + private MockObject&ITimeFactory $timeFactory; + private MockObject&IConfig $config; private GetSharedSecret $getSharedSecret; @@ -89,7 +71,7 @@ class GetSharedSecretTest extends TestCase { $this->logger, $this->discoverService, $this->timeFactory, - $this->config + $this->config, ); } diff --git a/apps/federation/tests/Controller/SettingsControllerTest.php b/apps/federation/tests/Controller/SettingsControllerTest.php index 5652e2c055e..c3e83945e9a 100644 --- a/apps/federation/tests/Controller/SettingsControllerTest.php +++ b/apps/federation/tests/Controller/SettingsControllerTest.php @@ -1,5 +1,4 @@ <?php - /** * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -9,22 +8,22 @@ namespace OCA\Federation\Tests\Controller; use OCA\Federation\Controller\SettingsController; use OCA\Federation\TrustedServers; -use OCP\AppFramework\Http\JSONResponse; +use OCP\AppFramework\Http\DataResponse; +use OCP\AppFramework\OCS\OCSException; +use OCP\AppFramework\OCS\OCSNotFoundException; use OCP\IL10N; use OCP\IRequest; +use PHPUnit\Framework\MockObject\MockObject; +use Psr\Log\LoggerInterface; use Test\TestCase; class SettingsControllerTest extends TestCase { private SettingsController $controller; - /** @var \PHPUnit\Framework\MockObject\MockObject|IRequest */ - private $request; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IL10N */ - private $l10n; - - /** @var \PHPUnit\Framework\MockObject\MockObject|TrustedServers */ - private $trustedServers; + private MockObject&IRequest $request; + private MockObject&IL10N $l10n; + private MockObject&TrustedServers $trustedServers; + private MockObject&LoggerInterface $logger; protected function setUp(): void { parent::setUp(); @@ -33,12 +32,14 @@ class SettingsControllerTest extends TestCase { $this->l10n = $this->getMockBuilder(IL10N::class)->getMock(); $this->trustedServers = $this->getMockBuilder(TrustedServers::class) ->disableOriginalConstructor()->getMock(); + $this->logger = $this->getMockBuilder(LoggerInterface::class)->getMock(); $this->controller = new SettingsController( 'SettingsControllerTest', $this->request, $this->l10n, - $this->trustedServers + $this->trustedServers, + $this->logger, ); } @@ -55,12 +56,12 @@ class SettingsControllerTest extends TestCase { ->willReturn(true); $result = $this->controller->addServer('url'); - $this->assertTrue($result instanceof JSONResponse); + $this->assertTrue($result instanceof DataResponse); $data = $result->getData(); $this->assertSame(200, $result->getStatus()); - $this->assertSame('url', $data['data']['url']); - $this->assertArrayHasKey('id', $data['data']); + $this->assertSame('url', $data['url']); + $this->assertArrayHasKey('id', $data); } /** @@ -78,15 +79,13 @@ class SettingsControllerTest extends TestCase { ->with('url') ->willReturn($isNextcloud); - $result = $this->controller->addServer('url'); - $this->assertTrue($result instanceof JSONResponse); if ($isTrustedServer) { - $this->assertSame(409, $result->getStatus()); + $this->expectException(OCSException::class); + } else { + $this->expectException(OCSNotFoundException::class); } - if (!$isNextcloud) { - $this->assertSame(404, $result->getStatus()); - } + $this->controller->addServer('url'); } public function testRemoveServer(): void { @@ -94,7 +93,7 @@ class SettingsControllerTest extends TestCase { ->method('removeServer') ->with(1); $result = $this->controller->removeServer(1); - $this->assertTrue($result instanceof JSONResponse); + $this->assertTrue($result instanceof DataResponse); $this->assertSame(200, $result->getStatus()); } @@ -110,8 +109,8 @@ class SettingsControllerTest extends TestCase { ->with('url') ->willReturn(true); - $this->assertTrue( - $this->invokePrivate($this->controller, 'checkServer', ['url']) === null + $this->assertNull( + $this->invokePrivate($this->controller, 'checkServer', ['url']) ); } @@ -130,8 +129,14 @@ class SettingsControllerTest extends TestCase { ->with('url') ->willReturn($isNextcloud); + if ($isTrustedServer) { + $this->expectException(OCSException::class); + } else { + $this->expectException(OCSNotFoundException::class); + } + $this->assertTrue( - $this->invokePrivate($this->controller, 'checkServer', ['url']) instanceof JSONResponse + $this->invokePrivate($this->controller, 'checkServer', ['url']) ); } diff --git a/apps/federation/tests/Middleware/AddServerMiddlewareTest.php b/apps/federation/tests/Middleware/AddServerMiddlewareTest.php deleted file mode 100644 index 0ad619f8114..00000000000 --- a/apps/federation/tests/Middleware/AddServerMiddlewareTest.php +++ /dev/null @@ -1,81 +0,0 @@ -<?php - -/** - * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors - * SPDX-FileCopyrightText: 2016 ownCloud, Inc. - * SPDX-License-Identifier: AGPL-3.0-only - */ -namespace OCA\Federation\Tests\Middleware; - -use OCA\Federation\Controller\SettingsController; -use OCA\Federation\Middleware\AddServerMiddleware; -use OCP\AppFramework\Http; -use OCP\HintException; -use OCP\IL10N; -use Psr\Log\LoggerInterface; -use Test\TestCase; - -class AddServerMiddlewareTest extends TestCase { - - /** @var \PHPUnit\Framework\MockObject\MockObject | LoggerInterface */ - private $logger; - - /** @var \PHPUnit\Framework\MockObject\MockObject|IL10N */ - private $l10n; - - private AddServerMiddleware $middleware; - - /** @var \PHPUnit\Framework\MockObject\MockObject | SettingsController */ - private $controller; - - protected function setUp(): void { - parent::setUp(); - - $this->logger = $this->getMockBuilder(LoggerInterface::class)->getMock(); - $this->l10n = $this->getMockBuilder(IL10N::class)->getMock(); - $this->controller = $this->getMockBuilder(SettingsController::class) - ->disableOriginalConstructor()->getMock(); - - $this->middleware = new AddServerMiddleware( - 'AddServerMiddlewareTest', - $this->l10n, - $this->logger - ); - } - - /** - * @dataProvider dataTestAfterException - * - * @param \Exception $exception - * @param string $hint - */ - public function testAfterException($exception, $hint): void { - $this->logger->expects($this->once())->method('error'); - - $this->l10n->expects($this->any())->method('t') - ->willReturnCallback( - function (string $message): string { - return $message; - } - ); - - $result = $this->middleware->afterException($this->controller, 'method', $exception); - - $this->assertSame(Http::STATUS_BAD_REQUEST, - $result->getStatus() - ); - - $data = $result->getData(); - - $this->assertSame($hint, - $data['message'] - ); - } - - public function dataTestAfterException() { - return [ - [new HintException('message', 'hint'), 'hint'], - [new \Exception('message'), 'message'], - ]; - } -} |