Models refactoring/improvements

This commit is contained in:
Frédéric Guillot
2014-09-20 14:49:31 +02:00
parent 00cdc609d1
commit 41e796c52a
14 changed files with 312 additions and 128 deletions

View File

@@ -24,8 +24,8 @@ class SubTaskTest extends Base
$this->assertEquals(2, $t->create(array('title' => 'test 2', 'project_id' => 1, 'column_id' => 1, 'owner_id' => 0)));
// We create many subtasks for the first task
$this->assertEquals(1, $s->create(array('title' => 'subtask #1', 'task_id' => 1, 'time_estimated' => 5, 'time_spent' => 3, 'status' => 1)));
$this->assertEquals(2, $s->create(array('title' => 'subtask #2', 'task_id' => 1, 'time_estimated' => 0, 'time_spent' => 0, 'status' => 2, 'user_id' => 1)));
$this->assertEquals(1, $s->create(array('title' => 'subtask #1', 'task_id' => 1, 'time_estimated' => 5, 'time_spent' => 3, 'status' => 1, 'another_subtask' => 'on')));
$this->assertEquals(2, $s->create(array('title' => 'subtask #2', 'task_id' => 1, 'time_estimated' => '', 'time_spent' => '', 'status' => 2, 'user_id' => 1)));
// We duplicate our subtasks
$this->assertTrue($s->duplicate(1, 2));

View File

@@ -10,6 +10,103 @@ use Model\User;
class TaskTest extends Base
{
public function testPrepareCreation()
{
$t = new Task($this->registry);
$p = new Project($this->registry);
$this->assertEquals(1, $p->create(array('name' => 'Project #1')));
$input = array(
'title' => 'youpi',
'description' => '',
'project_id' => '1',
'owner_id' => '0',
'category_id' => '0',
'column_id' => '2',
'color_id' => 'yellow',
'score' => '',
'date_due' => '',
'creator_id' => '1',
'another_task' => '1',
);
$t->prepareCreation($input);
$this->assertInternalType('integer', $input['date_due']);
$this->assertEquals(0, $input['date_due']);
$this->assertInternalType('integer', $input['score']);
$this->assertEquals(0, $input['score']);
$this->assertArrayNotHasKey('another_task', $input);
$this->assertArrayHasKey('date_creation', $input);
$this->assertEquals(time(), $input['date_creation']);
$this->assertArrayHasKey('date_modification', $input);
$this->assertEquals(time(), $input['date_modification']);
$this->assertArrayHasKey('position', $input);
$this->assertGreaterThan(0, $input['position']);
$input = array(
'title' => 'youpi',
'project_id' => '1',
);
$t->prepareCreation($input);
$this->assertArrayNotHasKey('date_due', $input);
$this->assertArrayNotHasKey('score', $input);
$this->assertArrayHasKey('date_creation', $input);
$this->assertEquals(time(), $input['date_creation']);
$this->assertArrayHasKey('date_modification', $input);
$this->assertEquals(time(), $input['date_modification']);
$this->assertArrayHasKey('position', $input);
$this->assertGreaterThan(0, $input['position']);
$this->assertArrayHasKey('color_id', $input);
$this->assertEquals('yellow', $input['color_id']);
$this->assertArrayHasKey('column_id', $input);
$this->assertEquals(1, $input['column_id']);
$input = array(
'title' => 'youpi',
'project_id' => '1',
'date_due' => '2014-09-15',
);
$t->prepareCreation($input);
$this->assertArrayHasKey('date_due', $input);
$this->assertInternalType('integer', $input['date_due']);
$this->assertEquals('2014-09-15', date('Y-m-d', $input['date_due']));
}
public function testPrepareModification()
{
$t = new Task($this->registry);
$p = new Project($this->registry);
$this->assertEquals(1, $p->create(array('name' => 'Project #1')));
$input = array(
'id' => '1',
'description' => 'Boo',
);
$t->prepareModification($input);
$this->assertArrayNotHasKey('id', $input);
$this->assertArrayHasKey('date_modification', $input);
$this->assertEquals(time(), $input['date_modification']);
}
public function testCreation()
{
$t = new Task($this->registry);

View File

@@ -8,6 +8,57 @@ use Model\Project;
class UserTest extends Base
{
public function testPrepare()
{
$u = new User($this->registry);
$input = array(
'username' => 'user1',
'password' => '1234',
'confirmation' => '1234',
'name' => 'me',
'is_admin' => '',
);
$u->prepare($input);
$this->assertArrayNotHasKey('confirmation', $input);
$this->assertArrayHasKey('password', $input);
$this->assertNotEquals('1234', $input['password']);
$this->assertNotEmpty($input['password']);
$this->assertArrayHasKey('is_admin', $input);
$this->assertInternalType('integer', $input['is_admin']);
$input = array(
'username' => 'user1',
'password' => '1234',
'current_password' => 'bla',
'confirmation' => '1234',
'name' => 'me',
'is_ldap_user' => '1',
);
$u->prepare($input);
$this->assertArrayNotHasKey('confirmation', $input);
$this->assertArrayNotHasKey('current_password', $input);
$this->assertArrayHasKey('password', $input);
$this->assertNotEquals('1234', $input['password']);
$this->assertNotEmpty($input['password']);
$this->assertArrayHasKey('is_ldap_user', $input);
$this->assertEquals(1, $input['is_ldap_user']);
$input = array(
'id' => 2,
'name' => 'me',
);
$u->prepare($input);
$this->assertEquals(array('id' => 2, 'name' => 'me'), $input);
}
public function testCreate()
{
$u = new User($this->registry);