$mountType,
$applicable,
$isPersonal = false) {
- $backends = self::getBackends();
$mountPoint = OC\Files\Filesystem::normalizePath($mountPoint);
if ($mountPoint === '' || $mountPoint === '/' || $mountPoint == '/Shared') {
// can't mount at root or "Shared" folder
return false;
}
-
- if (!isset($backends[$class])) {
- // invalid backend
- return false;
- }
if ($isPersonal) {
// Verify that the mount point applies for the current user
// Prevent non-admin users from mounting local storage
- if ($applicable !== OCP\User::getUser() || strtolower($class) === '\oc\files\storage\local') {
+ if ($applicable != OCP\User::getUser() || $class == '\OC\Files\Storage\Local') {
return false;
}
$mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/');
$this->assertEquals(false, OC_Mount_Config::addMountPoint('/Shared', $storageClass, array(), $mountType, $applicable, $isPersonal));
}
-
- public function testAddMountPointSingleUser() {
- \OC_User::setUserId('test');
- $mountType = 'user';
- $applicable = 'test';
- $isPersonal = true;
- // local
- $this->assertEquals(false, OC_Mount_Config::addMountPoint('/ext', '\OC\Files\storage\local', array(), $mountType, $applicable, $isPersonal));
- // non-local
- $this->assertEquals(true, OC_Mount_Config::addMountPoint('/ext', '\OC\Files\Storage\SFTP', array(), $mountType, $applicable, $isPersonal));
-
- }
-
- public function testAddMountPointUnexistClass() {
- \OC_User::setUserId('test');
- $storageClass = 'Unexist_Storage';
- $mountType = 'user';
- $applicable = 'test';
- $isPersonal = true;
- // local
- // non-local
- $this->assertEquals(false, OC_Mount_Config::addMountPoint('/ext', $storageClass, array(), $mountType, $applicable, $isPersonal));
-
- }
}