From f9af4b22914721e71f9f430ffa00be8a2d156158 Mon Sep 17 00:00:00 2001
From: Benaka Moorthi <benaka.moorthi@gmail.com>
Date: Tue, 18 Jun 2013 22:45:55 -0700
Subject: [PATCH] Fixing regressions in recent refactorings, fixing regression
 in Archive.php refactoring and fixing bug in integration testing code which
 sets 'date' query param.

---
 core/Archive.php                              |   7 +-
 plugins/MultiSites/API.php                    |  26 ++-
 plugins/VisitTime/API.php                     |  32 ++-
 ...st_ImportLogs__MultiSites.getAll_month.xml |   8 +
 ...st_ImportLogs__MultiSites.getOne_month.xml |   4 +
 ...rtLogs__VisitTime.getByDayOfWeek_month.xml |  58 ++++-
 ...isitorTwoVisits__MultiSites.getAll_day.xml |   4 +
 ...isitorTwoVisits__MultiSites.getOne_day.xml |   4 +
 ...woVisits__VisitTime.getByDayOfWeek_day.xml |  14 +-
 ...eSupport__VisitTime.getByDayOfWeek_day.xml |  14 +-
 ...Reports.generateReport_month.original.html | 200 +++++++++++++++++-
 ...Reports.generateReport_month.original.html | 193 ++++++++++++++++-
 ...FReports.generateReport_month.original.pdf | Bin 473596 -> 475182 bytes
 ...orts.generateReport_month.original.sms.txt |   2 +-
 ...orts.generateReport_month.original.sms.txt |   2 +-
 ...ithItems__VisitTime.getByDayOfWeek_day.xml |  14 +-
 ...FReports.generateReport_week.original.html | 200 +++++++++++++++++-
 ...FReports.generateReport_week.original.html | 193 ++++++++++++++++-
 ...DFReports.generateReport_week.original.pdf | Bin 492567 -> 494179 bytes
 ...ports.generateReport_week.original.sms.txt |   2 +-
 ...ports.generateReport_week.original.sms.txt |   2 +-
 ...odIsLast__VisitTime.getByDayOfWeek_day.xml |   2 +-
 ...dIsLast__VisitTime.getByDayOfWeek_week.xml |   2 +-
 .../test_noVisit__MultiSites.getOne_day.xml   |   4 +
 ..._noVisit__VisitTime.getByDayOfWeek_day.xml |  43 +---
 ...e_IndexedByDate__MultiSites.getAll_day.xml |   4 +
 ...tesNotSupported__MultiSites.getAll_day.xml | 102 ++++++++-
 tests/PHPUnit/IntegrationTestCase.php         |   4 +-
 28 files changed, 1027 insertions(+), 113 deletions(-)

diff --git a/core/Archive.php b/core/Archive.php
index 97b034b507..07695eab35 100644
--- a/core/Archive.php
+++ b/core/Archive.php
@@ -132,17 +132,18 @@ class Piwik_Archive
         }
         $segment = new Piwik_Segment($segment, $websiteIds);
         $idSiteIsAll = $idSites == self::REQUEST_ALL_WEBSITES_FLAG;
-        return Piwik_Archive::factory($segment, $allPeriods, $websiteIds, $idSiteIsAll);
+        $isMultipleDate = Piwik_Period::isMultiplePeriod($strDate, $period);
+        return Piwik_Archive::factory($segment, $allPeriods, $websiteIds, $idSiteIsAll, $isMultipleDate);
     }
 
-    public static function factory(Piwik_Segment $segment, array $periods, $idSites, $idSiteIsAll = false)
+    public static function factory(Piwik_Segment $segment, array $periods, $idSites, $idSiteIsAll = false, $isMultipleDate = false)
     {
         $forceIndexedBySite = false;
         $forceIndexedByDate = false;
         if ($idSiteIsAll || count($idSites) > 1) {
             $forceIndexedBySite = true;
         }
-        if (count($periods) > 1) {
+        if (count($periods) > 1 || $isMultipleDate) {
             $forceIndexedByDate = true;
         }
 
diff --git a/plugins/MultiSites/API.php b/plugins/MultiSites/API.php
index e9984b99aa..e3d398c259 100755
--- a/plugins/MultiSites/API.php
+++ b/plugins/MultiSites/API.php
@@ -218,11 +218,13 @@ class Piwik_MultiSites_API
         ) {
             $dataTable = $dataTable->mergeChildren();
         } else {
-            if (!$dataTable instanceof Piwik_DataTable_Array
+            if (!($dataTable instanceof Piwik_DataTable_Array)
                 && $dataTable->getRowsCount() > 0
             ) {
+                $firstSite = is_array($sites) ? reset($sites) : $sites;
+                
                 $firstDataTableRow = $dataTable->getFirstRow();
-                $firstDataTableRow->setColumn('label', $sites);
+                $firstDataTableRow->setColumn('label', $firstSite);
             }
         }
 
@@ -232,20 +234,19 @@ class Piwik_MultiSites_API
         // if the period isn't a range & a lastN/previousN date isn't used, we get the same
         // data for the last period to show the evolution of visits/actions/revenue
         list($strLastDate, $lastPeriod) = Piwik_Period_Range::getLastDate($date, $period);
-        if (
-            // FIXMEA broken without this false
-            false
-            && $strLastDate !== false) {
+        if ($strLastDate !== false) {
             if ($lastPeriod !== false) {
                 // NOTE: no easy way to set last period date metadata when range of dates is requested.
                 //       will be easier if DataTable_Array::metadata is removed, and metadata that is
                 //       put there is put directly in Piwik_DataTable::metadata.
                 $dataTable->setMetadata(self::getLastPeriodMetadataName('date'), $lastPeriod);
             }
-            $pastArchive = Piwik_Archive::build('all', $period, $strLastDate, $segment, $_restrictSitesToLogin);
+            $pastArchive = Piwik_Archive::build($sites, $period, $strLastDate, $segment, $_restrictSitesToLogin);
             $pastData = $pastArchive->getDataTableFromNumeric($fieldsToGet);
-
-            if(!($dataTable instanceof Piwik_DataTable_Simple)) {
+            
+            if ($pastData instanceof Piwik_DataTable_Array
+                && $multipleWebsitesRequested
+            ) {
                 $pastData = $pastData->mergeChildren();
             }
 
@@ -318,8 +319,13 @@ class Piwik_MultiSites_API
      */
     private function calculateEvolutionPercentages($currentData, $pastData, $apiMetrics)
     {
+        if (get_class($currentData) != get_class($pastData)) { // sanity check for regressions
+            throw new Exception("Expected \$pastData to be of type ".get_class($currentData)." - got "
+                               . get_class($pastData).".");
+        }
+        
         if ($currentData instanceof Piwik_DataTable_Array) {
-            $pastArray = $pastData->getRows();
+            $pastArray = $pastData->getArray();
             foreach ($currentData->getArray() as $subTable) {
                 $this->calculateEvolutionPercentages($subTable, current($pastArray), $apiMetrics);
                 next($pastArray);
diff --git a/plugins/VisitTime/API.php b/plugins/VisitTime/API.php
index 7f794bce82..2f4aaee06b 100644
--- a/plugins/VisitTime/API.php
+++ b/plugins/VisitTime/API.php
@@ -68,32 +68,24 @@ class Piwik_VisitTime_API
         // metrics to query
         $metrics = Piwik_Metrics::getVisitsMetricNames();
         unset($metrics[Piwik_Metrics::INDEX_MAX_ACTIONS]);
-
-        try {
-            // get metric data for every day within the supplied period
-            $oPeriod = Piwik_Period::makePeriodFromQueryParams(Piwik_Site::getTimezoneFor($idSite), $period, $date);
-            $dateRange = $oPeriod->getDateStart()->toString() . ',' . $oPeriod->getDateEnd()->toString();
-            $archive = Piwik_Archive::build($idSite, 'day', $dateRange, $segment);
-        } catch(Exception $e) {
-            throw new Exception("getByDayOfWeek not working yet");
+        
+        // disabled for multiple dates
+        if (Piwik_Period::isMultiplePeriod($date, $period)) {
+            throw new Exception("VisitTime.getByDayOfWeek does not support multiple dates.");
         }
 
-        // disabled for multiple sites/dates
-        if ( count( $archive->getParams()->getIdSites() ) > 1) {
-            throw new Exception("VisitTime.getByDayOfWeek does not support multiple sites.");
-        }
+        // get metric data for every day within the supplied period
+        $oPeriod = Piwik_Period::makePeriodFromQueryParams(Piwik_Site::getTimezoneFor($idSite), $period, $date);
+        $dateRange = $oPeriod->getDateStart()->toString() . ',' . $oPeriod->getDateEnd()->toString();
+        $archive = Piwik_Archive::build($idSite, 'day', $dateRange, $segment);
 
-        $periods = $archive->getParams()->getPeriods();
-        if ( count ($periods) > 1
-            && !($periods[0] instanceof Piwik_Period_Day)) {
-            throw new Exception("VisitTime.getByDayOfWeek does not support multiple dates.");
+        // disabled for multiple sites
+        if (count($archive->getParams()->getIdSites()) > 1) {
+            throw new Exception("VisitTime.getByDayOfWeek does not support multiple sites.");
         }
 
-        $dataTable = $archive->getDataTableFromNumeric($metrics);
+        $dataTable = $archive->getDataTableFromNumeric($metrics)->mergeChildren();
 
-        if(!($dataTable instanceof Piwik_DataTable)) {
-            return new Piwik_DataTable();
-        }
         // if there's no data for this report, don't bother w/ anything else
         if ($dataTable->getRowsCount() == 0) {
             return $dataTable;
diff --git a/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getAll_month.xml b/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getAll_month.xml
index 92c79f743a..8a400626b7 100755
--- a/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getAll_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getAll_month.xml
@@ -6,6 +6,10 @@
 		<nb_actions>29</nb_actions>
 		<nb_pageviews>25</nb_pageviews>
 		<revenue>120</revenue>
+		<visits_evolution>100%</visits_evolution>
+		<actions_evolution>100%</actions_evolution>
+		<pageviews_evolution>100%</pageviews_evolution>
+		<revenue_evolution>100%</revenue_evolution>
 		<idsite>1</idsite>
 	</row>
 	<row>
@@ -14,6 +18,10 @@
 		<nb_actions>1</nb_actions>
 		<nb_pageviews>1</nb_pageviews>
 		<revenue>0</revenue>
+		<visits_evolution>100%</visits_evolution>
+		<actions_evolution>100%</actions_evolution>
+		<pageviews_evolution>100%</pageviews_evolution>
+		<revenue_evolution>0%</revenue_evolution>
 		<idsite>2</idsite>
 	</row>
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getOne_month.xml b/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getOne_month.xml
index cb5be388e9..febd0b7d2f 100755
--- a/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getOne_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ImportLogs__MultiSites.getOne_month.xml
@@ -2,6 +2,10 @@
 <result>
 	<nb_visits>26</nb_visits>
 	<nb_actions>29</nb_actions>
+	<visits_evolution>100%</visits_evolution>
+	<actions_evolution>100%</actions_evolution>
+	<pageviews_evolution>100%</pageviews_evolution>
+	<revenue_evolution>100%</revenue_evolution>
 	<nb_pageviews>25</nb_pageviews>
 	<revenue>120</revenue>
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml b/tests/PHPUnit/Integration/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml
index c234bed59e..a95e7420bb 100755
--- a/tests/PHPUnit/Integration/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml
@@ -1,2 +1,58 @@
 <?xml version="1.0" encoding="utf-8" ?>
-<result />
\ No newline at end of file
+<result>
+	<row>
+		<label>Monday</label>
+		<nb_visits>0</nb_visits>
+		<day_of_week>1</day_of_week>
+	</row>
+	<row>
+		<label>Tuesday</label>
+		<nb_visits>0</nb_visits>
+		<day_of_week>2</day_of_week>
+	</row>
+	<row>
+		<label>Wednesday</label>
+		<nb_visits>2</nb_visits>
+		<nb_uniq_visitors>2</nb_uniq_visitors>
+		<nb_actions>2</nb_actions>
+		<sum_visit_length>0</sum_visit_length>
+		<bounce_count>2</bounce_count>
+		<nb_visits_converted>2</nb_visits_converted>
+		<day_of_week>3</day_of_week>
+	</row>
+	<row>
+		<label>Thursday</label>
+		<nb_visits>9</nb_visits>
+		<nb_uniq_visitors>9</nb_uniq_visitors>
+		<nb_actions>9</nb_actions>
+		<sum_visit_length>0</sum_visit_length>
+		<bounce_count>9</bounce_count>
+		<nb_visits_converted>9</nb_visits_converted>
+		<day_of_week>4</day_of_week>
+	</row>
+	<row>
+		<label>Friday</label>
+		<nb_visits>6</nb_visits>
+		<nb_uniq_visitors>6</nb_uniq_visitors>
+		<nb_actions>6</nb_actions>
+		<sum_visit_length>0</sum_visit_length>
+		<bounce_count>6</bounce_count>
+		<nb_visits_converted>6</nb_visits_converted>
+		<day_of_week>5</day_of_week>
+	</row>
+	<row>
+		<label>Saturday</label>
+		<nb_visits>9</nb_visits>
+		<nb_uniq_visitors>9</nb_uniq_visitors>
+		<nb_actions>12</nb_actions>
+		<sum_visit_length>305</sum_visit_length>
+		<bounce_count>7</bounce_count>
+		<nb_visits_converted>7</nb_visits_converted>
+		<day_of_week>6</day_of_week>
+	</row>
+	<row>
+		<label>Sunday</label>
+		<nb_visits>0</nb_visits>
+		<day_of_week>7</day_of_week>
+	</row>
+</result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getAll_day.xml b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getAll_day.xml
index 818c899ce8..78d5baaa75 100755
--- a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getAll_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getAll_day.xml
@@ -6,6 +6,10 @@
 		<nb_actions>8</nb_actions>
 		<nb_pageviews>4</nb_pageviews>
 		<revenue>43</revenue>
+		<visits_evolution>100%</visits_evolution>
+		<actions_evolution>100%</actions_evolution>
+		<pageviews_evolution>100%</pageviews_evolution>
+		<revenue_evolution>100%</revenue_evolution>
 		<idsite>1</idsite>
 	</row>
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getOne_day.xml b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getOne_day.xml
index 2594503584..b76e6ee906 100644
--- a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getOne_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__MultiSites.getOne_day.xml
@@ -2,6 +2,10 @@
 <result>
 	<nb_visits>2</nb_visits>
 	<nb_actions>8</nb_actions>
+	<visits_evolution>100%</visits_evolution>
+	<actions_evolution>100%</actions_evolution>
+	<pageviews_evolution>100%</pageviews_evolution>
+	<revenue_evolution>100%</revenue_evolution>
 	<nb_pageviews>4</nb_pageviews>
 	<revenue>43</revenue>
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__VisitTime.getByDayOfWeek_day.xml b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__VisitTime.getByDayOfWeek_day.xml
index 8f2a7940d4..e715309206 100755
--- a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__VisitTime.getByDayOfWeek_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits__VisitTime.getByDayOfWeek_day.xml
@@ -17,12 +17,7 @@
 	</row>
 	<row>
 		<label>Thursday</label>
-		<nb_visits>2</nb_visits>
-		<nb_uniq_visitors>1</nb_uniq_visitors>
-		<nb_actions>8</nb_actions>
-		<sum_visit_length>1621</sum_visit_length>
-		<bounce_count>1</bounce_count>
-		<nb_visits_converted>2</nb_visits_converted>
+		<nb_visits>0</nb_visits>
 		<day_of_week>4</day_of_week>
 	</row>
 	<row>
@@ -32,7 +27,12 @@
 	</row>
 	<row>
 		<label>Saturday</label>
-		<nb_visits>0</nb_visits>
+		<nb_visits>2</nb_visits>
+		<nb_uniq_visitors>1</nb_uniq_visitors>
+		<nb_actions>8</nb_actions>
+		<sum_visit_length>1621</sum_visit_length>
+		<bounce_count>1</bounce_count>
+		<nb_visits_converted>2</nb_visits_converted>
 		<day_of_week>6</day_of_week>
 	</row>
 	<row>
diff --git a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits_withCookieSupport__VisitTime.getByDayOfWeek_day.xml b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits_withCookieSupport__VisitTime.getByDayOfWeek_day.xml
index b358ca2548..7b035b0188 100755
--- a/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits_withCookieSupport__VisitTime.getByDayOfWeek_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_OneVisitorTwoVisits_withCookieSupport__VisitTime.getByDayOfWeek_day.xml
@@ -17,12 +17,7 @@
 	</row>
 	<row>
 		<label>Thursday</label>
-		<nb_visits>2</nb_visits>
-		<nb_uniq_visitors>1</nb_uniq_visitors>
-		<nb_actions>9</nb_actions>
-		<sum_visit_length>1621</sum_visit_length>
-		<bounce_count>1</bounce_count>
-		<nb_visits_converted>2</nb_visits_converted>
+		<nb_visits>0</nb_visits>
 		<day_of_week>4</day_of_week>
 	</row>
 	<row>
@@ -32,7 +27,12 @@
 	</row>
 	<row>
 		<label>Saturday</label>
-		<nb_visits>0</nb_visits>
+		<nb_visits>2</nb_visits>
+		<nb_uniq_visitors>1</nb_uniq_visitors>
+		<nb_actions>9</nb_actions>
+		<sum_visit_length>1621</sum_visit_length>
+		<bounce_count>1</bounce_count>
+		<nb_visits_converted>2</nb_visits_converted>
 		<day_of_week>6</day_of_week>
 	</row>
 	<row>
diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html
index e65de573d8..63e040aca0 100644
--- a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html
+++ b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_month.original.html
@@ -1648,7 +1648,205 @@ Back to top
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Visits by Day of Week
 </h2>
-There is no data for this report.<a name="Actions_get"/>
+<img
+alt=""
+src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAADICAIAAACF9KXqAAAJBklEQVR4nO3dz4vbeR3H8XT7Y9rasXQs/TXWihmoVgpC7Unw4GUPgiKi/4AH7x5FLyJ78epFcf+BBfEke1OQdS9VwYO1YKMM3Wl3yjLVrbYdCh0PgTSTfL/Ja5JMvt9v8nicZpLvpJ+8+eY7z37zY47s7e21AADGeaPqBQAAzSAaAICIaAAAIqIBAIiIBgAgIhoAgIhoAAAiogEAiMw7GtrtduGFhZeP/ikAYJ6Ozfbm3nr7TwOX/PB7X05+sNPp5Ne22+3R2wMAMzfjaPjHg49fvnzZ+/b48eNbW1vr6+u9SzqdzsCvfAUAAI0w42hotVrPnj3rfX327NmHDx/2R0OZ4ZLofT3QGd2reht0r+3feLrlAwDFZh8N0xsREK2ihnDeAgDmoIJ3T/SfG0h+xx8oAhQDAByS2Z9pOH369JS30KuKpAAOtDEAMLEZR8O3vtZ+uLU1/e10CyCsgQNtDABMZsbR8I2vXmu1ro3dLDw90F8DyW22vKYBAA5NHT8R8kAf5eRznwBgPur47onhd1EWvoGibOP5LBIAls2Rvb29qtcAADRAHZ+eAABqSDQAABHRAABERAMAEBENAEBENAAAEdEAAEQGo6HdbvuMRQBg2L5o8IcbAIAy+6JBMQAAZcb/7Ymt/X/qent7+9KlS71vf/vHD2a/qGb6+lc+XXaVKXWNGBFArThu9/Qfuqf6g1W//t3m7//84dTrWRBf+OzZz62vDl/+k1/99fGTF/NfTw2JBqAR/v6vf7/7/tb47ZbDwaJhfX297NtPnPlohstquvPnz1+58qnhy48d+9v8F1NPV65cqXoJAOM9/vho1Uuokf5Dt7dcAgAR0QAARPY9PdH7hIbuF95MAQD07IsGlQAAlPH0BAAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQEQ0AAAR0QAAREQDABARDQBARDQAABHRAABERAMAEBENAEBENAAAEdEAAEREAwAQEQ0AQORY/zftdrv3dafTmftiAID6eh0N7Xa7PxQGvgUAlpynJwCAyLHxm8Ah+/Cj//3o53+oehW1cPToG7/48ZuFV7373j/f+8sHc15PPX3m8ie//50vFV7101++/5//7s55PfX03Tc/f/uLlwuv+vYPfjPnxdTWOz/75tGj/vN8AEf29va6X5U9PXHnzp3+H7h3796NGzfmucTRdnd3Hzx4sLGxUfVCam1nZ2d3d/fy5eIjCF2bm5tra2urq6tVL6TW7t69W6sjQA09ffp0Z2fn2rVrVS+k1h49erSysrK2tlb1Qmrt/v37V69eXVlZqXohr40/03D79u0R31bu+fPnq6urN2/erHohtba9vf3ixQtHsdHOnDlz4cKFc+fOVb2QWnv16tWtW7eqXkWtPXny5PHjx9evX696IbW2ubl58uTJixcvVr2QWjtx4sTGxsapU6eqXshrTssAABHRAABEXj890el0fE4DAFBm32sahAIAUOb1uycAAEbwmgYAILKY0dD/4gxGW8JZzfAuN316h7H+ps9kVsxhGqZXqA5jqcUnQnYHMfDRUi2vsehTuK8s53xG/5EUfzOlTB0ONw01MLqBHWw5d7nkVfPLOZkyC/M+g1pEA2P1djKPQyZTuAspidCIB90SPh6V+kEt0sTqEg3dN3x259j9onc4Gwi0gWtHHP4Kt1mk375lO+Jw0g6MovBXRVPGVbirFO45rXG7x/CONHZ0ZTc1vE0NR1emf/2FO9XwnHvbD9xC2c22mjaT0QrH0lq+OXSNOMgM7yqtg0yv6Y+sMmMfaL3NWvXbqeoSDWWGJ9sqGlDhZguwb01g9CjKNmgtyrhGPBT7LxzeOHyObPH2tPDEw0CZld1Ca+H2qDLmMGDgbhZW5oARv+oW4JE1meSg1Kp0Mo18IeTEM+pF3PLsgtNY+HEd3p1q0OjC5U1/Lxo0k2HtPt1Llvko1L0LAwOZ7HYm+6dbTZtePrHJ7tQ8x1KjMw29uz2r+zzN3txoA3c8HGzjxtV7eCSniPPb7P92UUc3jfxxukhjmeagtEhz6Ck8nzfzf2WRRld4wmBiFU6mRtEwW7P6LdJEwwe4shPLPc0aV+ERqvCZiAluufCShRndTIydSWspx1JoSeZwGHdzSUY3gWonU6+nJ7rPhE15I2NP/jTrvFZoxLOGE/xUT53H1b+qEb/Rx15SZuyWC7+nTXA8WviZhBZ7DjM8mTfBNk2c3pTH4WSzuY2l7mcaBv5PWXYSbOAVp4d3uqxWhu91a+TE+k/mj/6p5hq++62Su5z87PAT2Au/p42dVTKTsp9dbMszh8JH2fDdLBzCch7DR08sPCjVZKdaxr890bhKrZZxTczohplJlzlMw/QKzWcs9Xp6Yg7sbQdiXBMzumFm0mUO0zC9QnMbyzKeaQAAJrB0ZxoAgMmIBgAgIhoAgMj/AafOR5ztYuGeAAAAAElFTkSuQmCC"
+height="200"
+width="700"/>
+<br/>
+<br/>
+<table style="border-collapse:collapse; margin-left: 5px">
+<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
+<th style="padding: 6px 0;">
+&nbsp;Day of the week&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Visits&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions per Visit&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Avg. Time on Website&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Bounce Rate&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Conversion Rate&nbsp;&nbsp;
+</th>
+</thead>
+<tbody>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Monday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+2
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+2
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:06:01
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Tuesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+5
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+5
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:15:01
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Wednesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Thursday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Friday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Saturday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Sunday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+100%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+</tbody>
+</table>
+<br/>
+<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt" href="#reportTop">
+Back to top
+</a><a name="Actions_get"/>
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Actions - Main metrics
 </h2>
diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html
index ebc947ff38..1abca8b9f3 100644
--- a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html
+++ b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_html_tables_only__PDFReports.generateReport_month.original.html
@@ -1620,7 +1620,198 @@ Back to top
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Visits by Day of Week
 </h2>
-There is no data for this report.<a name="Actions_get"/>
+<table style="border-collapse:collapse; margin-left: 5px">
+<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
+<th style="padding: 6px 0;">
+&nbsp;Day of the week&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Visits&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions per Visit&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Avg. Time on Website&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Bounce Rate&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Conversion Rate&nbsp;&nbsp;
+</th>
+</thead>
+<tbody>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Monday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+2
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+2
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:06:01
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Tuesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+5
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+5
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:15:01
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Wednesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Thursday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Friday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Saturday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Sunday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+100%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+</tbody>
+</table>
+<br/>
+<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt" href="#reportTop">
+Back to top
+</a><a name="Actions_get"/>
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Actions - Main metrics
 </h2>
diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_month.original.pdf b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_month.original.pdf
index 190016aa7fb8cf40b2340f1db4fe2a87e7bacec5..3cc8a3fbd057b1d37249e64afc7be04387f0c925 100644
GIT binary patch
delta 8977
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

delta 7354
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

diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_all_sites__PDFReports.generateReport_month.original.sms.txt b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_all_sites__PDFReports.generateReport_month.original.sms.txt
index b5ad16e1ba..398cd7cdd7 100644
--- a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_all_sites__PDFReports.generateReport_month.original.sms.txt
+++ b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_all_sites__PDFReports.generateReport_month.original.sms.txt
@@ -1 +1 @@
-2010, January. Site 1: 3 Visits, 8 Actions. Site 2: 1 Visits, 3 Actions
\ No newline at end of file
+2010, January. Site 1: 3 Visits (+100%), 8 Actions (+100%). Site 2: 1 Visits (+100%), 3 Actions (+100%)
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_one_site__PDFReports.generateReport_month.original.sms.txt b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_one_site__PDFReports.generateReport_month.original.sms.txt
index 17121891e8..96518ebcbc 100644
--- a/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_one_site__PDFReports.generateReport_month.original.sms.txt
+++ b/tests/PHPUnit/Integration/expected/test_TwoVisitors_twoWebsites_differentDays_scheduled_report_via_sms_one_site__PDFReports.generateReport_month.original.sms.txt
@@ -1 +1 @@
-2010, January. 3 Visits, 8 Actions
\ No newline at end of file
+2010, January. 3 Visits (+100%), 8 Actions (+100%)
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems__VisitTime.getByDayOfWeek_day.xml b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems__VisitTime.getByDayOfWeek_day.xml
index 0f224cb46e..e9de54454b 100755
--- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems__VisitTime.getByDayOfWeek_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems__VisitTime.getByDayOfWeek_day.xml
@@ -7,7 +7,12 @@
 	</row>
 	<row>
 		<label>Tuesday</label>
-		<nb_visits>0</nb_visits>
+		<nb_visits>3</nb_visits>
+		<nb_uniq_visitors>1</nb_uniq_visitors>
+		<nb_actions>13</nb_actions>
+		<sum_visit_length>5403</sum_visit_length>
+		<bounce_count>0</bounce_count>
+		<nb_visits_converted>2</nb_visits_converted>
 		<day_of_week>2</day_of_week>
 	</row>
 	<row>
@@ -17,12 +22,7 @@
 	</row>
 	<row>
 		<label>Thursday</label>
-		<nb_visits>3</nb_visits>
-		<nb_uniq_visitors>1</nb_uniq_visitors>
-		<nb_actions>13</nb_actions>
-		<sum_visit_length>5403</sum_visit_length>
-		<bounce_count>0</bounce_count>
-		<nb_visits_converted>2</nb_visits_converted>
+		<nb_visits>0</nb_visits>
 		<day_of_week>4</day_of_week>
 	</row>
 	<row>
diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html
index 2aec4e385f..3ea13e548d 100644
--- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html
+++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_and_graph__PDFReports.generateReport_week.original.html
@@ -1708,7 +1708,205 @@ Back to top
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Visits by Day of Week
 </h2>
-There is no data for this report.<a name="Goals_get_idGoal--ecommerceOrder"/>
+<img
+alt=""
+src="data:image/png;base64,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"
+height="200"
+width="700"/>
+<br/>
+<br/>
+<table style="border-collapse:collapse; margin-left: 5px">
+<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
+<th style="padding: 6px 0;">
+&nbsp;Day of the week&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Visits&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions per Visit&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Avg. Time on Website&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Bounce Rate&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Conversion Rate&nbsp;&nbsp;
+</th>
+</thead>
+<tbody>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Monday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Tuesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+3
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+13
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+4.33
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:30:01
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+66.67%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Wednesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+2
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+3
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1.5
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:12:02
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+50%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+100%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Thursday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Friday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Saturday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Sunday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+</tbody>
+</table>
+<br/>
+<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt" href="#reportTop">
+Back to top
+</a><a name="Goals_get_idGoal--ecommerceOrder"/>
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Ecommerce Orders
 </h2>
diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html
index d8f85ebc9d..c4e10f7ff6 100644
--- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html
+++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_html_tables_only__PDFReports.generateReport_week.original.html
@@ -1680,7 +1680,198 @@ Back to top
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Visits by Day of Week
 </h2>
-There is no data for this report.<a name="Goals_get_idGoal--ecommerceOrder"/>
+<table style="border-collapse:collapse; margin-left: 5px">
+<thead style="background-color: rgb(228,226,215); color: rgb(37,87,146); font-size: 11pt;">
+<th style="padding: 6px 0;">
+&nbsp;Day of the week&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Visits&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Actions per Visit&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Avg. Time on Website&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Bounce Rate&nbsp;&nbsp;
+</th>
+<th style="padding: 6px 0;">
+&nbsp;Conversion Rate&nbsp;&nbsp;
+</th>
+</thead>
+<tbody>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Monday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Tuesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+3
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+13
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+4.33
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:30:01
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+66.67%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Wednesday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+2
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+3
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+1.5
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:12:02
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+50%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+100%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Thursday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Friday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="background-color: rgb(249,250,250)">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Saturday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+<tr style="">
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+Sunday
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+00:00:00
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+<td style="font-size: 11pt; border-bottom: 1px solid rgb(231,231,231); padding: 5px 0 5px 5px;">
+0%
+</td>
+</tr>
+</tbody>
+</table>
+<br/>
+<a style="text-decoration:none; color: rgb(126,115,99); font-size: 9pt" href="#reportTop">
+Back to top
+</a><a name="Goals_get_idGoal--ecommerceOrder"/>
 <h2 style="color: rgb(126,115,99); font-size: 11pt;">
 Ecommerce Orders
 </h2>
diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_week.original.pdf b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_in_pdf_tables_only__PDFReports.generateReport_week.original.pdf
index 9c560a5fdb1769af280c5deb3c4cdc09c684a80c..ba1c591b34319ddf4acf76d02c886b90f77c9ccf 100644
GIT binary patch
delta 9705
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
B5K906

delta 8112
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
b0P_{X;7&avziJ95{qtv%w)Qf+<&*vg!DZ+`

diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_all_sites__PDFReports.generateReport_week.original.sms.txt b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_all_sites__PDFReports.generateReport_week.original.sms.txt
index 22063e7354..a421c77027 100644
--- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_all_sites__PDFReports.generateReport_week.original.sms.txt
+++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_all_sites__PDFReports.generateReport_week.original.sms.txt
@@ -1 +1 @@
-Week 4 April - 10 April 2011. Piwik test: 5 Visits, 16 Actions, Revenue: $ 13361, 5 Goal conversions, Product Revenue: $ 13351, 4 Ecommerce Orders. Piwik test: 1 Visits, 0 Actions, Revenue: $ 250, 1 Goal conversions
\ No newline at end of file
+Week 4 April - 10 April 2011. Piwik test: 5 Visits (+100%), 16 Actions (+100%), Revenue: $ 13361 (+100%), 5 Goal conversions (+100%), Product Revenue: $ 13351 (+100%), 4 Ecommerce Orders (+100%). Piwik test: 1 Visits (+100%), 0 Actions, Revenue: $ 250 (+100%), 1 Goal conversions (+100%)
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_one_site__PDFReports.generateReport_week.original.sms.txt b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_one_site__PDFReports.generateReport_week.original.sms.txt
index e84eb14972..fa6a9d691e 100644
--- a/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_one_site__PDFReports.generateReport_week.original.sms.txt
+++ b/tests/PHPUnit/Integration/expected/test_ecommerceOrderWithItems_scheduled_report_via_sms_one_site__PDFReports.generateReport_week.original.sms.txt
@@ -1 +1 @@
-Week 4 April - 10 April 2011. 5 Visits, 16 Actions, Revenue: $ 13361, 5 Goal conversions, Product Revenue: $ 13351, 4 Ecommerce Orders
\ No newline at end of file
+Week 4 April - 10 April 2011. 5 Visits (+100%), 16 Actions (+100%), Revenue: $ 13361 (+100%), 5 Goal conversions (+100%), Product Revenue: $ 13351 (+100%), 4 Ecommerce Orders (+100%)
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_day.xml b/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_day.xml
index 151ee2db1e..9e698bf229 100755
--- a/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_day.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <result>
-	<error message="getByDayOfWeek not working yet
+	<error message="VisitTime.getByDayOfWeek does not support multiple dates.
  
  --&gt; To temporarily debug this error further, set const DISPLAY_BACKTRACE_DEBUG=true; in ResponseBuilder.php" />
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_week.xml b/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_week.xml
index 151ee2db1e..9e698bf229 100755
--- a/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_week.xml
+++ b/tests/PHPUnit/Integration/expected/test_noVisit_PeriodIsLast__VisitTime.getByDayOfWeek_week.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <result>
-	<error message="getByDayOfWeek not working yet
+	<error message="VisitTime.getByDayOfWeek does not support multiple dates.
  
  --&gt; To temporarily debug this error further, set const DISPLAY_BACKTRACE_DEBUG=true; in ResponseBuilder.php" />
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_noVisit__MultiSites.getOne_day.xml b/tests/PHPUnit/Integration/expected/test_noVisit__MultiSites.getOne_day.xml
index af9517fd59..2c523aeb3e 100644
--- a/tests/PHPUnit/Integration/expected/test_noVisit__MultiSites.getOne_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_noVisit__MultiSites.getOne_day.xml
@@ -2,6 +2,10 @@
 <result>
 	<nb_visits>0</nb_visits>
 	<nb_actions>0</nb_actions>
+	<visits_evolution>0%</visits_evolution>
+	<actions_evolution>0%</actions_evolution>
+	<pageviews_evolution>0%</pageviews_evolution>
+	<revenue_evolution>0%</revenue_evolution>
 	<nb_pageviews>0</nb_pageviews>
 	<revenue>0</revenue>
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_noVisit__VisitTime.getByDayOfWeek_day.xml b/tests/PHPUnit/Integration/expected/test_noVisit__VisitTime.getByDayOfWeek_day.xml
index 162b8f9429..c234bed59e 100755
--- a/tests/PHPUnit/Integration/expected/test_noVisit__VisitTime.getByDayOfWeek_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_noVisit__VisitTime.getByDayOfWeek_day.xml
@@ -1,43 +1,2 @@
 <?xml version="1.0" encoding="utf-8" ?>
-<result>
-	<row>
-		<label>Monday</label>
-		<nb_visits>0</nb_visits>
-		<day_of_week>1</day_of_week>
-	</row>
-	<row>
-		<label>Tuesday</label>
-		<nb_visits>0</nb_visits>
-		<day_of_week>2</day_of_week>
-	</row>
-	<row>
-		<label>Wednesday</label>
-		<nb_visits>0</nb_visits>
-		<day_of_week>3</day_of_week>
-	</row>
-	<row>
-		<label>Thursday</label>
-		<nb_visits>0</nb_visits>
-		<nb_uniq_visitors>0</nb_uniq_visitors>
-		<nb_actions>0</nb_actions>
-		<sum_visit_length>0</sum_visit_length>
-		<bounce_count>0</bounce_count>
-		<nb_visits_converted>0</nb_visits_converted>
-		<day_of_week>4</day_of_week>
-	</row>
-	<row>
-		<label>Friday</label>
-		<nb_visits>0</nb_visits>
-		<day_of_week>5</day_of_week>
-	</row>
-	<row>
-		<label>Saturday</label>
-		<nb_visits>0</nb_visits>
-		<day_of_week>6</day_of_week>
-	</row>
-	<row>
-		<label>Sunday</label>
-		<nb_visits>0</nb_visits>
-		<day_of_week>7</day_of_week>
-	</row>
-</result>
\ No newline at end of file
+<result />
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_IndexedByDate__MultiSites.getAll_day.xml b/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_IndexedByDate__MultiSites.getAll_day.xml
index fc198901ac..938d916f4c 100755
--- a/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_IndexedByDate__MultiSites.getAll_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_IndexedByDate__MultiSites.getAll_day.xml
@@ -3,6 +3,10 @@
 	<nb_visits>2</nb_visits>
 	<nb_actions>3</nb_actions>
 	<label>Site AAAAAA</label>
+	<visits_evolution>100%</visits_evolution>
+	<actions_evolution>100%</actions_evolution>
+	<pageviews_evolution>100%</pageviews_evolution>
+	<revenue_evolution>0%</revenue_evolution>
 	<nb_pageviews>3</nb_pageviews>
 	<revenue>0</revenue>
 </result>
\ No newline at end of file
diff --git a/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_MultipleDatesNotSupported__MultiSites.getAll_day.xml b/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_MultipleDatesNotSupported__MultiSites.getAll_day.xml
index 1e3dd308ae..e30b698273 100644
--- a/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_MultipleDatesNotSupported__MultiSites.getAll_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_oneVisitor_oneWebsite_severalDays_DateRange_MultipleDatesNotSupported__MultiSites.getAll_day.xml
@@ -1,6 +1,98 @@
 <?xml version="1.0" encoding="utf-8" ?>
-<result>
-	<error message="Date format must be: YYYY-MM-DD, or 'today' or 'yesterday' or any keyword supported by the strtotime function (see http://php.net/strtotime for more information): 1970-01-01
- 
- --&gt; To temporarily debug this error further, set const DISPLAY_BACKTRACE_DEBUG=true; in ResponseBuilder.php" />
-</result>
\ No newline at end of file
+<results>
+	<result date="2010-12-15">
+		<row>
+			<label>Site AAAAAA</label>
+			<nb_visits>2</nb_visits>
+			<nb_actions>3</nb_actions>
+			<nb_pageviews>3</nb_pageviews>
+			<revenue>0</revenue>
+			<visits_evolution>0%</visits_evolution>
+			<actions_evolution>0%</actions_evolution>
+			<pageviews_evolution>0%</pageviews_evolution>
+			<revenue_evolution>0%</revenue_evolution>
+			<idsite>1</idsite>
+		</row>
+		<row>
+			<label>SITE BBbbBB</label>
+			<nb_visits>1</nb_visits>
+			<nb_actions>1</nb_actions>
+			<nb_pageviews>1</nb_pageviews>
+			<revenue>0</revenue>
+			<visits_evolution>0%</visits_evolution>
+			<actions_evolution>0%</actions_evolution>
+			<pageviews_evolution>0%</pageviews_evolution>
+			<revenue_evolution>0%</revenue_evolution>
+			<idsite>2</idsite>
+		</row>
+	</result>
+	<result date="2010-12-16" />
+	<result date="2010-12-17" />
+	<result date="2010-12-18" />
+	<result date="2010-12-19" />
+	<result date="2010-12-20" />
+	<result date="2010-12-21" />
+	<result date="2010-12-22" />
+	<result date="2010-12-23" />
+	<result date="2010-12-24" />
+	<result date="2010-12-25">
+		<row>
+			<label>Site AAAAAA</label>
+			<nb_visits>2</nb_visits>
+			<nb_actions>3</nb_actions>
+			<nb_pageviews>3</nb_pageviews>
+			<revenue>0</revenue>
+			<visits_evolution>100%</visits_evolution>
+			<actions_evolution>100%</actions_evolution>
+			<pageviews_evolution>100%</pageviews_evolution>
+			<revenue_evolution>0%</revenue_evolution>
+			<idsite>1</idsite>
+		</row>
+		<row>
+			<label>SITE BBbbBB</label>
+			<nb_visits>1</nb_visits>
+			<nb_actions>1</nb_actions>
+			<nb_pageviews>1</nb_pageviews>
+			<revenue>0</revenue>
+			<visits_evolution>100%</visits_evolution>
+			<actions_evolution>100%</actions_evolution>
+			<pageviews_evolution>100%</pageviews_evolution>
+			<revenue_evolution>0%</revenue_evolution>
+			<idsite>2</idsite>
+		</row>
+	</result>
+	<result date="2010-12-26" />
+	<result date="2010-12-27" />
+	<result date="2010-12-28" />
+	<result date="2010-12-29" />
+	<result date="2010-12-30" />
+	<result date="2010-12-31" />
+	<result date="2011-01-01" />
+	<result date="2011-01-02" />
+	<result date="2011-01-03" />
+	<result date="2011-01-04" />
+	<result date="2011-01-05" />
+	<result date="2011-01-06" />
+	<result date="2011-01-07" />
+	<result date="2011-01-08" />
+	<result date="2011-01-09" />
+	<result date="2011-01-10" />
+	<result date="2011-01-11" />
+	<result date="2011-01-12" />
+	<result date="2011-01-13" />
+	<result date="2011-01-14" />
+	<result date="2011-01-15">
+		<row>
+			<label>Site AAAAAA</label>
+			<nb_visits>2</nb_visits>
+			<nb_actions>3</nb_actions>
+			<nb_pageviews>3</nb_pageviews>
+			<revenue>0</revenue>
+			<visits_evolution>100%</visits_evolution>
+			<actions_evolution>100%</actions_evolution>
+			<pageviews_evolution>100%</pageviews_evolution>
+			<revenue_evolution>0%</revenue_evolution>
+			<idsite>1</idsite>
+		</row>
+	</result>
+</results>
\ No newline at end of file
diff --git a/tests/PHPUnit/IntegrationTestCase.php b/tests/PHPUnit/IntegrationTestCase.php
index e085147ec4..5507afa734 100755
--- a/tests/PHPUnit/IntegrationTestCase.php
+++ b/tests/PHPUnit/IntegrationTestCase.php
@@ -553,6 +553,7 @@ abstract class IntegrationTestCase extends PHPUnit_Framework_TestCase
                         $parametersToSet['serialize'] = 1;
 
                         $exampleUrl = $apiMetadata->getExampleUrl($class, $methodName, $parametersToSet);
+                        
                         if ($exampleUrl === false) {
                             $skipped[] = $apiId;
                             continue;
@@ -621,7 +622,8 @@ abstract class IntegrationTestCase extends PHPUnit_Framework_TestCase
         }
         $parametersToSet = array(
             'idSite'         => $idSite,
-            'date'           => $periods == array('range') ? $dateTime : date('Y-m-d', strtotime($dateTime)),
+            'date'           => ($periods == array('range') || strpos($dateTime, ',') !== false) ?
+                                    $dateTime : date('Y-m-d', strtotime($dateTime)),
             'expanded'       => '1',
             'piwikUrl'       => 'http://example.org/piwik/',
             // Used in getKeywordsForPageUrl
-- 
GitLab