summaryrefslogtreecommitdiff
path: root/tests/specs/install/future_install_local_deno
diff options
context:
space:
mode:
authorBartek Iwańczuk <biwanczuk@gmail.com>2024-05-08 20:34:46 +0100
committerGitHub <noreply@github.com>2024-05-08 12:34:46 -0700
commit4e23a5b1fc2ba0e26f1832a2c374a1f3aef9e7ff (patch)
tree4e71d07cce253b3a8035285e11999c1294643074 /tests/specs/install/future_install_local_deno
parent525b3c8d746b8eb358ed6466cd4b68ebd6542392 (diff)
FUTURE: `deno install` changes (#23498)
This PR implements the changes we plan to make to `deno install` in deno 2.0. - `deno install` without arguments caches dependencies from `package.json` / `deno.json` and sets up the `node_modules` folder - `deno install <pkg>` adds the package to the config file (either `package.json` or `deno.json`), i.e. it aliases `deno add` - `deno add` can also add deps to `package.json` (this is gated behind `DENO_FUTURE` due to uncertainty around handling projects with both `deno.json` and `package.json`) - `deno install -g <bin>` installs a package as a globally available binary (the same as `deno install <bin>` in 1.0) --------- Co-authored-by: Nathan Whitaker <nathan@deno.com>
Diffstat (limited to 'tests/specs/install/future_install_local_deno')
-rw-r--r--tests/specs/install/future_install_local_deno/__test__.jsonc17
-rw-r--r--tests/specs/install/future_install_local_deno/deno.json8
-rw-r--r--tests/specs/install/future_install_local_deno/install.out10
-rw-r--r--tests/specs/install/future_install_local_deno/main.js6
4 files changed, 41 insertions, 0 deletions
diff --git a/tests/specs/install/future_install_local_deno/__test__.jsonc b/tests/specs/install/future_install_local_deno/__test__.jsonc
new file mode 100644
index 000000000..eb780d962
--- /dev/null
+++ b/tests/specs/install/future_install_local_deno/__test__.jsonc
@@ -0,0 +1,17 @@
+{
+ "tempDir": true,
+ "envs": {
+ "DENO_FUTURE": "1"
+ },
+ "steps": [
+ {
+ "args": "install",
+ "output": "install.out"
+ },
+ {
+ // ensure deps are actually cached
+ "args": "run --cached-only main.js",
+ "output": ""
+ }
+ ]
+}
diff --git a/tests/specs/install/future_install_local_deno/deno.json b/tests/specs/install/future_install_local_deno/deno.json
new file mode 100644
index 000000000..dbcf1c220
--- /dev/null
+++ b/tests/specs/install/future_install_local_deno/deno.json
@@ -0,0 +1,8 @@
+{
+ "imports": {
+ "@std/fs/": "https://deno.land/std@0.224.0/fs/",
+ "@denotest/esm-basic": "npm:@denotest/esm-basic@^1.0.0",
+ "@denotest/add": "jsr:@denotest/add",
+ "test-http": "http://localhost:4545/v1/extensionless"
+ }
+}
diff --git a/tests/specs/install/future_install_local_deno/install.out b/tests/specs/install/future_install_local_deno/install.out
new file mode 100644
index 000000000..efb77d8f2
--- /dev/null
+++ b/tests/specs/install/future_install_local_deno/install.out
@@ -0,0 +1,10 @@
+⚠️ `deno install` behavior will change in Deno 2. To preserve the current behavior use the `-g` or `--global` flag.
+Download http://localhost:4545/v1/extensionless
+Download http://localhost:4545/subdir/mod1.ts
+Download http://localhost:4545/subdir/subdir2/mod2.ts
+Download http://localhost:4545/subdir/print_hello.ts
+Download http://127.0.0.1:4250/@denotest/add/meta.json
+Download http://127.0.0.1:4250/@denotest/add/1.0.0_meta.json
+Download http://127.0.0.1:4250/@denotest/add/1.0.0/mod.ts
+Download http://localhost:4260/@denotest/esm-basic
+Download http://localhost:4260/@denotest/esm-basic/1.0.0.tgz
diff --git a/tests/specs/install/future_install_local_deno/main.js b/tests/specs/install/future_install_local_deno/main.js
new file mode 100644
index 000000000..5c09f1f20
--- /dev/null
+++ b/tests/specs/install/future_install_local_deno/main.js
@@ -0,0 +1,6 @@
+import { setValue } from "@denotest/esm-basic";
+import { add } from "@denotest/add";
+import { returnsHi } from "test-http";
+setValue(5);
+returnsHi();
+add(2, 2);