use OC\User\Database;
use OC\User\Manager;
use OCP\EventDispatcher\IEventDispatcher;
+use OCP\ICache;
+use OCP\ICacheFactory;
use OCP\IConfig;
use OCP\IUser;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
private $oldDispatcher;
/** @var IEventDispatcher */
private $eventDispatcher;
+ /** @var ICacheFactory */
+ private $cacheFactory;
+ /** @var ICache */
+ private $cache;
protected function setUp(): void {
parent::setUp();
$this->config = $this->createMock(IConfig::class);
$this->oldDispatcher = $this->createMock(EventDispatcherInterface::class);
$this->eventDispatcher = $this->createMock(IEventDispatcher::class);
+ $this->cacheFactory = $this->createMock(ICacheFactory::class);
+ $this->cache = $this->createMock(ICache::class);
+
+ $this->cacheFactory->method('createDistributed')
+ ->with('user_backend_map')
+ ->willReturn($this->cache);
}
public function testGetBackends() {
$userDummyBackend = $this->createMock(\Test\Util\User\Dummy::class);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($userDummyBackend);
$this->assertEquals([$userDummyBackend], $manager->getBackends());
$dummyDatabaseBackend = $this->createMock(Database::class);
->with($this->equalTo('foo'))
->willReturn(true);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertTrue($manager->userExists('foo'));
->with($this->equalTo('foo'))
->willReturn(false);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertFalse($manager->userExists('foo'));
}
public function testUserExistsNoBackends() {
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$this->assertFalse($manager->userExists('foo'));
}
->with($this->equalTo('foo'))
->willReturn(true);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);
$backend2->expects($this->never())
->method('userExists');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);
}
});
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$user = $manager->checkPassword('foo', 'bar');
->method('implementsActions')
->willReturn(false);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertFalse($manager->checkPassword('foo', 'bar'));
$backend->expects($this->never())
->method('loginName2UserName');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertEquals('foo', $manager->get('foo')->getUID());
->with($this->equalTo('foo'))
->willReturn(false);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertEquals(null, $manager->get('foo'));
$backend->expects($this->never())
->method('loginName2UserName');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertEquals('bLeNdEr', $manager->get('bLeNdEr')->getUID());
$backend->expects($this->never())
->method('loginName2UserName');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$result = $manager->search('fo');
$backend2->expects($this->never())
->method('loginName2UserName');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);
->willReturn(true);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->expectException(\InvalidArgumentException::class, $exception);
$backend->expects($this->never())
->method('loginName2UserName');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$user = $manager->createUser('foo', 'bar');
->with($this->equalTo('foo'))
->willReturn(true);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$manager->createUser('foo', 'bar');
$backend->expects($this->never())
->method('userExists');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$this->assertFalse($manager->createUser('foo', 'bar'));
}
public function testCreateUserNoBackends() {
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$this->assertFalse($manager->createUser('foo', 'bar'));
}
->with('MyUid', 'MyPassword')
->willReturn(false);
- $manager = new Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->createUserFromBackend('MyUid', 'MyPassword', $backend);
}
->with($this->equalTo('foo'))
->willReturn(true);
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);
}
public function testCountUsersNoBackend() {
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$result = $manager->countUsers();
$this->assertTrue(is_array($result));
->method('getBackendName')
->willReturn('Mock_Test_Util_User_Dummy');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$result = $manager->countUsers();
->method('getBackendName')
->willReturn('Mock_Test_Util_User_Dummy');
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend1);
$manager->registerBackend($backend2);
}
public function testDeleteUser() {
- $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($this->config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$backend = new \Test\Util\User\Dummy();
$manager->registerBackend($backend);
->with($this->equalTo('uid2'))
->willReturn(true);
- $manager = new \OC\User\Manager($config, $this->oldDispatcher, $this->eventDispatcher);
+ $manager = new \OC\User\Manager($config, $this->oldDispatcher, $this->cacheFactory, $this->eventDispatcher);
$manager->registerBackend($backend);
$users = $manager->getByEmail('test@example.com');
use OCA\DAV\Connector\Sabre\Auth;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\EventDispatcher\IEventDispatcher;
+use OCP\ICacheFactory;
use OCP\IConfig;
use OCP\ILogger;
use OCP\IRequest;
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
$backend = $this->createMock(\Test\Util\User\Dummy::class);
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
$userSession = $this->getMockBuilder(Session::class)
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
$userSession = $this->getMockBuilder(Session::class)
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
$userSession = $this->getMockBuilder(Session::class)
->setConstructorArgs([
$this->config,
$this->createMock(EventDispatcherInterface::class),
- $this->createMock(IEventDispatcher::class)
+ $this->createMock(ICacheFactory::class),
+ $this->createMock(IEventDispatcher::class),
])
->getMock();
$userSession = $this->getMockBuilder(Session::class)