Search in sources :

Example 41 with TemplateEngine

use of io.vertx.ext.web.common.template.TemplateEngine in project vertx-web by vert-x3.

the class MVELTemplateTest method testNoSuchTemplate.

@Test
public void testNoSuchTemplate(TestContext should) {
    TemplateEngine engine = MVELTemplateEngine.create(vertx);
    engine.render(new JsonObject(), "nosuchtemplate.templ", should.asyncAssertFailure());
}
Also used : MVELTemplateEngine(io.vertx.ext.web.templ.mvel.MVELTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) JsonObject(io.vertx.core.json.JsonObject) Test(org.junit.Test)

Example 42 with TemplateEngine

use of io.vertx.ext.web.common.template.TemplateEngine in project vertx-web by vert-x3.

the class MVELTemplateTest method testCachingEnabled.

@Test
public void testCachingEnabled(TestContext should) throws IOException {
    System.setProperty("vertxweb.environment", "production");
    TemplateEngine engine = MVELTemplateEngine.create(vertx);
    PrintWriter out;
    File temp = File.createTempFile("template", ".templ", new File("target/classes"));
    temp.deleteOnExit();
    out = new PrintWriter(temp);
    out.print("before");
    out.flush();
    out.close();
    engine.render(new JsonObject(), temp.getParent() + File.separatorChar + temp.getName(), should.asyncAssertSuccess(render -> {
        should.assertEquals("before", render.toString());
        try {
            PrintWriter out2 = new PrintWriter(temp);
            out2.print("after");
            out2.flush();
            out2.close();
        } catch (IOException e) {
            should.fail(e);
        }
        engine.render(new JsonObject(), temp.getParent() + File.separatorChar + temp.getName(), should.asyncAssertSuccess(render2 -> {
            should.assertEquals("before", render2.toString());
        }));
    }));
}
Also used : TestContext(io.vertx.ext.unit.TestContext) PrintWriter(java.io.PrintWriter) BeforeClass(org.junit.BeforeClass) FileSystemOptions(io.vertx.core.file.FileSystemOptions) MVELTemplateEngine(io.vertx.ext.web.templ.mvel.MVELTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) Vertx(io.vertx.core.Vertx) RunWith(org.junit.runner.RunWith) VertxOptions(io.vertx.core.VertxOptions) Test(org.junit.Test) IOException(java.io.IOException) VertxUnitRunner(io.vertx.ext.unit.junit.VertxUnitRunner) Utils(io.vertx.core.impl.Utils) File(java.io.File) JsonObject(io.vertx.core.json.JsonObject) Assume(org.junit.Assume) MVELTemplateEngine(io.vertx.ext.web.templ.mvel.MVELTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) JsonObject(io.vertx.core.json.JsonObject) IOException(java.io.IOException) File(java.io.File) PrintWriter(java.io.PrintWriter) Test(org.junit.Test)

Example 43 with TemplateEngine

use of io.vertx.ext.web.common.template.TemplateEngine in project vertx-web by vert-x3.

the class MVELTemplateTest method testTemplateHandlerOnClasspath.

@Test
public void testTemplateHandlerOnClasspath(TestContext should) {
    TemplateEngine engine = MVELTemplateEngine.create(vertx);
    final JsonObject context = new JsonObject().put("foo", "badger").put("bar", "fox");
    context.put("context", new JsonObject().put("path", "/test-mvel-template2.templ"));
    String tmplPath = "somedir/test-mvel-template2.templ".replace('/', File.separatorChar);
    engine.render(context, tmplPath, should.asyncAssertSuccess(render -> {
        should.assertEquals("Hello badger and fox\nRequest path is /test-mvel-template2.templ\n", normalizeCRLF(render.toString()));
    }));
}
Also used : TestContext(io.vertx.ext.unit.TestContext) PrintWriter(java.io.PrintWriter) BeforeClass(org.junit.BeforeClass) FileSystemOptions(io.vertx.core.file.FileSystemOptions) MVELTemplateEngine(io.vertx.ext.web.templ.mvel.MVELTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) Vertx(io.vertx.core.Vertx) RunWith(org.junit.runner.RunWith) VertxOptions(io.vertx.core.VertxOptions) Test(org.junit.Test) IOException(java.io.IOException) VertxUnitRunner(io.vertx.ext.unit.junit.VertxUnitRunner) Utils(io.vertx.core.impl.Utils) File(java.io.File) JsonObject(io.vertx.core.json.JsonObject) Assume(org.junit.Assume) MVELTemplateEngine(io.vertx.ext.web.templ.mvel.MVELTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) JsonObject(io.vertx.core.json.JsonObject) Test(org.junit.Test)

Example 44 with TemplateEngine

use of io.vertx.ext.web.common.template.TemplateEngine in project vertx-web by vert-x3.

the class PebbleTemplateTest method testCachingEnabled.

@Test
public void testCachingEnabled(TestContext should) throws Exception {
    System.setProperty("vertxweb.environment", "production");
    TemplateEngine engine = PebbleTemplateEngine.create(vertx);
    File temp = File.createTempFile("template", ".peb", new File("target/classes"));
    temp.deleteOnExit();
    try (PrintWriter out = new PrintWriter(temp)) {
        out.print("before");
        out.flush();
    }
    engine.render(new JsonObject(), temp.getParent() + "/" + temp.getName(), should.asyncAssertSuccess(render -> {
        should.assertEquals("before", normalizeCRLF(render.toString()));
        try (PrintWriter out2 = new PrintWriter(temp)) {
            out2.print("after");
            out2.flush();
        } catch (IOException e) {
            should.fail(e);
        }
        engine.render(new JsonObject(), temp.getParent() + "/" + temp.getName(), should.asyncAssertSuccess(render2 -> {
            should.assertEquals("before", normalizeCRLF(render2.toString()));
        }));
    }));
}
Also used : TestContext(io.vertx.ext.unit.TestContext) PrintWriter(java.io.PrintWriter) BeforeClass(org.junit.BeforeClass) FileSystemOptions(io.vertx.core.file.FileSystemOptions) PebbleTemplateEngine(io.vertx.ext.web.templ.pebble.PebbleTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) Vertx(io.vertx.core.Vertx) RunWith(org.junit.runner.RunWith) VertxOptions(io.vertx.core.VertxOptions) Test(org.junit.Test) IOException(java.io.IOException) HashMap(java.util.HashMap) VertxUnitRunner(io.vertx.ext.unit.junit.VertxUnitRunner) File(java.io.File) ArrayList(java.util.ArrayList) TestExtension(io.vertx.ext.web.templ.extension.TestExtension) JsonArray(io.vertx.core.json.JsonArray) PebbleVertxLoader(io.vertx.ext.web.templ.pebble.impl.PebbleVertxLoader) PebbleEngine(com.mitchellbosecke.pebble.PebbleEngine) Locale(java.util.Locale) JsonObject(io.vertx.core.json.JsonObject) PebbleTemplateEngine(io.vertx.ext.web.templ.pebble.PebbleTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) JsonObject(io.vertx.core.json.JsonObject) IOException(java.io.IOException) File(java.io.File) PrintWriter(java.io.PrintWriter) Test(org.junit.Test)

Example 45 with TemplateEngine

use of io.vertx.ext.web.common.template.TemplateEngine in project vertx-web by vert-x3.

the class PebbleTemplateTest method noLocaleShouldUseDefaultLocale.

@Test
public void noLocaleShouldUseDefaultLocale(TestContext should) {
    Locale.setDefault(Locale.US);
    final TemplateEngine engine = PebbleTemplateEngine.create(vertx);
    engine.render(new JsonObject(), "src/test/filesystemtemplates/test-pebble-template-i18n.peb", should.asyncAssertSuccess(render2 -> {
        should.assertEquals("Hi", normalizeCRLF(render2.toString()));
    }));
}
Also used : TestContext(io.vertx.ext.unit.TestContext) PrintWriter(java.io.PrintWriter) BeforeClass(org.junit.BeforeClass) FileSystemOptions(io.vertx.core.file.FileSystemOptions) PebbleTemplateEngine(io.vertx.ext.web.templ.pebble.PebbleTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) Vertx(io.vertx.core.Vertx) RunWith(org.junit.runner.RunWith) VertxOptions(io.vertx.core.VertxOptions) Test(org.junit.Test) IOException(java.io.IOException) HashMap(java.util.HashMap) VertxUnitRunner(io.vertx.ext.unit.junit.VertxUnitRunner) File(java.io.File) ArrayList(java.util.ArrayList) TestExtension(io.vertx.ext.web.templ.extension.TestExtension) JsonArray(io.vertx.core.json.JsonArray) PebbleVertxLoader(io.vertx.ext.web.templ.pebble.impl.PebbleVertxLoader) PebbleEngine(com.mitchellbosecke.pebble.PebbleEngine) Locale(java.util.Locale) JsonObject(io.vertx.core.json.JsonObject) PebbleTemplateEngine(io.vertx.ext.web.templ.pebble.PebbleTemplateEngine) TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine) JsonObject(io.vertx.core.json.JsonObject) Test(org.junit.Test)

Aggregations

TemplateEngine (io.vertx.ext.web.common.template.TemplateEngine)75 Test (org.junit.Test)74 JsonObject (io.vertx.core.json.JsonObject)70 TestContext (io.vertx.ext.unit.TestContext)57 VertxUnitRunner (io.vertx.ext.unit.junit.VertxUnitRunner)57 RunWith (org.junit.runner.RunWith)57 File (java.io.File)53 IOException (java.io.IOException)53 PrintWriter (java.io.PrintWriter)53 Vertx (io.vertx.core.Vertx)52 VertxOptions (io.vertx.core.VertxOptions)52 FileSystemOptions (io.vertx.core.file.FileSystemOptions)52 BeforeClass (org.junit.BeforeClass)52 JsonArray (io.vertx.core.json.JsonArray)16 PebbleTemplateEngine (io.vertx.ext.web.templ.pebble.PebbleTemplateEngine)13 PebbleEngine (com.mitchellbosecke.pebble.PebbleEngine)11 TestExtension (io.vertx.ext.web.templ.extension.TestExtension)11 PebbleVertxLoader (io.vertx.ext.web.templ.pebble.impl.PebbleVertxLoader)11 ArrayList (java.util.ArrayList)11 Assert.assertNotNull (org.junit.Assert.assertNotNull)10