diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-10-14 20:48:39 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-14 20:48:39 -0400 |
commit | 1a0cb5b5312941521ab021cfe9eaed498f35900b (patch) | |
tree | 2e5c58e25e8506b993ac678e83ba0c2feac37d75 /tests/specs/compile/detect_cjs | |
parent | ee7d4501435f0ebd655c8b50bd6e41ca19e71abc (diff) |
feat(unstable): `--unstable-detect-cjs` for respecting explicit `"type": "commonjs"` (#26149)
When using the `--unstable-detect-cjs` flag or adding `"unstable":
["detect-cjs"]` to a deno.json, it will make a JS file CJS if the
closest package.json contains `"type": "commonjs"` and the file is not
an ESM module (no TLA, no `import.meta`, no `import`/`export`).
Diffstat (limited to 'tests/specs/compile/detect_cjs')
-rw-r--r-- | tests/specs/compile/detect_cjs/__test__.jsonc | 24 | ||||
-rw-r--r-- | tests/specs/compile/detect_cjs/add.js | 3 | ||||
-rw-r--r-- | tests/specs/compile/detect_cjs/compile.out | 3 | ||||
-rw-r--r-- | tests/specs/compile/detect_cjs/deno.json | 5 | ||||
-rw-r--r-- | tests/specs/compile/detect_cjs/main.js | 3 | ||||
-rw-r--r-- | tests/specs/compile/detect_cjs/output.out | 1 | ||||
-rw-r--r-- | tests/specs/compile/detect_cjs/package.json | 3 |
7 files changed, 42 insertions, 0 deletions
diff --git a/tests/specs/compile/detect_cjs/__test__.jsonc b/tests/specs/compile/detect_cjs/__test__.jsonc new file mode 100644 index 000000000..32bebb7a5 --- /dev/null +++ b/tests/specs/compile/detect_cjs/__test__.jsonc @@ -0,0 +1,24 @@ +{ + "tempDir": true, + "steps": [{ + "if": "unix", + "args": "compile --allow-read --output main main.js", + "output": "compile.out" + }, { + "if": "unix", + "commandName": "./main", + "args": [], + "output": "output.out", + "exitCode": 1 + }, { + "if": "windows", + "args": "compile --allow-read --output main.exe main.js", + "output": "compile.out" + }, { + "if": "windows", + "commandName": "./main.exe", + "args": [], + "output": "output.out", + "exitCode": 1 + }] +} diff --git a/tests/specs/compile/detect_cjs/add.js b/tests/specs/compile/detect_cjs/add.js new file mode 100644 index 000000000..2a886fbc1 --- /dev/null +++ b/tests/specs/compile/detect_cjs/add.js @@ -0,0 +1,3 @@ +module.exports.add = function (a, b) { + return a + b; +}; diff --git a/tests/specs/compile/detect_cjs/compile.out b/tests/specs/compile/detect_cjs/compile.out new file mode 100644 index 000000000..6509b7f29 --- /dev/null +++ b/tests/specs/compile/detect_cjs/compile.out @@ -0,0 +1,3 @@ +Warning --unstable-detect-cjs is not properly supported in deno compile. The compiled executable may encounter runtime errors. +Check file:///[WILDLINE]/main.js +Compile file:///[WILDLINE] diff --git a/tests/specs/compile/detect_cjs/deno.json b/tests/specs/compile/detect_cjs/deno.json new file mode 100644 index 000000000..35f64c86f --- /dev/null +++ b/tests/specs/compile/detect_cjs/deno.json @@ -0,0 +1,5 @@ +{ + "unstable": [ + "detect-cjs" + ] +} diff --git a/tests/specs/compile/detect_cjs/main.js b/tests/specs/compile/detect_cjs/main.js new file mode 100644 index 000000000..8c55f673b --- /dev/null +++ b/tests/specs/compile/detect_cjs/main.js @@ -0,0 +1,3 @@ +import { add } from "./add.js"; + +console.log(add(1, 2)); diff --git a/tests/specs/compile/detect_cjs/output.out b/tests/specs/compile/detect_cjs/output.out new file mode 100644 index 000000000..b53c44369 --- /dev/null +++ b/tests/specs/compile/detect_cjs/output.out @@ -0,0 +1 @@ +error: Module not found: file:///[WILDLINE]/add.js diff --git a/tests/specs/compile/detect_cjs/package.json b/tests/specs/compile/detect_cjs/package.json new file mode 100644 index 000000000..5bbefffba --- /dev/null +++ b/tests/specs/compile/detect_cjs/package.json @@ -0,0 +1,3 @@ +{ + "type": "commonjs" +} |