You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by rb...@apache.org on 2011/10/03 22:35:15 UTC
svn commit: r1178561 [2/2] - in /shindig/trunk: config/
content/samplecontainer/examples/
features/src/main/javascript/features/shared-script-frame/
java/gadgets/src/main/java/org/apache/shindig/gadgets/
java/gadgets/src/main/java/org/apache/shindig/ga...
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/DefaultIframeUriManagerTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/DefaultIframeUriManagerTest.java?rev=1178561&r1=1178560&r2=1178561&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/DefaultIframeUriManagerTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/DefaultIframeUriManagerTest.java Mon Oct 3 20:35:14 2011
@@ -18,7 +18,6 @@
*/
package org.apache.shindig.gadgets.uri;
-import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.tplKey;
import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.IFRAME_BASE_PATH_KEY;
import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.LOCKED_DOMAIN_FEATURE_NAME;
import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.LOCKED_DOMAIN_REQUIRED_KEY;
@@ -26,20 +25,18 @@ import static org.apache.shindig.gadgets
import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.SECURITY_TOKEN_ALWAYS_KEY;
import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.SECURITY_TOKEN_FEATURE_NAME;
import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.UNLOCKED_DOMAIN_KEY;
-
+import static org.apache.shindig.gadgets.uri.DefaultIframeUriManager.tplKey;
import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.isA;
import static org.easymock.EasyMock.replay;
-
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
+import java.util.List;
+import java.util.Map;
import org.apache.shindig.auth.BasicSecurityTokenCodec;
import org.apache.shindig.auth.SecurityTokenCodec;
@@ -49,15 +46,17 @@ import org.apache.shindig.config.BasicCo
import org.apache.shindig.config.ContainerConfig;
import org.apache.shindig.config.ContainerConfigException;
import org.apache.shindig.gadgets.Gadget;
+import org.apache.shindig.gadgets.HashLockedDomainService;
+import org.apache.shindig.gadgets.LockedDomainService;
import org.apache.shindig.gadgets.uri.UriCommon.Param;
-
import org.junit.Test;
-import java.util.List;
-import java.util.Map;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
public class DefaultIframeUriManagerTest extends UriManagerTestBase {
- private static final String LD_PREFIX = "LOCKED";
+ private static final String LD_PREFIX = "locked";
private static final String IFRAME_PATH = "/gadgets/ifr";
private static final String LD_SUFFIX = ".lockeddomain.com";
private static final String LD_SUFFIX_ALT = ".altld.com";
@@ -70,6 +69,12 @@ public class DefaultIframeUriManagerTest
public String getLockedDomainPrefix(Uri gadgetUri) {
return LD_PREFIX;
}
+
+ @Override
+ public String getLockedDomainPrefix(String token) {
+ // TODO Auto-generated method stub
+ return LD_PREFIX;
+ }
};
private static final SecurityTokenCodec tokenCodec = new BasicSecurityTokenCodec();
@@ -124,7 +129,6 @@ public class DefaultIframeUriManagerTest
assertFalse(manager.tokenForRenderingCalled());
assertTrue(manager.schemeCalled());
- assertTrue(manager.ldExclusionCalled());
assertTrue(manager.addExtrasCalled());
}
@@ -169,7 +173,6 @@ public class DefaultIframeUriManagerTest
assertFalse(manager.tokenForRenderingCalled());
assertTrue(manager.schemeCalled());
- assertTrue(manager.ldExclusionCalled());
assertTrue(manager.addExtrasCalled());
}
@@ -226,7 +229,6 @@ public class DefaultIframeUriManagerTest
assertFalse(managerTpl.tokenForRenderingCalled());
assertTrue(managerTpl.schemeCalled());
- assertTrue(managerTpl.ldExclusionCalled());
assertTrue(managerTpl.addExtrasCalled());
}
@@ -281,7 +283,6 @@ public class DefaultIframeUriManagerTest
assertFalse(manager.tokenForRenderingCalled());
assertFalse(manager.schemeCalled());
- assertFalse(manager.ldExclusionCalled());
assertTrue(manager.addExtrasCalled());
}
@@ -337,7 +338,6 @@ public class DefaultIframeUriManagerTest
assertFalse(managerTpl.tokenForRenderingCalled());
assertFalse(managerTpl.schemeCalled());
- assertFalse(managerTpl.ldExclusionCalled());
assertTrue(managerTpl.addExtrasCalled());
}
@@ -392,7 +392,8 @@ public class DefaultIframeUriManagerTest
TestDefaultIframeUriManager manager = makeManager(
false, // security token beacon not required
- false); // locked domain not (always) required
+ false, // locked domain not (always) required
+ true);
Uri result = manager.makeRenderingUri(gadget);
assertNotNull(result);
@@ -434,30 +435,7 @@ public class DefaultIframeUriManagerTest
TestDefaultIframeUriManager manager = makeManager(
false, // security token beacon not required
- true); // locked domain always required
- manager.setLockedDomainEnabled(false); // but alas, not enabled in the 1st place
-
- Uri result = manager.makeRenderingUri(gadget);
- assertNotNull(result);
-
- UriBuilder uri = new UriBuilder(result);
- assertEquals("", uri.getScheme());
- assertEquals(UNLOCKED_DOMAIN, uri.getAuthority());
- assertEquals(IFRAME_PATH, uri.getPath());
-
- // Basic sanity checks on params
- assertEquals(TYPE_HTML_NUM_BASE_PARAMS, uri.getQueryParameters().size());
- assertEquals(0, uri.getFragmentParameters().size());
- }
-
- @Test
- public void ldNotAddedWithExclusion() throws Exception {
- Gadget gadget = mockGadget(LOCKED_DOMAIN_FEATURE_NAME);
-
- TestDefaultIframeUriManager manager = makeManager(
- false, // security token beacon not required
- true); // locked domain always required
- manager.setLdExclusion(true); // but alas, excluded
+ false); // locked domain always required
Uri result = manager.makeRenderingUri(gadget);
assertNotNull(result);
@@ -552,52 +530,6 @@ public class DefaultIframeUriManagerTest
}
@Test
- public void invalidLockedDomainValidSuffix() throws Exception {
- Uri uri = makeValidationTestUri(LD_PREFIX + LD_SUFFIX_ALT, null);
- DefaultIframeUriManager manager = makeManager(false, false);
- assertEquals(UriStatus.INVALID_DOMAIN, manager.validateRenderingUri(uri));
- }
-
- @Test
- public void invalidLockedDomainInvalidSuffix() throws Exception {
- Uri uri = makeValidationTestUri(LD_PREFIX + ".bad." + LD_SUFFIX, null);
- DefaultIframeUriManager manager = makeManager(false, false);
- assertEquals(UriStatus.INVALID_DOMAIN, manager.validateRenderingUri(uri));
- }
-
- @Test
- public void invalidLockedDomainValidSuffixExclusionBypass() throws Exception {
- Uri uri = makeValidationTestUri(LD_PREFIX + LD_SUFFIX_ALT, null);
- TestDefaultIframeUriManager manager = makeManager(false, false);
- manager.setLdExclusion(true);
- assertEquals(UriStatus.VALID_UNVERSIONED, manager.validateRenderingUri(uri));
- }
-
- @Test
- public void invalidLockedDomainInvalidSuffixExclusionBypass() throws Exception {
- Uri uri = makeValidationTestUri(LD_PREFIX + ".bad." + LD_SUFFIX, null);
- TestDefaultIframeUriManager manager = makeManager(false, false);
- manager.setLdExclusion(true);
- assertEquals(UriStatus.VALID_UNVERSIONED, manager.validateRenderingUri(uri));
- }
-
- @Test
- public void invalidLockedDomainValidSuffixLdDisabled() throws Exception {
- Uri uri = makeValidationTestUri(LD_PREFIX + LD_SUFFIX_ALT, null);
- DefaultIframeUriManager manager = makeManager(false, false);
- manager.setLockedDomainEnabled(false);
- assertEquals(UriStatus.VALID_UNVERSIONED, manager.validateRenderingUri(uri));
- }
-
- @Test
- public void invalidLockedDomainInvalidSuffixLdDisabled() throws Exception {
- Uri uri = makeValidationTestUri(LD_PREFIX + ".bad." + LD_SUFFIX, null);
- DefaultIframeUriManager manager = makeManager(false, false);
- manager.setLockedDomainEnabled(false);
- assertEquals(UriStatus.VALID_UNVERSIONED, manager.validateRenderingUri(uri));
- }
-
- @Test
public void validUnversionedNoVersioner() throws Exception {
Uri uri = makeValidationTestUri(LD_PREFIX + LD_SUFFIX, "version");
DefaultIframeUriManager manager = makeManager(false, false);
@@ -642,10 +574,10 @@ public class DefaultIframeUriManagerTest
.put(LOCKED_DOMAIN_REQUIRED_KEY, true)
.build())
.commit();
- TestDefaultIframeUriManager manager = new TestDefaultIframeUriManager(config);
+ LockedDomainService ldService = new HashLockedDomainService(config, true, prefixGen);
+ TestDefaultIframeUriManager manager = new TestDefaultIframeUriManager(config, ldService);
Uri testUri = Uri.parse("http://foobar" + LD_SUFFIX + "/?url=http://example.com");
- assertEquals(UriStatus.INVALID_DOMAIN, manager.validateRenderingUri(testUri));
config.newTransaction().addContainer(ImmutableMap
.<String, Object>builder()
@@ -672,7 +604,8 @@ public class DefaultIframeUriManagerTest
.build())
.commit();
- TestDefaultIframeUriManager manager = new TestDefaultIframeUriManager(config);
+ LockedDomainService ldService = new HashLockedDomainService(config, false, prefixGen);
+ TestDefaultIframeUriManager manager = new TestDefaultIframeUriManager(config, ldService);
Uri renderingUri = manager.makeRenderingUri(gadget);
assertNotNull(renderingUri);
@@ -701,6 +634,10 @@ public class DefaultIframeUriManagerTest
private TestDefaultIframeUriManager makeManager(boolean alwaysToken, boolean ldRequired)
throws ContainerConfigException {
+ return makeManager(alwaysToken, ldRequired, ldRequired ? true: false);
+ }
+ private TestDefaultIframeUriManager makeManager(boolean alwaysToken, boolean ldRequired, boolean enabled)
+ throws ContainerConfigException {
String altContainer = CONTAINER + "-alt";
ContainerConfig config = new BasicContainerConfig();
config
@@ -726,7 +663,8 @@ public class DefaultIframeUriManagerTest
.put(LOCKED_DOMAIN_SUFFIX_KEY, LD_SUFFIX_ALT)
.build())
.commit();
- return new TestDefaultIframeUriManager(config);
+ LockedDomainService ldService = new HashLockedDomainService(config, enabled, prefixGen);
+ return new TestDefaultIframeUriManager(config, ldService);
}
private IframeUriManager.Versioner mockVersioner(String version, boolean valid) {
@@ -746,21 +684,14 @@ public class DefaultIframeUriManagerTest
}
private static final class TestDefaultIframeUriManager extends DefaultIframeUriManager {
- private boolean ldExclusion = false;
- private boolean ldExclusionCalled = false;
private String scheme = "";
private boolean schemeCalled = false;
private boolean tokenForRendering = true;
private boolean tokenForRenderingCalled = false;
private boolean addExtrasCalled = false;
- private TestDefaultIframeUriManager(ContainerConfig config) {
- super(config, prefixGen, tokenCodec);
- }
-
- private TestDefaultIframeUriManager setLdExclusion(boolean ldExclusion) {
- this.ldExclusion = ldExclusion;
- return this;
+ private TestDefaultIframeUriManager(ContainerConfig config, LockedDomainService ldService) {
+ super(config, ldService, tokenCodec);
}
private TestDefaultIframeUriManager setScheme(String scheme) {
@@ -773,17 +704,6 @@ public class DefaultIframeUriManagerTest
return this;
}
- /** Overridden methods for custom behavior */
- @Override
- protected boolean lockedDomainExclusion() {
- this.ldExclusionCalled = true;
- return ldExclusion;
- }
-
- private boolean ldExclusionCalled() {
- return ldExclusionCalled;
- }
-
@Override
protected String getScheme(Gadget gadget, String container) {
this.schemeCalled = true;
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/HashShaLockedDomainPrefixGeneratorTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/HashShaLockedDomainPrefixGeneratorTest.java?rev=1178561&r1=1178560&r2=1178561&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/HashShaLockedDomainPrefixGeneratorTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/HashShaLockedDomainPrefixGeneratorTest.java Mon Oct 3 20:35:14 2011
@@ -34,15 +34,15 @@ import org.junit.Test;
*/
public class HashShaLockedDomainPrefixGeneratorTest {
private HashShaLockedDomainPrefixGenerator generator = new HashShaLockedDomainPrefixGenerator();
-
+
@Test
public void generate() {
Uri uri = Uri.parse("http://www.apache.org/gadget.xml");
assertEquals("e5bld32ce9pe5ln81rjhe0d0e1vao1ba", generator.getLockedDomainPrefix(uri));
}
-
+
@Test(expected = NullPointerException.class)
public void isNull() {
- generator.getLockedDomainPrefix(null);
+ generator.getLockedDomainPrefix((Uri)null);
}
}
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/UriManagerTestBase.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/UriManagerTestBase.java?rev=1178561&r1=1178560&r2=1178561&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/UriManagerTestBase.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/uri/UriManagerTestBase.java Mon Oct 3 20:35:14 2011
@@ -116,6 +116,7 @@ public class UriManagerTestBase {
featureMap.put(feature, null);
}
expect(gadget.getViewFeatures()).andReturn(featureMap).anyTimes();
+ expect(modulePrefs.getFeatures()).andReturn(featureMap).anyTimes();
// User prefs
Map<String, UserPref> specPrefMap = Maps.newLinkedHashMap();
Modified: shindig/trunk/php/test/gadgets/ContainerConfigTest.php
URL: http://svn.apache.org/viewvc/shindig/trunk/php/test/gadgets/ContainerConfigTest.php?rev=1178561&r1=1178560&r2=1178561&view=diff
==============================================================================
--- shindig/trunk/php/test/gadgets/ContainerConfigTest.php (original)
+++ shindig/trunk/php/test/gadgets/ContainerConfigTest.php Mon Oct 3 20:35:14 2011
@@ -63,7 +63,7 @@ class ContainerConfigTest extends PHPUni
// Comments
{"gadgets.container" : ["default"],
"gadgets.parent" : null,
-"gadgets.lockedDomainSuffix" : "-a.example.com:8080",
+"gadgets.uri.iframe.lockedDomainSuffix" : "-a.example.com:8080",
"gadgets.iframeBaseUri" : "/gadgets/ifr",
"gadgets.jsUriTemplate" : "http://%host%/gadgets/js/%js%",
"gadgets.uri.oauth.callbackTemplate" : "//%host%/gadgets/oauthcallback"
@@ -75,7 +75,7 @@ EOD;
$this->assertNotEquals($uncommented, $jsonObj);
$this->assertEquals(array("default"), $jsonObj["gadgets.container"]);
$this->assertEquals(null, $jsonObj["gadgets.parent"]);
- $this->assertEquals("-a.example.com:8080", $jsonObj["gadgets.lockedDomainSuffix"]);
+ $this->assertEquals("-a.example.com:8080", $jsonObj["gadgets.uri.iframe.lockedDomainSuffix"]);
$this->assertEquals("/gadgets/ifr", $jsonObj["gadgets.iframeBaseUri"]);
$this->assertEquals("http://%host%/gadgets/js/%js%", $jsonObj["gadgets.jsUriTemplate"]);
$this->assertEquals("//%host%/gadgets/oauthcallback", $jsonObj["gadgets.uri.oauth.callbackTemplate"]);