Load included templates from filesystem
[Sone.git] / src / test / java / net / pterodactylus / sone / main / DebugLoadersTest.java
index e9dfb71..c3fa7e9 100644 (file)
@@ -16,6 +16,7 @@ import java.net.URISyntaxException;
 import net.pterodactylus.sone.web.page.FreenetRequest;
 import net.pterodactylus.util.template.Template;
 import net.pterodactylus.util.template.TemplateContext;
+import net.pterodactylus.util.template.TemplateProvider;
 import net.pterodactylus.util.web.Method;
 import net.pterodactylus.util.web.Page;
 import net.pterodactylus.util.web.Response;
@@ -50,6 +51,9 @@ public class DebugLoadersTest {
                loaders = new DebugLoaders(templatePath);
                File templateFile = new File(templatePath, "template.txt");
                Files.write("<%if foo>foo<%else>bar<%/if>", templateFile, Charsets.UTF_8);
+               new File(templatePath, "templates").mkdir();
+               File secondTemplateFile = new File(templatePath, "templates/template.txt");
+               Files.write("<%if foo>foo<%else>bar<%/if>", secondTemplateFile, Charsets.UTF_8);
        }
 
        @Test
@@ -74,4 +78,12 @@ public class DebugLoadersTest {
                assertThat(response.getStatusCode(), is(200));
        }
 
+       @Test
+       public void templateProviderLocatesTemplatesInFileSystem() {
+               TemplateProvider templateProvider = loaders.getTemplateProvider();
+               Template template = templateProvider.getTemplate(templateContext, "template.txt");
+               template.render(templateContext, stringWriter);
+               assertThat(stringWriter.toString(), is("bar"));
+       }
+
 }