Fix issue in aggregate daily project summary

This commit is contained in:
Frederic Guillot
2015-06-23 20:21:55 -04:00
parent bc6aefe64c
commit cdd2080fc0
2 changed files with 11 additions and 5 deletions

View File

@@ -156,7 +156,7 @@ class ProjectDailySummary extends Base
{ {
$columns = $this->board->getColumnsList($project_id); $columns = $this->board->getColumnsList($project_id);
$column_ids = array_keys($columns); $column_ids = array_keys($columns);
$metrics = array(array(e('Date')) + $columns); $metrics = array(array_merge(array(e('Date')), array_values($columns)));
$aggregates = array(); $aggregates = array();
// Fetch metrics for the project // Fetch metrics for the project

View File

@@ -6,6 +6,7 @@ use Model\Project;
use Model\ProjectDailySummary; use Model\ProjectDailySummary;
use Model\Task; use Model\Task;
use Model\TaskCreation; use Model\TaskCreation;
use Model\TaskStatus;
class ProjectDailySummaryTest extends Base class ProjectDailySummaryTest extends Base
{ {
@@ -14,6 +15,7 @@ class ProjectDailySummaryTest extends Base
$p = new Project($this->container); $p = new Project($this->container);
$pds = new ProjectDailySummary($this->container); $pds = new ProjectDailySummary($this->container);
$tc = new TaskCreation($this->container); $tc = new TaskCreation($this->container);
$ts = new TaskStatus($this->container);
$this->assertEquals(1, $p->create(array('name' => 'UnitTest'))); $this->assertEquals(1, $p->create(array('name' => 'UnitTest')));
$this->assertEquals(0, $pds->countDays(1, date('Y-m-d', strtotime('-2days')), date('Y-m-d'))); $this->assertEquals(0, $pds->countDays(1, date('Y-m-d', strtotime('-2days')), date('Y-m-d')));
@@ -38,8 +40,8 @@ class ProjectDailySummaryTest extends Base
$pds->updateTotals(1, date('Y-m-d', strtotime('-1 day'))); $pds->updateTotals(1, date('Y-m-d', strtotime('-1 day')));
$this->assertNotFalse($t->close(1)); $this->assertNotFalse($ts->close(1));
$this->assertNotFalse($t->close(2)); $this->assertNotFalse($ts->close(2));
for ($i = 0; $i < 3; $i++) { for ($i = 0; $i < 3; $i++) {
$this->assertNotFalse($tc->create(array('title' => 'Task #'.$i, 'project_id' => 1, 'column_id' => 3))); $this->assertNotFalse($tc->create(array('title' => 'Task #'.$i, 'project_id' => 1, 'column_id' => 3)));
@@ -55,13 +57,17 @@ class ProjectDailySummaryTest extends Base
$pds->updateTotals(1, date('Y-m-d')); $pds->updateTotals(1, date('Y-m-d'));
$this->assertEquals(3, $pds->countDays(3, date('Y-m-d', strtotime('-2days')), date('Y-m-d'))); $this->assertEquals(3, $pds->countDays(1, date('Y-m-d', strtotime('-2days')), date('Y-m-d')));
$metrics = $pds->getAggregatedMetrics(1, date('Y-m-d', strtotime('-2days')), date('Y-m-d')); $metrics = $pds->getAggregatedMetrics(1, date('Y-m-d', strtotime('-2days')), date('Y-m-d'));
$this->assertNotEmpty($metrics); $this->assertNotEmpty($metrics);
$this->assertEquals(4, count($metrics)); $this->assertEquals(4, count($metrics));
$this->assertEquals(5, count($metrics[0])); $this->assertEquals(5, count($metrics[0]));
$this->assertEquals('Date', $metrics[0][0]);
$this->assertEquals('Backlog', $metrics[0][1]); $this->assertEquals('Backlog', $metrics[0][1]);
$this->assertEquals('Ready', $metrics[0][2]);
$this->assertEquals('Work in progress', $metrics[0][3]);
$this->assertEquals('Done', $metrics[0][4]);
$this->assertEquals(date('Y-m-d', strtotime('-2days')), $metrics[1][0]); $this->assertEquals(date('Y-m-d', strtotime('-2days')), $metrics[1][0]);
$this->assertEquals(10, $metrics[1][1]); $this->assertEquals(10, $metrics[1][1]);
@@ -76,7 +82,7 @@ class ProjectDailySummaryTest extends Base
$this->assertEquals(5, $metrics[2][4]); $this->assertEquals(5, $metrics[2][4]);
$this->assertEquals(date('Y-m-d'), $metrics[3][0]); $this->assertEquals(date('Y-m-d'), $metrics[3][0]);
$this->assertEquals(8, $metrics[3][1]); $this->assertEquals(10, $metrics[3][1]);
$this->assertEquals(30, $metrics[3][2]); $this->assertEquals(30, $metrics[3][2]);
$this->assertEquals(18, $metrics[3][3]); $this->assertEquals(18, $metrics[3][3]);
$this->assertEquals(9, $metrics[3][4]); $this->assertEquals(9, $metrics[3][4]);