[FIX] component: do not validate props twice

it is not useful to do it in the component directive, especially since
it is done in the constructor, and the default props are not applied.

closes #379
This commit is contained in:
Géry Debongnie
2019-10-22 21:27:28 +02:00
committed by aab-odoo
parent be556a970e
commit 13128ed425
3 changed files with 18 additions and 4 deletions
+18
View File
@@ -352,4 +352,22 @@ describe("default props", () => {
expect(w.props.p).toBe(4);
expect(fixture.innerHTML).toMatchSnapshot();
});
test("can set default required boolean values", async () => {
class TestWidget extends Widget {
static props = ["p", "q"];
static defaultProps = { p: true, q: false };
static template = xml`<span><t t-if="props.p">hey</t><t t-if="!props.q">hey</t></span>`;
}
class App extends Widget {
static template = xml`<div><TestWidget/></div>`;
static components = { TestWidget };
}
const w = new App(env, {});
await w.mount(fixture);
expect(fixture.innerHTML).toBe('<div><span>heyhey</span></div>')
});
});