Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@users.noreply.github.com>2021-03-18 18:20:37 +0300
committerGitHub <noreply@github.com>2021-03-18 18:20:37 +0300
commit4e617bedda28785be1400ecb98ea8eae441b7906 (patch)
treee01d63f5fd5e8849d6c63777d2aa174b5be57e0a /tests
parent939db1f46619d7236e1126ca8e519b03ddc29aa1 (diff)
parentff64514bea4c20035198a1f9252dcd0e32139f72 (diff)
Merge pull request #26123 from nextcloud/backport/26004/stable20
[stable20] Allow overwriting isAuthenticated
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/AppFramework/Controller/PublicShareControllerTest.php54
1 files changed, 35 insertions, 19 deletions
diff --git a/tests/lib/AppFramework/Controller/PublicShareControllerTest.php b/tests/lib/AppFramework/Controller/PublicShareControllerTest.php
index f2a60a574af..deffedcec05 100644
--- a/tests/lib/AppFramework/Controller/PublicShareControllerTest.php
+++ b/tests/lib/AppFramework/Controller/PublicShareControllerTest.php
@@ -27,6 +27,34 @@ use OCP\AppFramework\PublicShareController;
use OCP\IRequest;
use OCP\ISession;
+class TestController extends PublicShareController {
+
+ /** @var string */
+ private $hash;
+
+ /** @var bool */
+ private $isProtected;
+
+ public function __construct(string $appName, IRequest $request, ISession $session, string $hash, bool $isProtected) {
+ parent::__construct($appName, $request, $session);
+
+ $this->hash = $hash;
+ $this->isProtected = $isProtected;
+ }
+
+ protected function getPasswordHash(): string {
+ return $this->hash;
+ }
+
+ public function isValidToken(): bool {
+ return false;
+ }
+
+ protected function isPasswordProtected(): bool {
+ return $this->isProtected;
+ }
+}
+
class PublicShareControllerTest extends \Test\TestCase {
/** @var IRequest|\PHPUnit\Framework\MockObject\MockObject */
@@ -34,27 +62,18 @@ class PublicShareControllerTest extends \Test\TestCase {
/** @var ISession|\PHPUnit\Framework\MockObject\MockObject */
private $session;
- /** @var PublicShareController|\PHPUnit\Framework\MockObject\MockObject */
- private $controller;
-
-
protected function setUp(): void {
parent::setUp();
$this->request = $this->createMock(IRequest::class);
$this->session = $this->createMock(ISession::class);
-
- $this->controller = $this->getMockBuilder(PublicShareController::class)
- ->setConstructorArgs([
- 'app',
- $this->request,
- $this->session
- ])->getMock();
}
public function testGetToken() {
- $this->controller->setToken('test');
- $this->assertEquals('test', $this->controller->getToken());
+ $controller = new TestController('app', $this->request, $this->session, 'hash', false);
+
+ $controller->setToken('test');
+ $this->assertEquals('test', $controller->getToken());
}
public function dataIsAuthenticated() {
@@ -74,8 +93,7 @@ class PublicShareControllerTest extends \Test\TestCase {
* @dataProvider dataIsAuthenticated
*/
public function testIsAuthenticatedNotPasswordProtected(bool $protected, string $token1, string $token2, string $hash1, string $hash2, bool $expected) {
- $this->controller->method('isPasswordProtected')
- ->willReturn($protected);
+ $controller = new TestController('app', $this->request, $this->session, $hash2, $protected);
$this->session->method('get')
->willReturnMap([
@@ -83,10 +101,8 @@ class PublicShareControllerTest extends \Test\TestCase {
['public_link_authenticated_password_hash', $hash1],
]);
- $this->controller->setToken($token2);
- $this->controller->method('getPasswordHash')
- ->willReturn($hash2);
+ $controller->setToken($token2);
- $this->assertEquals($expected, $this->controller->isAuthenticated());
+ $this->assertEquals($expected, $controller->isAuthenticated());
}
}