summaryrefslogtreecommitdiff
path: root/cli/tests/integration/compat_tests.rs
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2022-08-09 21:06:01 +0200
committerGitHub <noreply@github.com>2022-08-09 21:06:01 +0200
commit1f54d877895ea25258a941818f07c6e84d44a7a2 (patch)
tree1999d04ec926d464c94ed2c5a9fe10fb84f3de24 /cli/tests/integration/compat_tests.rs
parentaf618e3b8fb11f3947ab5ded9523cdca9cf77ced (diff)
feat: add ext/node for require support (#15362)
This commit adds "ext/node" extension that implementes CommonJS module system. In the future this extension might be extended to actually contain implementation of Node compatibility layer in favor of "deno_std/node". Currently this functionality is not publicly exposed, it is available via "Deno[Deno.internal].require" namespace and is meant to be used by other functionality to be landed soon. This is a minimal first pass, things that still don't work: support for dynamic imports in CJS conditional exports
Diffstat (limited to 'cli/tests/integration/compat_tests.rs')
-rw-r--r--cli/tests/integration/compat_tests.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/cli/tests/integration/compat_tests.rs b/cli/tests/integration/compat_tests.rs
index ce89cc623..e8e6316bf 100644
--- a/cli/tests/integration/compat_tests.rs
+++ b/cli/tests/integration/compat_tests.rs
@@ -172,3 +172,22 @@ fn native_modules_as_global_vars() {
);
assert!(out.contains("true"));
}
+
+#[test]
+fn ext_node_cjs_execution() {
+ let (out, _err) = util::run_and_collect_output_with_args(
+ true,
+ vec![
+ "run",
+ "-A",
+ "--unstable",
+ "--quiet",
+ "commonjs/init.js",
+ "./example.js",
+ ],
+ None,
+ Some(vec![("DENO_NODE_COMPAT_URL".to_string(), std_file_url())]),
+ false,
+ );
+ assert!(out.contains("{ hello: \"world\" }"));
+}