summaryrefslogtreecommitdiff
path: root/tests/units
diff options
context:
space:
mode:
authorFrédéric Guillot <fred@kanboard.net>2014-07-19 22:08:07 -0230
committerFrédéric Guillot <fred@kanboard.net>2014-07-19 22:08:07 -0230
commit833bd3f8a90b604f4ab289dab9366c0032ce5216 (patch)
treed9dba860b725a2c837fe1a640cafd0bd0b418e43 /tests/units
parent42ca8390d43080c7403c4ae4cdaf31296bc02576 (diff)
Add Task CSV export and Kanboard CLI
Diffstat (limited to 'tests/units')
-rw-r--r--tests/units/TaskTest.php36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/units/TaskTest.php b/tests/units/TaskTest.php
index da7e6a70..b8b3cf46 100644
--- a/tests/units/TaskTest.php
+++ b/tests/units/TaskTest.php
@@ -4,9 +4,45 @@ require_once __DIR__.'/Base.php';
use Model\Task;
use Model\Project;
+use Model\Category;
class TaskTest extends Base
{
+ public function testExport()
+ {
+ $t = new Task($this->db, $this->event);
+ $p = new Project($this->db, $this->event);
+ $c = new Category($this->db, $this->event);
+
+ $this->assertEquals(1, $p->create(array('name' => 'Export Project')));
+ $this->assertNotFalse($c->create(array('name' => 'Category #1', 'project_id' => 1)));
+ $this->assertNotFalse($c->create(array('name' => 'Category #2', 'project_id' => 1)));
+ $this->assertNotFalse($c->create(array('name' => 'Category #3', 'project_id' => 1)));
+
+ for ($i = 1; $i <= 100; $i++) {
+
+ $task = array(
+ 'title' => 'Task #'.$i,
+ 'project_id' => 1,
+ 'column_id' => rand(1, 3),
+ 'creator_id' => rand(0, 1),
+ 'owner_id' => rand(0, 1),
+ 'color_id' => rand(0, 1) === 0 ? 'green' : 'purple',
+ 'category_id' => rand(0, 3),
+ 'date_due' => array_rand(array(0, date('Y-m-d'), date('Y-m-d', strtotime('+'.$i.'day')))),
+ 'score' => rand(0, 21)
+ );
+
+ $this->assertEquals($i, $t->create($task));
+ }
+
+ $rows = $t->export(1, strtotime('-1 day'), strtotime('+1 day'));
+ $this->assertEquals($i, count($rows));
+ $this->assertEquals('Task Id', $rows[0][0]);
+ $this->assertEquals(1, $rows[1][0]);
+ $this->assertEquals('Task #'.($i - 1), $rows[$i - 1][11]);
+ }
+
public function testFilter()
{
$t = new Task($this->db, $this->event);