diff options
Diffstat (limited to 'js/src/jit-test/tests/modules/requested-modules.js')
-rw-r--r-- | js/src/jit-test/tests/modules/requested-modules.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/modules/requested-modules.js b/js/src/jit-test/tests/modules/requested-modules.js new file mode 100644 index 0000000000..acf58e5a6e --- /dev/null +++ b/js/src/jit-test/tests/modules/requested-modules.js @@ -0,0 +1,30 @@ +// Test requestedModules property + +function testRequestedModules(source, expected) { + var module = parseModule(source); + var actual = module.requestedModules; + assertEq(actual.length, expected.length); + for (var i = 0; i < actual.length; i++) { + assertEq(actual[i].moduleSpecifier, expected[i]); + } +} + +testRequestedModules("", []); + +testRequestedModules("import a from 'foo'", + ['foo']); + +testRequestedModules("import a from 'foo'; import b from 'bar'", + ['foo', 'bar']); + +testRequestedModules("import a from 'foo'; import b from 'bar'; import c from 'foo'", + ['foo', 'bar']); + +testRequestedModules("export {} from 'foo'", + ['foo']); + +testRequestedModules("export * from 'bar'", + ['bar']); + +testRequestedModules("import a from 'foo'; export {} from 'bar'; export * from 'baz'", + ['foo', 'bar', 'baz']); |