Unit testing FileTemplateResolver的Thymeleaf日期格式化程序
我成功地将Spring3日期格式化程序与Thymeleaf集成在一起,并且${date}}的格式符合预期,这非常好 在SpringWeb应用程序上下文之外使用FileTemplateResolver处理模板时会出现问题。我们使用FileTemplateResolver处理模板并返回HTML代码,这样我们就可以在不启动应用程序本身的情况下对其进行验证,从而使测试过程更快、更简单 因此,在使用PagePreview处理以下片段时Unit testing FileTemplateResolver的Thymeleaf日期格式化程序,unit-testing,thymeleaf,Unit Testing,Thymeleaf,我成功地将Spring3日期格式化程序与Thymeleaf集成在一起,并且${date}}的格式符合预期,这非常好 在SpringWeb应用程序上下文之外使用FileTemplateResolver处理模板时会出现问题。我们使用FileTemplateResolver处理模板并返回HTML代码,这样我们就可以在不启动应用程序本身的情况下对其进行验证,从而使测试过程更快、更简单 因此,在使用PagePreview处理以下片段时 <time data-th-datetime="${{creat
<time data-th-datetime="${{createdOn}}" datetime="2013-04-06T13:53">now</time>
我们如何为日期对象设置默认格式化程序
public final class PagePreview {
private static final IWebContext emptyContext = new FakeWebContext();
private static final String templateBaseFolder = "src/main/webapp/WEB-INF/thymeleaf-templates/";
private static final TemplateEngine templateEngine = initialiseTemplateEngine();
private static TemplateEngine initialiseTemplateEngine() {
FileTemplateResolver templateResolver = new FileTemplateResolver();
templateResolver.setPrefix(templateBaseFolder);
templateResolver.setSuffix(".html");
templateResolver.setTemplateMode("LEGACYHTML5");
templateResolver.setHtml5TemplateModePatterns(Sets.newHashSet("*.html"));
TemplateEngine engine = new TemplateEngine();
engine.setTemplateResolver(templateResolver);
engine.initialize();
return engine;
}
public static String previewTemplateWithData(String templateName, Data data) {
Context ctx = new FakeWebContext();
ctx.setVariables(data.toMap());
return templateEngine.process(templateName, ctx);
}
public static String previewTemplateOnly(String templateName) {
return templateEngine.process(templateName, emptyContext);
}
}