Skip to content

Commit f775920

Browse files
committed
chore: Clean up permission service
Signed-off-by: Julius Härtl <jus@bitgrid.net>
1 parent 09b34fb commit f775920

2 files changed

Lines changed: 27 additions & 66 deletions

File tree

lib/Service/PermissionService.php

Lines changed: 14 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
<?php
2+
3+
declare(strict_types=1);
24
/**
35
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
46
* SPDX-License-Identifier: AGPL-3.0-or-later
@@ -20,57 +22,27 @@
2022
use OCP\Cache\CappedMemoryCache;
2123
use OCP\IConfig;
2224
use OCP\IGroupManager;
23-
use OCP\ILogger;
2425
use OCP\IUserManager;
2526
use OCP\Share\IManager;
27+
use Psr\Log\LoggerInterface;
2628

2729
class PermissionService {
28-
29-
/** @var CirclesService */
30-
private $circlesService;
31-
/** @var BoardMapper */
32-
private $boardMapper;
33-
/** @var AclMapper */
34-
private $aclMapper;
35-
/** @var ILogger */
36-
private $logger;
37-
/** @var IUserManager */
38-
private $userManager;
39-
/** @var IGroupManager */
40-
private $groupManager;
41-
/** @var IConfig */
42-
private $config;
43-
/** @var IManager */
44-
private $shareManager;
45-
/** @var string */
46-
private $userId;
47-
/** @var array */
48-
private $users = [];
30+
private array $users = [];
4931

5032
private CappedMemoryCache $boardCache;
5133
private CappedMemoryCache $permissionCache;
5234

5335
public function __construct(
54-
ILogger $logger,
55-
CirclesService $circlesService,
56-
AclMapper $aclMapper,
57-
BoardMapper $boardMapper,
58-
IUserManager $userManager,
59-
IGroupManager $groupManager,
60-
IManager $shareManager,
61-
IConfig $config,
62-
$userId
36+
private LoggerInterface $logger,
37+
private CirclesService $circlesService,
38+
private AclMapper $aclMapper,
39+
private BoardMapper $boardMapper,
40+
private IUserManager $userManager,
41+
private IGroupManager $groupManager,
42+
private IManager $shareManager,
43+
private IConfig $config,
44+
private ?string $userId
6345
) {
64-
$this->circlesService = $circlesService;
65-
$this->aclMapper = $aclMapper;
66-
$this->boardMapper = $boardMapper;
67-
$this->logger = $logger;
68-
$this->userManager = $userManager;
69-
$this->groupManager = $groupManager;
70-
$this->shareManager = $shareManager;
71-
$this->config = $config;
72-
$this->userId = $userId;
73-
7446
$this->boardCache = new CappedMemoryCache();
7547
$this->permissionCache = new CappedMemoryCache();
7648
}
@@ -99,7 +71,7 @@ public function getPermissions($boardId, ?string $userId = null) {
9971
$owner = false;
10072
$acls = [];
10173
}
102-
74+
10375
$permissions = [
10476
Acl::PERMISSION_READ => $owner || $this->userCan($acls, Acl::PERMISSION_READ, $userId),
10577
Acl::PERMISSION_EDIT => $owner || $this->userCan($acls, Acl::PERMISSION_EDIT, $userId),

tests/unit/Service/PermissionServiceTest.php

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -34,39 +34,28 @@
3434
use OCP\IConfig;
3535
use OCP\IGroup;
3636
use OCP\IGroupManager;
37-
use OCP\ILogger;
3837
use OCP\IRequest;
3938
use OCP\IUser;
4039
use OCP\IUserManager;
4140
use OCP\Share\IManager;
41+
use PHPUnit\Framework\MockObject\MockObject;
42+
use Psr\Log\LoggerInterface;
4243

4344
class PermissionServiceTest extends \Test\TestCase {
44-
45-
/** @var IRequest */
46-
private $request;
47-
private $circlesService;
48-
/** @var PermissionService*/
49-
private $service;
50-
/** @var ILogger */
51-
private $logger;
52-
/** @var AclMapper */
53-
private $aclMapper;
54-
/** @var BoardMapper */
55-
private $boardMapper;
56-
/** @var IUserManager */
57-
private $userManager;
58-
/** @var IGroupManager */
59-
private $groupManager;
60-
/** @var IManager */
61-
private $shareManager;
62-
/** @var IConfig */
63-
private $config;
64-
/** @var string */
65-
private $userId = 'admin';
45+
private IRequest|MockObject $request;
46+
private CirclesService|MockObject $circlesService;
47+
private PermissionService $service;
48+
private LoggerInterface|MockObject $logger;
49+
private AclMapper|MockObject $aclMapper;
50+
private BoardMapper|MockObject $boardMapper;
51+
private IUserManager $userManager;
52+
private IGroupManager|MockObject $groupManager;
53+
private MockObject|IManager $shareManager;
54+
private IConfig|MockObject $config;
6655

6756
public function setUp(): void {
6857
parent::setUp();
69-
$this->logger = $this->createMock(ILogger::class);
58+
$this->logger = $this->createMock(LoggerInterface::class);
7059
$this->request = $this->createMock(IRequest::class);
7160
$this->circlesService = $this->createMock(CirclesService::class);
7261
$this->aclMapper = $this->createMock(AclMapper::class);

0 commit comments

Comments
 (0)