diff options
author | Morris Jobke <hey@morrisjobke.de> | 2019-07-10 12:16:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-10 12:16:36 +0200 |
commit | 5c21b29d7f837c2a6f22c32c922a769c1aa254ce (patch) | |
tree | 1029bd7e58244d0e8da8d786755337c64dd143e8 /tests/Core/Controller | |
parent | b120f57975723acaa31161f7f542cae3d43a8e75 (diff) | |
parent | d57540ac8460c746baf65323fa8af6db07a58db7 (diff) | |
download | nextcloud-server-5c21b29d7f837c2a6f22c32c922a769c1aa254ce.tar.gz nextcloud-server-5c21b29d7f837c2a6f22c32c922a769c1aa254ce.zip |
Merge pull request #16308 from nextcloud/fix/undefined-offset-0
Prevent undefined offset 0 in findByUserIdOrMail
Diffstat (limited to 'tests/Core/Controller')
-rw-r--r-- | tests/Core/Controller/LostControllerTest.php | 51 |
1 files changed, 27 insertions, 24 deletions
diff --git a/tests/Core/Controller/LostControllerTest.php b/tests/Core/Controller/LostControllerTest.php index 8635616a9d5..8500819a9ca 100644 --- a/tests/Core/Controller/LostControllerTest.php +++ b/tests/Core/Controller/LostControllerTest.php @@ -821,28 +821,38 @@ class LostControllerTest extends \Test\TestCase { $this->assertEquals($expectedResponse, $response); } - public function testTwoUsersWithSameEmailOneDisabled() { + + /** + * @return array + */ + public function dataTwoUserswithSameEmailOneDisabled(): array { + return [ + ['user1' => true, 'user2' => false], + ['user1' => false, 'user2' => true] + ]; + } + + /** + * @dataProvider dataTwoUserswithSameEmailOneDisabled + * @param bool $userEnabled1 + * @param bool $userEnabled2 + */ + public function testTwoUsersWithSameEmailOneDisabled(bool $userEnabled1, bool $userEnabled2): void { $user1 = $this->createMock(IUser::class); - $user1->expects($this->any()) - ->method('getEMailAddress') + $user1->method('getEMailAddress') ->willReturn('test@example.com'); - $user1->expects($this->any()) - ->method('getUID') + $user1->method('getUID') ->willReturn('User1'); - $user1->expects($this->any()) - ->method('isEnabled') - ->willReturn(true); + $user1->method('isEnabled') + ->willReturn($userEnabled1); $user2 = $this->createMock(IUser::class); - $user2->expects($this->any()) - ->method('getEMailAddress') + $user2->method('getEMailAddress') ->willReturn('test@example.com'); - $user2->expects($this->any()) - ->method('getUID') + $user2->method('getUID') ->willReturn('User2'); - $user2->expects($this->any()) - ->method('isEnabled') - ->willReturn(false); + $user2->method('isEnabled') + ->willReturn($userEnabled2); $this->userManager ->method('get') @@ -852,14 +862,7 @@ class LostControllerTest extends \Test\TestCase { ->method('getByEmail') ->willReturn([$user1, $user2]); - // request password reset for test@example.com - $response = $this->lostController->email('test@example.com'); - - $expectedResponse = new JSONResponse([ - 'status' => 'success' - ]); - $expectedResponse->throttle(); - - $this->assertEquals($expectedResponse, $response); + $result = self::invokePrivate($this->lostController, 'findUserByIdOrMail', ['test@example.com']); + $this->assertInstanceOf(IUser::class, $result); } } |