From 4c81a448c77568afca9f0cd42de153be20065ab8 Mon Sep 17 00:00:00 2001 From: Thomas Steur <thomas.steur@gmail.com> Date: Thu, 21 Jan 2016 15:10:59 +0000 Subject: [PATCH] fix tests and make sure visit total time is updated on ping requests --- .../Integration/Tracker/PingRequestTest.php | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/tests/PHPUnit/Integration/Tracker/PingRequestTest.php b/tests/PHPUnit/Integration/Tracker/PingRequestTest.php index 75e8c10c1a..586283d9bf 100644 --- a/tests/PHPUnit/Integration/Tracker/PingRequestTest.php +++ b/tests/PHPUnit/Integration/Tracker/PingRequestTest.php @@ -47,7 +47,7 @@ class PingRequestTest extends IntegrationTestCase $pingTime = '2012-01-05 00:20:00'; $this->doPingRequest($tracker, $pingTime, $setNewDimensionValues = false); - $this->assertInitialVisitIsExtended($pingTime, self::FIRST_VISIT_TIME, $checkModifiedDimensions = false); + $this->assertInitialVisitIsNotExtended(self::FIRST_VISIT_TIME, $checkModifiedDimensions = false, 1201); } public function test_PingWithinThirtyMinutes_AndChangedDimensionValues_ExtendsExistingVisit_AndChangesAppropriateDimensions() @@ -63,7 +63,7 @@ class PingRequestTest extends IntegrationTestCase $pingTime = '2012-01-05 00:20:00'; $this->doPingRequest($tracker, $pingTime, $setNewDimensionValues = true); - $this->assertInitialVisitIsExtended($pingTime, self::FIRST_VISIT_TIME, $checkModifiedDimensions = true); + $this->assertInitialVisitIsNotExtended(self::FIRST_VISIT_TIME, $checkModifiedDimensions = true, 1201); } public function test_PingWithinThirtyMinutes_DoesNotTriggerGoalConversion() @@ -82,7 +82,7 @@ class PingRequestTest extends IntegrationTestCase $tracker->setDebugStringAppend('&idgoal=1'); $this->doPingRequest($tracker, $pingTime, $setNewDimensionValues = true); - $this->assertInitialVisitIsExtended($pingTime, self::FIRST_VISIT_TIME, $checkModifiedDimensions = true); + $this->assertInitialVisitIsNotExtended(self::FIRST_VISIT_TIME, $checkModifiedDimensions = true, 1201); $this->assertGoalConversionCount(1); } @@ -163,11 +163,17 @@ class PingRequestTest extends IntegrationTestCase return Db::fetchOne("SELECT MAX(server_time) FROM " . Common::prefixTable('log_link_visit_action') . " WHERE idvisit = ?", array($idVisit)); } + private function getVisitTotalTime($idVisit) + { + return Db::fetchOne("SELECT MAX(visit_total_time) FROM " . Common::prefixTable('log_visit') . " WHERE idvisit = ?", array($idVisit)); + } + private function assertInitialVisitIsCorrect() { $this->assertVisitCount(1); $this->assertActionCount(1); $this->assertGoalConversionCount(1); + $this->assertEquals(0, $this->getVisitTotalTime($idVisit= 1)); $this->assertVisitPropertiesAreUnchanged($idVisit = 1); } @@ -192,17 +198,20 @@ class PingRequestTest extends IntegrationTestCase return $response; } - private function assertInitialVisitIsExtended($newEndTime, $lastActionTime, $checkPropertiesModified) + private function assertInitialVisitIsNotExtended($firstActionTime, $checkPropertiesModified, $expectedTotalTime) { $this->assertVisitCount(1); $this->assertActionCount(1); $this->assertGoalConversionCount(1); $visitEndTime = $this->getVisitLastActionTime($idVisit = 1); - $this->assertEquals($newEndTime, $visitEndTime); + $this->assertEquals($firstActionTime, $visitEndTime); $actionTime = $this->getLatestActionTime($idVisit = 1); - $this->assertEquals($lastActionTime, $actionTime); + $this->assertEquals($firstActionTime, $actionTime); + + $visitTotalTime = $this->getVisitTotalTime($idVisit = 1); + $this->assertEquals($expectedTotalTime, $visitTotalTime); if ($checkPropertiesModified) { $this->assertVisitPropertiesAreChanged($idVisit = 1, $checkUnchangeable = false); -- GitLab