Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorThomas Steur <thomas.steur@gmail.com>2016-11-22 18:52:59 +0300
committerThomas Steur <thomas.steur@gmail.com>2016-11-22 18:52:59 +0300
commitcb53100ec2fd398b6761bca258c9ca1815cceb18 (patch)
treebbbbf97c1b5de00cba23b31006f9770364f47ba7 /tests
parentb5c4385a3aa2b1a415c5ca795bd3e9811fe55dcb (diff)
refs #10797 improve default tracking code
Diffstat (limited to 'tests')
-rw-r--r--tests/PHPUnit/Integration/Tracker/TrackerCodeGeneratorTest.php39
1 files changed, 33 insertions, 6 deletions
diff --git a/tests/PHPUnit/Integration/Tracker/TrackerCodeGeneratorTest.php b/tests/PHPUnit/Integration/Tracker/TrackerCodeGeneratorTest.php
index a8787cc5ee..f596684d92 100644
--- a/tests/PHPUnit/Integration/Tracker/TrackerCodeGeneratorTest.php
+++ b/tests/PHPUnit/Integration/Tracker/TrackerCodeGeneratorTest.php
@@ -26,11 +26,12 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
$visitorCustomVariables = array(array("name", "value"), array("name 2", "value 2")),
$pageCustomVariables = array(array("page cvar", "page cvar value")),
$customCampaignNameQueryParam = "campaignKey", $customCampaignKeywordParam = "keywordKey",
- $doNotTrack = true);
+ $doNotTrack = true, $disableCookies = false, $trackNoScript = true);
$expected = "&lt;!-- Piwik --&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var _paq = _paq || [];
+ // tracker methods like &quot;setCustomDimension&quot; should be called before &quot;trackPageView&quot;
_paq.push([\"setDocumentTitle\", document.domain + \"/\" + document.title]);
// you can set up to 5 custom variables for each visitor
_paq.push([\"setCustomVariable\", 1, \"name\", \"value\", \"visit\"]);
@@ -50,7 +51,33 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})();
&lt;/script&gt;
-&lt;noscript&gt;&lt;p&gt;&lt;img src=&quot;//localhost/piwik/piwik.php?idsite=1&quot; style=&quot;border:0;&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;/noscript&gt;
+&lt;noscript&gt;&lt;p&gt;&lt;img src=&quot;//localhost/piwik/piwik.php?idsite=1&amp;rec=1&quot; style=&quot;border:0;&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;/noscript&gt;
+&lt;!-- End Piwik Code --&gt;
+";
+
+ $this->assertEquals($expected, $jsTag);
+ }
+
+ public function testJavascriptTrackingCode_noScriptTrackingDisabled_defaultTrackingCode()
+ {
+ $generator = new TrackerCodeGenerator();
+
+ $jsTag = $generator->generate($idSite = 1, $piwikUrl = 'http://localhost/piwik');
+
+ $expected = "&lt;!-- Piwik --&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+ var _paq = _paq || [];
+ // tracker methods like &quot;setCustomDimension&quot; should be called before &quot;trackPageView&quot;
+ _paq.push(['trackPageView']);
+ _paq.push(['enableLinkTracking']);
+ (function() {
+ var u=&quot;//localhost/piwik/&quot;;
+ _paq.push(['setTrackerUrl', u+'piwik.php']);
+ _paq.push(['setSiteId', '1']);
+ var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
+ g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
+ })();
+&lt;/script&gt;
&lt;!-- End Piwik Code --&gt;
";
@@ -78,6 +105,7 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
$expected = "&lt;!-- Piwik --&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var _paq = _paq || [];
+ // tracker methods like &quot;setCustomDimension&quot; should be called before &quot;trackPageView&quot;
_paq.push([\"setDocumentTitle\", document.domain + \"/\" + document.title]);
// you can set up to 5 custom variables for each visitor
_paq.push([\"setCustomVariable\", 1, \"name\", \"value\", \"visit\"]);
@@ -97,7 +125,6 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})();
&lt;/script&gt;
-&lt;noscript&gt;&lt;p&gt;&lt;img src=&quot;https://localhost/piwik/piwik.php?idsite=1&quot; style=&quot;border:0;&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;/noscript&gt;
&lt;!-- End Piwik Code --&gt;
";
@@ -125,6 +152,7 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
$expected = "&lt;!-- Piwik --&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var _paq = _paq || [];
+ // tracker methods like &quot;setCustomDimension&quot; should be called before &quot;trackPageView&quot;
_paq.push([\"setDocumentTitle\", document.domain + \"/\" + document.title]);
// you can set up to 5 custom variables for each visitor
_paq.push([\"setCustomVariable\", 1, \"name\", \"value\", \"visit\"]);
@@ -145,7 +173,6 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})();
&lt;/script&gt;
-&lt;noscript&gt;&lt;p&gt;&lt;img src=&quot;//localhost/piwik/piwik.php?idsite=1&quot; style=&quot;border:0;&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;/noscript&gt;
&lt;!-- End Piwik Code --&gt;
";
@@ -169,6 +196,7 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
$expected = "&lt;!-- Piwik --&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var _paq = _paq || [];
+ // tracker methods like &quot;setCustomDimension&quot; should be called before &quot;trackPageView&quot;
_paq.push([\"setDocumentTitle\", document.domain + \"/\" + document.title]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
@@ -180,7 +208,6 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
})();
&lt;/script&gt;
&lt;script type='text/javascript' src=&quot;//localhost/piwik/piwik.js&quot;&gt;&lt;/script&gt;
-&lt;noscript&gt;&lt;p&gt;&lt;img src=&quot;//localhost/piwik/piwik.php?idsite=1&quot; style=&quot;border:0;&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;/noscript&gt;
&lt;!-- End Piwik Code --&gt;
";
@@ -206,6 +233,7 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
$expected = '&lt;!-- Piwik --&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var _paq = _paq || [];
+ // tracker methods like &quot;setCustomDimension&quot; should be called before &quot;trackPageView&quot;
_paq.push(["setDocumentTitle", document.domain + "/" + document.title]);
// you can set up to 5 custom variables for each visitor
_paq.push(["setCustomVariable", 1, "abc\"def", "abc\"def", "visit"]);
@@ -223,7 +251,6 @@ class TrackerCodeGeneratorTest extends IntegrationTestCase
g.type=\'text/javascript\'; g.async=true; g.defer=true; g.src=u+\'piwik.js\'; s.parentNode.insertBefore(g,s);
})();
&lt;/script&gt;
-&lt;noscript&gt;&lt;p&gt;&lt;img src=&quot;//abc&quot;def/piwik.php?idsite=1&quot; style=&quot;border:0;&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;/noscript&gt;
&lt;!-- End Piwik Code --&gt;
';