You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by li...@apache.org on 2011/05/09 05:40:58 UTC
svn commit: r1100872 - in
/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet:
FakeProcessor.java GadgetsHandlerServiceTest.java
Author: lindner
Date: Mon May 9 03:40:57 2011
New Revision: 1100872
URL: http://svn.apache.org/viewvc?rev=1100872&view=rev
Log:
SHINDIG-1532 | Patch from Igor Belakovskiy | Additional tests for Feature Parameters
Modified:
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/FakeProcessor.java
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/GadgetsHandlerServiceTest.java
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/FakeProcessor.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/FakeProcessor.java?rev=1100872&r1=1100871&r2=1100872&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/FakeProcessor.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/FakeProcessor.java Mon May 9 03:40:57 2011
@@ -18,6 +18,7 @@
*/
package org.apache.shindig.gadgets.servlet;
+import com.google.common.collect.ImmutableList;
import com.google.common.collect.Maps;
import org.apache.shindig.common.uri.Uri;
import org.apache.shindig.gadgets.Gadget;
@@ -29,6 +30,7 @@ import org.apache.shindig.gadgets.proces
import org.apache.shindig.gadgets.spec.GadgetSpec;
import org.apache.shindig.gadgets.spec.View;
+import java.util.List;
import java.util.Map;
public class FakeProcessor extends Processor {
@@ -37,10 +39,19 @@ public class FakeProcessor extends Proce
public static final Uri SPEC_URL = Uri.parse("http://example.org/g.xml");
public static final Uri SPEC_URL2 = Uri.parse("http://example.org/g2.xml");
public static final Uri SPEC_URL3 = Uri.parse("http://example.org/g3.xml");
+ public static final Uri SPEC_URL4 = Uri.parse("http://example.org/g4.xml");
public static final String SPEC_TITLE = "JSON-TEST";
public static final String SPEC_TITLE2 = "JSON-TEST2";
public static final int PREFERRED_HEIGHT = 100;
public static final int PREFERRED_WIDTH = 242;
+ public static final String FEATURE1="core";
+ public static final String FEATURE2="example-feature";
+ public static final String FEATURE3="example-feature2";
+ public static final String PARAM_NAME="param-name";
+ public static final String PARAM_NAME2="param-name2";
+ public static final String PARAM_VALUE="param-value";
+ public static final String PARAM_VALUE2="param-value2";
+ public static final String PARAM_VALUE3="param-value3";
public static final String LINK_REL = "rel";
public static final String LINK_HREF = "http://example.org/foo";
public static final String SPEC_XML =
@@ -72,8 +83,34 @@ public class FakeProcessor extends Proce
"<Content name=\"canvas\">Hello, world</Content>" +
"</Module>";
+ public static final String SPEC_XML4 =
+ "<Module>" +
+ "<ModulePrefs title=\"" + SPEC_TITLE + "\">" +
+ " <Link rel='" + LINK_REL + "' href='" + LINK_HREF + "'/>" +
+ "<Optional feature=\""+FEATURE2+"\">"+
+ "<Param name=\""+PARAM_NAME+"\">"+PARAM_VALUE+"</Param>"+
+ "<Param name=\""+PARAM_NAME+"\">"+PARAM_VALUE2+"</Param>"+
+ "</Optional>"+
+ "<Require feature=\""+FEATURE3+"\">"+
+ "<Param name=\""+PARAM_NAME2+"\">"+PARAM_VALUE3+"</Param>"+
+ "</Require>"+
+ "</ModulePrefs>" +
+ "<UserPref name=\"up_one\">" +
+ " <EnumValue value=\"val1\" display_value=\"disp1\"/>" +
+ " <EnumValue value=\"abc\" display_value=\"disp2\"/>" +
+ " <EnumValue value=\"z_xabc\" display_value=\"disp3\"/>" +
+ " <EnumValue value=\"foo\" display_value=\"disp4\"/>" +
+ "</UserPref>" +
+ "<Content type=\"html\"" +
+ " preferred_height = \"" + PREFERRED_HEIGHT + '\"' +
+ " preferred_width = \"" + PREFERRED_WIDTH + '\"' +
+ ">Hello, world</Content>" +
+ "</Module>";
+
private final FeatureRegistry featureRegistry;
+ public static final List FEATURE_NAMES=ImmutableList.of(FEATURE1, FEATURE2, FEATURE3);
+
public FakeProcessor() {
this(null);
}
@@ -83,6 +120,7 @@ public class FakeProcessor extends Proce
this.gadgets.put(FakeProcessor.SPEC_URL, FakeProcessor.SPEC_XML);
this.gadgets.put(FakeProcessor.SPEC_URL2, FakeProcessor.SPEC_XML2);
this.gadgets.put(FakeProcessor.SPEC_URL3, FakeProcessor.SPEC_XML3);
+ this.gadgets.put(FakeProcessor.SPEC_URL4, FakeProcessor.SPEC_XML4);
this.featureRegistry = featureRegistry;
}
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/GadgetsHandlerServiceTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/GadgetsHandlerServiceTest.java?rev=1100872&r1=1100871&r2=1100872&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/GadgetsHandlerServiceTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/GadgetsHandlerServiceTest.java Mon May 9 03:40:57 2011
@@ -24,6 +24,7 @@ import static org.easymock.EasyMock.capt
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Lists;
+import com.google.common.collect.Multimap;
import org.apache.commons.codec.binary.Base64;
import org.apache.shindig.auth.SecurityToken;
@@ -45,6 +46,7 @@ import org.apache.shindig.gadgets.js.JsR
import org.apache.shindig.gadgets.js.JsResponseBuilder;
import org.apache.shindig.gadgets.js.JsServingPipeline;
import org.apache.shindig.gadgets.process.ProcessingException;
+import org.apache.shindig.gadgets.servlet.GadgetsHandlerApi.Feature;
import org.apache.shindig.gadgets.uri.JsUriManager;
import org.apache.shindig.gadgets.uri.ProxyUriManager;
import org.apache.shindig.gadgets.uri.JsUriManager.JsUri;
@@ -208,6 +210,32 @@ public class GadgetsHandlerServiceTest e
verify();
}
+ @SuppressWarnings("unchecked")
+ @Test
+ public void testGetMetadataWithParams() throws Exception {
+ GadgetsHandlerApi.MetadataRequest request = createMetadataRequest(
+ FakeProcessor.SPEC_URL4, CONTAINER, "default",
+ createAuthContext(null, null), ImmutableList.of("*"));
+ EasyMock.expect(mockRegistry.getFeatures(EasyMock.isA(List.class)))
+ .andReturn(Lists.newArrayList("auth-refresh"));
+ replay();
+ GadgetsHandlerApi.MetadataResponse response =
+ gadgetHandler.getMetadata(request);
+
+ Map<String, Feature> features=response.getModulePrefs().getFeatures();
+ //make sure that the feature set contains all the features, and no extra features
+ //Note that the core feature is automatically included.
+ assertTrue(features.containsKey(FakeProcessor.FEATURE1) &&
+ features.containsKey(FakeProcessor.FEATURE2) &&
+ features.containsKey(FakeProcessor.FEATURE3) &&
+ features.size()==3);
+ Multimap<String, String> params1=features.get(FakeProcessor.FEATURE2).getParams();
+ assertEquals(ImmutableList.of(FakeProcessor.PARAM_VALUE, FakeProcessor.PARAM_VALUE2), params1.get(FakeProcessor.PARAM_NAME));
+ Multimap<String, String> params2=features.get(FakeProcessor.FEATURE3).getParams();
+ assertEquals(ImmutableList.of(FakeProcessor.PARAM_VALUE3), params2.get(FakeProcessor.PARAM_NAME2));
+
+ verify();
+ }
@Test
public void testGetToken() throws Exception {
GadgetsHandlerApi.TokenRequest request = createTokenRequest(