public function testGetShareByTokenPublicSharingDisabled() { $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([['core', 'shareapi_allow_public_upload', 'yes', 'no']])); $this->defaultProvider->expects($this->once())->method('getShareByToken')->willReturn('validToken')->willReturn($share); $res = $this->manager->getShareByToken('validToken'); $this->assertSame(\OCP\Constants::PERMISSION_READ, $res->getPermissions()); }
/** * @dataProvider dataCanShare * * @param bool $expected * @param string $sharingEnabled * @param bool $disabledForUser */ public function testCanShare($expected, $sharingEnabled, $disabledForUser) { $this->config->method('getAppValue')->will($this->returnValueMap([['core', 'shareapi_enabled', 'yes', $sharingEnabled]])); $manager = $this->createManagerMock()->setMethods(['sharingDisabledForUser'])->getMock(); $manager->method('sharingDisabledForUser')->willReturn($disabledForUser); $user = $this->getMock('\\OCP\\IUser'); $share = $this->manager->newShare(); $share->setSharedBy($user); $res = $this->invokePrivate($manager, 'canShare', [$share]); $this->assertEquals($expected, $res); }
/** * @dataProvider dataCanShare * * @param bool $expected * @param string $sharingEnabled * @param bool $disabledForUser */ public function testCanShare($expected, $sharingEnabled, $disabledForUser) { $this->config->method('getAppValue')->will($this->returnValueMap([['core', 'shareapi_enabled', 'yes', $sharingEnabled]])); $manager = $this->getMockBuilder('\\OC\\Share20\\Manager')->setConstructorArgs([$this->logger, $this->config, $this->defaultProvider, $this->secureRandom, $this->hasher, $this->mountManager, $this->groupManager, $this->l])->setMethods(['isSharingDisabledForUser'])->getMock(); $manager->method('isSharingDisabledForUser')->willReturn($disabledForUser); $user = $this->getMock('\\OCP\\IUser'); $share = new \OC\Share20\Share(); $share->setSharedBy($user); $res = $this->invokePrivate($manager, 'canShare', [$share]); $this->assertEquals($expected, $res); }
/** * @dataProvider externalSharesChecksDataProvider */ public function testBeforeControllerWithExternalShareControllerWithSharingEnabled($annotations, $config, $noException) { $this->appManager->expects($this->once())->method('isEnabledForUser')->with('files_sharing')->will($this->returnValue(true)); $this->reflector->expects($this->atLeastOnce())->method('hasAnnotation')->will($this->returnValueMap($annotations)); $this->config->method('getAppValue')->will($this->returnValueMap($config)); $controller = $this->getMockBuilder('\\OCA\\Files_Sharing\\Controllers\\ExternalSharesController')->disableOriginalConstructor()->getMock(); $exceptionThrown = false; try { $this->sharingCheckMiddleware->beforeController($controller, 'myMethod'); } catch (\OCA\Files_Sharing\Exceptions\S2SException $exception) { $exceptionThrown = true; } $this->assertNotEquals($noException, $exceptionThrown); }
/** * @dataProvider dataCanShare * * @param bool $expected * @param string $sharingEnabled * @param bool $disabledForUser */ public function testCanShare($expected, $sharingEnabled, $disabledForUser) { $this->config->method('getAppValue')->will($this->returnValueMap([['core', 'shareapi_enabled', 'yes', $sharingEnabled]])); $manager = $this->createManagerMock()->setMethods(['sharingDisabledForUser'])->getMock(); $manager->method('sharingDisabledForUser')->with('user')->willReturn($disabledForUser); $share = $this->manager->newShare(); $share->setSharedBy('user'); $exception = false; try { $res = $this->invokePrivate($manager, 'canShare', [$share]); } catch (\Exception $e) { $exception = true; } $this->assertEquals($expected, !$exception); }