diff options
Diffstat (limited to 'cli/tests')
7 files changed, 37 insertions, 1 deletions
diff --git a/cli/tests/integration/compat_tests.rs b/cli/tests/integration/compat_tests.rs index 70c224e31..fdd9813f0 100644 --- a/cli/tests/integration/compat_tests.rs +++ b/cli/tests/integration/compat_tests.rs @@ -46,6 +46,12 @@ itest!(compat_dyn_import_rejects_with_node_compatible_error { envs: vec![("DENO_NODE_COMPAT_URL".to_string(), std_file_url())], }); +itest!(import_esm_from_cjs { + args: + "run --compat --unstable -A --quiet compat/import_esm_from_cjs/index.js", + output_str: Some("function\n"), +}); + #[test] fn globals_in_repl() { let (out, _err) = util::run_and_collect_output_with_args( @@ -59,6 +65,20 @@ fn globals_in_repl() { } #[test] +fn require_in_repl() { + let (out, _err) = util::run_and_collect_output_with_args( + true, + vec!["repl", "--compat", "--unstable", "--quiet"], + Some(vec![ + "const foo = require('./compat/import_esm_from_cjs/index');", + ]), + None, + false, + ); + assert!(out.contains("function")); +} + +#[test] fn node_compat_url() { let (out, err) = util::run_and_collect_output_with_args( false, diff --git a/cli/tests/testdata/compat/dyn_import_reject.out b/cli/tests/testdata/compat/dyn_import_reject.out index 6d78135b2..1324c8aeb 100644 --- a/cli/tests/testdata/compat/dyn_import_reject.out +++ b/cli/tests/testdata/compat/dyn_import_reject.out @@ -1,2 +1,2 @@ -TypeError: Cannot load module "file:///[WILDCARD]/testdata/compat/foobar.js". +TypeError: [ERR_MODULE_NOT_FOUND] Cannot find module "file://[WILDCARD]/testdata/compat/foobar.js" imported from "file://[WILDCARD]/testdata/compat/dyn_import_reject.js" ERR_MODULE_NOT_FOUND diff --git a/cli/tests/testdata/compat/import_esm_from_cjs/index.js b/cli/tests/testdata/compat/import_esm_from_cjs/index.js new file mode 100644 index 000000000..4ba03e104 --- /dev/null +++ b/cli/tests/testdata/compat/import_esm_from_cjs/index.js @@ -0,0 +1 @@ +require("pure-cjs"); diff --git a/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-cjs/index.js b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-cjs/index.js new file mode 100644 index 000000000..35f7c3774 --- /dev/null +++ b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-cjs/index.js @@ -0,0 +1,4 @@ +async function run() { + const _result = await import('pure-esm'); +} +run() diff --git a/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-cjs/package.json b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-cjs/package.json new file mode 100644 index 000000000..e854fd992 --- /dev/null +++ b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-cjs/package.json @@ -0,0 +1,4 @@ +{ + "name": "pure-cjs", + "main": "./index.js" +} diff --git a/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-esm/index.js b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-esm/index.js new file mode 100644 index 000000000..898097cb5 --- /dev/null +++ b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-esm/index.js @@ -0,0 +1,2 @@ +import fs from 'node:fs'; +console.log(typeof fs.chmod); diff --git a/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-esm/package.json b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-esm/package.json new file mode 100644 index 000000000..a373d3ad9 --- /dev/null +++ b/cli/tests/testdata/compat/import_esm_from_cjs/node_modules/pure-esm/package.json @@ -0,0 +1,5 @@ +{ + "name": "pure-esm", + "type": "module", + "main": "./index.js" +} |