summaryrefslogtreecommitdiff
path: root/cli/tests
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests')
-rw-r--r--cli/tests/integration/npm_tests.rs7
-rw-r--r--cli/tests/testdata/npm/esm_import_cjs_default/main.js22
-rw-r--r--cli/tests/testdata/npm/esm_import_cjs_default/main.out35
-rw-r--r--cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/index.js17
-rw-r--r--cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/package.json4
-rw-r--r--cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/index.mjs17
-rw-r--r--cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/local.cjs9
-rw-r--r--cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/package.json7
8 files changed, 118 insertions, 0 deletions
diff --git a/cli/tests/integration/npm_tests.rs b/cli/tests/integration/npm_tests.rs
index 678734309..8bbb89d65 100644
--- a/cli/tests/integration/npm_tests.rs
+++ b/cli/tests/integration/npm_tests.rs
@@ -33,6 +33,13 @@ itest!(esm_module_deno_test {
http_server: true,
});
+itest!(esm_import_cjs_default {
+ args: "run --allow-read --allow-env --unstable --quiet npm/esm_import_cjs_default/main.js",
+ output: "npm/esm_import_cjs_default/main.out",
+ envs: env_vars(),
+ http_server: true,
+});
+
itest!(cjs_with_deps {
args: "run --allow-read --allow-env --unstable npm/cjs_with_deps/main.js",
output: "npm/cjs_with_deps/main.out",
diff --git a/cli/tests/testdata/npm/esm_import_cjs_default/main.js b/cli/tests/testdata/npm/esm_import_cjs_default/main.js
new file mode 100644
index 000000000..3be3cac5e
--- /dev/null
+++ b/cli/tests/testdata/npm/esm_import_cjs_default/main.js
@@ -0,0 +1,22 @@
+import cjsDefault, {
+ MyClass as MyCjsClass,
+} from "npm:@denotest/cjs-default-export";
+import * as cjsNamespace from "npm:@denotest/cjs-default-export";
+import esmDefault from "npm:@denotest/esm-import-cjs-default";
+import * as esmNamespace from "npm:@denotest/esm-import-cjs-default";
+
+console.log("Deno esm importing node cjs");
+console.log("===========================");
+console.log(cjsDefault);
+console.log(cjsNamespace);
+console.log("===========================");
+
+console.log("Deno esm importing node esm");
+console.log("===========================");
+console.log(esmDefault);
+console.log(esmNamespace);
+console.log("===========================");
+
+console.log(cjsDefault());
+console.log(esmDefault());
+console.log(MyCjsClass.someStaticMethod());
diff --git a/cli/tests/testdata/npm/esm_import_cjs_default/main.out b/cli/tests/testdata/npm/esm_import_cjs_default/main.out
new file mode 100644
index 000000000..3b2b3b006
--- /dev/null
+++ b/cli/tests/testdata/npm/esm_import_cjs_default/main.out
@@ -0,0 +1,35 @@
+Node esm importing node cjs
+===========================
+{ default: [Function], named: [Function], MyClass: [Function: MyClass] }
+{ default: [Function], named: [Function] }
+Module {
+ MyClass: [Function: MyClass],
+ __esModule: true,
+ default: { default: [Function], named: [Function], MyClass: [Function: MyClass] },
+ named: [Function]
+}
+Module {
+ __esModule: true,
+ default: { default: [Function], named: [Function] },
+ named: [Function]
+}
+===========================
+static method
+Deno esm importing node cjs
+===========================
+[Function]
+Module {
+ MyClass: [Function: MyClass],
+ __esModule: true,
+ default: [Function],
+ named: [Function]
+}
+===========================
+Deno esm importing node esm
+===========================
+[Function: default]
+Module { default: [Function: default] }
+===========================
+1
+5
+static method
diff --git a/cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/index.js b/cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/index.js
new file mode 100644
index 000000000..ec4ece6b3
--- /dev/null
+++ b/cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/index.js
@@ -0,0 +1,17 @@
+Object.defineProperty(module.exports, "__esModule", {
+ value: true
+});
+module.exports["default"] = function() {
+ return 1;
+};
+module.exports["named"] = function() {
+ return 2;
+};
+
+class MyClass {
+ static someStaticMethod() {
+ return "static method";
+ }
+}
+
+module.exports.MyClass = MyClass;
diff --git a/cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/package.json b/cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/package.json
new file mode 100644
index 000000000..4765d25d2
--- /dev/null
+++ b/cli/tests/testdata/npm/registry/@denotest/cjs-default-export/1.0.0/package.json
@@ -0,0 +1,4 @@
+{
+ "name": "@denotest/cjs-default-export",
+ "version": "1.0.0"
+}
diff --git a/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/index.mjs b/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/index.mjs
new file mode 100644
index 000000000..11e545ae5
--- /dev/null
+++ b/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/index.mjs
@@ -0,0 +1,17 @@
+import defaultImport, { MyClass } from "@denotest/cjs-default-export";
+import * as namespaceImport from "@denotest/cjs-default-export";
+import localDefaultImport from "./local.cjs";
+import * as localNamespaceImport from "./local.cjs";
+
+console.log("Node esm importing node cjs");
+console.log("===========================");
+console.log(defaultImport);
+console.log(localDefaultImport);
+console.log(namespaceImport);
+console.log(localNamespaceImport);
+console.log("===========================");
+console.log(MyClass.someStaticMethod());
+
+export default function() {
+ return defaultImport.default() * 5;
+}
diff --git a/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/local.cjs b/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/local.cjs
new file mode 100644
index 000000000..8d2772dc6
--- /dev/null
+++ b/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/local.cjs
@@ -0,0 +1,9 @@
+Object.defineProperty(module.exports, "__esModule", {
+ value: true
+});
+module.exports["default"] = function() {
+ return 3;
+};
+module.exports["named"] = function() {
+ return 4;
+};
diff --git a/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/package.json b/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/package.json
new file mode 100644
index 000000000..184076799
--- /dev/null
+++ b/cli/tests/testdata/npm/registry/@denotest/esm-import-cjs-default/1.0.0/package.json
@@ -0,0 +1,7 @@
+{
+ "name": "@denotest/esm-import-cjs-default",
+ "version": "1.0.0",
+ "dependencies": {
+ "@denotest/cjs-default-export": "^1.0.0"
+ }
+}