summaryrefslogtreecommitdiffstats
path: root/tests/lib/Share20/ManagerTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Share20/ManagerTest.php')
-rw-r--r--tests/lib/Share20/ManagerTest.php150
1 files changed, 98 insertions, 52 deletions
diff --git a/tests/lib/Share20/ManagerTest.php b/tests/lib/Share20/ManagerTest.php
index bd85e3c73aa..00009a73b0e 100644
--- a/tests/lib/Share20/ManagerTest.php
+++ b/tests/lib/Share20/ManagerTest.php
@@ -61,25 +61,25 @@ class ManagerTest extends \Test\TestCase {
/** @var Manager */
protected $manager;
- /** @var ILogger */
+ /** @var ILogger|\PHPUnit_Framework_MockObject_MockObject */
protected $logger;
- /** @var IConfig */
+ /** @var IConfig|\PHPUnit_Framework_MockObject_MockObject */
protected $config;
- /** @var ISecureRandom */
+ /** @var ISecureRandom|\PHPUnit_Framework_MockObject_MockObject */
protected $secureRandom;
- /** @var IHasher */
+ /** @var IHasher|\PHPUnit_Framework_MockObject_MockObject */
protected $hasher;
- /** @var IShareProvider | \PHPUnit_Framework_MockObject_MockObject */
+ /** @var IShareProvider|\PHPUnit_Framework_MockObject_MockObject */
protected $defaultProvider;
- /** @var IMountManager */
+ /** @var IMountManager|\PHPUnit_Framework_MockObject_MockObject */
protected $mountManager;
- /** @var IGroupManager */
+ /** @var IGroupManager|\PHPUnit_Framework_MockObject_MockObject */
protected $groupManager;
- /** @var IL10N */
+ /** @var IL10N|\PHPUnit_Framework_MockObject_MockObject */
protected $l;
/** @var DummyFactory */
protected $factory;
- /** @var IUserManager */
+ /** @var IUserManager|\PHPUnit_Framework_MockObject_MockObject */
protected $userManager;
/** @var IRootFolder | \PHPUnit_Framework_MockObject_MockObject */
protected $rootFolder;
@@ -488,7 +488,7 @@ class ManagerTest extends \Test\TestCase {
->method('delete')
->withConsecutive($child1, $child2, $child3);
- $result = $this->invokePrivate($manager, 'deleteChildren', [$share]);
+ $result = self::invokePrivate($manager, 'deleteChildren', [$share]);
$this->assertSame($shares, $result);
}
@@ -532,7 +532,7 @@ class ManagerTest extends \Test\TestCase {
}
/**
- * @expectedException InvalidArgumentException
+ * @expectedException \InvalidArgumentException
* @expectedExceptionMessage Passwords are enforced for link shares
*/
public function testVerifyPasswordNullButEnforced() {
@@ -540,7 +540,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_enforce_links_password', 'no', 'yes'],
]));
- $this->invokePrivate($this->manager, 'verifyPassword', [null]);
+ self::invokePrivate($this->manager, 'verifyPassword', [null]);
}
public function testVerifyPasswordNull() {
@@ -548,7 +548,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_enforce_links_password', 'no', 'no'],
]));
- $result = $this->invokePrivate($this->manager, 'verifyPassword', [null]);
+ $result = self::invokePrivate($this->manager, 'verifyPassword', [null]);
$this->assertNull($result);
}
@@ -564,12 +564,12 @@ class ManagerTest extends \Test\TestCase {
}
);
- $result = $this->invokePrivate($this->manager, 'verifyPassword', ['password']);
+ $result = self::invokePrivate($this->manager, 'verifyPassword', ['password']);
$this->assertNull($result);
}
/**
- * @expectedException Exception
+ * @expectedException \Exception
* @expectedExceptionMessage password not accepted
*/
public function testVerifyPasswordHookFails() {
@@ -585,7 +585,7 @@ class ManagerTest extends \Test\TestCase {
}
);
- $this->invokePrivate($this->manager, 'verifyPassword', ['password']);
+ self::invokePrivate($this->manager, 'verifyPassword', ['password']);
}
public function createShare($id, $type, $path, $sharedWith, $sharedBy, $shareOwner,
@@ -699,6 +699,7 @@ class ManagerTest extends \Test\TestCase {
*
* @param $share
* @param $exceptionMessage
+ * @param $exception
*/
public function testGeneralChecks($share, $exceptionMessage, $exception) {
$thrown = null;
@@ -718,7 +719,7 @@ class ManagerTest extends \Test\TestCase {
try {
- $this->invokePrivate($this->manager, 'generalCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'generalCreateChecks', [$share]);
$thrown = false;
} catch (\OCP\Share\Exceptions\GenericShareException $e) {
$this->assertEquals($exceptionMessage, $e->getHint());
@@ -754,7 +755,7 @@ class ManagerTest extends \Test\TestCase {
->setSharedBy('user1')
->setNode($userFolder);
- $this->invokePrivate($this->manager, 'generalCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'generalCreateChecks', [$share]);
}
/**
@@ -770,11 +771,11 @@ class ManagerTest extends \Test\TestCase {
$share = $this->manager->newShare();
$share->setExpirationDate($past);
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
}
/**
- * @expectedException InvalidArgumentException
+ * @expectedException \InvalidArgumentException
* @expectedExceptionMessage Expiration date is enforced
*/
public function testvalidateExpirationDateEnforceButNotSet() {
@@ -787,7 +788,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_enforce_expire_date', 'no', 'yes'],
]));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
}
public function testvalidateExpirationDateEnforceButNotEnabledAndNotSet() {
@@ -799,7 +800,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_enforce_expire_date', 'no', 'yes'],
]));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertNull($share->getExpirationDate());
}
@@ -818,7 +819,7 @@ class ManagerTest extends \Test\TestCase {
$expected->setTime(0,0,0);
$expected->add(new \DateInterval('P3D'));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertNotNull($share->getExpirationDate());
$this->assertEquals($expected, $share->getExpirationDate());
@@ -839,7 +840,7 @@ class ManagerTest extends \Test\TestCase {
]));
try {
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
} catch (\OCP\Share\Exceptions\GenericShareException $e) {
$this->assertEquals('Cannot set expiration date more than 3 days in the future', $e->getMessage());
$this->assertEquals('Cannot set expiration date more than 3 days in the future', $e->getHint());
@@ -871,7 +872,7 @@ class ManagerTest extends \Test\TestCase {
return $data['expirationDate'] == $future;
}));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertEquals($expected, $share->getExpirationDate());
}
@@ -892,7 +893,7 @@ class ManagerTest extends \Test\TestCase {
return $data['expirationDate'] == $expected && $data['passwordSet'] === false;
}));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertEquals($expected, $share->getExpirationDate());
}
@@ -907,7 +908,7 @@ class ManagerTest extends \Test\TestCase {
$share = $this->manager->newShare();
$share->setPassword('password');
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertNull($share->getExpirationDate());
}
@@ -934,7 +935,7 @@ class ManagerTest extends \Test\TestCase {
return $data['expirationDate'] == $expected;
}));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertEquals($expected, $share->getExpirationDate());
}
@@ -955,7 +956,7 @@ class ManagerTest extends \Test\TestCase {
$share = $this->manager->newShare();
$share->setExpirationDate($nextWeek);
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$save->sub(new \DateInterval('P2D'));
$this->assertEquals($save, $share->getExpirationDate());
@@ -980,7 +981,7 @@ class ManagerTest extends \Test\TestCase {
$data['message'] = 'Invalid date!';
}));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
}
public function testValidateExpirationDateExistingShareNoDefault() {
@@ -994,7 +995,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_expire_after_n_days', '7', '6'],
]));
- $this->invokePrivate($this->manager, 'validateExpirationDate', [$share]);
+ self::invokePrivate($this->manager, 'validateExpirationDate', [$share]);
$this->assertEquals(null, $share->getExpirationDate());
}
@@ -1030,7 +1031,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_only_share_with_group_members', 'no', 'yes'],
]));
- $this->invokePrivate($this->manager, 'userCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
}
public function testUserCreateChecksShareWithGroupMembersOnlySharedGroup() {
@@ -1068,7 +1069,7 @@ class ManagerTest extends \Test\TestCase {
->with($path)
->willReturn([]);
- $this->invokePrivate($this->manager, 'userCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
}
/**
@@ -1093,7 +1094,7 @@ class ManagerTest extends \Test\TestCase {
->with($path)
->willReturn([$share2]);
- $this->invokePrivate($this->manager, 'userCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
}
/**
@@ -1135,7 +1136,7 @@ class ManagerTest extends \Test\TestCase {
->with($path)
->willReturn([$share2]);
- $this->invokePrivate($this->manager, 'userCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
}
public function testUserCreateChecksIdenticalPathNotSharedWithUser() {
@@ -1170,7 +1171,7 @@ class ManagerTest extends \Test\TestCase {
->with($path)
->willReturn([$share2]);
- $this->invokePrivate($this->manager, 'userCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'userCreateChecks', [$share]);
}
/**
@@ -1186,7 +1187,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_group_sharing', 'yes', 'no'],
]));
- $this->invokePrivate($this->manager, 'groupCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'groupCreateChecks', [$share]);
}
/**
@@ -1212,7 +1213,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_group_sharing', 'yes', 'yes'],
]));
- $this->invokePrivate($this->manager, 'groupCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'groupCreateChecks', [$share]);
}
public function testGroupCreateChecksShareWithGroupMembersOnlyInGroup() {
@@ -1241,7 +1242,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_group_sharing', 'yes', 'yes'],
]));
- $this->invokePrivate($this->manager, 'groupCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'groupCreateChecks', [$share]);
}
/**
@@ -1272,7 +1273,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_group_sharing', 'yes', 'yes'],
]));
- $this->invokePrivate($this->manager, 'groupCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'groupCreateChecks', [$share]);
}
public function testGroupCreateChecksPathAlreadySharedWithDifferentGroup() {
@@ -1296,7 +1297,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_group_sharing', 'yes', 'yes'],
]));
- $this->invokePrivate($this->manager, 'groupCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'groupCreateChecks', [$share]);
}
/**
@@ -1312,7 +1313,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_links', 'yes', 'no'],
]));
- $this->invokePrivate($this->manager, 'linkCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'linkCreateChecks', [$share]);
}
/**
@@ -1330,7 +1331,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_links', 'yes', 'yes'],
]));
- $this->invokePrivate($this->manager, 'linkCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'linkCreateChecks', [$share]);
}
/**
@@ -1349,7 +1350,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_public_upload', 'yes', 'no']
]));
- $this->invokePrivate($this->manager, 'linkCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'linkCreateChecks', [$share]);
}
public function testLinkCreateChecksPublicUpload() {
@@ -1364,7 +1365,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_public_upload', 'yes', 'yes']
]));
- $this->invokePrivate($this->manager, 'linkCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'linkCreateChecks', [$share]);
}
public function testLinkCreateChecksReadOnly() {
@@ -1379,7 +1380,7 @@ class ManagerTest extends \Test\TestCase {
['core', 'shareapi_allow_public_upload', 'yes', 'no']
]));
- $this->invokePrivate($this->manager, 'linkCreateChecks', [$share]);
+ self::invokePrivate($this->manager, 'linkCreateChecks', [$share]);
}
/**
@@ -1397,7 +1398,7 @@ class ManagerTest extends \Test\TestCase {
$this->mountManager->method('findIn')->with('path')->willReturn([$mount]);
- $this->invokePrivate($this->manager, 'pathCreateChecks', [$path]);
+ self::invokePrivate($this->manager, 'pathCreateChecks', [$path]);
}
public function testPathCreateChecksContainsNoSharedMount() {
@@ -1411,13 +1412,13 @@ class ManagerTest extends \Test\TestCase {
$this->mountManager->method('findIn')->with('path')->willReturn([$mount]);
- $this->invokePrivate($this->manager, 'pathCreateChecks', [$path]);
+ self::invokePrivate($this->manager, 'pathCreateChecks', [$path]);
}
public function testPathCreateChecksContainsNoFolder() {
$path = $this->createMock(File::class);
- $this->invokePrivate($this->manager, 'pathCreateChecks', [$path]);
+ self::invokePrivate($this->manager, 'pathCreateChecks', [$path]);
}
public function dataIsSharingDisabledForUser() {
@@ -1528,7 +1529,7 @@ class ManagerTest extends \Test\TestCase {
$exception = false;
try {
- $res = $this->invokePrivate($manager, 'canShare', [$share]);
+ $res = self::invokePrivate($manager, 'canShare', [$share]);
} catch (\Exception $e) {
$exception = true;
}
@@ -2008,6 +2009,12 @@ class ManagerTest extends \Test\TestCase {
}
public function testGetShareByToken() {
+ $this->config
+ ->expects($this->once())
+ ->method('getAppValue')
+ ->with('core', 'shareapi_allow_links', 'yes')
+ ->willReturn('yes');
+
$factory = $this->createMock(IProviderFactory::class);
$manager = new Manager(
@@ -2041,6 +2048,12 @@ class ManagerTest extends \Test\TestCase {
}
public function testGetShareByTokenWithException() {
+ $this->config
+ ->expects($this->once())
+ ->method('getAppValue')
+ ->with('core', 'shareapi_allow_links', 'yes')
+ ->willReturn('yes');
+
$factory = $this->createMock(IProviderFactory::class);
$manager = new Manager(
@@ -2085,6 +2098,12 @@ class ManagerTest extends \Test\TestCase {
* @expectedException \OCP\Share\Exceptions\ShareNotFound
*/
public function testGetShareByTokenExpired() {
+ $this->config
+ ->expects($this->once())
+ ->method('getAppValue')
+ ->with('core', 'shareapi_allow_links', 'yes')
+ ->willReturn('yes');
+
$manager = $this->createManagerMock()
->setMethods(['deleteShare'])
->getMock();
@@ -2107,6 +2126,12 @@ class ManagerTest extends \Test\TestCase {
}
public function testGetShareByTokenNotExpired() {
+ $this->config
+ ->expects($this->once())
+ ->method('getAppValue')
+ ->with('core', 'shareapi_allow_links', 'yes')
+ ->willReturn('yes');
+
$date = new \DateTime();
$date->setTime(0,0,0);
$date->add(new \DateInterval('P2D'));
@@ -2123,12 +2148,33 @@ class ManagerTest extends \Test\TestCase {
$this->assertSame($share, $res);
}
- public function testGetShareByTokenPublicSharingDisabled() {
+ /**
+ * @expectedException \OCP\Share\Exceptions\ShareNotFound
+ */
+ public function testGetShareByTokenWithPublicLinksDisabled() {
+ $this->config
+ ->expects($this->once())
+ ->method('getAppValue')
+ ->with('core', 'shareapi_allow_links', 'yes')
+ ->willReturn('no');
+ $this->manager->getShareByToken('validToken');
+ }
+
+ public function testGetShareByTokenPublicUploadDisabled() {
+ $this->config
+ ->expects($this->at(0))
+ ->method('getAppValue')
+ ->with('core', 'shareapi_allow_links', 'yes')
+ ->willReturn('yes');
+
$share = $this->manager->newShare();
$share->setShareType(\OCP\Share::SHARE_TYPE_LINK)
->setPermissions(\OCP\Constants::PERMISSION_READ | \OCP\Constants::PERMISSION_CREATE | \OCP\Constants::PERMISSION_UPDATE);
- $this->config->method('getAppValue')->will($this->returnValueMap([
+ $this->config
+ ->expects($this->at(1))
+ ->method('getAppValue')
+ ->will($this->returnValueMap([
['core', 'shareapi_allow_public_upload', 'yes', 'no'],
]));