diff --git a/tests/qweb/__snapshots__/qweb_memory.test.ts.snap b/tests/qweb/__snapshots__/qweb_memory.test.ts.snap new file mode 100644 index 00000000..a8881b07 --- /dev/null +++ b/tests/qweb/__snapshots__/qweb_memory.test.ts.snap @@ -0,0 +1,24 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`memory t-foreach does not leak stuff in global scope 1`] = ` +"function anonymous(bdom, helpers +) { + let { text, createBlock, list, multi, html, toggler, component } = bdom; + let { withDefault, getTemplate, prepareList, withKey, zero, call, callSlot, capture, isBoundary, shallowEqual, setContextValue } = helpers; + + let block1 = createBlock(\`

\`); + + return function template(ctx, node, key = \\"\\") { + ctx = Object.create(ctx); + const [k_block2, v_block2, l_block2, c_block2] = prepareList([3,2,1]); + for (let i1 = 0; i1 < l_block2; i1++) { + ctx[\`item\`] = v_block2[i1]; + ctx[\`item_index\`] = i1; + let key1 = ctx['item_index']; + c_block2[i1] = withKey(text(ctx['item']), key1); + } + let b2 = list(c_block2); + return block1([], [b2]); + } +}" +`; diff --git a/tests/qweb/qweb_memory.test.ts b/tests/qweb/qweb_memory.test.ts new file mode 100644 index 00000000..0dcbb178 --- /dev/null +++ b/tests/qweb/qweb_memory.test.ts @@ -0,0 +1,12 @@ +import { renderToString, snapshotEverything } from "../helpers"; + +snapshotEverything(); + +describe("memory", () => { + test("t-foreach does not leak stuff in global scope", () => { + const initialNumberOfGlobals = Object.keys(window).length; + const template = `

`; + expect(renderToString(template)).toBe("

321

"); + expect(Object.keys(window).length).toBe(initialNumberOfGlobals); + }); +});