Files
nextcloud-server-mirror/tests/Core/Controller/UserControllerTest.php
Côme Chilliet 8dcea8a500 fix: Harmonize namepsaces in tests
There was a weird inconsistent mix of Test\, Tests\lib, Test\Core,
 Tests\Core and Core\.
Now there is only Test\ for tests/lib/ and Tests\Core for tests/Core.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-08-24 08:38:57 +02:00

62 lines
1.3 KiB
PHP

<?php
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace Tests\Core\Controller;
use OC\Core\Controller\UserController;
use OCP\AppFramework\Http\JSONResponse;
use OCP\IRequest;
use OCP\IUser;
use OCP\IUserManager;
use Test\TestCase;
class UserControllerTest extends TestCase {
/** @var IUserManager|\PHPUnit\Framework\MockObject\MockObject */
private $userManager;
/** @var UserController */
private $controller;
#[\Override]
protected function setUp(): void {
parent::setUp();
$this->userManager = $this->createMock(IUserManager::class);
$this->controller = new UserController(
'core',
$this->createMock(IRequest::class),
$this->userManager
);
}
public function testGetDisplayNames(): void {
$user = $this->createMock(IUser::class);
$user->method('getDisplayName')
->willReturn('FooDisplay Name');
$this->userManager
->method('get')
->willReturnCallback(function ($uid) use ($user) {
if ($uid === 'foo') {
return $user;
}
return null;
});
$expected = new JSONResponse([
'users' => [
'foo' => 'FooDisplay Name',
'bar' => 'bar',
],
'status' => 'success'
]);
$result = $this->controller->getDisplayNames(['foo', 'bar']);
$this->assertEquals($expected, $result);
}
}