aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/files_sharing/lib/activity.php13
-rw-r--r--apps/files_sharing/tests/activity.php65
2 files changed, 75 insertions, 3 deletions
diff --git a/apps/files_sharing/lib/activity.php b/apps/files_sharing/lib/activity.php
index 23f548474d3..bfac91fd71a 100644
--- a/apps/files_sharing/lib/activity.php
+++ b/apps/files_sharing/lib/activity.php
@@ -68,11 +68,18 @@ class Activity implements \OCP\Activity\IExtension {
* @return array|false
*/
public function getDefaultTypes($method) {
- if ($method === 'stream') {
- return array(self::TYPE_REMOTE_SHARE, self::TYPE_PUBLIC_LINKS);
+ switch ($method) {
+ case 'email':
+ $result = array(self::TYPE_REMOTE_SHARE);
+ break;
+ case 'stream':
+ $result = array(self::TYPE_REMOTE_SHARE, self::TYPE_PUBLIC_LINKS);
+ break;
+ default:
+ $result = false;
}
- return false;
+ return $result;
}
/**
diff --git a/apps/files_sharing/tests/activity.php b/apps/files_sharing/tests/activity.php
new file mode 100644
index 00000000000..04930e3bb76
--- /dev/null
+++ b/apps/files_sharing/tests/activity.php
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * ownCloud
+ *
+ * @copyright (C) 2015 ownCloud, Inc.
+ *
+ * @author Bjoern Schiessle <schiessle@owncloud.com>
+ *
+ * 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\Files_sharing\Tests;
+use OCA\Files_sharing\Tests\TestCase;
+
+
+class Activity extends \OCA\Files_Sharing\Tests\TestCase{
+
+ /**
+ * @var \OCA\Files_Sharing\Activity
+ */
+ private $activity;
+
+ protected function setUp() {
+ parent::setUp();
+ $this->activity = new \OCA\Files_Sharing\Activity();
+ }
+
+ /**
+ * @dataProvider dataTestGetDefaultType
+ */
+ public function testGetDefaultTypes($method, $expectedResult) {
+ $result = $this->activity->getDefaultTypes($method);
+
+ if (is_array($expectedResult)) {
+ $this->assertSame(count($expectedResult), count($result));
+ foreach ($expectedResult as $key => $expected) {
+ $this->assertSame($expected, $result[$key]);
+ }
+ } else {
+ $this->assertSame($expectedResult, $result);
+ }
+
+ }
+
+ public function dataTestGetDefaultType() {
+ return array(
+ array('email', array(\OCA\Files_Sharing\Activity::TYPE_REMOTE_SHARE)),
+ array('stream', array(\OCA\Files_Sharing\Activity::TYPE_REMOTE_SHARE, \OCA\Files_Sharing\Activity::TYPE_PUBLIC_LINKS)),
+ array('foo', false)
+ );
+ }
+
+}