mirror of
https://github.com/odoo/owl.git
synced 2025-10-06 19:59:41 +07:00
[REF] qweb: t-foreach: remove integer support for t-value
Handling it complexifies the compiled code, and it is not really useful (the same result can be achieved with t-foreach="Array(n)") Part of #128
This commit is contained in:
committed by
Géry Debongnie
parent
b14d069ee7
commit
49baf0de6e
+5
-24
@@ -1151,8 +1151,7 @@ describe("composition", () => {
|
||||
<t t-if="state.ok"><t t-widget="ChildWidget" t-ref="child" t-keepalive="1"/></t>
|
||||
</div>
|
||||
<span t-name="ChildWidget">Hello</span>
|
||||
</templates>`
|
||||
);
|
||||
</templates>`);
|
||||
class ParentWidget extends Widget {
|
||||
state = { ok: true };
|
||||
widgets = { ChildWidget };
|
||||
@@ -1162,19 +1161,19 @@ describe("composition", () => {
|
||||
await widget.mount(fixture);
|
||||
let child = children(widget)[0];
|
||||
|
||||
expect(fixture.innerHTML).toBe('<div><span>Hello</span></div>');
|
||||
expect(fixture.innerHTML).toBe("<div><span>Hello</span></div>");
|
||||
expect(widget.refs.child).toEqual(child);
|
||||
|
||||
widget.state.ok = false;
|
||||
await nextTick();
|
||||
|
||||
expect(fixture.innerHTML).toBe('<div></div>');
|
||||
expect(fixture.innerHTML).toBe("<div></div>");
|
||||
expect(widget.refs.child).toEqual(child);
|
||||
|
||||
widget.state.ok = true;
|
||||
await nextTick();
|
||||
|
||||
expect(fixture.innerHTML).toBe('<div><span>Hello</span></div>');
|
||||
expect(fixture.innerHTML).toBe("<div><span>Hello</span></div>");
|
||||
expect(widget.refs.child).toEqual(child);
|
||||
});
|
||||
|
||||
@@ -1849,7 +1848,7 @@ describe("random stuff/miscellaneous", () => {
|
||||
// directive as a key
|
||||
env.qweb.addTemplate(
|
||||
"Test",
|
||||
`<div><t t-foreach="2">txt</t><t t-widget="widget"/></div>`
|
||||
`<div><t t-foreach="Array(2)">txt</t><t t-widget="widget"/></div>`
|
||||
);
|
||||
class Test extends Widget {
|
||||
widgets = { widget: Widget };
|
||||
@@ -2499,24 +2498,6 @@ describe("widget and observable state", () => {
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
test("widget can add observed keys to its state", async () => {
|
||||
env.qweb.addTemplate(
|
||||
"TestWidget",
|
||||
`<div><t t-esc="state.a"/><t t-esc="state.b"/></div>`
|
||||
);
|
||||
class TestWidget extends Widget {
|
||||
state: any = { a: 1 };
|
||||
}
|
||||
const widget = new TestWidget(env);
|
||||
await widget.mount(fixture);
|
||||
|
||||
expect(fixture.innerHTML).toBe("<div>1</div>");
|
||||
|
||||
widget.set(widget.state, "b", 2);
|
||||
await nextTick();
|
||||
expect(fixture.innerHTML).toBe("<div>12</div>");
|
||||
});
|
||||
});
|
||||
|
||||
describe("t-mounted directive", () => {
|
||||
|
||||
Reference in New Issue
Block a user