diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2022-08-09 21:06:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-09 21:06:01 +0200 |
commit | 1f54d877895ea25258a941818f07c6e84d44a7a2 (patch) | |
tree | 1999d04ec926d464c94ed2c5a9fe10fb84f3de24 /cli/tests/integration/compat_tests.rs | |
parent | af618e3b8fb11f3947ab5ded9523cdca9cf77ced (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.rs | 19 |
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\" }")); +} |