diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/lib/comments/fakemanager.php | 10 | ||||
-rw-r--r-- | tests/lib/comments/manager.php | 69 |
2 files changed, 78 insertions, 1 deletions
diff --git a/tests/lib/comments/fakemanager.php b/tests/lib/comments/fakemanager.php index e5cf58dda4f..7186529e718 100644 --- a/tests/lib/comments/fakemanager.php +++ b/tests/lib/comments/fakemanager.php @@ -19,7 +19,7 @@ class FakeManager implements \OCP\Comments\ICommentsManager { \DateTime $notOlderThan = null ) {} - public function getNumberOfCommentsForObject($objectType, $objectId) {} + public function getNumberOfCommentsForObject($objectType, $objectId, \DateTime $notOlderThan = null) {} public function create($actorType, $actorId, $objectType, $objectId) {} @@ -30,4 +30,12 @@ class FakeManager implements \OCP\Comments\ICommentsManager { public function deleteReferencesOfActor($actorType, $actorId) {} public function deleteCommentsAtObject($objectType, $objectId) {} + + public function setReadMark($objectType, $objectId, \DateTime $dateTime, \OCP\IUser $user) {} + + public function getReadMark($objectType, $objectId, \OCP\IUser $user) {} + + public function deleteReadMarksFromUser(\OCP\IUser $user) {} + + public function deleteReadMarksOnObject($objectType, $objectId) {} } diff --git a/tests/lib/comments/manager.php b/tests/lib/comments/manager.php index cc2eebb64d1..a71f78f2818 100644 --- a/tests/lib/comments/manager.php +++ b/tests/lib/comments/manager.php @@ -561,4 +561,73 @@ class Test_Comments_Manager extends TestCase $this->assertTrue($wasSuccessful); } + public function testSetMarkRead() { + $user = $this->getMock('\OCP\IUser'); + $user->expects($this->any()) + ->method('getUID') + ->will($this->returnValue('alice')); + + $dateTimeSet = new \DateTime(); + + $manager = $this->getManager(); + $manager->setReadMark('robot', '36', $dateTimeSet, $user); + + $dateTimeGet = $manager->getReadMark('robot', '36', $user); + + $this->assertEquals($dateTimeGet, $dateTimeSet); + } + + public function testSetMarkReadUpdate() { + $user = $this->getMock('\OCP\IUser'); + $user->expects($this->any()) + ->method('getUID') + ->will($this->returnValue('alice')); + + $dateTimeSet = new \DateTime('yesterday'); + + $manager = $this->getManager(); + $manager->setReadMark('robot', '36', $dateTimeSet, $user); + + $dateTimeSet = new \DateTime('today'); + $manager->setReadMark('robot', '36', $dateTimeSet, $user); + + $dateTimeGet = $manager->getReadMark('robot', '36', $user); + + $this->assertEquals($dateTimeGet, $dateTimeSet); + } + + public function testReadMarkDeleteUser() { + $user = $this->getMock('\OCP\IUser'); + $user->expects($this->any()) + ->method('getUID') + ->will($this->returnValue('alice')); + + $dateTimeSet = new \DateTime(); + + $manager = $this->getManager(); + $manager->setReadMark('robot', '36', $dateTimeSet, $user); + + $manager->deleteReadMarksFromUser($user); + $dateTimeGet = $manager->getReadMark('robot', '36', $user); + + $this->assertNull($dateTimeGet); + } + + public function testReadMarkDeleteObject() { + $user = $this->getMock('\OCP\IUser'); + $user->expects($this->any()) + ->method('getUID') + ->will($this->returnValue('alice')); + + $dateTimeSet = new \DateTime(); + + $manager = $this->getManager(); + $manager->setReadMark('robot', '36', $dateTimeSet, $user); + + $manager->deleteReadMarksOnObject('robot', '36'); + $dateTimeGet = $manager->getReadMark('robot', '36', $user); + + $this->assertNull($dateTimeGet); + } + } |