[jbosstools-commits] JBoss Tools SVN: r24146 - trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Fri Aug 13 09:16:49 EDT 2010
Author: adietish
Date: 2010-08-13 09:16:49 -0400 (Fri, 13 Aug 2010)
New Revision: 24146
Added:
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/GoogleAnalyticsUrlStrategyTest.java
Modified:
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageRequestsTest.java
trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java
Log:
[JBIDE-6376] url strategey changed + test added
Added: trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/GoogleAnalyticsUrlStrategyTest.java
===================================================================
--- trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/GoogleAnalyticsUrlStrategyTest.java (rev 0)
+++ trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/GoogleAnalyticsUrlStrategyTest.java 2010-08-13 13:16:49 UTC (rev 24146)
@@ -0,0 +1,116 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.usage.test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.io.UnsupportedEncodingException;
+
+import org.jboss.tools.usage.jgoogleanalytics.EclipseEnvironment;
+import org.jboss.tools.usage.jgoogleanalytics.FocusPoint;
+import org.jboss.tools.usage.jgoogleanalytics.GoogleAnalyticsUrlStrategy;
+import org.jboss.tools.usage.jgoogleanalytics.IGoogleAnalyticsParameters;
+import org.junit.Before;
+import org.junit.Test;
+
+public class GoogleAnalyticsUrlStrategyTest {
+
+ private static final String GANALYTICS_ACCOUNTNAME = "UA-17645367-1";
+ private static final String HOSTNAME = "jboss.org";
+ private GoogleAnalyticsUrlStrategy urlStrategy;
+
+ @Before
+ public void setUp() {
+ this.urlStrategy = new EclipseEnvironmentGAUrlStrategy();
+ }
+
+ @Test
+ public void testUrlIsBuiltCorrectly() throws UnsupportedEncodingException {
+ FocusPoint focusPoint = new FocusPoint("testing").setChild(new FocusPoint("strategy"));
+ String url = urlStrategy.build(focusPoint);
+ String targetUrl = "http://www.google-analytics.com/__utm.gif?"
+ + "utmwv=4.7.2"
+ + "&utmn=33832126513"
+ + "&utmhn=jboss.org"
+ + "&utmcs=UTF-8"
+ + "&utmsr=1920x1080"
+ + "&utmsc=24-bit"
+ + "&utmul=en-us"
+ + "&utmdt=testing-strategy"
+ + "&utmhid=1087431432"
+ + "&utmr=0"
+ + "&utmp=%2Ftesting%2Fstrategy"
+ + "&utmac=UA-17645367-1"
+ + "&__utma%3D156030503.195542053.1281528584.1281528584.1281528584.1%3B%2B__utmz%3D156030500.1281528584.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
+ + "&gaq=1";
+ // assertEquals(expectedUrl, builtUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_TRACKING_CODE_VERSION, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_HOST_NAME, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_LANGUAGE_ENCODING, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_SCREEN_RESOLUTION, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_SCREEN_COLOR_DEPTH, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_PAGE_TITLE, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_REFERRAL, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_PAGE_REQUEST, url, targetUrl);
+ assertEqualParameterValues(IGoogleAnalyticsParameters.PARAM_ACCOUNT_NAME, url, targetUrl);
+ }
+
+ private void assertEqualParameterValues(String paramName, String url, String targetUrl) {
+ String targetValue = getParameterValue(paramName, targetUrl,IGoogleAnalyticsParameters.AMPERSAND);
+ String value = getParameterValue(paramName, url,IGoogleAnalyticsParameters.AMPERSAND);
+ assertEquals("parameter '" + paramName + "' did not match", targetValue, value);
+ }
+
+ private String getParameterValue(String parameterName, String url, char... delimiters) {
+ String value = null;
+ int parameterNameStart = url.indexOf(parameterName);
+ if (parameterNameStart > 0) {
+ for (char delimiter : delimiters) {
+ int valueEnd = url.indexOf(delimiter, parameterNameStart + parameterName.length());
+ if (valueEnd > 0) {
+ value = url.substring(parameterNameStart + parameterName.length() + 1, valueEnd);
+ break;
+ }
+ }
+ }
+ return value;
+ }
+
+ private class EclipseEnvironmentGAUrlStrategy extends GoogleAnalyticsUrlStrategy {
+ private EclipseEnvironmentGAUrlStrategy() {
+ super(new EclipseEnvironmentFake());
+ }
+ }
+
+ private class EclipseEnvironmentFake extends EclipseEnvironment {
+
+ public EclipseEnvironmentFake() {
+ super(GANALYTICS_ACCOUNTNAME, HOSTNAME, "0");
+ }
+
+ @Override
+ protected void initScreenSettings() {
+ // do not access swt/display
+ }
+
+ @Override
+ public String getScreenResolution() {
+ return 1920 + SCREERESOLUTION_DELIMITER + 1080;
+ }
+
+ @Override
+ public String getScreenColorDepth() {
+ return 24 + SCREENCOLORDEPTH_POSTFIX;
+ }
+
+ }
+}
Property changes on: trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/GoogleAnalyticsUrlStrategyTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageRequestsTest.java
===================================================================
--- trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageRequestsTest.java 2010-08-13 12:42:48 UTC (rev 24145)
+++ trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageRequestsTest.java 2010-08-13 13:16:49 UTC (rev 24146)
@@ -10,8 +10,6 @@
public class JBossToolsUsageRequestsTest {
- private static final String GOOGLE_ANALYTICS_TRACKING_URL = "http://www.google-analytics.com/__utm.gif";
-
@Test
public void testUrl0() throws IOException {
String userAgent = "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.4) Gecko/20100614 Ubuntu/10.04 (lucid) Firefox/10.0.0";
@@ -186,7 +184,7 @@
method.request(url);
assertEquals(HttpURLConnection.HTTP_OK, method.getResponseCode());
}
-
+
@Test
public void testUrl0_6() throws IOException {
String userAgent = "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.4) Gecko/20100614 Ubuntu/10.04 (lucid) com.jboss.jbds.product/3.0.1";
@@ -238,75 +236,72 @@
}
@Test
- public void testUrl1() throws IOException {
- String userAgent = "JBossToolsUsageRequestsTest/1.0.0";
+ public void testUrl0_7_1() throws IOException {
+ String userAgent = "com.jboss.jbds.product/3.0.1 (X11; U; Linux x86_64; en-us)";
TestHttpGetMethod method = new TestHttpGetMethod(userAgent);
- String url = GOOGLE_ANALYTICS_TRACKING_URL
- +"?"
- +"utmwv=4.7.2"
- +"utmn=338321266"
- +"utmhn=jboss.org"
- +"utmcs=UTF-8"
- +"utmsr=1920x1080"
- +"utmsc=24-bit"
- +"utmul=en-us"
- +"utmje=1"
- +"utmfl=10.1%20r53"
- +"utmdt=-%20JBoss%20Community"
- +"utmhid=1087431432"
- +"utmr=0"
- +"utmp=%2Ftools%2Fusage/testUrl1"
- +"utmac=UA-17645367-1"
- +"utmcc=__utma%3D156030500.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
- +"gaq=1";
+ String url = "http://www.google-analytics.com/__utm.gif?"
+ +"utmwv=4.7.2"
+ +"&utmn=338321068"
+ +"&utmhn=jboss.org"
+ +"&utmcs=UTF-8"
+ +"&utmsr=1920x1080"
+ +"&utmsc=24-bit"
+ +"&utmje=1"
+ +"&utmfl=10.1%20r53"
+ +"&utmdt=-%20JBoss%20Community"
+ +"&utmhid=1087431432"
+ +"&utmr=0"
+ +"&utmp=%2Ftools%2Fusage%2FtestUrl0_7_1"
+ +"&utmac=UA-17645367-1"
+ +"&utmcc=__utma%3D156030507.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
+ +"&gaq=1";
method.request(url);
assertEquals(HttpURLConnection.HTTP_OK, method.getResponseCode());
}
+
@Test
- public void testUrl2() throws IOException {
- String userAgent = "JBossToolsUsageRequestsTest/1.0.0";
+ public void testUrl0_7_2() throws IOException {
+ String userAgent = "com.jboss.jbds.product/3.0.1 (X11; U; Linux x86_64; en-US)";
TestHttpGetMethod method = new TestHttpGetMethod(userAgent);
- String url = GOOGLE_ANALYTICS_TRACKING_URL
- +"?"
- +"utmwv=4.7.2"
- +"utmn=338321267"
- +"utmhn=jboss.org"
- +"utmcs=UTF-8"
- +"utmsr=1920x1080"
- +"utmsc=24-bit"
- +"utmul=en-us"
- +"utmdt=-%20JBoss%20Community"
- +"utmhid=1087431432"
- +"utmr=0"
- +"utmp=%2Ftools%2Fusage/testUrl2"
- +"utmac=UA-17645367-1"
- +"utmcc=__utma%3D156030500.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
- +"gaq=1";
+ String url = "http://www.google-analytics.com/__utm.gif?"
+ +"utmwv=4.7.2"
+ +"&utmn=338333268"
+ +"&utmhn=jboss.org"
+ +"&utmcs=UTF-8"
+ +"&utmsr=1920x1080"
+ +"&utmsc=24-bit"
+ +"&utmul=en-us"
+ +"&utmdt=-%20JBoss%20Community"
+ +"&utmhid=1087431432"
+ +"&utmr=0"
+ +"&utmp=%2Ftools%2Fusage%2FtestUrl0_7_2"
+ +"&utmac=UA-17645367-1"
+ +"&utmcc=__utma%3D156660507.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
+ +"&gaq=1";
method.request(url);
assertEquals(HttpURLConnection.HTTP_OK, method.getResponseCode());
}
-
+
@Test
- public void testUrl3() throws IOException {
- String userAgent = "JBossToolsUsageRequestsTest/1.0.0";
+ public void testUrl0_7_3() throws IOException {
+ String userAgent = "com.jboss.jbds.product/3.0.1 (X11; U; Linux x86_64; en-US)";
TestHttpGetMethod method = new TestHttpGetMethod(userAgent);
- String url = GOOGLE_ANALYTICS_TRACKING_URL
- +"?"
- +"utmwv=4.7.2"
- +"utmn=338321268"
- +"utmhn=jboss.org"
- +"utmcs=UTF-8"
- +"utmsr=1920x1080"
- +"utmsc=24-bit"
- +"utmul=en-us"
- +"utmdt=-%20JBoss%20Community"
- +"utmhid=1087431432"
- +"utmr=0"
- +"utmp=%2Ftools%2Fusage/testUrl3"
- +"utmac=UA-17645367-1"
- +"utmcc=__utma%3D156030500.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
- +"gaq=1";
+ String url = "http://www.google-analytics.com/__utm.gif?"
+ +"utmwv=4.7.2"
+ +"&utmn=331333268"
+ +"&utmhn=jboss.org"
+ +"&utmcs=UTF-8"
+ +"&utmsr=1920x1080"
+ +"&utmsc=24-bit"
+ +"&utmul=en-us"
+ +"&utmdt=tools-usage-test_0_7_3"
+ +"&utmhid=1087431432"
+ +"&utmr=0"
+ +"&utmp=%2Ftools%2Fusage%2FtestUrl0_7_3"
+ +"&utmac=UA-17645367-1"
+ +"&utmcc=__utma%3D116660507.1285760711.1281430767.1281430767.1281430767.1%3B%2B__utmz%3D156030500.1281430767.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B"
+ +"&gaq=1";
method.request(url);
assertEquals(HttpURLConnection.HTTP_OK, method.getResponseCode());
}
Modified: trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java
===================================================================
--- trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java 2010-08-13 12:42:48 UTC (rev 24145)
+++ trunk/usage/tests/org.jboss.tools.usage.test/src/org/jboss/tools/usage/test/JBossToolsUsageTest.java 2010-08-13 13:16:49 UTC (rev 24146)
@@ -14,21 +14,21 @@
import org.jboss.tools.usage.jgoogleanalytics.EclipseEnvironment;
import org.jboss.tools.usage.jgoogleanalytics.FocusPoint;
import org.jboss.tools.usage.jgoogleanalytics.IGoogleAnalyticsParameters;
-import org.jboss.tools.usage.jgoogleanalytics.JGoogleAnalyticsTracker;
+import org.jboss.tools.usage.jgoogleanalytics.Tracker;
import org.jboss.tools.usage.jgoogleanalytics.PluginLogger;
import org.jboss.tools.usage.test.internal.JBossToolsUsageTestActivator;
import org.junit.Test;
public class JBossToolsUsageTest {
+ private static final String HOST_NAME = "jboss.org";
+
private FocusPoint focusPoint = new FocusPoint("jboss.org")
.setChild(new FocusPoint("tools")
.setChild(new FocusPoint("usage")
- .setChild(new FocusPoint("action")
- .setChild(new FocusPoint("wsstartup")
- .setChild(new FocusPoint("testversion472"))))));
+ .setChild(new FocusPoint("instance"))));
- private static final String GANALYTICS_TRACKINGCODE = "UA-17645367-1";
+ private static final String GANALYTICS_ACCOUNTNAME = "UA-17645367-1";
@Test
public void testTrackAsynchronously() throws Exception {
@@ -45,10 +45,9 @@
private IUsageTracker getGoogleAnalyticsTracker() {
IGoogleAnalyticsParameters eclipseSettings = new EclipseEnvironment(
- GANALYTICS_TRACKINGCODE, JBossToolsUsageTestActivator.PLUGIN_ID);
- JGoogleAnalyticsTracker tracker = new JGoogleAnalyticsTracker(eclipseSettings);
- tracker.setLoggingAdapter(new PluginLogger(JBossToolsUsageTestActivator
- .getDefault()));
+ GANALYTICS_ACCOUNTNAME, HOST_NAME, JBossToolsUsageTestActivator.PLUGIN_ID);
+ Tracker tracker = new Tracker(eclipseSettings);
+ tracker.setLoggingAdapter(new PluginLogger(JBossToolsUsageTestActivator.getDefault()));
return tracker;
}
}
More information about the jbosstools-commits
mailing list