protected function setUp() { parent::setUp(); $app = $this->getUniqueID('MailQueueHandlerTest'); $this->userManager = $this->getMock('OCP\\IUserManager'); $connection = \OC::$server->getDatabaseConnection(); $query = $connection->prepare('INSERT INTO `*PREFIX*activity_mq` ' . ' (`amq_appid`, `amq_subject`, `amq_subjectparams`, `amq_affecteduser`, `amq_timestamp`, `amq_type`, `amq_latest_send`) ' . ' VALUES(?, ?, ?, ?, ?, ?, ?)'); $query->execute(array($app, 'Test data', 'Param1', 'user1', 150, 'phpunit', 152)); $query->execute(array($app, 'Test data', 'Param1', 'user1', 150, 'phpunit', 153)); $query->execute(array($app, 'Test data', 'Param1', 'user2', 150, 'phpunit', 150)); $query->execute(array($app, 'Test data', 'Param1', 'user2', 150, 'phpunit', 151)); $query->execute(array($app, 'Test data', 'Param1', 'user3', 150, 'phpunit', 154)); $query->execute(array($app, 'Test data', 'Param1', 'user3', 150, 'phpunit', 155)); $event = $this->getMockBuilder('OCP\\Activity\\IEvent')->disableOriginalConstructor()->getMock(); $event->expects($this->any())->method('setApp')->willReturnSelf(); $event->expects($this->any())->method('setType')->willReturnSelf(); $event->expects($this->any())->method('setAffectedUser')->willReturnSelf(); $event->expects($this->any())->method('setTimestamp')->willReturnSelf(); $event->expects($this->any())->method('setSubject')->willReturnSelf(); $this->activityManager = $this->getMockBuilder('OCP\\Activity\\IManager')->disableOriginalConstructor()->getMock(); $this->activityManager->expects($this->any())->method('generateEvent')->willReturn($event); $this->dataHelper = $this->getMockBuilder('OCA\\Activity\\DataHelper')->disableOriginalConstructor()->getMock(); $this->dataHelper->expects($this->any())->method('getParameters')->willReturn([]); $this->message = $this->getMockBuilder('OC\\Mail\\Message')->disableOriginalConstructor()->getMock(); $this->mailer = $this->getMock('OCP\\Mail\\IMailer'); $this->mailer->expects($this->any())->method('createMessage')->willReturn($this->message); $this->mailQueueHandler = new MailQueueHandler($this->getMock('\\OCP\\IDateTimeFormatter'), $connection, $this->dataHelper, $this->mailer, $this->getMockBuilder('\\OCP\\IURLGenerator')->disableOriginalConstructor()->getMock(), $this->userManager, $this->activityManager); }
/** * @dataProvider dataGetActivities * * @param array $activities * @param array $expected */ public function testGetActivities(array $activities, array $expected) { $numActivities = sizeof($activities); $helper = $this->getHelper(['closeOpenGroup']); $helper->expects($this->once())->method('closeOpenGroup'); $this->invokePrivate($helper, 'activities', [$activities]); $this->dataHelper->expects($this->exactly($numActivities * 2))->method('formatStrings')->willReturnArgument(0); $this->activityManager->expects($this->exactly($numActivities))->method('getTypeIcon')->willReturnCallback(function ($type) { return $type . '-icon'; }); $this->activityManager->expects($this->exactly($numActivities + 1))->method('setFormattingObject'); $this->assertSame($expected, $helper->getActivities()); }