diff options
Diffstat (limited to 'apps/comments/tests/Unit/Notification')
-rw-r--r-- | apps/comments/tests/Unit/Notification/ListenerTest.php | 94 | ||||
-rw-r--r-- | apps/comments/tests/Unit/Notification/NotifierTest.php | 51 |
2 files changed, 59 insertions, 86 deletions
diff --git a/apps/comments/tests/Unit/Notification/ListenerTest.php b/apps/comments/tests/Unit/Notification/ListenerTest.php index a81753b3e34..356a26f23cd 100644 --- a/apps/comments/tests/Unit/Notification/ListenerTest.php +++ b/apps/comments/tests/Unit/Notification/ListenerTest.php @@ -14,26 +14,20 @@ use OCP\IURLGenerator; use OCP\IUserManager; use OCP\Notification\IManager; use OCP\Notification\INotification; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class ListenerTest extends TestCase { - /** @var IManager|\PHPUnit\Framework\MockObject\MockObject */ - protected $notificationManager; - - /** @var IUserManager|\PHPUnit\Framework\MockObject\MockObject */ - protected $userManager; - - /** @var IURLGenerator|\PHPUnit\Framework\MockObject\MockObject */ - protected $urlGenerator; - - /** @var Listener */ - protected $listener; + protected IManager&MockObject $notificationManager; + protected IUserManager&MockObject $userManager; + protected IURLGenerator&MockObject $urlGenerator; + protected Listener $listener; protected function setUp(): void { parent::setUp(); - $this->notificationManager = $this->createMock(\OCP\Notification\IManager::class); - $this->userManager = $this->createMock(\OCP\IUserManager::class); + $this->notificationManager = $this->createMock(IManager::class); + $this->userManager = $this->createMock(IUserManager::class); $this->listener = new Listener( $this->notificationManager, @@ -41,7 +35,7 @@ class ListenerTest extends TestCase { ); } - public function eventProvider() { + public static function eventProvider(): array { return [ [CommentsEvent::EVENT_ADD, 'notify'], [CommentsEvent::EVENT_UPDATE, 'notify'], @@ -51,13 +45,13 @@ class ListenerTest extends TestCase { } /** - * @dataProvider eventProvider * @param string $eventType * @param string $notificationMethod */ - public function testEvaluate($eventType, $notificationMethod) { - /** @var IComment|\PHPUnit\Framework\MockObject\MockObject $comment */ - $comment = $this->getMockBuilder(IComment::class)->getMock(); + #[\PHPUnit\Framework\Attributes\DataProvider('eventProvider')] + public function testEvaluate($eventType, $notificationMethod): void { + /** @var IComment|MockObject $comment */ + $comment = $this->createMock(IComment::class); $comment->expects($this->any()) ->method('getObjectType') ->willReturn('files'); @@ -78,10 +72,8 @@ class ListenerTest extends TestCase { ->method('getId') ->willReturn('1234'); - /** @var CommentsEvent|\PHPUnit\Framework\MockObject\MockObject $event */ - $event = $this->getMockBuilder(CommentsEvent::class) - ->disableOriginalConstructor() - ->getMock(); + /** @var CommentsEvent|MockObject $event */ + $event = $this->createMock(CommentsEvent::class); $event->expects($this->once()) ->method('getComment') ->willReturn($comment); @@ -89,8 +81,8 @@ class ListenerTest extends TestCase { ->method(('getEvent')) ->willReturn($eventType); - /** @var INotification|\PHPUnit\Framework\MockObject\MockObject $notification */ - $notification = $this->getMockBuilder(INotification::class)->getMock(); + /** @var INotification|MockObject $notification */ + $notification = $this->createMock(INotification::class); $notification->expects($this->any()) ->method($this->anything()) ->willReturn($notification); @@ -106,26 +98,22 @@ class ListenerTest extends TestCase { $this->userManager->expects($this->exactly(6)) ->method('userExists') - ->withConsecutive( - ['foobar'], - ['barfoo'], - ['foo@bar.com'], - ['bar@foo.org@foobar.io'], - ['23452-4333-54353-2342'], - ['yolo'] - ) - ->willReturn(true); + ->willReturnMap([ + ['foobar', true], + ['barfoo', true], + ['foo@bar.com', true], + ['bar@foo.org@foobar.io', true], + ['23452-4333-54353-2342', true], + ['yolo', true] + ]); $this->listener->evaluate($event); } - /** - * @dataProvider eventProvider - * @param string $eventType - */ - public function testEvaluateNoMentions($eventType) { - /** @var IComment|\PHPUnit\Framework\MockObject\MockObject $comment */ - $comment = $this->getMockBuilder(IComment::class)->getMock(); + #[\PHPUnit\Framework\Attributes\DataProvider('eventProvider')] + public function testEvaluateNoMentions(string $eventType): void { + /** @var IComment|MockObject $comment */ + $comment = $this->createMock(IComment::class); $comment->expects($this->any()) ->method('getObjectType') ->willReturn('files'); @@ -136,10 +124,8 @@ class ListenerTest extends TestCase { ->method('getMentions') ->willReturn([]); - /** @var CommentsEvent|\PHPUnit\Framework\MockObject\MockObject $event */ - $event = $this->getMockBuilder(CommentsEvent::class) - ->disableOriginalConstructor() - ->getMock(); + /** @var CommentsEvent|MockObject $event */ + $event = $this->createMock(CommentsEvent::class); $event->expects($this->once()) ->method('getComment') ->willReturn($comment); @@ -160,9 +146,9 @@ class ListenerTest extends TestCase { $this->listener->evaluate($event); } - public function testEvaluateUserDoesNotExist() { - /** @var IComment|\PHPUnit\Framework\MockObject\MockObject $comment */ - $comment = $this->getMockBuilder(IComment::class)->getMock(); + public function testEvaluateUserDoesNotExist(): void { + /** @var IComment|MockObject $comment */ + $comment = $this->createMock(IComment::class); $comment->expects($this->any()) ->method('getObjectType') ->willReturn('files'); @@ -176,10 +162,8 @@ class ListenerTest extends TestCase { ->method('getId') ->willReturn('1234'); - /** @var CommentsEvent|\PHPUnit\Framework\MockObject\MockObject $event */ - $event = $this->getMockBuilder(CommentsEvent::class) - ->disableOriginalConstructor() - ->getMock(); + /** @var CommentsEvent|MockObject $event */ + $event = $this->createMock(CommentsEvent::class); $event->expects($this->once()) ->method('getComment') ->willReturn($comment); @@ -187,8 +171,8 @@ class ListenerTest extends TestCase { ->method(('getEvent')) ->willReturn(CommentsEvent::EVENT_ADD); - /** @var INotification|\PHPUnit\Framework\MockObject\MockObject $notification */ - $notification = $this->getMockBuilder(INotification::class)->getMock(); + /** @var INotification|MockObject $notification */ + $notification = $this->createMock(INotification::class); $notification->expects($this->any()) ->method($this->anything()) ->willReturn($notification); @@ -203,9 +187,7 @@ class ListenerTest extends TestCase { $this->userManager->expects($this->once()) ->method('userExists') - ->withConsecutive( - ['foobar'] - ) + ->with('foobar') ->willReturn(false); $this->listener->evaluate($event); diff --git a/apps/comments/tests/Unit/Notification/NotifierTest.php b/apps/comments/tests/Unit/Notification/NotifierTest.php index a01c08a6760..37cad0b43df 100644 --- a/apps/comments/tests/Unit/Notification/NotifierTest.php +++ b/apps/comments/tests/Unit/Notification/NotifierTest.php @@ -1,4 +1,7 @@ <?php + +declare(strict_types=1); + /** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -23,26 +26,16 @@ use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class NotifierTest extends TestCase { - /** @var Notifier */ - protected $notifier; - /** @var IFactory|MockObject */ - protected $l10nFactory; - /** @var IL10N|MockObject */ - protected $l; - /** @var IRootFolder|MockObject */ - protected $folder; - /** @var ICommentsManager|MockObject */ - protected $commentsManager; - /** @var IURLGenerator|MockObject */ - protected $url; - /** @var IUserManager|MockObject */ - protected $userManager; - /** @var INotification|MockObject */ - protected $notification; - /** @var IComment|MockObject */ - protected $comment; - /** @var string */ - protected $lc = 'tlh_KX'; + protected IFactory&MockObject $l10nFactory; + protected IL10N&MockObject $l; + protected IRootFolder&MockObject $folder; + protected ICommentsManager&MockObject $commentsManager; + protected IURLGenerator&MockObject $url; + protected IUserManager&MockObject $userManager; + protected INotification&MockObject $notification; + protected IComment&MockObject $comment; + protected Notifier $notifier; + protected string $lc = 'tlh_KX'; protected function setUp(): void { parent::setUp(); @@ -72,12 +65,11 @@ class NotifierTest extends TestCase { $this->comment = $this->createMock(IComment::class); } - public function testPrepareSuccess() { + public function testPrepareSuccess(): void { $fileName = 'Gre\'thor.odp'; $displayName = 'Huraga'; - $message = '@Huraga mentioned you in a comment on "Gre\'thor.odp"'; - /** @var Node|MockObject $node */ + /** @var Node&MockObject $node */ $node = $this->createMock(Node::class); $node ->expects($this->atLeastOnce()) @@ -190,9 +182,8 @@ class NotifierTest extends TestCase { $this->notifier->prepare($this->notification, $this->lc); } - public function testPrepareSuccessDeletedUser() { + public function testPrepareSuccessDeletedUser(): void { $fileName = 'Gre\'thor.odp'; - $message = 'You were mentioned on "Gre\'thor.odp", in a comment by an account that has since been deleted'; /** @var Node|MockObject $node */ $node = $this->createMock(Node::class); @@ -305,7 +296,7 @@ class NotifierTest extends TestCase { } - public function testPrepareDifferentApp() { + public function testPrepareDifferentApp(): void { $this->expectException(UnknownNotificationException::class); $this->folder @@ -342,7 +333,7 @@ class NotifierTest extends TestCase { } - public function testPrepareNotFound() { + public function testPrepareNotFound(): void { $this->expectException(UnknownNotificationException::class); $this->folder @@ -380,7 +371,7 @@ class NotifierTest extends TestCase { } - public function testPrepareDifferentSubject() { + public function testPrepareDifferentSubject(): void { $this->expectException(UnknownNotificationException::class); $displayName = 'Huraga'; @@ -437,7 +428,7 @@ class NotifierTest extends TestCase { } - public function testPrepareNotFiles() { + public function testPrepareNotFiles(): void { $this->expectException(UnknownNotificationException::class); $displayName = 'Huraga'; @@ -495,7 +486,7 @@ class NotifierTest extends TestCase { } - public function testPrepareUnresolvableFileID() { + public function testPrepareUnresolvableFileID(): void { $this->expectException(AlreadyProcessedException::class); $displayName = 'Huraga'; |