diff --git a/lib/Command/TransferOwnership.php b/lib/Command/TransferOwnership.php index 2b06c4e1c..9d3ae1b48 100644 --- a/lib/Command/TransferOwnership.php +++ b/lib/Command/TransferOwnership.php @@ -33,7 +33,7 @@ final class TransferOwnership extends Command { ); } - protected function execute(InputInterface $input, OutputInterface $output) { + protected function execute(InputInterface $input, OutputInterface $output): int { $owner = $input->getArgument('owner'); $newOwner = $input->getArgument('newOwner'); @@ -42,5 +42,7 @@ final class TransferOwnership extends Command { $this->boardService->transferOwnership($owner, $newOwner); $output->writeln("Transfer deck boards from $owner to $newOwner completed"); + + return 0; } } diff --git a/lib/Db/AssignmentMapper.php b/lib/Db/AssignmentMapper.php index 8d193fad0..836add105 100644 --- a/lib/Db/AssignmentMapper.php +++ b/lib/Db/AssignmentMapper.php @@ -148,11 +148,12 @@ class AssignmentMapper extends QBMapper implements IPermissionMapper { } /** + * @psalm-suppress InvalidScalarArgument * @param $ownerId * @param $newOwnerId * @return void */ - public function transferOwnership($ownerId, $newOwnerId) { + public function transferOwnership(string $ownerId, string $newOwnerId) { $params = [ 'newOwner' => $newOwnerId, 'type' => Assignment::TYPE_USER diff --git a/tests/unit/Activity/ActivityManagerTest.php b/tests/unit/Activity/ActivityManagerTest.php index 5e486731e..d292d9023 100644 --- a/tests/unit/Activity/ActivityManagerTest.php +++ b/tests/unit/Activity/ActivityManagerTest.php @@ -169,18 +169,15 @@ class ActivityManagerTest extends TestCase { $this->mockUser('user2'), ]; $event = $this->createMock(IEvent::class); - $event->expects($this->at(0)) + $event->expects($this->once()) ->method('getObjectType') ->willReturn($objectType); - $event->expects($this->at(0)) + $event->expects($this->once()) ->method('getObjectId') ->willReturn(1); - $event->expects($this->at(2)) + $event->expects($this->exactly(2)) ->method('setAffectedUser') - ->with('user1'); - $event->expects($this->at(3)) - ->method('setAffectedUser') - ->with('user2'); + ->withConsecutive(['user1'], ['user2']); $mapper = null; switch ($objectType) { case ActivityManager::DECK_OBJECT_BOARD: @@ -196,10 +193,7 @@ class ActivityManagerTest extends TestCase { $this->permissionService->expects($this->once()) ->method('findUsers') ->willReturn($users); - $this->manager->expects($this->at(0)) - ->method('publish') - ->with($event); - $this->manager->expects($this->at(1)) + $this->manager->expects($this->exactly(2)) ->method('publish') ->with($event); $this->invokePrivate($this->activityManager, 'sendToUsers', [$event]); diff --git a/tests/unit/Cron/DeleteCronTest.php b/tests/unit/Cron/DeleteCronTest.php index e7ba1c6b9..e411a5d31 100644 --- a/tests/unit/Cron/DeleteCronTest.php +++ b/tests/unit/Cron/DeleteCronTest.php @@ -66,18 +66,14 @@ class DeleteCronTest extends \Test\TestCase { $this->boardMapper->expects($this->once()) ->method('findToDelete') ->willReturn($boards); - $this->boardMapper->expects($this->at(1)) + $this->boardMapper->expects($this->exactly(count($boards))) ->method('delete') - ->with($boards[0]); - $this->boardMapper->expects($this->at(2)) - ->method('delete') - ->with($boards[1]); - $this->boardMapper->expects($this->at(3)) - ->method('delete') - ->with($boards[2]); - $this->boardMapper->expects($this->at(4)) - ->method('delete') - ->with($boards[3]); + ->withConsecutive( + [$boards[0]], + [$boards[1]], + [$boards[2]], + [$boards[3]] + ); $attachment = new Attachment(); $attachment->setType('deck_file'); diff --git a/tests/unit/Cron/ScheduledNoificationsTest.php b/tests/unit/Cron/ScheduledNoificationsTest.php index ff7aad6a1..f44b91fa1 100644 --- a/tests/unit/Cron/ScheduledNoificationsTest.php +++ b/tests/unit/Cron/ScheduledNoificationsTest.php @@ -54,10 +54,7 @@ class ScheduledNoificationsTest extends \Test\TestCase { $this->cardMapper->expects($this->once()) ->method('findOverdue') ->willReturn($cards); - $this->notificationHelper->expects($this->at(0)) - ->method('sendCardDuedate') - ->with($c1); - $this->notificationHelper->expects($this->at(1)) + $this->notificationHelper->expects($this->exactly(2)) ->method('sendCardDuedate') ->with($c1); $this->scheduledNotifications->run(null); diff --git a/tests/unit/Notification/NotificationHelperTest.php b/tests/unit/Notification/NotificationHelperTest.php index 0d5b2527c..c4f0fd9cd 100644 --- a/tests/unit/Notification/NotificationHelperTest.php +++ b/tests/unit/Notification/NotificationHelperTest.php @@ -114,17 +114,18 @@ class NotificationHelperTest extends \Test\TestCase { } public function testSendCardDuedate() { - $this->config->expects($this->at(0)) + $param1 = ['foo', 'bar', 'asd']; + $param2 = 'deck'; + $param3 = 'board:234:notify-due'; + $DUE_ASSIGNED = ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED; + + $this->config->expects($this->exactly(3)) ->method('getUserValue') - ->with('foo', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ALL); - $this->config->expects($this->at(1)) - ->method('getUserValue') - ->with('bar', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ALL); - $this->config->expects($this->at(2)) - ->method('getUserValue') - ->with('asd', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) + ->withConsecutive( + [$param1[0], $param2, $param3, $DUE_ASSIGNED], + [$param1[1], $param2, $param3, $DUE_ASSIGNED], + [$param1[2], $param2, $param3, $DUE_ASSIGNED], + ) ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ALL); $card = Card::fromParams([ @@ -180,24 +181,12 @@ class NotificationHelperTest extends \Test\TestCase { $n3->expects($this->once())->method('setSubject')->with('card-overdue', ['MyCardTitle', 'MyBoardTitle'])->willReturn($n3); $n3->expects($this->once())->method('setDateTime')->willReturn($n3); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->exactly(3)) ->method('createNotification') - ->willReturn($n1); - $this->notificationManager->expects($this->at(1)) + ->willReturnOnConsecutiveCalls($n1, $n2, $n3); + $this->notificationManager->expects($this->exactly(3)) ->method('notify') - ->with($n1); - $this->notificationManager->expects($this->at(2)) - ->method('createNotification') - ->willReturn($n2); - $this->notificationManager->expects($this->at(3)) - ->method('notify') - ->with($n2); - $this->notificationManager->expects($this->at(4)) - ->method('createNotification') - ->willReturn($n3); - $this->notificationManager->expects($this->at(5)) - ->method('notify') - ->with($n3); + ->withConsecutive([$n1], [$n2], [$n3]); $this->cardMapper->expects($this->once()) ->method('markNotified') @@ -207,18 +196,19 @@ class NotificationHelperTest extends \Test\TestCase { } public function testSendCardDuedateAssigned() { - $this->config->expects($this->at(0)) + $param1 = ['foo', 'bar', 'asd']; + $param2 = 'deck'; + $param3 = 'board:234:notify-due'; + $DUE_ASSIGNED = ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED; + + $this->config->expects($this->exactly(3)) ->method('getUserValue') - ->with('foo', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED); - $this->config->expects($this->at(1)) - ->method('getUserValue') - ->with('bar', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED); - $this->config->expects($this->at(2)) - ->method('getUserValue') - ->with('asd', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED); + ->withConsecutive( + [$param1[0], $param2, $param3, $DUE_ASSIGNED], + [$param1[1], $param2, $param3, $DUE_ASSIGNED], + [$param1[2], $param2, $param3, $DUE_ASSIGNED] + ) + ->willReturn($DUE_ASSIGNED); $users = [ new DummyUser('foo'), new DummyUser('bar'), new DummyUser('asd') @@ -278,24 +268,12 @@ class NotificationHelperTest extends \Test\TestCase { $n3->expects($this->once())->method('setSubject')->with('card-overdue', ['MyCardTitle', 'MyBoardTitle'])->willReturn($n3); $n3->expects($this->once())->method('setDateTime')->willReturn($n3); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->exactly(3)) ->method('createNotification') - ->willReturn($n1); - $this->notificationManager->expects($this->at(1)) + ->willReturnOnConsecutiveCalls($n1, $n2, $n3); + $this->notificationManager->expects($this->exactly(3)) ->method('notify') - ->with($n1); - $this->notificationManager->expects($this->at(2)) - ->method('createNotification') - ->willReturn($n2); - $this->notificationManager->expects($this->at(3)) - ->method('notify') - ->with($n2); - $this->notificationManager->expects($this->at(4)) - ->method('createNotification') - ->willReturn($n3); - $this->notificationManager->expects($this->at(5)) - ->method('notify') - ->with($n3); + ->withConsecutive([$n1], [$n2], [$n3]); $this->cardMapper->expects($this->once()) ->method('markNotified') @@ -306,18 +284,20 @@ class NotificationHelperTest extends \Test\TestCase { public function testSendCardDuedateNever() { - $this->config->expects($this->at(0)) + $param1 = ['foo', 'bar', 'asd']; + $param2 = 'deck'; + $param3 = 'board:234:notify-due'; + $DUE_ASSIGNED = ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED; + $DUE_OFF = ConfigService::SETTING_BOARD_NOTIFICATION_DUE_OFF; + + $this->config->expects($this->exactly(3)) ->method('getUserValue') - ->with('foo', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED); - $this->config->expects($this->at(1)) - ->method('getUserValue') - ->with('bar', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED); - $this->config->expects($this->at(2)) - ->method('getUserValue') - ->with('asd', 'deck', 'board:234:notify-due', ConfigService::SETTING_BOARD_NOTIFICATION_DUE_ASSIGNED) - ->willReturn(ConfigService::SETTING_BOARD_NOTIFICATION_DUE_OFF); + ->withConsecutive( + [$param1[0], $param2, $param3, $DUE_ASSIGNED], + [$param1[1], $param2, $param3, $DUE_ASSIGNED], + [$param1[2], $param2, $param3, $DUE_ASSIGNED] + ) + ->willReturnOnConsecutiveCalls($DUE_ASSIGNED, $DUE_ASSIGNED, $DUE_OFF); $users = [ new DummyUser('foo'), new DummyUser('bar'), new DummyUser('asd') @@ -370,18 +350,12 @@ class NotificationHelperTest extends \Test\TestCase { $n2->expects($this->once())->method('setSubject')->with('card-overdue', ['MyCardTitle', 'MyBoardTitle'])->willReturn($n2); $n2->expects($this->once())->method('setDateTime')->willReturn($n2); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->exactly(2)) ->method('createNotification') - ->willReturn($n1); - $this->notificationManager->expects($this->at(1)) + ->willReturnOnConsecutiveCalls($n1, $n2); + $this->notificationManager->expects($this->exactly(2)) ->method('notify') - ->with($n1); - $this->notificationManager->expects($this->at(2)) - ->method('createNotification') - ->willReturn($n2); - $this->notificationManager->expects($this->at(3)) - ->method('notify') - ->with($n2); + ->withConsecutive([$n1], [$n2]); $this->cardMapper->expects($this->once()) ->method('markNotified') @@ -423,10 +397,10 @@ class NotificationHelperTest extends \Test\TestCase { $notification->expects($this->once())->method('setSubject')->with('card-assigned', ['MyCardTitle', 'MyBoardTitle', 'admin'])->willReturn($notification); $notification->expects($this->once())->method('setDateTime')->willReturn($notification); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->once()) ->method('createNotification') ->willReturn($notification); - $this->notificationManager->expects($this->at(1)) + $this->notificationManager->expects($this->once()) ->method('notify') ->with($notification); @@ -451,10 +425,10 @@ class NotificationHelperTest extends \Test\TestCase { $notification->expects($this->once())->method('setSubject')->with('board-shared', ['MyBoardTitle', 'admin'])->willReturn($notification); $notification->expects($this->once())->method('setDateTime')->willReturn($notification); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->once()) ->method('createNotification') ->willReturn($notification); - $this->notificationManager->expects($this->at(1)) + $this->notificationManager->expects($this->once()) ->method('notify') ->with($notification); @@ -490,10 +464,10 @@ class NotificationHelperTest extends \Test\TestCase { $notification->expects($this->once())->method('setSubject')->with('board-shared', ['MyBoardTitle', 'admin'])->willReturn($notification); $notification->expects($this->once())->method('setDateTime')->willReturn($notification); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->once()) ->method('createNotification') ->willReturn($notification); - $this->notificationManager->expects($this->at(1)) + $this->notificationManager->expects($this->once()) ->method('notify') ->with($notification); @@ -540,19 +514,12 @@ class NotificationHelperTest extends \Test\TestCase { $notification2->expects($this->once())->method('setSubject')->with('card-comment-mentioned', ['MyCard', 1, 'admin'])->willReturn($notification2); $notification2->expects($this->once())->method('setDateTime')->willReturn($notification2); - $this->notificationManager->expects($this->at(0)) + $this->notificationManager->expects($this->exactly(2)) ->method('createNotification') - ->willReturn($notification1); - $this->notificationManager->expects($this->at(1)) + ->willReturnOnConsecutiveCalls($notification1, $notification2); + $this->notificationManager->expects($this->exactly(2)) ->method('notify') - ->with($notification1); - - $this->notificationManager->expects($this->at(2)) - ->method('createNotification') - ->willReturn($notification2); - $this->notificationManager->expects($this->at(3)) - ->method('notify') - ->with($notification2); + ->withConsecutive([$notification1], [$notification2]); $this->notificationHelper->sendMention($comment); } diff --git a/tests/unit/Service/AttachmentServiceTest.php b/tests/unit/Service/AttachmentServiceTest.php index 5fa5d73cc..b236c55d2 100644 --- a/tests/unit/Service/AttachmentServiceTest.php +++ b/tests/unit/Service/AttachmentServiceTest.php @@ -110,8 +110,22 @@ class AttachmentServiceTest extends TestCase { $this->cache = $this->createMock(ICache::class); $this->cacheFactory->expects($this->any())->method('createDistributed')->willReturn($this->cache); - $this->appContainer->expects($this->at(0))->method('query')->with(FileService::class)->willReturn($this->attachmentServiceImpl); - $this->appContainer->expects($this->at(1))->method('query')->with(FilesAppService::class)->willReturn($this->filesAppServiceImpl); + $this->appContainer->expects($this->exactly(2)) + ->method('query') + ->withConsecutive( + [FileService::class], + [FilesAppService::class] + ) + ->willReturnOnConsecutiveCalls($this->attachmentServiceImpl, $this->filesAppServiceImpl); + + /* $this->appContainer->expects($this->at(0)) + ->method('query') + ->with(FileService::class) + ->willReturn($this->attachmentServiceImpl); + $this->appContainer->expects($this->at(1)) + ->method('query') + ->with(FilesAppService::class) + ->willReturn($this->filesAppServiceImpl); */ $this->application->expects($this->any()) ->method('getContainer') @@ -129,9 +143,27 @@ class AttachmentServiceTest extends TestCase { $fileServiceMock = $this->createMock(FileService::class); $fileAppServiceMock = $this->createMock(FilesAppService::class); - $appContainer->expects($this->at(0))->method('query')->with(FileService::class)->willReturn($fileServiceMock); - $appContainer->expects($this->at(1))->method('query')->with(FilesAppService::class)->willReturn($fileAppServiceMock); - $appContainer->expects($this->at(2))->method('query')->with(MyAttachmentService::class)->willReturn(new MyAttachmentService()); + $appContainer->expects($this->exactly(3)) + ->method('query') + ->withConsecutive( + [FileService::class], + [FilesAppService::class], + [MyAttachmentService::class] + ) + ->willReturnOnConsecutiveCalls($fileServiceMock, $fileAppServiceMock, new MyAttachmentService()); + + /* $appContainer->expects($this->at(0)) + ->method('query') + ->with(FileService::class) + ->willReturn($fileServiceMock); + $appContainer->expects($this->at(1)) + ->method('query') + ->with(FilesAppService::class) + ->willReturn($fileAppServiceMock); + $appContainer->expects($this->at(2)) + ->method('query') + ->with(MyAttachmentService::class) + ->willReturn(new MyAttachmentService()); */ $application->expects($this->any()) ->method('getContainer') @@ -148,12 +180,32 @@ class AttachmentServiceTest extends TestCase { $appContainer = $this->createMock(IAppContainer::class); $fileServiceMock = $this->createMock(FileService::class); $fileAppServiceMock = $this->createMock(FilesAppService::class); - $appContainer->expects($this->at(0))->method('query')->with(FileService::class)->willReturn($fileServiceMock); - $appContainer->expects($this->at(1))->method('query')->with(FilesAppService::class)->willReturn($fileAppServiceMock); - $appContainer->expects($this->at(2))->method('query')->with(MyAttachmentService::class)->willReturn(new MyAttachmentService()); + + $appContainer->expects($this->exactly(3)) + ->method('query') + ->withConsecutive( + [FileService::class], + [FilesAppService::class], + [MyAttachmentService::class] + ) + ->willReturnOnConsecutiveCalls($fileServiceMock, $fileAppServiceMock, new MyAttachmentService()); + + /* $appContainer->expects($this->at(0)) + ->method('query') + ->with(FileService::class) + ->willReturn($fileServiceMock); + $appContainer->expects($this->at(1)) + ->method('query') + ->with(FilesAppService::class) + ->willReturn($fileAppServiceMock); + $appContainer->expects($this->at(2)) + ->method('query') + ->with(MyAttachmentService::class) + ->willReturn(new MyAttachmentService()); */ $application->expects($this->any()) ->method('getContainer') ->willReturn($appContainer); + $attachmentService = new AttachmentService($this->attachmentMapper, $this->cardMapper, $this->changeHelper, $this->permissionService, $application, $this->cacheFactory, $this->userId, $this->l10n, $this->activityManager); $attachmentService->registerAttachmentService('custom', MyAttachmentService::class); $attachmentService->getService('deck_file_invalid'); @@ -185,12 +237,19 @@ class AttachmentServiceTest extends TestCase { ->with(123) ->willReturn($attachments); - $this->attachmentServiceImpl->expects($this->at(0)) + $this->attachmentServiceImpl->expects($this->exactly(2)) + ->method('extendData') + ->withConsecutive( + [$attachments[0]], + [$attachments[1]] + ); + + /* $this->attachmentServiceImpl->expects($this->at(0)) ->method('extendData') ->with($attachments[0]); $this->attachmentServiceImpl->expects($this->at(1)) ->method('extendData') - ->with($attachments[1]); + ->with($attachments[1]); */ $this->assertEquals($attachments, $this->attachmentService->findAll(123, false)); } @@ -215,12 +274,21 @@ class AttachmentServiceTest extends TestCase { ->with(123, false) ->willReturn($attachmentsDeleted); - $this->attachmentServiceImpl->expects($this->at(0)) + $this->attachmentServiceImpl->expects($this->exactly(4)) + ->method('extendData') + ->withConsecutive( + [$attachments[0]], + [$attachments[1]], + [$attachmentsDeleted[0]], + [$attachmentsDeleted[1]] + ); + + /* $this->attachmentServiceImpl->expects($this->at(0)) ->method('extendData') ->with($attachments[0]); $this->attachmentServiceImpl->expects($this->at(1)) ->method('extendData') - ->with($attachments[1]); + ->with($attachments[1]); */ $this->assertEquals(array_merge($attachments, $attachmentsDeleted), $this->attachmentService->findAll(123, true)); } diff --git a/tests/unit/Service/BoardServiceTest.php b/tests/unit/Service/BoardServiceTest.php index 600f6a37c..333b85116 100644 --- a/tests/unit/Service/BoardServiceTest.php +++ b/tests/unit/Service/BoardServiceTest.php @@ -300,22 +300,41 @@ class BoardServiceTest extends TestCase { $existingAcl->setPermissionEdit($currentUserAcl[0]); $existingAcl->setPermissionShare($currentUserAcl[1]); $existingAcl->setPermissionManage($currentUserAcl[2]); - $this->permissionService->expects($this->at(0)) - ->method('checkPermission') - ->with($this->boardMapper, 123, Acl::PERMISSION_SHARE, null); + if ($currentUserAcl[2]) { - $this->permissionService->expects($this->at(1)) + $this->permissionService->expects($this->exactly(2)) ->method('checkPermission') - ->with($this->boardMapper, 123, Acl::PERMISSION_MANAGE, null); + ->withConsecutive( + [$this->boardMapper, 123, Acl::PERMISSION_SHARE, null], + [$this->boardMapper, 123, Acl::PERMISSION_MANAGE, null] + ); } else { $this->aclMapper->expects($this->once()) ->method('findAll') ->willReturn([$existingAcl]); - $this->permissionService->expects($this->at(1)) + + $this->permissionService->expects($this->exactly(2)) ->method('checkPermission') - ->with($this->boardMapper, 123, Acl::PERMISSION_MANAGE, null) - ->willThrowException(new NoPermissionException('No permission')); - $this->permissionService->expects($this->at(2)) + ->withConsecutive( + [$this->boardMapper, 123, Acl::PERMISSION_SHARE, null], + [$this->boardMapper, 123, Acl::PERMISSION_MANAGE, null] + ) + ->will( + $this->onConsecutiveCalls( + true, + $this->throwException(new NoPermissionException('No permission')) + ) + ); + + $this->permissionService->expects($this->exactly(3)) + ->method('userCan') + ->willReturnOnConsecutiveCalls( + $currentUserAcl[0], + $currentUserAcl[1], + $currentUserAcl[2] + ); + + /* $this->permissionService->expects($this->at(2)) ->method('userCan') ->willReturn($currentUserAcl[0]); $this->permissionService->expects($this->at(3)) @@ -323,7 +342,7 @@ class BoardServiceTest extends TestCase { ->willReturn($currentUserAcl[1]); $this->permissionService->expects($this->at(4)) ->method('userCan') - ->willReturn($currentUserAcl[2]); + ->willReturn($currentUserAcl[2]); */ } $user = $this->createMock(IUser::class); diff --git a/tests/unit/Service/PermissionServiceTest.php b/tests/unit/Service/PermissionServiceTest.php index f92adc059..0994a778e 100644 --- a/tests/unit/Service/PermissionServiceTest.php +++ b/tests/unit/Service/PermissionServiceTest.php @@ -139,13 +139,17 @@ class PermissionServiceTest extends \Test\TestCase { } public function testUserIsBoardOwner() { - $board = new Board(); - $board->setOwner('admin'); - $this->boardMapper->expects($this->at(0))->method('find')->with(123)->willReturn($board); + $adminBoard = new Board(); + $adminBoard->setOwner('admin'); + $userBoard = new Board(); + $userBoard->setOwner('user1'); + + $this->boardMapper->expects($this->exactly(2)) + ->method('find') + ->withConsecutive([123], [234]) + ->willReturnOnConsecutiveCalls($adminBoard, $userBoard); + $this->assertEquals(true, $this->service->userIsBoardOwner(123)); - $board = new Board(); - $board->setOwner('user1'); - $this->boardMapper->expects($this->at(0))->method('find')->with(234)->willReturn($board); $this->assertEquals(false, $this->service->userIsBoardOwner(234)); } @@ -336,7 +340,7 @@ class PermissionServiceTest extends \Test\TestCase { $aclGroup->setParticipant('group1'); $board = $this->createMock(Board::class); - $board->expects($this->at(0)) + $board->expects($this->once()) ->method('__call') ->with('getOwner', []) ->willReturn('user1'); @@ -348,14 +352,11 @@ class PermissionServiceTest extends \Test\TestCase { ->method('find') ->with(123) ->willReturn($board); - $this->userManager->expects($this->at(0)) + $this->userManager->expects($this->exactly(2)) ->method('get') - ->with('user1') - ->willReturn($user1); - $this->userManager->expects($this->at(1)) - ->method('get') - ->with('user2') - ->willReturn($user2); + ->withConsecutive(['user1'], ['user2']) + ->willReturnOnConsecutiveCalls($user1, $user2); + $group = $this->createMock(IGroup::class); $group->expects($this->once()) ->method('getUsers')