2020-09-02 10:33:32 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace OCA\BigBlueButton\Tests\Integration\Service;
|
|
|
|
|
|
|
|
use OC;
|
|
|
|
use OCA\BigBlueButton\Db\RestrictionMapper;
|
|
|
|
use OCA\BigBlueButton\Service\RestrictionService;
|
|
|
|
use OCP\IDBConnection;
|
2020-09-23 12:33:09 +02:00
|
|
|
use PHPUnit\Framework\TestCase;
|
2020-09-02 10:33:32 +02:00
|
|
|
|
|
|
|
class RestrictionServiceTest extends TestCase {
|
|
|
|
/** @var IDBConnection */
|
|
|
|
private $db;
|
|
|
|
|
|
|
|
/** @var RestrictionService */
|
|
|
|
private $service;
|
|
|
|
|
|
|
|
/** @var string */
|
|
|
|
private $groupId;
|
|
|
|
|
|
|
|
public function setUp(): void {
|
|
|
|
parent::setUp();
|
|
|
|
$this->db = OC::$server->getDatabaseConnection();
|
|
|
|
$mapper = new RestrictionMapper($this->db);
|
|
|
|
$this->service = new RestrictionService($mapper);
|
|
|
|
|
|
|
|
$this->groupId = $this->getRandomString();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function testCreate() {
|
|
|
|
$restriction = $this->service->create($this->groupId);
|
|
|
|
|
|
|
|
$this->assertEquals($this->groupId, $restriction->getGroupId());
|
|
|
|
|
|
|
|
$this->service->delete($restriction->getId());
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @depends testCreate
|
|
|
|
*/
|
|
|
|
public function testExistsByGroupId() {
|
|
|
|
$restriction = $this->service->create($this->groupId);
|
|
|
|
|
|
|
|
$this->assertTrue($this->service->existsByGroupId($this->groupId));
|
|
|
|
|
|
|
|
$this->assertFalse($this->service->existsByGroupId($this->getRandomString()));
|
|
|
|
|
|
|
|
$this->service->delete($restriction->getId());
|
|
|
|
|
|
|
|
$this->assertFalse($this->service->existsByGroupId($this->groupId));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @depends testCreate
|
|
|
|
*/
|
|
|
|
public function testUpdate() {
|
|
|
|
$restriction = $this->service->create($this->groupId);
|
|
|
|
$updatedRestriction = $this->service->update(
|
|
|
|
$restriction->getId(),
|
|
|
|
$this->groupId,
|
|
|
|
10,
|
|
|
|
['public'],
|
|
|
|
15,
|
|
|
|
false
|
|
|
|
);
|
|
|
|
|
|
|
|
$this->assertEquals(10, $updatedRestriction->getMaxRooms());
|
|
|
|
$this->assertEquals(15, $updatedRestriction->getMaxParticipants());
|
|
|
|
$this->assertEquals(false, $updatedRestriction->getAllowRecording());
|
2022-03-16 18:43:44 +01:00
|
|
|
$this->assertEqauls(false, $updatedRestriction->getAllowLogoutURL());
|
2020-09-02 10:33:32 +02:00
|
|
|
|
|
|
|
$this->service->delete($restriction->getId());
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private function getRandomString(): string {
|
|
|
|
return \OC::$server->getSecureRandom()->generate(18, \OCP\Security\ISecureRandom::CHAR_HUMAN_READABLE);
|
|
|
|
}
|
|
|
|
}
|