@Before public void setUp() throws Exception { Injector injector = Guice.createInjector(new ParseModule(), new PropertiesModule()); mhc = new MutableContent(injector.getInstance(GadgetHtmlParser.class), "DEFAULT VIEW"); }
private String rewrite(Gadget gadget, String content) throws Exception { MutableContent mc = new MutableContent(parser, content); rewriter.rewrite(gadget, mc); return mc.getContent(); }
private String rewrite(Gadget gadget, String content) throws Exception { MutableContent mc = new MutableContent(parser, content); rewriter.rewrite(gadget, mc); return mc.getContent(); }
@Before public void setUp() throws Exception { Injector injector = Guice.createInjector(new ParseModule(), new PropertiesModule()); mhc = new MutableContent(injector.getInstance(GadgetHtmlParser.class), "DEFAULT VIEW"); }
@Before public void setUp() throws Exception { Injector injector = Guice.createInjector(new ParseModule(), new PropertiesModule()); mhc = new MutableContent(injector.getInstance(GadgetHtmlParser.class), "DEFAULT VIEW"); }
private String rewrite(Gadget gadget, String content) throws Exception { MutableContent mc = new MutableContent(parser, content); rewriter.rewrite(gadget, mc); return mc.getContent(); }
private String rewrite(Gadget gadget, String content, Set<String> tags, Set<String> attributes) throws Exception { GadgetRewriter rewriter = createRewriter(tags, attributes); MutableContent mc = new MutableContent(parser, content); rewriter.rewrite(gadget, mc); Matcher matcher = BODY_REGEX.matcher(mc.getContent()); if (matcher.matches()) { return matcher.group(1); } return mc.getContent(); }
private String rewrite(Gadget gadget, String content, Set<String> tags, Set<String> attributes) throws Exception { GadgetRewriter rewriter = createRewriter(tags, attributes); MutableContent mc = new MutableContent(parser, content); rewriter.rewrite(gadget, mc); Matcher matcher = BODY_REGEX.matcher(mc.getContent()); if (matcher.matches()) { return matcher.group(1); } return mc.getContent(); }
private String rewrite(Gadget gadget, String content, Set<String> tags, Set<String> attributes) throws Exception { GadgetRewriter rewriter = createRewriter(tags, attributes); MutableContent mc = new MutableContent(parser, content); rewriter.rewrite(gadget, mc); Matcher matcher = BODY_REGEX.matcher(mc.getContent()); if (matcher.matches()) { return matcher.group(1); } return mc.getContent(); }
@Test public void sanitizationBypassOnlySelf() throws Exception { String markup = "<p foo=\"bar\"><b>Parag</b><!--raph--></p>"; // Create a rewriter that would strip everything GadgetRewriter rewriter = createRewriter(set(), set()); MutableContent mc = new MutableContent(parser, markup); Document document = mc.getDocument(); Element paragraphTag = (Element) document.getElementsByTagName("p").item(0); // Mark the paragraph tag element as trusted SanitizingGadgetRewriter.bypassSanitization(paragraphTag, false); rewriter.rewrite(gadget, mc); // The document should be unchanged String content = mc.getContent(); Matcher matcher = BODY_REGEX.matcher(content); matcher.matches(); assertEquals("<p foo=\"bar\"></p>", matcher.group(1)); }
private void testMarkup(String markup, String expected, List<String> msgs) throws GadgetException{ Gadget gadget = makeGadget(); for (GadgetHtmlParser parser : parsers) { MutableContent mc = new MutableContent(parser, markup); rewriter.rewrite(gadget, mc); String actual = mc.getContent(); if (msgs != null) { for (String msg : msgs) { System.out.println("Msg:" + msg); assertThat(actual, containsString(msg)); } } } }
private void testMarkup(String markup, String expected, List<String> msgs) throws GadgetException{ Gadget gadget = makeGadget(); for (GadgetHtmlParser parser : parsers) { MutableContent mc = new MutableContent(parser, markup); rewriter.rewrite(gadget, mc); String actual = mc.getContent(); if (msgs != null) { for (String msg : msgs) { System.out.println("Msg:" + msg); assertThat(actual, containsString(msg)); } } } }
@Test public void testNoMetaNode() throws Exception { String html = "<html><head><title>hello</title>" + "</head><body><a href=\"hello\">Hello</a>" + "</body></html>"; String expected = "<html><head><title>hello</title>" + "</head><body><a href=\"hello\">Hello</a>" + "</body></html>"; ContentTypeCharsetRemoverRewriter rewriter = new ContentTypeCharsetRemoverRewriter(); Gadget gadget = DomWalker.makeGadget(new HttpRequest( Uri.parse("http://1.com/"))); MutableContent mc = new MutableContent(htmlParser, html); rewriter.rewrite(gadget, mc); assertEquals(expected, mc.getContent()); }
@Test public void testNoMetaNode() throws Exception { String html = "<html><head><title>hello</title>" + "</head><body><a href=\"hello\">Hello</a>" + "</body></html>"; String expected = "<html><head><title>hello</title>" + "</head><body><a href=\"hello\">Hello</a>" + "</body></html>"; ContentTypeCharsetRemoverRewriter rewriter = new ContentTypeCharsetRemoverRewriter(); Gadget gadget = DomWalker.makeGadget(new HttpRequest( Uri.parse("http://1.com/"))); MutableContent mc = new MutableContent(htmlParser, html); rewriter.rewrite(gadget, mc); assertEquals(expected, mc.getContent()); }
private void setupGadget(String gadgetXml) throws SpecParserException, JSONException { gadgetSpec = new GadgetSpec(GADGET_URI, gadgetXml); gadget = new Gadget(); gadget.setSpec(gadgetSpec); gadget.setContext(new GadgetContext() { @Override public Uri getUrl() { return GADGET_URI; } }); gadget.setCurrentView(gadgetSpec.getView("default")); content = new MutableContent(new NekoSimplifiedHtmlParser( new ParseModule.DOMImplementationProvider().get()), gadget.getCurrentView().getContent()); putPipelinedData("user", new JSONObject("{ name: 'John'}")); }
private void setupGadget(String gadgetXml) throws SpecParserException, JSONException { gadgetSpec = new GadgetSpec(GADGET_URI, gadgetXml); gadget = new Gadget(); gadget.setSpec(gadgetSpec); gadget.setContext(new GadgetContext() { @Override public Uri getUrl() { return GADGET_URI; } }); gadget.setCurrentView(gadgetSpec.getView("default")); content = new MutableContent(new NekoSimplifiedHtmlParser( new ParseModule.DOMImplementationProvider().get()), gadget.getCurrentView().getContent()); putPipelinedData("user", new JSONObject("{ name: 'John'}")); }
private void setupGadget(String gadgetXml) throws SpecParserException, JSONException { gadgetSpec = new GadgetSpec(GADGET_URI, gadgetXml); gadget = new Gadget(); gadget.setSpec(gadgetSpec); gadget.setContext(new GadgetContext() { @Override public Uri getUrl() { return GADGET_URI; } }); gadget.setCurrentView(gadgetSpec.getView("default")); content = new MutableContent(new NekoSimplifiedHtmlParser( new ParseModule.DOMImplementationProvider().get()), gadget.getCurrentView().getContent()); putPipelinedData("user", new JSONObject("{ name: 'John'}")); }
private void setupGadget(String gadgetXml) throws SpecParserException { gadgetSpec = new GadgetSpec(GADGET_URI, gadgetXml); gadget = new Gadget(); gadget.setSpec(gadgetSpec); gadget.setContext(new GadgetContext() {}); gadget.setCurrentView(gadgetSpec.getView("default")); content = new MutableContent(new NekoSimplifiedHtmlParser( new ParseModule.DOMImplementationProvider().get()), gadget.getCurrentView().getContent()); }
private void setupGadget(String gadgetXml) throws SpecParserException { gadgetSpec = new GadgetSpec(GADGET_URI, gadgetXml); gadget = new Gadget(); gadget.setSpec(gadgetSpec); gadget.setContext(new GadgetContext() {}); gadget.setCurrentView(gadgetSpec.getView("default")); content = new MutableContent(new NekoSimplifiedHtmlParser( new ParseModule.DOMImplementationProvider().get()), gadget.getCurrentView().getContent()); }
private void setupGadget(String gadgetXml) throws SpecParserException { gadgetSpec = new GadgetSpec(GADGET_URI, gadgetXml); gadget = new Gadget(); gadget.setSpec(gadgetSpec); gadget.setContext(new GadgetContext() {}); gadget.setCurrentView(gadgetSpec.getView("default")); content = new MutableContent(new NekoSimplifiedHtmlParser( new ParseModule.DOMImplementationProvider().get()), gadget.getCurrentView().getContent()); }