71 lines
2.4 KiB
PHP
71 lines
2.4 KiB
PHP
<?php
|
|
|
|
require_once __DIR__.'/../Base.php';
|
|
|
|
use Kanboard\Model\GroupModel;
|
|
|
|
class GroupModelTest extends Base
|
|
{
|
|
public function testCreation()
|
|
{
|
|
$groupModel = new GroupModel($this->container);
|
|
$this->assertEquals(1, $groupModel->create('Test'));
|
|
$this->assertFalse($groupModel->create('Test'));
|
|
}
|
|
|
|
public function testGetById()
|
|
{
|
|
$groupModel = new GroupModel($this->container);
|
|
$this->assertEquals(1, $groupModel->create('Test'));
|
|
|
|
$group = $groupModel->getById(1);
|
|
$this->assertEquals('Test', $group['name']);
|
|
$this->assertEquals('', $group['external_id']);
|
|
|
|
$this->assertEmpty($groupModel->getById(2));
|
|
}
|
|
|
|
public function testGetAll()
|
|
{
|
|
$groupModel = new GroupModel($this->container);
|
|
$this->assertEquals(1, $groupModel->create('B'));
|
|
$this->assertEquals(2, $groupModel->create('A', 'uuid'));
|
|
|
|
$groups = $groupModel->getAll();
|
|
$this->assertCount(2, $groups);
|
|
$this->assertEquals('A', $groups[0]['name']);
|
|
$this->assertEquals('uuid', $groups[0]['external_id']);
|
|
$this->assertEquals('B', $groups[1]['name']);
|
|
$this->assertEquals('', $groups[1]['external_id']);
|
|
$this->assertEquals(0, $groups[1]['nb_users']);
|
|
}
|
|
|
|
public function testUpdate()
|
|
{
|
|
$groupModel = new GroupModel($this->container);
|
|
$this->assertEquals(1, $groupModel->create('Test'));
|
|
$this->assertTrue($groupModel->update(array('id' => 1, 'name' => 'My group', 'external_id' => 'test')));
|
|
|
|
$group = $groupModel->getById(1);
|
|
$this->assertEquals('My group', $group['name']);
|
|
$this->assertEquals('test', $group['external_id']);
|
|
}
|
|
|
|
public function testRemove()
|
|
{
|
|
$groupModel = new GroupModel($this->container);
|
|
$this->assertEquals(1, $groupModel->create('Test'));
|
|
$this->assertTrue($groupModel->remove(1));
|
|
$this->assertEmpty($groupModel->getById(1));
|
|
}
|
|
|
|
public function testGetOrCreateExternalGroupId()
|
|
{
|
|
$groupModel = new GroupModel($this->container);
|
|
$this->assertEquals(1, $groupModel->create('Group 1', 'ExternalId1'));
|
|
$this->assertEquals(1, $groupModel->getOrCreateExternalGroupId('Group 1', 'ExternalId1'));
|
|
$this->assertEquals(1, $groupModel->getOrCreateExternalGroupId('Group 2', 'ExternalId1'));
|
|
$this->assertEquals(2, $groupModel->getOrCreateExternalGroupId('Group 2', 'ExternalId2'));
|
|
}
|
|
}
|