fix(database): Cast users count to integer

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
This commit is contained in:
Git'Fellow 2025-03-14 16:08:02 +01:00 committed by backportbot[bot]
parent 760503d73e
commit e5d62aeec7
2 changed files with 18 additions and 2 deletions

View file

@ -470,9 +470,12 @@ class Database extends ABackend implements
$query = $this->dbConn->getQueryBuilder();
$query->select($query->func()->count('uid'))
->from($this->table);
$result = $query->executeQuery();
$result = $query->executeQuery()->fetchOne();
if ($result === false) {
return false;
}
return $result->fetchOne();
return (int)$result;
}
/**

View file

@ -25,6 +25,9 @@ class DatabaseTest extends Backend {
/** @var IEventDispatcher|MockObject */
private $eventDispatcher;
/** @var \OC\User\Database */
protected $backend;
public function getUser() {
$user = parent::getUser();
$this->users[] = $user;
@ -139,4 +142,14 @@ class DatabaseTest extends Backend {
$result = $this->backend->getDisplayNames('@nextcloud.COM');
$this->assertCount(2, $result);
}
public function testUserCount(): void {
$base = $this->backend->countUsers() ?: 0;
$users = $this->backend->getUsers();
self::assertEquals($base, count($users));
$user = $this->getUser();
$this->backend->createUser($user, $user);
self::assertEquals($base + 1, $this->backend->countUsers());
}
}