user.login();
Path mainDirectory = Files.createTempDirectory("bliki-" + encodeTitleLocalUrl(title).replace("/", "_"));
Path imageDirectory = mainDirectory.resolve("WikiImages");
APIWikiModel wikiModel = new APIWikiModel(user, db,
locale,
"${image}",
"${title}",
imageDirectory.toString());
DocumentCreator creator = new DocumentCreator(wikiModel, user, new String[]{title});
@SuppressWarnings("StringBufferReplaceableByString")
StringBuilder builder = new StringBuilder();
builder.append(HTMLConstants.HTML_HEADER1)
.append(HTMLConstants.CSS_MAIN_STYLE)
.append(HTMLConstants.CSS_SCREEN_STYLE)
.append(HTMLConstants.HTML_HEADER2);
creator.setHeader(builder.toString());
creator.setFooter(HTMLConstants.HTML_FOOTER);
wikiModel.setUp();
Configuration.DEFAULT_CONFIGURATION.setTemplateCallsCache(new HashMap<String, String>());
Path generatedHTMLFilename = mainDirectory.resolve(encodeTitleLocalUrl(title) + ".html");
creator.renderToFile(generatedHTMLFilename.toString());
System.out.println("Created file: " + generatedHTMLFilename);
assertThat(generatedHTMLFilename.toFile()).isFile();
assertThat(generatedHTMLFilename.toFile().length()).isGreaterThan(0);
return new Result(generatedHTMLFilename.toFile(), wikiModel.getRedirectLink());
}