import { QWeb } from "../../src/qweb/index"; import { renderToString } from "../helpers"; //------------------------------------------------------------------------------ // Setup and helpers //------------------------------------------------------------------------------ // We create before each test: // - qweb: a new QWeb instance let qweb: QWeb; beforeEach(() => { QWeb.TEMPLATES = {}; QWeb.nextId = 1; qweb = new QWeb(); }); //------------------------------------------------------------------------------ // Tests //------------------------------------------------------------------------------ describe("old t-esc directive", () => { test("simple dynamic value", () => { qweb.addTemplate("test", ''); expect(renderToString(qweb, "test", { text: "hello vdom" })).toBe("hello vdom"); }); test("escaping", () => { qweb.addTemplate("test", ``); expect(renderToString(qweb, "test", { var: "abc" })).toBe( "<ok>abc</ok>" ); }); }); describe("old t-raw directive", () => { test("literal", () => { qweb.addTemplate("test", ``); expect(renderToString(qweb, "test")).toBe("ok"); }); test("variable", () => { qweb.addTemplate("test", ``); expect(renderToString(qweb, "test", { var: "ok" })).toBe("ok"); }); test("not escaping", () => { qweb.addTemplate("test", `
`); expect(renderToString(qweb, "test", { var: "" })).toBe("
"); }); test("t-raw and another sibling node", () => { qweb.addTemplate("test", `hello`); expect(renderToString(qweb, "test", { var: "world" })).toBe( "helloworld" ); }); test("t-raw with comment", () => { qweb.addTemplate("test", ``); expect(renderToString(qweb, "test", { var: "

text

" })).toBe( "

text

" ); }); });