From c3e9bde7998996bc25eac7a12c5c88a076f544e0 Mon Sep 17 00:00:00 2001 From: Julius Knorr Date: Fri, 17 Jan 2025 10:59:25 +0100 Subject: [PATCH] tests: Fix url generation mocks and cleanup some phpunit code Signed-off-by: Julius Knorr --- tests/unit/Activity/ActivityManagerTest.php | 4 +-- tests/unit/Activity/DeckProviderTest.php | 2 +- tests/unit/Db/CardTest.php | 2 +- .../Middleware/ExceptionMiddlewareTest.php | 2 +- tests/unit/Notification/NotifierTest.php | 28 +++++++++++-------- .../Reference/CardReferenceProviderTest.php | 2 +- tests/unit/Search/FilterStringParserTest.php | 2 +- .../unit/Search/Query/AQueryParameterTest.php | 2 +- tests/unit/Service/BoardServiceTest.php | 2 +- tests/unit/Service/CardServiceTest.php | 2 +- tests/unit/Service/PermissionServiceTest.php | 4 +-- 11 files changed, 29 insertions(+), 23 deletions(-) diff --git a/tests/unit/Activity/ActivityManagerTest.php b/tests/unit/Activity/ActivityManagerTest.php index bce21ebd7..c1036c3d7 100644 --- a/tests/unit/Activity/ActivityManagerTest.php +++ b/tests/unit/Activity/ActivityManagerTest.php @@ -284,7 +284,7 @@ public function testCreateEventLabel() { $this->assertEquals($event, $actual); } - public function dataSendToUsers() { + public static function dataSendToUsers() { return [ [ActivityManager::DECK_OBJECT_BOARD], [ActivityManager::DECK_OBJECT_CARD], @@ -344,7 +344,7 @@ public function testSendToUser($objectType) { $this->invokePrivate($this->activityManager, 'sendToUsers', [$event]); } - public function dataFindObjectForEntity() { + public static function dataFindObjectForEntity() { $board = new Board(); $board->setId(1); $stack = new Stack(); diff --git a/tests/unit/Activity/DeckProviderTest.php b/tests/unit/Activity/DeckProviderTest.php index a371d86da..ae1404218 100644 --- a/tests/unit/Activity/DeckProviderTest.php +++ b/tests/unit/Activity/DeckProviderTest.php @@ -123,7 +123,7 @@ public function testParseFailureApp() { $this->provider->parse('en_US', $event, $event); } - public function dataEventIcons() { + public static function dataEventIcons() { return [ [ActivityManager::SUBJECT_LABEL_ASSIGN, 'core', 'actions/tag.svg'], [ActivityManager::SUBJECT_CARD_CREATE, 'files', 'add-color.svg'], diff --git a/tests/unit/Db/CardTest.php b/tests/unit/Db/CardTest.php index f1321b063..92393e7ba 100644 --- a/tests/unit/Db/CardTest.php +++ b/tests/unit/Db/CardTest.php @@ -47,7 +47,7 @@ private function createCard() { return $card; } - public function dataDuedate() { + public static function dataDuedate() { return [ [(new DateTime()), Card::DUEDATE_NOW], [(new DateTime())->sub(new DateInterval('P1D')), Card::DUEDATE_OVERDUE], diff --git a/tests/unit/Middleware/ExceptionMiddlewareTest.php b/tests/unit/Middleware/ExceptionMiddlewareTest.php index a04d1c345..a076061a2 100644 --- a/tests/unit/Middleware/ExceptionMiddlewareTest.php +++ b/tests/unit/Middleware/ExceptionMiddlewareTest.php @@ -58,7 +58,7 @@ public function setUp(): void { } - public function dataAfterException() { + public static function dataAfterException() { return [ [new NoPermissionException('No permission'), 403, 'No permission'], [new NotFoundException('Not found'), 404, 'Not found'] diff --git a/tests/unit/Notification/NotifierTest.php b/tests/unit/Notification/NotifierTest.php index e9fb9a501..491f78d6e 100644 --- a/tests/unit/Notification/NotifierTest.php +++ b/tests/unit/Notification/NotifierTest.php @@ -76,6 +76,15 @@ public function setUp(): void { $this->l10nFactory->expects($this->once()) ->method('get') ->willReturn($this->l10n); + + $this->url->expects($this->any()) + ->method('linkToRouteAbsolute') + ->willReturnCallback(function ($route) { + return match ($route) { + 'deck.page.indexBoard' => '/board/123', + 'deck.page.indexCard' => '/board/123/card/234', + }; + }); } public function testPrepareWrongApp() { @@ -178,7 +187,7 @@ public function testPrepareCardCommentMentioned() { $this->assertEquals($notification, $actualNotification); } - public function dataPrepareCardAssigned() { + public static function dataPrepareCardAssigned() { return [ [true], [false] ]; @@ -239,13 +248,13 @@ public function testPrepareCardAssigned($withUserFound = true) { 'name' => 'Card title', 'boardname' => 'Board title', 'stackname' => null, - 'link' => '#/board/123/card/123', + 'link' => '/board/123/card/234', ], 'deck-board' => [ 'type' => 'deck-board', 'id' => 123, 'name' => 'Board title', - 'link' => '#/board/123', + 'link' => '/board/123', ] ]); @@ -266,7 +275,7 @@ public function testPrepareCardAssigned($withUserFound = true) { $this->assertEquals($notification, $actualNotification); } - public function dataPrepareBoardShared() { + public static function dataPrepareBoardShared() { return [ [true], [false] ]; @@ -321,7 +330,7 @@ public function testPrepareBoardShared($withUserFound = true) { 'type' => 'deck-board', 'id' => 123, 'name' => 'Board title', - 'link' => '#/board/123', + 'link' => '/board/123', ] ]); @@ -347,11 +356,8 @@ public function testPrepareBoardShared($withUserFound = true) { * @return Stack|MockObject */ private function buildMockStack(int $boardId = 999) { - $mockStack = $this->getMockBuilder(Stack::class) - ->addMethods(['getBoardId']) - ->getMock(); - - $mockStack->method('getBoardId')->willReturn($boardId); - return $mockStack; + $stack = new Stack(); + $stack->setBoardId($boardId); + return $stack; } } diff --git a/tests/unit/Reference/CardReferenceProviderTest.php b/tests/unit/Reference/CardReferenceProviderTest.php index 9fbfb2966..8a6ed645e 100644 --- a/tests/unit/Reference/CardReferenceProviderTest.php +++ b/tests/unit/Reference/CardReferenceProviderTest.php @@ -63,7 +63,7 @@ public function setUp() : void { ); } - public static function dataUrl(): array { + public static static function dataUrl(): array { return [ ['https://nextcloud.com', null], ['https://localhost/apps/deck/#!/board/2/card/11', 11], diff --git a/tests/unit/Search/FilterStringParserTest.php b/tests/unit/Search/FilterStringParserTest.php index 8629f32a1..68eb6b60a 100644 --- a/tests/unit/Search/FilterStringParserTest.php +++ b/tests/unit/Search/FilterStringParserTest.php @@ -102,7 +102,7 @@ public function testParseTextTokenQuotesWrong() { Assert::assertEquals($expected, $result); } - public function dataParseDate() { + public static function dataParseDate() { return [ ['date:today', [new DateQueryParameter('date', SearchQuery::COMPARATOR_EQUAL, 'today')], []], ['date:>today', [new DateQueryParameter('date', SearchQuery::COMPARATOR_MORE, 'today')], []], diff --git a/tests/unit/Search/Query/AQueryParameterTest.php b/tests/unit/Search/Query/AQueryParameterTest.php index f86ab649b..57576058e 100644 --- a/tests/unit/Search/Query/AQueryParameterTest.php +++ b/tests/unit/Search/Query/AQueryParameterTest.php @@ -29,7 +29,7 @@ use PHPUnit\Framework\TestCase; class AQueryParameterTest extends TestCase { - public function dataValue() { + public static function dataValue() { return [ ['foo', 'foo'], ['spätial character', 'spätial character'], diff --git a/tests/unit/Service/BoardServiceTest.php b/tests/unit/Service/BoardServiceTest.php index d8bec0096..a525714e5 100644 --- a/tests/unit/Service/BoardServiceTest.php +++ b/tests/unit/Service/BoardServiceTest.php @@ -291,7 +291,7 @@ public function testAddAcl() { )); } - public function dataAddAclExtendPermission() { + public static function dataAddAclExtendPermission() { return [ [[false, false, false], [false, false, false], [false, false, false]], [[false, false, false], [true, true, true], [false, false, false]], diff --git a/tests/unit/Service/CardServiceTest.php b/tests/unit/Service/CardServiceTest.php index e68775f2f..f7e8b3a99 100644 --- a/tests/unit/Service/CardServiceTest.php +++ b/tests/unit/Service/CardServiceTest.php @@ -365,7 +365,7 @@ public function testRenameArchived() { $this->cardService->rename(123, 'newtitle'); } - public function dataReorder() { + public static function dataReorder() { return [ [0, 0, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]], [0, 9, [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]], diff --git a/tests/unit/Service/PermissionServiceTest.php b/tests/unit/Service/PermissionServiceTest.php index b9dfe8560..a25a325d5 100644 --- a/tests/unit/Service/PermissionServiceTest.php +++ b/tests/unit/Service/PermissionServiceTest.php @@ -151,7 +151,7 @@ public function testUserIsBoardOwnerNull() { $this->assertEquals(false, $this->service->userIsBoardOwner(123)); } - public function dataTestUserCan() { + public static function dataTestUserCan() { return [ // participant permissions type ['admin', false, false, false, 'user', true, false, false, false], @@ -183,7 +183,7 @@ public function testUserCanFail() { $this->assertFalse($this->service->userCan([], Acl::PERMISSION_EDIT)); } - public function dataCheckPermission() { + public static function dataCheckPermission() { return [ // see getAcls() for set permissions [1, Acl::PERMISSION_READ, true],