diff options
author | Joas Schilling <213943+nickvergessen@users.noreply.github.com> | 2022-05-16 11:18:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-16 11:18:22 +0200 |
commit | 6084d691b02764f32641aa41ebeacea5a0147b75 (patch) | |
tree | 192f50c72d16ec85d8a8da8f9a917cbc2bc1b16c /tests/Core | |
parent | ad405e93767cfaf0ba34011010bb26dc4c05f60a (diff) | |
parent | 40b9769d4d33f9e56945854c032e01c421f1aca8 (diff) | |
download | nextcloud-server-6084d691b02764f32641aa41ebeacea5a0147b75.tar.gz nextcloud-server-6084d691b02764f32641aa41ebeacea5a0147b75.zip |
Merge pull request #32375 from nextcloud/bugfix/noid/show-user-account-on-grant-loginflow-step
Show user account on grant loginflow step
Diffstat (limited to 'tests/Core')
-rw-r--r-- | tests/Core/Controller/ClientFlowLoginControllerTest.php | 69 | ||||
-rw-r--r-- | tests/Core/Controller/ClientFlowLoginV2ControllerTest.php | 14 |
2 files changed, 50 insertions, 33 deletions
diff --git a/tests/Core/Controller/ClientFlowLoginControllerTest.php b/tests/Core/Controller/ClientFlowLoginControllerTest.php index dae42474f41..dfd3e629dcd 100644 --- a/tests/Core/Controller/ClientFlowLoginControllerTest.php +++ b/tests/Core/Controller/ClientFlowLoginControllerTest.php @@ -134,15 +134,15 @@ class ClientFlowLoginControllerTest extends TestCase { public function testShowAuthPickerPageWithOcsHeader() { $this->request - ->expects($this->at(0)) ->method('getHeader') - ->with('USER_AGENT') - ->willReturn('Mac OS X Sync Client'); - $this->request - ->expects($this->at(1)) - ->method('getHeader') - ->with('OCS-APIREQUEST') - ->willReturn('true'); + ->withConsecutive( + ['USER_AGENT'], + ['OCS-APIREQUEST'] + ) + ->willReturnMap([ + ['USER_AGENT', 'Mac OS X Sync Client'], + ['OCS-APIREQUEST', 'true'], + ]); $this->random ->expects($this->once()) ->method('generate') @@ -196,10 +196,15 @@ class ClientFlowLoginControllerTest extends TestCase { public function testShowAuthPickerPageWithOauth() { $this->request - ->expects($this->at(0)) ->method('getHeader') - ->with('USER_AGENT') - ->willReturn('Mac OS X Sync Client'); + ->withConsecutive( + ['USER_AGENT'], + ['OCS-APIREQUEST'] + ) + ->willReturnMap([ + ['USER_AGENT', 'Mac OS X Sync Client'], + ['OCS-APIREQUEST', 'false'], + ]); $client = new Client(); $client->setName('My external service'); $client->setRedirectUri('https://example.com/redirect.php'); @@ -413,23 +418,21 @@ class ClientFlowLoginControllerTest extends TestCase { */ public function testGeneratePasswordWithPasswordForOauthClient($redirectUri, $redirectUrl) { $this->session - ->expects($this->at(0)) ->method('get') - ->with('client.flow.state.token') - ->willReturn('MyStateToken'); - $this->session - ->expects($this->at(1)) - ->method('remove') - ->with('client.flow.state.token'); - $this->session - ->expects($this->at(3)) - ->method('get') - ->with('oauth.state') - ->willReturn('MyOauthState'); + ->withConsecutive( + ['client.flow.state.token'], + ['oauth.state'] + ) + ->willReturnMap([ + ['client.flow.state.token', 'MyStateToken'], + ['oauth.state', 'MyOauthState'], + ]); $this->session - ->expects($this->at(4)) ->method('remove') - ->with('oauth.state'); + ->withConsecutive( + ['client.flow.state.token'], + ['oauth.state'] + ); $this->session ->expects($this->once()) ->method('getId') @@ -450,15 +453,15 @@ class ClientFlowLoginControllerTest extends TestCase { ->with($myToken, 'SessionId') ->willReturn('MyPassword'); $this->random - ->expects($this->at(0)) ->method('generate') - ->with(72) - ->willReturn('MyGeneratedToken'); - $this->random - ->expects($this->at(1)) - ->method('generate') - ->with(128) - ->willReturn('MyAccessCode'); + ->withConsecutive( + [72], + [128] + ) + ->willReturnMap([ + [72, ISecureRandom::CHAR_UPPER.ISecureRandom::CHAR_LOWER.ISecureRandom::CHAR_DIGITS, 'MyGeneratedToken'], + [128, ISecureRandom::CHAR_UPPER.ISecureRandom::CHAR_LOWER.ISecureRandom::CHAR_DIGITS, 'MyAccessCode'], + ]); $user = $this->createMock(IUser::class); $user ->expects($this->once()) diff --git a/tests/Core/Controller/ClientFlowLoginV2ControllerTest.php b/tests/Core/Controller/ClientFlowLoginV2ControllerTest.php index 1e35dc71c3f..53d5f392ac6 100644 --- a/tests/Core/Controller/ClientFlowLoginV2ControllerTest.php +++ b/tests/Core/Controller/ClientFlowLoginV2ControllerTest.php @@ -36,6 +36,8 @@ use OCP\IL10N; use OCP\IRequest; use OCP\ISession; use OCP\IURLGenerator; +use OCP\IUser; +use OCP\IUserSession; use OCP\Security\ISecureRandom; use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; @@ -50,6 +52,8 @@ class ClientFlowLoginV2ControllerTest extends TestCase { private $urlGenerator; /** @var ISession|MockObject */ private $session; + /** @var IUserSession|MockObject */ + private $userSession; /** @var ISecureRandom|MockObject */ private $random; /** @var Defaults|MockObject */ @@ -66,6 +70,7 @@ class ClientFlowLoginV2ControllerTest extends TestCase { $this->loginFlowV2Service = $this->createMock(LoginFlowV2Service::class); $this->urlGenerator = $this->createMock(IURLGenerator::class); $this->session = $this->createMock(ISession::class); + $this->userSession = $this->createMock(IUserSession::class); $this->random = $this->createMock(ISecureRandom::class); $this->defaults = $this->createMock(Defaults::class); $this->l = $this->createMock(IL10N::class); @@ -75,6 +80,7 @@ class ClientFlowLoginV2ControllerTest extends TestCase { $this->loginFlowV2Service, $this->urlGenerator, $this->session, + $this->userSession, $this->random, $this->defaults, 'user', @@ -224,6 +230,14 @@ class ClientFlowLoginV2ControllerTest extends TestCase { return null; }); + $user = $this->createMock(IUser::class); + $user->method('getUID') + ->willReturn('uid'); + $user->method('getDisplayName') + ->willReturn('display name'); + $this->userSession->method('getUser') + ->willReturn($user); + $flow = new LoginFlowV2(); $this->loginFlowV2Service->method('getByLoginToken') ->with('loginToken') |