예제 #1
0
 public function testRegister()
 {
     $activityManager = new ActivityManager($this->getMock('OCP\\IRequest'), $this->getMock('OCP\\IUserSession'), $this->getMock('OCP\\IConfig'));
     $consumer = new Consumer($this->data, $this->userSettings);
     $container = $this->getMock('\\OCP\\AppFramework\\IAppContainer');
     $container->expects($this->any())->method('query')->with($this->stringContains('Consumer'))->will($this->returnValueMap(array(array('Consumer', $consumer))));
     Consumer::register($activityManager, $container);
     $consumers = $this->invokePrivate($activityManager, 'getConsumers');
     $this->assertCount(1, $consumers);
     $this->assertInstanceOf('OCA\\Activity\\Consumer', $consumers[0]);
 }
예제 #2
0
 * @copyright 2013 Frank Karlitschek frank@owncloud.org
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
 * License as published by the Free Software Foundation; either
 * version 3 of the License, or any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
 *
 * You should have received a copy of the GNU Affero General Public
 * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
 *
 */
namespace OCA\Activity\AppInfo;

$app = new Application();
$c = $app->getContainer();
// add an navigation entry
$navigationEntry = function () use($c) {
    return ['id' => $c->getAppName(), 'order' => 1, 'name' => $c->query('ActivityL10N')->t('Activity'), 'href' => $c->getServer()->getURLGenerator()->linkToRoute('activity.Activities.showList'), 'icon' => $c->getServer()->getURLGenerator()->imagePath('activity', 'activity.svg')];
};
$c->getServer()->getNavigationManager()->add($navigationEntry);
// register the hooks for filesystem operations. All other events from other apps has to be send via the public api
\OCA\Activity\FilesHooksStatic::register();
\OCP\Util::connectHook('OC_User', 'post_deleteUser', 'OCA\\Activity\\Hooks', 'deleteUser');
\OCA\Activity\Consumer::register($c->getServer()->getActivityManager(), $c);
// Personal settings for notifications and emails
\OCP\App::registerPersonal($c->getAppName(), 'personal');
예제 #3
0
 /**
  * @dataProvider receiveData
  *
  * @param string $type
  * @param string $author
  * @param string $affectedUser
  * @param string $subject
  * @param array|false $expected
  */
 public function testRegister($type, $author, $affectedUser, $subject, $expected)
 {
     $activityManager = new ActivityManager($this->getMock('OCP\\IRequest'), $this->getMock('OCP\\IUserSession'), $this->getMock('OCP\\IConfig'));
     $consumer = new Consumer($this->userSettings, $author);
     $container = $this->getMock('\\OCP\\AppFramework\\IAppContainer');
     $container->expects($this->any())->method('query')->with($this->stringContains('Consumer'))->will($this->returnValueMap(array(array('Consumer', $consumer))));
     Consumer::register($activityManager, $container);
     $activityManager->publishActivity('test', $subject, ['subjectParam1', 'subjectParam2'], 'message', ['messageParam1', 'messageParam2'], 'file', 'link', $affectedUser, $type, \OCP\Activity\IExtension::PRIORITY_HIGH);
     $query = DB::prepare("SELECT `affecteduser` FROM `*PREFIX*activity` WHERE `app` = 'test'");
     $result = $query->execute();
     $this->assertEquals($expected, $result->fetchOne(0));
     $this->assertEquals(false, $result->fetchRow());
 }