diff options
author | Frédéric Guillot <fguillot@users.noreply.github.com> | 2014-03-11 21:12:53 -0400 |
---|---|---|
committer | Frédéric Guillot <fguillot@users.noreply.github.com> | 2014-03-11 21:12:53 -0400 |
commit | c0ab45110688d698c1038d203017fda2385c5142 (patch) | |
tree | 57427ded9c096d3a558980b1b32de6e1b3242b62 /tests | |
parent | 66c7cf0caa5802c825e3f511158bb719cf82cafa (diff) |
Add unit test for the "task close" action
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ActionTaskCloseTest.php | 62 | ||||
-rw-r--r-- | tests/Base.php | 1 |
2 files changed, 63 insertions, 0 deletions
diff --git a/tests/ActionTaskCloseTest.php b/tests/ActionTaskCloseTest.php new file mode 100644 index 00000000..0d405739 --- /dev/null +++ b/tests/ActionTaskCloseTest.php @@ -0,0 +1,62 @@ +<?php + +require_once __DIR__.'/base.php'; + +use Model\Task; + +class ActionTaskCloseTest extends Base +{ + public function testBadProject() + { + $action = new Action\TaskClose(3, new Task($this->db, $this->event)); + $action->setParam('column_id', 5); + + $event = array( + 'project_id' => 2, + 'task_id' => 3, + 'column_id' => 5, + ); + + $this->assertFalse($action->doAction($event)); + } + + public function testBadColumn() + { + $action = new Action\TaskClose(3, new Task($this->db, $this->event)); + $action->setParam('column_id', 5); + + $event = array( + 'project_id' => 3, + 'task_id' => 3, + 'column_id' => 3, + ); + + $this->assertFalse($action->doAction($event)); + } + + public function testExecute() + { + $action = new Action\TaskClose(1, new Task($this->db, $this->event)); + $action->setParam('column_id', 2); + + // We create a task in the first column + $task = new Task($this->db, $this->event); + $this->assertEquals(1, $p->create(array('name' => 'test'))); + $this->assertEquals(1, $t->create(array('title' => 'test', 'project_id' => 1, 'column_id' => 1))); + + // We create an event to move the task to the 2nd column + $event = array( + 'project_id' => 1, + 'task_id' => 1, + 'column_id' => 2, + ); + + // Our event should be executed + $this->assertTrue($action->doAction($event)); + + // Our task should be closed + $t = $task->getById(1); + $this->assertNotEmpty($t); + $this->assertEquals(0, $t['is_active']); + } +} diff --git a/tests/Base.php b/tests/Base.php index 6efb92e5..98dbf1b9 100644 --- a/tests/Base.php +++ b/tests/Base.php @@ -11,6 +11,7 @@ require_once __DIR__.'/../models/project.php'; require_once __DIR__.'/../models/user.php'; require_once __DIR__.'/../models/board.php'; require_once __DIR__.'/../models/action.php'; +require_once __DIR__.'/../actions/task_close.php'; abstract class Base extends PHPUnit_Framework_TestCase { |