You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by dd...@apache.org on 2013/01/30 20:12:34 UTC
svn commit: r1440592 -
/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java
Author: ddumont
Date: Wed Jan 30 19:12:33 2013
New Revision: 1440592
URL: http://svn.apache.org/viewvc?rev=1440592&view=rev
Log:
Update rewriter tests to not fail when the config turns off rewriting.
Modified:
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java?rev=1440592&r1=1440591&r2=1440592&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/StyleTagProxyEmbeddedUrlsVisitorTest.java Wed Jan 30 19:12:33 2013
@@ -29,13 +29,14 @@ import org.apache.shindig.gadgets.Gadget
import org.apache.shindig.gadgets.admin.GadgetAdminModule;
import org.apache.shindig.gadgets.http.HttpRequest;
import org.apache.shindig.gadgets.oauth.OAuthModule;
+import org.apache.shindig.gadgets.oauth2.OAuth2MessageModule;
import org.apache.shindig.gadgets.oauth2.OAuth2Module;
import org.apache.shindig.gadgets.oauth2.handler.OAuth2HandlerModule;
import org.apache.shindig.gadgets.oauth2.persistence.sample.OAuth2PersistenceModule;
-import org.apache.shindig.gadgets.oauth2.OAuth2MessageModule;
import org.apache.shindig.gadgets.parse.ParseModule;
import org.apache.shindig.gadgets.parse.caja.CajaHtmlParser;
import org.apache.shindig.gadgets.parse.caja.CajaHtmlSerializer;
+import org.apache.shindig.gadgets.rewrite.ContentRewriterFeature.Config;
import org.apache.shindig.gadgets.uri.DefaultProxyUriManager;
import org.apache.shindig.gadgets.uri.ProxyUriManager;
import org.easymock.EasyMock;
@@ -91,6 +92,16 @@ public class StyleTagProxyEmbeddedUrlsVi
+ "</head><body><a href=\"hello\">Hello</a>"
+ "</body></html>";
+ private static final String NOREWRITE = "<html><head>"
+ + "<style>"
+ + "@import url('http://1.com/1.css');"
+ + "P {color:blue;}"
+ + "P {color:red;}"
+ + "A {background: url('http://1.com/2.jpg');}"
+ + "</style>"
+ + "</head><body><a href=\"hello\">Hello</a>"
+ + "</body></html>";
+
private static final String EXPECTED = "<html><head>"
+ "<style>"
+ "@import url('//localhost:8080/gadgets/proxy?container=default&"
@@ -107,24 +118,42 @@ public class StyleTagProxyEmbeddedUrlsVi
@Test
public void testImportsAndBackgroundUrlsInStyleTagDefaultContainer() throws Exception {
- testImportsAndBackgroundUrlsInStyleTag(ORIGINAL, EXPECTED, ContainerConfig.DEFAULT_CONTAINER);
+ // TODO: IMPORTANT! This test needs to not rely on the packaged shindig config, but rather
+ // mock the config with expected values, so that tests do not fail when people set
+ // alternative defaults.
+ Config config = injector.getInstance(ContentRewriterFeature.DefaultConfig.class);
+ EasyMock.replay();
+ if (config.isRewriteEnabled())
+ testImportsAndBackgroundUrlsInStyleTag(ORIGINAL, EXPECTED, ContainerConfig.DEFAULT_CONTAINER, config);
+ else
+ testImportsAndBackgroundUrlsInStyleTag(ORIGINAL, NOREWRITE, ContainerConfig.DEFAULT_CONTAINER, config);
}
@Test
public void testImportsAndBackgroundUrlsInStyleTagMockContainer() throws Exception {
- testImportsAndBackgroundUrlsInStyleTag(ORIGINAL, EXPECTED.replace(
- "localhost:8080/gadgets/proxy?container=default", "www.mock.com/gadgets/proxy?container=mock"),
- MOCK_CONTAINER);
+ // TODO: IMPORTANT! This test needs to not rely on the packaged shindig config, but rather
+ // mock the config with expected values, so that tests do not fail when people set
+ // alternative defaults.
+ Config config = injector.getInstance(ContentRewriterFeature.DefaultConfig.class);
+ EasyMock.replay();
+
+ if (config.isRewriteEnabled()) {
+ testImportsAndBackgroundUrlsInStyleTag(ORIGINAL, EXPECTED.replace(
+ "localhost:8080/gadgets/proxy?container=default", "www.mock.com/gadgets/proxy?container=mock"),
+ MOCK_CONTAINER, config);
+ } else {
+ testImportsAndBackgroundUrlsInStyleTag(ORIGINAL, NOREWRITE, ContainerConfig.DEFAULT_CONTAINER, config);
+ }
+
}
- private void testImportsAndBackgroundUrlsInStyleTag(String html, String expected, String container)
+ private void testImportsAndBackgroundUrlsInStyleTag(String html, String expected, String container, Config config)
throws Exception {
+ // TODO: IMPORTANT! This test needs to not rely on the packaged shindig config, but rather
+ // mock the config with expected values, so that tests do not fail when people set
+ // alternative defaults.
Document doc = htmlParser.parseDom(html);
- ContentRewriterFeature.Config config = injector.getInstance(
- ContentRewriterFeature.DefaultConfig.class);
- EasyMock.replay();
-
StyleTagProxyEmbeddedUrlsVisitor visitor = new StyleTagProxyEmbeddedUrlsVisitor(
config, proxyUriManager,
injector.getInstance(CssResponseRewriter.class));