aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib
diff options
context:
space:
mode:
authorPytal <24800714+Pytal@users.noreply.github.com>2022-06-08 16:27:31 -0700
committerGitHub <noreply@github.com>2022-06-08 16:27:31 -0700
commite76d8bb901a50b68e94e39a9f1353a8d06fc37a5 (patch)
treed87acb6462dc93a3cc2d9fccd9636effbf149b68 /tests/lib
parentde6b0dadbe5190325d0507ba1438880d772d8a8a (diff)
parent7c50dd888edb4d4a3ab4f132c628070fd3b8b8ac (diff)
downloadnextcloud-server-e76d8bb901a50b68e94e39a9f1353a8d06fc37a5.tar.gz
nextcloud-server-e76d8bb901a50b68e94e39a9f1353a8d06fc37a5.zip
Merge pull request #32697 from nextcloud/fix/get-avatar-authz
Diffstat (limited to 'tests/lib')
-rw-r--r--tests/lib/Avatar/AvatarManagerTest.php33
1 files changed, 28 insertions, 5 deletions
diff --git a/tests/lib/Avatar/AvatarManagerTest.php b/tests/lib/Avatar/AvatarManagerTest.php
index ce6981a2a21..ae9c0e1671f 100644
--- a/tests/lib/Avatar/AvatarManagerTest.php
+++ b/tests/lib/Avatar/AvatarManagerTest.php
@@ -161,6 +161,10 @@ class AvatarManagerTest extends \Test\TestCase {
->method('getUID')
->willReturn('valid-user');
+ $this->userSession->expects($this->once())
+ ->method('getUser')
+ ->willReturn($user);
+
$folder = $this->createMock(ISimpleFolder::class);
$this->appData
->expects($this->once())
@@ -168,26 +172,45 @@ class AvatarManagerTest extends \Test\TestCase {
->with('valid-user')
->willReturn($folder);
+ $account = $this->createMock(IAccount::class);
+ $this->accountManager->expects($this->once())
+ ->method('getAccount')
+ ->with($user)
+ ->willReturn($account);
+
+ $property = $this->createMock(IAccountProperty::class);
+ $account->expects($this->once())
+ ->method('getProperty')
+ ->with(IAccountManager::PROPERTY_AVATAR)
+ ->willReturn($property);
+
+ $property->expects($this->once())
+ ->method('getScope')
+ ->willReturn(IAccountManager::SCOPE_FEDERATED);
+
$expected = new UserAvatar($folder, $this->l10n, $user, $this->logger, $this->config);
$this->assertEquals($expected, $this->avatarManager->getAvatar('vaLid-USER'));
}
- public function knownUnknownProvider() {
+ public function dataGetAvatarScopes() {
return [
- [IAccountManager::SCOPE_LOCAL, false, false, false],
- [IAccountManager::SCOPE_LOCAL, true, false, false],
-
// public access cannot see real avatar
[IAccountManager::SCOPE_PRIVATE, true, false, true],
// unknown users cannot see real avatar
[IAccountManager::SCOPE_PRIVATE, false, false, true],
// known users can see real avatar
[IAccountManager::SCOPE_PRIVATE, false, true, false],
+ [IAccountManager::SCOPE_LOCAL, false, false, false],
+ [IAccountManager::SCOPE_LOCAL, true, false, false],
+ [IAccountManager::SCOPE_FEDERATED, false, false, false],
+ [IAccountManager::SCOPE_FEDERATED, true, false, false],
+ [IAccountManager::SCOPE_PUBLISHED, false, false, false],
+ [IAccountManager::SCOPE_PUBLISHED, true, false, false],
];
}
/**
- * @dataProvider knownUnknownProvider
+ * @dataProvider dataGetAvatarScopes
*/
public function testGetAvatarScopes($avatarScope, $isPublicCall, $isKnownUser, $expectedPlaceholder) {
if ($isPublicCall) {