From 15277fb87b60a13d27173ba21348b85ce2d72193 Mon Sep 17 00:00:00 2001 From: mattab Date: Fri, 24 May 2013 12:56:25 +1200 Subject: Fixes #3953 now detecting campaign parameters within the hash tag as well --- tests/javascript/index.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/javascript/index.php b/tests/javascript/index.php index 8e45f0fa94..0d6fa88b8e 100644 --- a/tests/javascript/index.php +++ b/tests/javascript/index.php @@ -436,7 +436,7 @@ function PiwikTest() { }); test("Tracker getHostName(), getParameter(), urlFixup(), domainFixup(), titleFixup() and purify()", function() { - expect(47); + expect(57); var tracker = Piwik.getTracker(); @@ -459,8 +459,24 @@ function PiwikTest() { equal( tracker.hook.test._getParameter('http://piwik.org/', 'q'), '', 'no query'); equal( tracker.hook.test._getParameter('http://piwik.org/?q=test', 'q'), 'test', '?q'); + equal( tracker.hook.test._getParameter('http://piwik.org/?q=test#aq=not', 'q'), 'test', '?q'); equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2', 'q'), 'test2', '&q'); + + // getParameter in hash tag + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#aq=not', 'q'), 'test2', '&q'); + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#aq=not', 'aq'), 'not', '#aq'); + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#bq=yes&aq=not', 'bq'), 'yes', '#bq'); + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#pk_campaign=campaign', 'pk_campaign'), 'campaign', '#pk_campaign'); + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#bq=yes&aq=not', 'q'), 'test2', '#q'); + + // URL decoded equal( tracker.hook.test._getParameter('http://piwik.org/?q=http%3a%2f%2flocalhost%2f%3fr%3d1%26q%3dfalse', 'q'), 'http://localhost/?r=1&q=false', 'url'); + equal( tracker.hook.test._getParameter('http://piwik.org/?q=http%3a%2f%2flocalhost%2f%3fr%3d1%26q%3dfalse¬q=not', 'q'), 'http://localhost/?r=1&q=false', 'url'); + + // non existing parameters + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#bq=yes&aq=not', 'bqq'), "", '#q'); + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#bq=yes&aq=not', 'bq='), "", '#q'); + equal( tracker.hook.test._getParameter('http://piwik.org/?p=test1&q=test2#bq=yes&aq=not', 'sp='), "", '#q'); equal( typeof tracker.hook.test._urlFixup, 'function', 'urlFixup' ); -- cgit v1.2.3