@Inject public SanitizingGadgetRewriter(@AllowedTags Set<String> allowedTags, @AllowedAttributes Set<String> allowedAttributes, ContentRewriterFeature.Factory rewriterFeatureFactory, CajaCssSanitizer cssSanitizer, ProxyUriManager proxyUriManager) { super(new BasicElementFilter(allowedTags, allowedAttributes), new LinkSchemeCheckFilter(), new StyleFilter(proxyUriManager, cssSanitizer), new LinkFilter(proxyUriManager), new ImageFilter(proxyUriManager), new TargetFilter()); }
private StyleFilter(ProxyUriManager proxyUriManager, CajaCssSanitizer cssSanitizer) { this.imageRewriter = new SanitizingProxyUriManager(proxyUriManager, "image/*"); this.cssImportRewriter = new SanitizingProxyUriManager(proxyUriManager, "text/css"); this.cssSanitizer = cssSanitizer; }
private ResponseRewriter createRewriter() { return new CajaResponseRewriter(new RequestPipeline() { public HttpResponse execute(HttpRequest request) { return null; } }); }
@Test public void handlesRenderingExceptionGracefully() { htmlRenderer.exception = new RenderingException("four-oh-four", HttpServletResponse.SC_NOT_FOUND); RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); assertEquals("four-oh-four", results.getErrorMessage()); assertEquals(HttpServletResponse.SC_NOT_FOUND, results.getHttpStatusCode()); }
@Test public void renderTypeUrlRequiresCajaIncompatible() { processor.setGadgetData(GADGET_CAJA); RenderingResults results = renderer.render(makeContext("url")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); assertEquals(HttpServletResponse.SC_BAD_REQUEST, results.getHttpStatusCode()); }
@Test public void renderTypeHtml() { RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.OK, results.getStatus()); assertEquals(BASIC_HTML_CONTENT, results.getContent()); }
@Test public void renderTypeUrl() { RenderingResults results = renderer.render(makeContext("url")); assertEquals(RenderingResults.Status.MUST_REDIRECT, results.getStatus()); assertEquals(TYPE_URL_HREF, results.getRedirect()); }
@Test public void wrongDomainFails() throws Exception { lockedDomainService.canRender = false; RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); }
@Before public void setUp() throws Exception { containerConfig = new FakeContainerConfig(); renderer = new Renderer(processor, htmlRenderer, containerConfig, lockedDomainService); }
@Test public void handlesRenderingExceptionGracefully() { htmlRenderer.exception = new RenderingException("four-oh-four", HttpServletResponse.SC_NOT_FOUND); RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); assertEquals("four-oh-four", results.getErrorMessage()); assertEquals(HttpServletResponse.SC_NOT_FOUND, results.getHttpStatusCode()); }
@Inject public SanitizingGadgetRewriter(@AllowedTags Provider<Set<String>> allowedTags, @AllowedAttributes Provider<Set<String>> allowedAttributes, ContentRewriterFeature.Factory rewriterFeatureFactory, CajaCssSanitizer cssSanitizer, ProxyUriManager proxyUriManager) { super(new BasicElementFilter(allowedTags, allowedAttributes), new LinkSchemeCheckFilter(), new StyleFilter(proxyUriManager, cssSanitizer), new LinkFilter(proxyUriManager), new ImageFilter(proxyUriManager), new TargetFilter()); }
@Test public void renderTypeUrlRequiresCajaIncompatible() { processor.setGadgetData(GADGET_CAJA); RenderingResults results = renderer.render(makeContext("url")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); assertEquals(HttpServletResponse.SC_BAD_REQUEST, results.getHttpStatusCode()); }
@Test public void renderTypeHtml() { RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.OK, results.getStatus()); assertEquals(BASIC_HTML_CONTENT, results.getContent()); }
@Test public void wrongDomainFails() throws Exception { lockedDomainService.canRender = false; RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); }
private StyleFilter(ProxyUriManager proxyUriManager, CajaCssSanitizer cssSanitizer) { this.imageRewriter = new SanitizingProxyUriManager(proxyUriManager, "image/*"); this.cssImportRewriter = new SanitizingProxyUriManager(proxyUriManager, "text/css"); this.cssSanitizer = cssSanitizer; }
@Before public void setUp() throws Exception { containerConfig = new FakeContainerConfig(); renderer = new Renderer(processor, htmlRenderer, containerConfig, lockedDomainService); }
private ResponseRewriter createRewriter() { return new CajaResponseRewriter(new RequestPipeline() { public HttpResponse execute(HttpRequest request) { return null; } }); }
@Test public void handlesRenderingExceptionGracefully() { htmlRenderer.exception = new RenderingException("four-oh-four", HttpServletResponse.SC_NOT_FOUND); RenderingResults results = renderer.render(makeContext("html")); assertEquals(RenderingResults.Status.ERROR, results.getStatus()); assertEquals("four-oh-four", results.getErrorMessage()); assertEquals(HttpServletResponse.SC_NOT_FOUND, results.getHttpStatusCode()); }
@Inject public SanitizingGadgetRewriter(@AllowedTags Set<String> allowedTags, @AllowedAttributes Set<String> allowedAttributes, ContentRewriterFeature.Factory rewriterFeatureFactory, CajaCssSanitizer cssSanitizer, ProxyUriManager proxyUriManager) { super(new BasicElementFilter(allowedTags, allowedAttributes), new LinkSchemeCheckFilter(), new StyleFilter(proxyUriManager, cssSanitizer), new LinkFilter(proxyUriManager), new ImageFilter(proxyUriManager), new TargetFilter()); }
private ResponseRewriter createRewriter() { return new CajaResponseRewriter(new RequestPipeline() { public HttpResponse execute(HttpRequest request) { return null; } }); }