diff options
author | Thomas Steur <thomas.steur@gmail.com> | 2015-02-10 23:38:42 +0300 |
---|---|---|
committer | Thomas Steur <thomas.steur@gmail.com> | 2015-02-11 00:47:27 +0300 |
commit | 75ec19e300c92d7f124d7a343a8f981e8b878ea4 (patch) | |
tree | 9603fd99aef0bac344a56bc684245da5f897535e /plugins/VisitsSummary | |
parent | 346ef521bc621ca8116d4854226e5f3d6d6c036e (diff) |
Fixed an integration test, we only need to check for min users, not exact number of users
Diffstat (limited to 'plugins/VisitsSummary')
-rw-r--r-- | plugins/VisitsSummary/tests/Integration/VisitsSummaryTest.php | 43 |
1 files changed, 27 insertions, 16 deletions
diff --git a/plugins/VisitsSummary/tests/Integration/VisitsSummaryTest.php b/plugins/VisitsSummary/tests/Integration/VisitsSummaryTest.php index cba68a8cad..4d6115c417 100644 --- a/plugins/VisitsSummary/tests/Integration/VisitsSummaryTest.php +++ b/plugins/VisitsSummary/tests/Integration/VisitsSummaryTest.php @@ -12,6 +12,7 @@ use Piwik\Access; use Piwik\API\Request; use Piwik\DataAccess\ArchiveTableCreator; use Piwik\Db; +use Piwik\Plugins\Live\API; use Piwik\Plugins\VisitsSummary\VisitsSummary; use Piwik\Tests\Framework\Fixture; use Piwik\Tests\Framework\Mock\FakeAccess; @@ -59,7 +60,7 @@ class VisitsSummaryTest extends IntegrationTestCase $response = $this->requestProcessedGetReport(); - $this->assertUsersNotRemovedFromProcessedReport($response, $expectedUsers = 2.0); + $this->assertUsersNotRemovedFromProcessedReport($response, $expectedUsers = null, $minExpectedUsers = 1); } public function test_enrichProcessedReportIfVisitsSummaryGet_shouldNotRemoveUsers_IfNoneWereTrackedThatDay_ButThatMonth() @@ -84,10 +85,20 @@ class VisitsSummaryTest extends IntegrationTestCase $this->assertUsersRemovedFromProcessedReport($response); } - private function assertUsersNotRemovedFromProcessedReport($response, $numUsers) + private function assertUsersNotRemovedFromProcessedReport($response, $exactNumUsers = null, $minNumUsers = 0) { $table = $response['reportData']; - $this->assertSame(array($numUsers), $table->getColumn($this->column)); + + if ($exactNumUsers !== null) { + $this->assertSame(array($exactNumUsers), $table->getColumn($this->column)); + } + + if ($minNumUsers != 0) { + $users = $table->getColumn($this->column); + $user = array_shift($users); + $this->assertGreaterThanOrEqual($minNumUsers, $user); + } + $this->assertEquals(array(3), $table->getColumn('nb_visits')); $this->assertNotEmpty($response['metadata']['metrics'][$this->column]); $this->assertNotEmpty($response['metadata']['metricsDocumentation'][$this->column]); @@ -127,30 +138,30 @@ class VisitsSummaryTest extends IntegrationTestCase private function trackPageviewsWithDifferentUsers($userIds) { - $tracker = $this->getTracker(); - foreach ($userIds as $index => $userId) { + $tracker = $this->getTracker($index); $tracker->setForceNewVisit(); $this->trackPageview($tracker, $userId, '/index/' . $index . '.html'); } } - private function trackPageview(\PiwikTracker $tracker, $userId, $url = null) + private function trackPageview(\PiwikTracker $tracker, $userId, $url) { - if (null !== $url) { - $tracker->setUrl('http://www.example.org' . $url); - } - + $tracker->setUrl('http://www.example.org' . $url); $tracker->setUserId($userId); - - $title = $url ? : 'test'; - - $tracker->doTrackPageView($title); + $tracker->doTrackPageView($url); } - private function getTracker() + private function getTracker($hoursOffset = 0) { - $tracker = Fixture::getTracker(1, $this->date . ' 00:01:01', true, true); + $hour = 10; + if ($hoursOffset) { + $hour += $hoursOffset; + } + + $date = sprintf('%s %d:20:01', $this->date, $hour); + + $tracker = Fixture::getTracker(1, $date, true, true); $tracker->setTokenAuth(Fixture::getTokenAuth()); return $tracker; } |