diff options
author | Stefan Giehl <stefan@matomo.org> | 2020-04-26 23:19:54 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-26 23:19:54 +0300 |
commit | 1cee7acdad124f2d4c3c4e535fc431c6f03f2765 (patch) | |
tree | 3e64df395645ff034f5da531e05e8bd109432704 | |
parent | 66bcb98556e5b92b7b6187a5a904e13a408d0ed6 (diff) |
Ensure Referrers.get does return an empty result if there aren't any archives (#15846)
* Ensure Referrers.get does return an empty result if there aren't any archives
* update expected test files
-rw-r--r-- | plugins/Referrers/API.php | 9 | ||||
-rw-r--r-- | tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_csv__API.get_month.csv | bin | 5296 -> 4520 bytes | |||
-rw-r--r-- | tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_day.xml | 91 | ||||
-rw-r--r-- | tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_week.xml | 91 |
4 files changed, 20 insertions, 171 deletions
diff --git a/plugins/Referrers/API.php b/plugins/Referrers/API.php index 38a74b2ada..8bc75044f8 100644 --- a/plugins/Referrers/API.php +++ b/plugins/Referrers/API.php @@ -18,7 +18,6 @@ use Piwik\DataTable\Filter\ColumnCallbackAddColumnPercentage; use Piwik\Date; use Piwik\Metrics; use Piwik\Piwik; -use Piwik\Plugins\LocalDevUtilities\LocalDevUtilities; use Piwik\Plugins\Referrers\DataTable\Filter\GroupDifferentSocialWritings; use Piwik\Site; @@ -753,8 +752,12 @@ class API extends \Piwik\Plugin\API $result = new DataTable\Map(); $result->setKeyName($table->getKeyName()); foreach ($table->getDataTables() as $label => $childTable) { - $referrerTypeTable = $this->createReferrerTypeTable($childTable); - $result->addTable($referrerTypeTable, $label); + if ($childTable->getRowsCount() > 0) { + $referrerTypeTable = $this->createReferrerTypeTable($childTable); + $result->addTable($referrerTypeTable, $label); + } else { + $result->addTable(new DataTable(), $label); + } } } else { throw new \Exception("Unexpected DataTable type: " . get_class($table)); // sanity check diff --git a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_csv__API.get_month.csv b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_csv__API.get_month.csv Binary files differindex b4723abc70..eef576588b 100644 --- a/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_csv__API.get_month.csv +++ b/tests/PHPUnit/System/expected/test_OneVisitorTwoVisits_csv__API.get_month.csv diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_day.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_day.xml index 15514f8efc..106f23f16b 100644 --- a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_day.xml +++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_day.xml @@ -1,87 +1,10 @@ <?xml version="1.0" encoding="utf-8" ?> <results> - <result date="2009-01-04"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-05"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-06"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-07"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-08"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-09"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-10"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> + <result date="2009-01-04" /> + <result date="2009-01-05" /> + <result date="2009-01-06" /> + <result date="2009-01-07" /> + <result date="2009-01-08" /> + <result date="2009-01-09" /> + <result date="2009-01-10" /> </results>
\ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_week.xml b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_week.xml index 42fa901dcd..867400a47a 100644 --- a/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_week.xml +++ b/tests/PHPUnit/System/expected/test_noVisit_PeriodIsLast__Referrers.get_week.xml @@ -1,87 +1,10 @@ <?xml version="1.0" encoding="utf-8" ?> <results> - <result date="2008-12-29,2009-01-04"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-05,2009-01-11"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-12,2009-01-18"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-19,2009-01-25"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-01-26,2009-02-01"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-02-02,2009-02-08"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> - <result date="2009-02-09,2009-02-15"> - <Referrers_visitorsFromSearchEngines>0</Referrers_visitorsFromSearchEngines> - <Referrers_visitorsFromSocialNetworks>0</Referrers_visitorsFromSocialNetworks> - <Referrers_visitorsFromDirectEntry>0</Referrers_visitorsFromDirectEntry> - <Referrers_visitorsFromWebsites>0</Referrers_visitorsFromWebsites> - <Referrers_visitorsFromCampaigns>0</Referrers_visitorsFromCampaigns> - <Referrers_visitorsFromDirectEntry_percent>0%</Referrers_visitorsFromDirectEntry_percent> - <Referrers_visitorsFromSearchEngines_percent>0%</Referrers_visitorsFromSearchEngines_percent> - <Referrers_visitorsFromCampaigns_percent>0%</Referrers_visitorsFromCampaigns_percent> - <Referrers_visitorsFromSocialNetworks_percent>0%</Referrers_visitorsFromSocialNetworks_percent> - <Referrers_visitorsFromWebsites_percent>0%</Referrers_visitorsFromWebsites_percent> - </result> + <result date="2008-12-29,2009-01-04" /> + <result date="2009-01-05,2009-01-11" /> + <result date="2009-01-12,2009-01-18" /> + <result date="2009-01-19,2009-01-25" /> + <result date="2009-01-26,2009-02-01" /> + <result date="2009-02-02,2009-02-08" /> + <result date="2009-02-09,2009-02-15" /> </results>
\ No newline at end of file |