From 1259e911e4316f9f1ae401f4f293da69d9ba9e78 Mon Sep 17 00:00:00 2001
From: Frederic Guillot <fred@kanboard.net>
Date: Sun, 17 Jan 2016 13:46:33 -0500
Subject: Make sure that project daily column stats works when score is null

---
 tests/units/Model/ProjectDailyColumnStatsTest.php | 33 +++++++++++++++++++++++
 1 file changed, 33 insertions(+)

(limited to 'tests')

diff --git a/tests/units/Model/ProjectDailyColumnStatsTest.php b/tests/units/Model/ProjectDailyColumnStatsTest.php
index f8a64054..5e8ec3e8 100644
--- a/tests/units/Model/ProjectDailyColumnStatsTest.php
+++ b/tests/units/Model/ProjectDailyColumnStatsTest.php
@@ -11,6 +11,39 @@ use Kanboard\Model\TaskStatus;
 
 class ProjectDailyColumnStatsTest extends Base
 {
+    public function testUpdateTotalsWithScoreAtNull()
+    {
+        $projectModel = new Project($this->container);
+        $projectDailyColumnStats = new ProjectDailyColumnStats($this->container);
+        $taskCreationModel = new TaskCreation($this->container);
+
+        $this->assertEquals(1, $projectModel->create(array('name' => 'UnitTest')));
+        $this->assertEquals(1, $taskCreationModel->create(array('project_id' => 1, 'title' => 'test')));
+
+        $projectDailyColumnStats->updateTotals(1, '2016-01-16');
+
+        $task = $this->container['db']->table(Task::TABLE)->findOne();
+        $this->assertNull($task['score']);
+
+        $stats = $this->container['db']->table(ProjectDailyColumnStats::TABLE)
+            ->asc('day')
+            ->asc('column_id')
+            ->columns('day', 'project_id', 'column_id', 'total', 'score')
+            ->findAll();
+
+        $expected = array(
+            array(
+                'day' => '2016-01-16',
+                'project_id' => 1,
+                'column_id' => 1,
+                'total' => 1,
+                'score' => 0,
+            ),
+        );
+
+        $this->assertEquals($expected, $stats);
+    }
+
     public function testUpdateTotals()
     {
         $projectModel = new Project($this->container);
-- 
cgit v1.2.3