【发布时间】:2018-01-31 21:53:37
【问题描述】:
我有以下提供 PDF 的 Wicket 页面:
public class TestPage extends WebPage {
public TestPage(PageParameters pageParameters) {
String param1 = pageParameters.get("test").toString();
String param2 = pageParameters.get("test1").toString();
[..]
try {
byte[] generatedPDF= generatePDF(param1, param2, pdfGenerationOptions);
RequestCycle requestCycle = RequestCycle.get();
HttpServletRequest request = (HttpServletRequest) requestCycle.getRequest().getContainerRequest();
requestCycle.replaceAllRequestHandlers(new ResourceRequestHandler(new PDFResource("test.pdf", request.getHeader(USER_AGENT), true), null));
} catch (PdfGenerationException | IOException e) {
LOGGER.error("error", e);
new PageProvider(ErrorPage.class);
}
}
@Override
public void renderPage() {
// left blank
}
}
由于在这种情况下我只能调用构造函数,如何测试页面是否返回字节数组 (pdf) 或 ErrorPage.class?
提前致谢
【问题讨论】:
-
一些建议。您在构造函数中做了太多事情,应该保持简单。
标签: java spring testing junit wicket