/** * */ package org.archive.wayback.replay.html.transformer; import java.net.URL; import org.archive.wayback.replay.html.transformer.JSStringTransformerTest.RecordingReplayParseContext; import junit.framework.TestCase; /** * unit test for {@link BlockCSSStringTransformer}. * * @author kenji * */ public class BlockCSSStringTransformerTest extends TestCase { URL baseURL; RecordingReplayParseContext rc; BlockCSSStringTransformer st; /* (non-Javadoc) * @see junit.framework.TestCase#setUp() */ protected void setUp() throws Exception { baseURL = new URL("http://foo.com"); rc = new RecordingReplayParseContext(null, baseURL, null); st = new BlockCSSStringTransformer(); } public void testTransform() throws Exception { final String input = "@import \"style1.css\";\n" + "@import 'style2.css';\n" + "@import 'http://archive.org/common.css';\n" + "BODY {\n" + " color: #fff;\n" + " background: transparent url(bg.gif);\n" + "}\n"; st.transform(rc, input); assertEquals(4, rc.got.size()); assertTrue(rc.got.contains("style1.css")); assertTrue(rc.got.contains("style2.css")); assertTrue(rc.got.contains("http://archive.org/common.css")); assertTrue(rc.got.contains("bg.gif")); } /** * test of rewriteHttpsOnly. * <p>Now it doesn't affect StringTransformer's behavior. This test * will be dropped soon.</p> * @throws Exception */ public void testRewriteHttpsOnly() throws Exception { rc.setRewriteHttpsOnly(true); final String input = "@import \"style1.css\";\n" + "@import 'style2.css';\n" + "@import 'http://archive.org/common.css';\n" + "@import 'https://secure.archive.org/common.css';\n" + "BODY {\n" + " color: #fff;\n" + " background: transparent url(bg.gif);\n" + "}" + ".error {\n" + " background-image: url(https://secure.archive.org/img/error-icon.gif);\n" + "}\n"; st.transform(rc, input); assertEquals(6, rc.got.size()); assertTrue(rc.got.contains("https://secure.archive.org/common.css")); assertTrue(rc.got.contains("https://secure.archive.org/img/error-icon.gif")); assertTrue(rc.got.contains("style1.css")); assertTrue(rc.got.contains("style2.css")); assertTrue(rc.got.contains("http://archive.org/common.css")); assertTrue(rc.got.contains("bg.gif")); } }