From: Paul Gofman Subject: [PATCH v5 5/6] mshtml/tests: Add test for multiple JS scope instances. Message-Id: <20210618125021.1333173-5-pgofman@codeweavers.com> Date: Fri, 18 Jun 2021 15:50:20 +0300 In-Reply-To: <20210618125021.1333173-1-pgofman@codeweavers.com> References: <20210618125021.1333173-1-pgofman@codeweavers.com> Based on a patch by Jacek Caban. Signed-off-by: Paul Gofman --- dlls/mshtml/tests/es5.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/dlls/mshtml/tests/es5.js b/dlls/mshtml/tests/es5.js index 2fb115556e5..dd6ea76c77a 100644 --- a/dlls/mshtml/tests/es5.js +++ b/dlls/mshtml/tests/es5.js @@ -1319,3 +1319,25 @@ sync_test("declaration_let", function() { ok(a == 3, "a != 3"); }); + +sync_test("let scope instances", function() { + var a = [], i; + for(i = 0; i < 3; i++) { + a[i] = function() { return v; }; + let v = i; + } + for(i = 0; i < 3; i++) + ok(a[i]() == i, "a[" + i + "]() = " + a[i]()); + + ok(typeof f == 'undefined', "f is defined"); + + for(i = 0; i < 3; i++) { + function f() { return v; } + a[i] = f; + let v = i; + } + for(i = 0; i < 3; i++) + ok(a[i]() == i, "a[" + i + "]() = " + a[i]()); + + ok(f() == 2, "f() = " + f()); +}); -- 2.31.1