diff options
author | Moonchild <moonchild@palemoon.org> | 2020-07-03 13:56:49 +0000 |
---|---|---|
committer | Moonchild <moonchild@palemoon.org> | 2020-07-03 13:56:49 +0000 |
commit | 61a471ef17645c211d228b4dd085a933fba6e6ba (patch) | |
tree | 0ee6503cf1aadea9e5737056896fa61782cb1822 /js/src/jit-test/tests/modules/global-scope.js | |
parent | 98752af13349e2da56b5ed1219cae30008ef250a (diff) | |
download | UXP-61a471ef17645c211d228b4dd085a933fba6e6ba.tar UXP-61a471ef17645c211d228b4dd085a933fba6e6ba.tar.gz UXP-61a471ef17645c211d228b4dd085a933fba6e6ba.tar.lz UXP-61a471ef17645c211d228b4dd085a933fba6e6ba.tar.xz UXP-61a471ef17645c211d228b4dd085a933fba6e6ba.zip |
Issue #618 - Align module instantiation/errors with the updated spec.
Store and re-throw module instantiation and evaluation errors.
Ref: BZ 1374239, 1394492
Diffstat (limited to 'js/src/jit-test/tests/modules/global-scope.js')
-rw-r--r-- | js/src/jit-test/tests/modules/global-scope.js | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/js/src/jit-test/tests/modules/global-scope.js b/js/src/jit-test/tests/modules/global-scope.js index 90a9f7026..b99019fa8 100644 --- a/js/src/jit-test/tests/modules/global-scope.js +++ b/js/src/jit-test/tests/modules/global-scope.js @@ -1,32 +1,34 @@ // Test interaction with global object and global lexical scope. -function parseAndEvaluate(source) { +function evalModuleAndCheck(source, expected) { let m = parseModule(source); m.declarationInstantiation(); - return m.evaluation(); + m.evaluation(); + assertEq(getModuleEnvironmentValue(m, "r"), expected); } var x = 1; -assertEq(parseAndEvaluate("let r = x; x = 2; r"), 1); +evalModuleAndCheck("export let r = x; x = 2;", 1); assertEq(x, 2); let y = 3; -assertEq(parseAndEvaluate("let r = y; y = 4; r"), 3); +evalModuleAndCheck("export let r = y; y = 4;", 3); assertEq(y, 4); if (helperThreadCount() == 0) quit(); -function offThreadParseAndEvaluate(source) { +function offThreadEvalModuleAndCheck(source, expected) { offThreadCompileModule(source); let m = finishOffThreadModule(); print("compiled"); m.declarationInstantiation(); - return m.evaluation(); + m.evaluation(); + assertEq(getModuleEnvironmentValue(m, "r"), expected); } -assertEq(offThreadParseAndEvaluate("let r = x; x = 5; r"), 2); +offThreadEvalModuleAndCheck("export let r = x; x = 5;", 2); assertEq(x, 5); -assertEq(offThreadParseAndEvaluate("let r = y; y = 6; r"), 4); +offThreadEvalModuleAndCheck("export let r = y; y = 6;", 4); assertEq(y, 6); |