示例#1
0
 public function testPublishAllManually()
 {
     $event = new \OC\Activity\Event();
     $event->setApp('test_app')->setType('test_type')->setAffectedUser('test_affected')->setAuthor('test_author')->setTimestamp(1337)->setSubject('test_subject', ['test_subject_param'])->setMessage('test_message', ['test_message_param'])->setObject('test_object_type', 42, 'test_object_name')->setLink('test_link');
     $consumer = $this->getMockBuilder('OCP\\Activity\\IConsumer')->disableOriginalConstructor()->getMock();
     $consumer->expects($this->once())->method('receive')->willReturnCallback(function (\OCP\Activity\IEvent $event) {
         $this->assertSame('test_app', $event->getApp(), 'App not set correctly');
         $this->assertSame('test_type', $event->getType(), 'Type not set correctly');
         $this->assertSame('test_affected', $event->getAffectedUser(), 'Affected user not set correctly');
         $this->assertSame('test_author', $event->getAuthor(), 'Author not set correctly');
         $this->assertSame(1337, $event->getTimestamp(), 'Timestamp not set correctly');
         $this->assertSame('test_subject', $event->getSubject(), 'Subject not set correctly');
         $this->assertSame(['test_subject_param'], $event->getSubjectParameters(), 'Subject parameter not set correctly');
         $this->assertSame('test_message', $event->getMessage(), 'Message not set correctly');
         $this->assertSame(['test_message_param'], $event->getMessageParameters(), 'Message parameter not set correctly');
         $this->assertSame('test_object_type', $event->getObjectType(), 'Object type not set correctly');
         $this->assertSame(42, $event->getObjectId(), 'Object ID not set correctly');
         $this->assertSame('test_object_name', $event->getObjectName(), 'Object name not set correctly');
         $this->assertSame('test_link', $event->getLink(), 'Link not set correctly');
     });
     $this->activityManager->registerConsumer(function () use($consumer) {
         return $consumer;
     });
     $this->activityManager->publish($event);
 }