Browse Source

Merge pull request #1888 from nextcloud/downstream-26361

introduce callForSeenUsers and countSeenUsers
tags/v11.0RC2
Joas Schilling 7 years ago
parent
commit
f2cae3cee1

+ 2
- 2
apps/files_trashbin/lib/BackgroundJob/ExpireTrash.php View File

@@ -77,9 +77,9 @@ class ExpireTrash extends \OC\BackgroundJob\TimedJob {
return;
}

$this->userManager->callForAllUsers(function(IUser $user) {
$this->userManager->callForSeenUsers(function(IUser $user) {
$uid = $user->getUID();
if ($user->getLastLogin() === 0 || !$this->setupFS($uid)) {
if (!$this->setupFS($uid)) {
return;
}
$dirContent = Helper::getTrashFiles('/', $uid, 'mtime');

+ 2
- 2
apps/files_trashbin/lib/Command/ExpireTrash.php View File

@@ -89,7 +89,7 @@ class ExpireTrash extends Command {
} else {
$p = new ProgressBar($output);
$p->start();
$this->userManager->callForAllUsers(function(IUser $user) use ($p) {
$this->userManager->callForSeenUsers(function(IUser $user) use ($p) {
$p->advance();
$this->expireTrashForUser($user);
});
@@ -100,7 +100,7 @@ class ExpireTrash extends Command {

function expireTrashForUser(IUser $user) {
$uid = $user->getUID();
if ($user->getLastLogin() === 0 || !$this->setupFS($uid)) {
if (!$this->setupFS($uid)) {
return;
}
$dirContent = Helper::getTrashFiles('/', $uid, 'mtime');

+ 2
- 2
apps/files_versions/lib/BackgroundJob/ExpireVersions.php View File

@@ -67,9 +67,9 @@ class ExpireVersions extends \OC\BackgroundJob\TimedJob {
return;
}

$this->userManager->callForAllUsers(function(IUser $user) {
$this->userManager->callForSeenUsers(function(IUser $user) {
$uid = $user->getUID();
if ($user->getLastLogin() === 0 || !$this->setupFS($uid)) {
if (!$this->setupFS($uid)) {
return;
}
Storage::expireOlderThanMaxForUser($uid);

+ 2
- 2
apps/files_versions/lib/Command/ExpireVersions.php View File

@@ -88,7 +88,7 @@ class ExpireVersions extends Command {
} else {
$p = new ProgressBar($output);
$p->start();
$this->userManager->callForAllUsers(function(IUser $user) use ($p) {
$this->userManager->callForSeenUsers(function(IUser $user) use ($p) {
$p->advance();
$this->expireVersionsForUser($user);
});
@@ -99,7 +99,7 @@ class ExpireVersions extends Command {

function expireVersionsForUser(IUser $user) {
$uid = $user->getUID();
if ($user->getLastLogin() === 0 || !$this->setupFS($uid)) {
if (!$this->setupFS($uid)) {
return;
}
Storage::expireOlderThanMaxForUser($uid);

+ 22
- 24
lib/private/Repair/NC11/MoveAvatarBackgroundJob.php View File

@@ -64,35 +64,33 @@ class MoveAvatarsBackgroundJob extends QueuedJob {

private function moveAvatars() {
$counter = 0;
$this->userManager->callForAllUsers(function (IUser $user) use ($counter) {
if ($user->getLastLogin() !== 0) {
$uid = $user->getUID();
$this->userManager->callForSeenUsers(function (IUser $user) use ($counter) {
$uid = $user->getUID();

\OC\Files\Filesystem::initMountPoints($uid);
/** @var Folder $userFolder */
$userFolder = $this->rootFolder->get($uid);
\OC\Files\Filesystem::initMountPoints($uid);
/** @var Folder $userFolder */
$userFolder = $this->rootFolder->get($uid);

try {
$userData = $this->appData->getFolder($uid);
} catch (NotFoundException $e) {
$userData = $this->appData->newFolder($uid);
}
try {
$userData = $this->appData->getFolder($uid);
} catch (NotFoundException $e) {
$userData = $this->appData->newFolder($uid);
}


$regex = '/^avatar\.([0-9]+\.)?(jpg|png)$/';
$avatars = $userFolder->getDirectoryListing();
$regex = '/^avatar\.([0-9]+\.)?(jpg|png)$/';
$avatars = $userFolder->getDirectoryListing();

foreach ($avatars as $avatar) {
/** @var File $avatar */
if (preg_match($regex, $avatar->getName())) {
/*
* This is not the most effective but it is the most abstract way
* to handle this. Avatars should be small anyways.
*/
$newAvatar = $userData->newFile($avatar->getName());
$newAvatar->putContent($avatar->getContent());
$avatar->delete();
}
foreach ($avatars as $avatar) {
/** @var File $avatar */
if (preg_match($regex, $avatar->getName())) {
/*
* This is not the most effective but it is the most abstract way
* to handle this. Avatars should be small anyways.
*/
$newAvatar = $userData->newFile($avatar->getName());
$newAvatar->putContent($avatar->getContent());
$avatar->delete();
}
}
$counter++;

+ 2
- 19
lib/private/Repair/RemoveRootShares.php View File

@@ -96,30 +96,13 @@ class RemoveRootShares implements IRepairStep {
$output->advance();
};

$userCount = $this->countUsers();
$output->startProgress($userCount);
$output->startProgress($this->userManager->countSeenUsers());

$this->userManager->callForAllUsers($function);
$this->userManager->callForSeenUsers($function);

$output->finishProgress();
}

/**
* Count all the users
*
* @return int
*/
private function countUsers() {
$allCount = $this->userManager->countUsers();

$totalCount = 0;
foreach ($allCount as $backend => $count) {
$totalCount += $count;
}

return $totalCount;
}

/**
* Verify if this repair steps is required
* It *should* not be necessary in most cases and it can be very

+ 1
- 18
lib/private/Repair/RepairUnmergedShares.php View File

@@ -335,22 +335,6 @@ class RepairUnmergedShares implements IRepairStep {
}
}

/**
* Count all the users
*
* @return int
*/
private function countUsers() {
$allCount = $this->userManager->countUsers();

$totalCount = 0;
foreach ($allCount as $backend => $count) {
$totalCount += $count;
}

return $totalCount;
}

public function run(IOutput $output) {
$ocVersionFromBeforeUpdate = $this->config->getSystemValue('version', '0.0.0');
if (version_compare($ocVersionFromBeforeUpdate, '9.1.0.16', '<')) {
@@ -363,8 +347,7 @@ class RepairUnmergedShares implements IRepairStep {

$this->buildPreparedQueries();

$userCount = $this->countUsers();
$output->startProgress($userCount);
$output->startProgress($this->userManager->countUsers());

$this->userManager->callForAllUsers($function);


+ 117
- 19
lib/private/User/Manager.php View File

@@ -72,7 +72,7 @@ class Manager extends PublicEmitter implements IUserManager {
/**
* @param \OCP\IConfig $config
*/
public function __construct(IConfig $config = null) {
public function __construct(IConfig $config) {
$this->config = $config;
$cachedUsers = &$this->cachedUsers;
$this->listen('\OC\User', 'postDelete', function ($user) use (&$cachedUsers) {
@@ -314,10 +314,16 @@ class Manager extends PublicEmitter implements IUserManager {
/**
* returns how many users per backend exist (if supported by backend)
*
* @return array an array of backend class as key and count number as value
* @param boolean $hasLoggedIn when true only users that have a lastLogin
* entry in the preferences table will be affected
* @return array|int an array of backend class as key and count number as value
* if $hasLoggedIn is true only an int is returned
*/
public function countUsers() {
$userCountStatistics = array();
public function countUsers($hasLoggedIn = false) {
if ($hasLoggedIn) {
return $this->countSeenUsers();
}
$userCountStatistics = [];
foreach ($this->backends as $backend) {
if ($backend->implementsActions(Backend::COUNT_USERS)) {
$backendUsers = $backend->countUsers();
@@ -344,27 +350,119 @@ class Manager extends PublicEmitter implements IUserManager {
*
* @param \Closure $callback
* @param string $search
* @param boolean $onlySeen when true only users that have a lastLogin entry
* in the preferences table will be affected
* @since 9.0.0
*/
public function callForAllUsers(\Closure $callback, $search = '') {
foreach($this->getBackends() as $backend) {
$limit = 500;
$offset = 0;
do {
$users = $backend->getUsers($search, $limit, $offset);
foreach ($users as $uid) {
if (!$backend->userExists($uid)) {
continue;
public function callForAllUsers(\Closure $callback, $search = '', $onlySeen = false) {
if ($onlySeen) {
$this->callForSeenUsers($callback);
} else {
foreach ($this->getBackends() as $backend) {
$limit = 500;
$offset = 0;
do {
$users = $backend->getUsers($search, $limit, $offset);
foreach ($users as $uid) {
if (!$backend->userExists($uid)) {
continue;
}
$user = $this->getUserObject($uid, $backend, false);
$return = $callback($user);
if ($return === false) {
break;
}
}
$user = $this->getUserObject($uid, $backend, false);
$return = $callback($user);
if ($return === false) {
break;
$offset += $limit;
} while (count($users) >= $limit);
}
}
}

/**
* returns how many users have logged in once
*
* @return int
* @since 9.2.0
*/
public function countSeenUsers() {
$queryBuilder = \OC::$server->getDatabaseConnection()->getQueryBuilder();
$queryBuilder->select($queryBuilder->createFunction('COUNT(*)'))
->from('preferences')
->where($queryBuilder->expr()->eq('appid', $queryBuilder->createNamedParameter('login')))
->andWhere($queryBuilder->expr()->eq('configkey', $queryBuilder->createNamedParameter('lastLogin')))
->andWhere($queryBuilder->expr()->isNotNull('configvalue'));

$query = $queryBuilder->execute();

$result = (int)$query->fetchColumn();
$query->closeCursor();

return $result;
}

/**
* @param \Closure $callback
* @since 9.2.0
*/
public function callForSeenUsers(\Closure $callback) {
$limit = 1000;
$offset = 0;
do {
$userIds = $this->getSeenUserIds($limit, $offset);
$offset += $limit;
foreach ($userIds as $userId) {
foreach ($this->backends as $backend) {
if ($backend->userExists($userId)) {
$user = $this->getUserObject($userId, $backend, false);
$return = $callback($user);
if ($return === false) {
return;
}
}
}
$offset += $limit;
} while (count($users) >= $limit);
}
} while (count($userIds) >= $limit);
}

/**
* Getting all userIds that have a listLogin value requires checking the
* value in php because on oracle you cannot use a clob in a where clause,
* preventing us from doing a not null or length(value) > 0 check.
*
* @param int $limit
* @param int $offset
* @return string[] with user ids
*/
private function getSeenUserIds($limit = null, $offset = null) {
$queryBuilder = \OC::$server->getDatabaseConnection()->getQueryBuilder();
$queryBuilder->select(['userid'])
->from('preferences')
->where($queryBuilder->expr()->eq(
'appid', $queryBuilder->createNamedParameter('login'))
)
->andWhere($queryBuilder->expr()->eq(
'configkey', $queryBuilder->createNamedParameter('lastLogin'))
)
->andWhere($queryBuilder->expr()->isNotNull('configvalue')
);

if ($limit !== null) {
$queryBuilder->setMaxResults($limit);
}
if ($offset !== null) {
$queryBuilder->setFirstResult($offset);
}
$query = $queryBuilder->execute();
$result = [];

while ($row = $query->fetch()) {
$result[] = $row['userid'];
}

$query->closeCursor();

return $result;
}

/**

+ 15
- 1
lib/public/IUserManager.php View File

@@ -142,7 +142,21 @@ interface IUserManager {
* @param string $search
* @since 9.0.0
*/
public function callForAllUsers (\Closure $callback, $search = '');
public function callForAllUsers(\Closure $callback, $search = '');

/**
* returns how many users have logged in once
*
* @return int
* @since 9.2.0
*/
public function countSeenUsers();

/**
* @param \Closure $callback
* @since 9.2.0
*/
public function callForSeenUsers(\Closure $callback);

/**
* @param string $email

+ 2
- 1
tests/lib/Files/Config/UserMountCacheTest.php View File

@@ -13,6 +13,7 @@ use OC\Files\Mount\MountPoint;
use OC\Log;
use OC\User\Manager;
use OCP\Files\Config\ICachedMountInfo;
use OCP\IConfig;
use OCP\IDBConnection;
use OCP\IUserManager;
use Test\TestCase;
@@ -42,7 +43,7 @@ class UserMountCacheTest extends TestCase {
public function setUp() {
$this->fileIds = [];
$this->connection = \OC::$server->getDatabaseConnection();
$this->userManager = new Manager(null);
$this->userManager = new Manager($this->createMock(IConfig::class));
$userBackend = new Dummy();
$userBackend->createUser('u1', '');
$userBackend->createUser('u2', '');

+ 3
- 3
tests/lib/Files/Storage/Wrapper/EncryptionTest.php View File

@@ -121,7 +121,7 @@ class EncryptionTest extends Storage {

$this->util = $this->getMockBuilder('\OC\Encryption\Util')
->setMethods(['getUidAndFilename', 'isFile', 'isExcluded'])
->setConstructorArgs([new View(), new Manager(), $this->groupManager, $this->config, $this->arrayCache])
->setConstructorArgs([new View(), new Manager($this->config), $this->groupManager, $this->config, $this->arrayCache])
->getMock();
$this->util->expects($this->any())
->method('getUidAndFilename')
@@ -547,7 +547,7 @@ class EncryptionTest extends Storage {
->setConstructorArgs(
[
new View(),
new Manager(),
new Manager($this->config),
$this->groupManager,
$this->config,
$this->arrayCache
@@ -612,7 +612,7 @@ class EncryptionTest extends Storage {
->disableOriginalConstructor()->getMock();

$util = $this->getMockBuilder('\OC\Encryption\Util')
->setConstructorArgs([new View(), new Manager(), $this->groupManager, $this->config, $this->arrayCache])
->setConstructorArgs([new View(), new Manager($this->config), $this->groupManager, $this->config, $this->arrayCache])
->getMock();

$cache = $this->getMockBuilder('\OC\Files\Cache\Cache')

+ 1
- 1
tests/lib/Files/Stream/EncryptionTest.php View File

@@ -43,7 +43,7 @@ class EncryptionTest extends \Test\TestCase {
$file->expects($this->any())->method('getAccessList')->willReturn([]);
$util = $this->getMockBuilder('\OC\Encryption\Util')
->setMethods(['getUidAndFilename'])
->setConstructorArgs([new View(), new \OC\User\Manager(), $groupManager, $config, $arrayCache])
->setConstructorArgs([new View(), new \OC\User\Manager($config), $groupManager, $config, $arrayCache])
->getMock();
$util->expects($this->any())
->method('getUidAndFilename')

+ 3
- 0
tests/lib/Repair/RemoveRootSharesTest.php View File

@@ -106,6 +106,7 @@ class RemoveRootSharesTest extends \Test\TestCase {
$user = $this->userManager->createUser('test', 'test');
$userFolder = $this->rootFolder->getUserFolder('test');
$fileId = $userFolder->getId();
$user->updateLastLoginTimestamp();

//Now insert cyclic share
$qb = $this->connection->getQueryBuilder();
@@ -134,6 +135,7 @@ class RemoveRootSharesTest extends \Test\TestCase {
$user1 = $this->userManager->createUser('test1', 'test1');
$userFolder = $this->rootFolder->getUserFolder('test1');
$fileId = $userFolder->getId();
$user1->updateLastLoginTimestamp();

//Now insert cyclic share
$qb = $this->connection->getQueryBuilder();
@@ -156,6 +158,7 @@ class RemoveRootSharesTest extends \Test\TestCase {
$userFolder = $this->rootFolder->getUserFolder('test2');
$folder = $userFolder->newFolder('foo');
$fileId = $folder->getId();
$user2->updateLastLoginTimestamp();

//Now insert cyclic share
$qb = $this->connection->getQueryBuilder();

+ 94
- 21
tests/lib/User/ManagerTest.php View File

@@ -9,6 +9,9 @@

namespace Test\User;
use OC\User\Database;
use OCP\IConfig;
use OCP\IUser;
use Test\TestCase;

/**
* Class ManagerTest
@@ -17,10 +20,20 @@ use OC\User\Database;
*
* @package Test\User
*/
class ManagerTest extends \Test\TestCase {
class ManagerTest extends TestCase {

/** @var IConfig */
private $config;

public function setUp() {
parent::setUp();

$this->config = $this->createMock(IConfig::class);
}

public function testGetBackends() {
$userDummyBackend = $this->createMock(\Test\Util\User\Dummy::class);
$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($userDummyBackend);
$this->assertEquals([$userDummyBackend], $manager->getBackends());
$dummyDatabaseBackend = $this->createMock(Database::class);
@@ -39,7 +52,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(true));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$this->assertTrue($manager->userExists('foo'));
@@ -55,14 +68,14 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(false));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$this->assertFalse($manager->userExists('foo'));
}

public function testUserExistsNoBackends() {
$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);

$this->assertFalse($manager->userExists('foo'));
}
@@ -86,7 +99,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(true));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);

@@ -110,7 +123,7 @@ class ManagerTest extends \Test\TestCase {
$backend2->expects($this->never())
->method('userExists');

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);

@@ -137,7 +150,7 @@ class ManagerTest extends \Test\TestCase {
}
}));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$user = $manager->checkPassword('foo', 'bar');
@@ -156,7 +169,7 @@ class ManagerTest extends \Test\TestCase {
->method('implementsActions')
->will($this->returnValue(false));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$this->assertFalse($manager->checkPassword('foo', 'bar'));
@@ -172,7 +185,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(true));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$this->assertEquals('foo', $manager->get('foo')->getUID());
@@ -188,7 +201,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(false));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$this->assertEquals(null, $manager->get('foo'));
@@ -204,7 +217,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('fo'))
->will($this->returnValue(array('foo', 'afoo')));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$result = $manager->search('fo');
@@ -232,7 +245,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('fo'), $this->equalTo(3), $this->equalTo(1))
->will($this->returnValue(array('foo3')));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);

@@ -261,7 +274,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(false));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$user = $manager->createUser('foo', 'bar');
@@ -288,7 +301,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(true));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$manager->createUser('foo', 'bar');
@@ -311,14 +324,14 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(false));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$this->assertFalse($manager->createUser('foo', 'bar'));
}

public function testCreateUserNoBackends() {
$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);

$this->assertFalse($manager->createUser('foo', 'bar'));
}
@@ -359,7 +372,7 @@ class ManagerTest extends \Test\TestCase {
->with($this->equalTo('foo'))
->will($this->returnValue(true));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);

@@ -367,7 +380,7 @@ class ManagerTest extends \Test\TestCase {
}

public function testCountUsersNoBackend() {
$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);

$result = $manager->countUsers();
$this->assertTrue(is_array($result));
@@ -392,7 +405,7 @@ class ManagerTest extends \Test\TestCase {
->method('getBackendName')
->will($this->returnValue('Mock_Test_Util_User_Dummy'));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend);

$result = $manager->countUsers();
@@ -433,7 +446,7 @@ class ManagerTest extends \Test\TestCase {
->method('getBackendName')
->will($this->returnValue('Mock_Test_Util_User_Dummy'));

$manager = new \OC\User\Manager();
$manager = new \OC\User\Manager($this->config);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);

@@ -448,6 +461,66 @@ class ManagerTest extends \Test\TestCase {
$this->assertEquals(7 + 16, $users);
}

public function testCountUsersOnlySeen() {
$manager = \OC::$server->getUserManager();
// count other users in the db before adding our own
$countBefore = $manager->countUsers(true);

//Add test users
$user1 = $manager->createUser('testseencount1', 'testseencount1');
$user1->updateLastLoginTimestamp();

$user2 = $manager->createUser('testseencount2', 'testseencount2');
$user2->updateLastLoginTimestamp();

$user3 = $manager->createUser('testseencount3', 'testseencount3');

$user4 = $manager->createUser('testseencount4', 'testseencount4');
$user4->updateLastLoginTimestamp();

$this->assertEquals($countBefore + 3, $manager->countUsers(true));

//cleanup
$user1->delete();
$user2->delete();
$user3->delete();
$user4->delete();
}

public function testCallForSeenUsers() {
$manager = \OC::$server->getUserManager();
// count other users in the db before adding our own
$count = 0;
$function = function (IUser $user) use (&$count) {
$count++;
};
$manager->callForAllUsers($function, '', true);
$countBefore = $count;

//Add test users
$user1 = $manager->createUser('testseen1', 'testseen1');
$user1->updateLastLoginTimestamp();

$user2 = $manager->createUser('testseen2', 'testseen2');
$user2->updateLastLoginTimestamp();

$user3 = $manager->createUser('testseen3', 'testseen3');

$user4 = $manager->createUser('testseen4', 'testseen4');
$user4->updateLastLoginTimestamp();

$count = 0;
$manager->callForAllUsers($function, '', true);

$this->assertEquals($countBefore + 3, $count);

//cleanup
$user1->delete();
$user2->delete();
$user3->delete();
$user4->delete();
}

public function testDeleteUser() {
$config = $this->getMockBuilder('OCP\IConfig')
->disableOriginalConstructor()

+ 24
- 6
tests/lib/User/SessionTest.php View File

@@ -190,7 +190,10 @@ class SessionTest extends \Test\TestCase {
unset($managerMethods[$i]);
}
}
$manager = $this->getMockBuilder(Manager::class)->setMethods($managerMethods)->getMock();
$manager = $this->getMockBuilder(Manager::class)
->setMethods($managerMethods)
->setConstructorArgs([$this->config])
->getMock();

$backend = $this->createMock(\Test\Util\User\Dummy::class);

@@ -245,7 +248,10 @@ class SessionTest extends \Test\TestCase {
unset($managerMethods[$i]);
}
}
$manager = $this->getMockBuilder(Manager::class)->setMethods($managerMethods)->getMock();
$manager = $this->getMockBuilder(Manager::class)
->setMethods($managerMethods)
->setConstructorArgs([$this->config])
->getMock();

$backend = $this->createMock(\Test\Util\User\Dummy::class);

@@ -277,7 +283,10 @@ class SessionTest extends \Test\TestCase {
unset($managerMethods[$i]);
}
}
$manager = $this->getMockBuilder(Manager::class)->setMethods($managerMethods)->getMock();
$manager = $this->getMockBuilder(Manager::class)
->setMethods($managerMethods)
->setConstructorArgs([$this->config])
->getMock();
$backend = $this->createMock(\Test\Util\User\Dummy::class);
$userSession = new \OC\User\Session($manager, $session, $this->timeFactory, $this->tokenProvider, $this->config);

@@ -527,7 +536,10 @@ class SessionTest extends \Test\TestCase {
unset($managerMethods[$i]);
}
}
$manager = $this->getMockBuilder(Manager::class)->setMethods($managerMethods)->getMock();
$manager = $this->getMockBuilder(Manager::class)
->setMethods($managerMethods)
->setConstructorArgs([$this->config])
->getMock();

$backend = $this->createMock(\Test\Util\User\Dummy::class);

@@ -577,7 +589,10 @@ class SessionTest extends \Test\TestCase {
unset($managerMethods[$i]);
}
}
$manager = $this->getMockBuilder(Manager::class)->setMethods($managerMethods)->getMock();
$manager = $this->getMockBuilder(Manager::class)
->setMethods($managerMethods)
->setConstructorArgs([$this->config])
->getMock();

$backend = $this->createMock(\Test\Util\User\Dummy::class);

@@ -621,7 +636,10 @@ class SessionTest extends \Test\TestCase {
unset($managerMethods[$i]);
}
}
$manager = $this->getMockBuilder(Manager::class)->setMethods($managerMethods)->getMock();
$manager = $this->getMockBuilder(Manager::class)
->setMethods($managerMethods)
->setConstructorArgs([$this->config])
->getMock();

$backend = $this->createMock(\Test\Util\User\Dummy::class);


Loading…
Cancel
Save