diff options
author | Stefan Giehl <stefan@matomo.org> | 2022-07-08 12:34:16 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-08 12:34:16 +0300 |
commit | 89a44abd03df0102f860306628bd0d75987c3626 (patch) | |
tree | ac02d4cd384ee467618e4188e5d5bdada23c6b36 /tests | |
parent | 7885267b684c6b836b76b95a764fe792fafffbe1 (diff) |
Implement url parameter to ignore referrer (#19420)
* Implement url parameter to ignore referrer
* rebuilt js files
* apply some fixes
Diffstat (limited to 'tests')
-rw-r--r-- | tests/PHPUnit/Fixtures/ThreeGoalsOnePageview.php | 3 | ||||
-rw-r--r-- | tests/javascript/index.php | 18 |
2 files changed, 16 insertions, 5 deletions
diff --git a/tests/PHPUnit/Fixtures/ThreeGoalsOnePageview.php b/tests/PHPUnit/Fixtures/ThreeGoalsOnePageview.php index 49e5ee8560..e23c8af778 100644 --- a/tests/PHPUnit/Fixtures/ThreeGoalsOnePageview.php +++ b/tests/PHPUnit/Fixtures/ThreeGoalsOnePageview.php @@ -65,7 +65,8 @@ class ThreeGoalsOnePageview extends Fixture $t = self::getTracker($this->idSite, $this->dateTime, $defaultInit = true); // Record 1st page view - $t->setUrl('http://example.org/index.htm'); + $t->setUrl('http://example.org/index.htm?ignore_referrer=1'); + $t->setUrlReferrer('http://www.example.org/page/'); // this should be ignored due to the `ignore_referrer` parameter in page url self::checkResponse($t->doTrackPageView('0')); $t->setForceVisitDateTime(Date::factory($this->dateTime)->addHour(0.3)->getDatetime()); diff --git a/tests/javascript/index.php b/tests/javascript/index.php index 81ec2570a5..4c838a96b3 100644 --- a/tests/javascript/index.php +++ b/tests/javascript/index.php @@ -33,7 +33,7 @@ try { use \Piwik\Plugins\CustomJsTracker\TrackerUpdater; use \Piwik\Plugins\CustomJsTracker\TrackingCode\JsTestPluginTrackerFiles; -$targetFileName = '/tests/resources/matomo.test.js'; +$targetFileName = '/tests/resources/matomo2.test.js'; $sourceFile = PIWIK_DOCUMENT_ROOT . TrackerUpdater::DEVELOPMENT_PIWIK_JS; $targetFile = PIWIK_DOCUMENT_ROOT . $targetFileName; @@ -3690,7 +3690,7 @@ if ($mysql) { }); test("tracking", function() { - expect(180); + expect(182); // Prevent Opera and HtmlUnit from performing the default action (i.e., load the href URL) var stopEvent = function (evt) { @@ -3839,6 +3839,15 @@ if ($mysql) { strictEqual(2, tracker.getNumTrackedPageViews(), 'getNumTrackedPageViews, should increase num pageview counter'); + tracker.setReferrerUrl('http://another.referrer.url/path/page'); + tracker.setCustomUrl(customUrl + '&ignore_referrer=1'); + tracker.trackPageView(); + + tracker.setReferrerUrl(referrerUrl); + tracker.setCustomUrl(customUrl); + + strictEqual(3, tracker.getNumTrackedPageViews(), 'getNumTrackedPageViews, should increase num pageview counter'); + var idPageview = tracker.getConfigIdPageView(); ok(/([0-9a-zA-Z]){6}/.test(idPageview), 'trackPageview, should generate a random pageview id'); @@ -3846,7 +3855,7 @@ if ($mysql) { equal(tracker.getCustomDimension(2), "", "custom dimensions should not be cleared after a tracked pageview"); tracker.trackPageView("CustomTitleTest", {dimension2: 'my new value', dimension5: 'another dimension'}); - strictEqual(3, tracker.getNumTrackedPageViews(), 'getNumTrackedPageViews, should increase num pageview counter'); + strictEqual(4, tracker.getNumTrackedPageViews(), 'getNumTrackedPageViews, should increase num pageview counter'); var idPageviewCustomTitle = tracker.getConfigIdPageView(); ok(idPageviewCustomTitle != idPageview, 'trackPageview, should generate a new random pageview id whenever it is called'); @@ -4209,7 +4218,7 @@ if ($mysql) { var countTrackingEvents = /<span\>([0-9]+)\<\/span\>/.exec(results); ok (countTrackingEvents, "countTrackingEvents is set"); if(countTrackingEvents) { - equal( countTrackingEvents[1], "55", "count tracking events" ); + equal( countTrackingEvents[1], "56", "count tracking events" ); } // firing callback @@ -4242,6 +4251,7 @@ if ($mysql) { ok( /localhost.localdomain/.test( results ), "setCustomUrl()" ); ok( /referrer.example.com/.test( results ), "setReferrerUrl()" ); ok( ! /ignored.referrer.url/.test( results ), "ignored referrer url isn't sent with request" ); + ok( ! /another.referrer.url/.test( results ), "referrer ignored with url parameter isn't sent with request" ); ok( /cookiename/.test( results ) && /cookievalue/.test( results ), "tracking request contains custom variable" ); ok( /DeleteCustomVariableCookie/.test( results ), "tracking request deleting custom variable" ); ok( /DoTrack/.test( results ), "setDoNotTrack(false)" ); |