mirror of
https://github.com/odoo/owl.git
synced 2025-10-06 19:59:41 +07:00
6e0834ce5e
We re-add the possibility to validate props when dev mode is active. No change in the API right Now. The dev mode is activated via the configure method of App class.
43 lines
1.4 KiB
TypeScript
43 lines
1.4 KiB
TypeScript
import { renderToString, snapshotEverything, TestContext } from "../helpers";
|
|
|
|
snapshotEverything();
|
|
|
|
describe("error handling", () => {
|
|
test("invalid xml", () => {
|
|
expect(() => renderToString("<div>")).toThrow("Invalid XML in template");
|
|
});
|
|
|
|
test("nice warning if no template with given name", () => {
|
|
const context = new TestContext();
|
|
expect(() => context.renderToString("invalidname")).toThrow("Missing template");
|
|
});
|
|
|
|
test("cannot add twice the same template", () => {
|
|
const context = new TestContext();
|
|
context.addTemplate("test", `<t></t>`);
|
|
expect(() => context.addTemplate("test", "<div/>", { allowDuplicate: true })).not.toThrow(
|
|
"already defined"
|
|
);
|
|
expect(() => context.addTemplate("test", "<div/>")).toThrow("already defined");
|
|
});
|
|
|
|
// test("addTemplates throw if parser error", () => {
|
|
// const context = new TestContext();
|
|
// expect(() => {
|
|
// context.addTemplates("<templates><abc>></templates>");
|
|
// }).toThrow("Invalid XML in template");
|
|
// });
|
|
|
|
test("nice error when t-on is evaluated with a missing event", () => {
|
|
expect(() => renderToString(`<div t-on="somemethod"></div>`)).toThrow(
|
|
"Missing event name with t-on directive"
|
|
);
|
|
});
|
|
|
|
test("error when unknown directive", () => {
|
|
expect(() => renderToString(`<div t-best-beer="rochefort 10">test</div>`)).toThrow(
|
|
"Unknown QWeb directive: 't-best-beer'"
|
|
);
|
|
});
|
|
});
|