@ -11,7 +11,6 @@ namespace Test\Teams;
use OC\AppFramework\Bootstrap\Coordinator;
use OC\Teams\TeamManager;
use OCA\Circles\CirclesManager;
use OCP\IURLGenerator;
use OCP\Teams\ITeamFolderProvider;
use OCP\Teams\ITeamResourceProvider;
@ -19,13 +18,13 @@ use Test\TestCase;
class TeamManagerTest extends TestCase {
public function testGetTeamFolderProviderReturnsNullWithoutTeamSupport(): void {
$teamManager = $this->createTeamManager(null );
$teamManager = $this->createTeamManager();
$this->assertNull($teamManager->getTeamFolderProvider());
}
public function testGetTeamFolderProviderReturnsNullWithoutFolderProvider(): void {
$teamManager = $this->createTeamManager($ this->c reateMock(CirclesManager::class) );
$teamManager = $this->createTeamManager(tru e);
$this->setProviders($teamManager, [
'other' => $this->createMock(ITeamResourceProvider::class),
]);
@ -34,7 +33,7 @@ class TeamManagerTest extends TestCase {
}
public function testGetTeamFolderProviderReturnsRegisteredFolderProvider(): void {
$teamManager = $this->createTeamManager($ this->c reateMock(CirclesManager::class) );
$teamManager = $this->createTeamManager(tru e);
$folderProvider = $this->createMock(ITeamFolderProvider::class);
$this->setProviders($teamManager, [
'other' => $this->createMock(ITeamResourceProvider::class),
@ -44,12 +43,22 @@ class TeamManagerTest extends TestCase {
$this->assertSame($folderProvider, $teamManager->getTeamFolderProvider());
}
private function createTeamManager(?CirclesManager $circlesManager): TeamManager {
return new TeamManager(
$this->createMock(Coordinator::class),
$this->createMock(IURLGenerator::class),
$circlesManager,
);
private function createTeamManager(bool $hasTeamSupport = false): TeamManager {
return new class($this->createMock(Coordinator::class), $this->createMock(IURLGenerator::class), null, $hasTeamSupport, ) extends TeamManager {
public function __construct(
Coordinator $bootContext,
IURLGenerator $urlGenerator,
null $circlesManager,
private bool $hasTeamSupport,
) {
parent::__construct($bootContext, $urlGenerator, $circlesManager);
}
#[\Override]
public function hasTeamSupport(): bool {
return $this->hasTeamSupport;
}
};
}
/**
@ -58,4 +67,4 @@ class TeamManagerTest extends TestCase {
private function setProviders(TeamManager $teamManager, array $providers): void {
(new \ReflectionProperty(TeamManager::class, 'providers'))->setValue($teamManager, $providers);
}
}
}