summaryrefslogtreecommitdiff
path: root/tests/specs/add
diff options
context:
space:
mode:
Diffstat (limited to 'tests/specs/add')
-rw-r--r--tests/specs/add/alias/__test__.jsonc13
-rw-r--r--tests/specs/add/alias/package.json4
-rw-r--r--tests/specs/add/alias/package.json.out5
-rw-r--r--tests/specs/add/comments_deno_json/__test__.jsonc16
-rw-r--r--tests/specs/add/comments_deno_json/deno.jsonc7
-rw-r--r--tests/specs/add/comments_deno_json/deno.jsonc.out9
-rw-r--r--tests/specs/add/dev/add.out2
-rw-r--r--tests/specs/add/exact_version/__test__.jsonc35
-rw-r--r--tests/specs/add/exact_version/deno.json1
-rw-r--r--tests/specs/add/exact_version/jsr_add.out2
-rw-r--r--tests/specs/add/exact_version/jsr_deno.json.out5
-rw-r--r--tests/specs/add/exact_version/npm_add.out3
-rw-r--r--tests/specs/add/exact_version/npm_deno.json.out5
-rw-r--r--tests/specs/add/existing_deps_singleline/__test__.jsonc16
-rw-r--r--tests/specs/add/existing_deps_singleline/package.json3
-rw-r--r--tests/specs/add/existing_deps_singleline/package.json.out6
-rw-r--r--tests/specs/add/exiting_dev_deps/__test__.jsonc16
-rw-r--r--tests/specs/add/exiting_dev_deps/package.json5
-rw-r--r--tests/specs/add/exiting_dev_deps/package.json.out8
-rw-r--r--tests/specs/add/jsr_prefers_deno_json/__test__.jsonc16
-rw-r--r--tests/specs/add/jsr_prefers_deno_json/add.out3
-rw-r--r--tests/specs/add/jsr_prefers_deno_json/deno.json.out5
-rw-r--r--tests/specs/add/jsr_prefers_deno_json/package.json1
-rw-r--r--tests/specs/add/only_unstable_versions/__test__.jsonc23
-rw-r--r--tests/specs/add/only_unstable_versions/add.out2
-rw-r--r--tests/specs/add/only_unstable_versions/add_jsr.out1
-rw-r--r--tests/specs/add/package_json_and_deno_json/__test__.jsonc23
-rw-r--r--tests/specs/add/package_json_and_deno_json/add.out4
-rw-r--r--tests/specs/add/package_json_and_deno_json/add_esm_basic.out2
-rw-r--r--tests/specs/add/package_json_and_deno_json/subdir/deno.json4
-rw-r--r--tests/specs/add/package_json_and_deno_json/subdir/mod.ts0
-rw-r--r--tests/specs/add/package_json_and_deno_json/subdir/prefer_if_closer_deno.json.out9
-rw-r--r--tests/specs/add/update_lockfile_if_package_json/__test__.jsonc31
-rw-r--r--tests/specs/add/update_lockfile_if_package_json/add.out5
-rw-r--r--tests/specs/add/update_lockfile_if_package_json/lockfile_add.out7
-rw-r--r--tests/specs/add/update_lockfile_if_package_json/lockfile_remove.out4
-rw-r--r--tests/specs/add/update_lockfile_if_package_json/package.json0
-rw-r--r--tests/specs/add/update_lockfile_if_package_json/remove.out4
38 files changed, 295 insertions, 10 deletions
diff --git a/tests/specs/add/alias/__test__.jsonc b/tests/specs/add/alias/__test__.jsonc
new file mode 100644
index 000000000..8a16ad3b4
--- /dev/null
+++ b/tests/specs/add/alias/__test__.jsonc
@@ -0,0 +1,13 @@
+{
+ "tempDir": true,
+ "steps": [{
+ "args": "install my-alias@npm:@denotest/add",
+ "output": "[WILDCARD]"
+ }, {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('package.json').trim())"
+ ],
+ "output": "package.json.out"
+ }]
+}
diff --git a/tests/specs/add/alias/package.json b/tests/specs/add/alias/package.json
new file mode 100644
index 000000000..9664f260a
--- /dev/null
+++ b/tests/specs/add/alias/package.json
@@ -0,0 +1,4 @@
+{
+ "dependencies": {
+ }
+}
diff --git a/tests/specs/add/alias/package.json.out b/tests/specs/add/alias/package.json.out
new file mode 100644
index 000000000..b6326e8bf
--- /dev/null
+++ b/tests/specs/add/alias/package.json.out
@@ -0,0 +1,5 @@
+{
+ "dependencies": {
+ "my-alias": "npm:@denotest/add@^1.0.0"
+ }
+}
diff --git a/tests/specs/add/comments_deno_json/__test__.jsonc b/tests/specs/add/comments_deno_json/__test__.jsonc
new file mode 100644
index 000000000..7197eb473
--- /dev/null
+++ b/tests/specs/add/comments_deno_json/__test__.jsonc
@@ -0,0 +1,16 @@
+{
+ "tempDir": true,
+ "steps": [
+ {
+ "args": "add npm:@denotest/esm-basic jsr:@denotest/add",
+ "output": "[WILDCARD]"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('deno.jsonc').trim())"
+ ],
+ "output": "deno.jsonc.out"
+ }
+ ]
+}
diff --git a/tests/specs/add/comments_deno_json/deno.jsonc b/tests/specs/add/comments_deno_json/deno.jsonc
new file mode 100644
index 000000000..6a37b343d
--- /dev/null
+++ b/tests/specs/add/comments_deno_json/deno.jsonc
@@ -0,0 +1,7 @@
+// Testing four space indents too
+// deno-fmt-ignore
+{
+ "imports": {
+ "@denotest/add2": "npm:@denotest/add" // some comment
+ }
+}
diff --git a/tests/specs/add/comments_deno_json/deno.jsonc.out b/tests/specs/add/comments_deno_json/deno.jsonc.out
new file mode 100644
index 000000000..0cca35c64
--- /dev/null
+++ b/tests/specs/add/comments_deno_json/deno.jsonc.out
@@ -0,0 +1,9 @@
+// Testing four space indents too
+// deno-fmt-ignore
+{
+ "imports": {
+ "@denotest/add": "jsr:@denotest/add@^1.0.0",
+ "@denotest/add2": "npm:@denotest/add", // some comment
+ "@denotest/esm-basic": "npm:@denotest/esm-basic@^1.0.0"
+ }
+}
diff --git a/tests/specs/add/dev/add.out b/tests/specs/add/dev/add.out
index 42161f3ae..44bd9cac7 100644
--- a/tests/specs/add/dev/add.out
+++ b/tests/specs/add/dev/add.out
@@ -1,4 +1,4 @@
Add npm:@denotest/esm-basic@1.0.0
-Download http://localhost:4260/@denotest/esm-basic
+Download http://localhost:4260/@denotest%2fesm-basic
Download http://localhost:4260/@denotest/esm-basic/1.0.0.tgz
Initialize @denotest/esm-basic@1.0.0
diff --git a/tests/specs/add/exact_version/__test__.jsonc b/tests/specs/add/exact_version/__test__.jsonc
new file mode 100644
index 000000000..feb6cc617
--- /dev/null
+++ b/tests/specs/add/exact_version/__test__.jsonc
@@ -0,0 +1,35 @@
+{
+ "tempDir": true,
+ "tests": {
+ "npm": {
+ "steps": [
+ {
+ "args": "add npm:@denotest/esm-basic@1.0.0",
+ "output": "npm_add.out"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('deno.json').trim())"
+ ],
+ "output": "npm_deno.json.out"
+ }
+ ]
+ },
+ "jsr": {
+ "steps": [
+ {
+ "args": "add jsr:@denotest/add@1.0.0",
+ "output": "jsr_add.out"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('deno.json').trim())"
+ ],
+ "output": "jsr_deno.json.out"
+ }
+ ]
+ }
+ }
+}
diff --git a/tests/specs/add/exact_version/deno.json b/tests/specs/add/exact_version/deno.json
new file mode 100644
index 000000000..0967ef424
--- /dev/null
+++ b/tests/specs/add/exact_version/deno.json
@@ -0,0 +1 @@
+{}
diff --git a/tests/specs/add/exact_version/jsr_add.out b/tests/specs/add/exact_version/jsr_add.out
new file mode 100644
index 000000000..f2684ef57
--- /dev/null
+++ b/tests/specs/add/exact_version/jsr_add.out
@@ -0,0 +1,2 @@
+Add jsr:@denotest/add@1.0.0
+Download http://127.0.0.1:4250/@denotest/add/1.0.0/mod.ts
diff --git a/tests/specs/add/exact_version/jsr_deno.json.out b/tests/specs/add/exact_version/jsr_deno.json.out
new file mode 100644
index 000000000..7f1715bd7
--- /dev/null
+++ b/tests/specs/add/exact_version/jsr_deno.json.out
@@ -0,0 +1,5 @@
+{
+ "imports": {
+ "@denotest/add": "jsr:@denotest/add@1.0.0"
+ }
+}
diff --git a/tests/specs/add/exact_version/npm_add.out b/tests/specs/add/exact_version/npm_add.out
new file mode 100644
index 000000000..2f73e5afb
--- /dev/null
+++ b/tests/specs/add/exact_version/npm_add.out
@@ -0,0 +1,3 @@
+Add npm:@denotest/esm-basic@1.0.0
+Download http://localhost:4260/@denotest%2fesm-basic
+Download http://localhost:4260/@denotest/esm-basic/1.0.0.tgz
diff --git a/tests/specs/add/exact_version/npm_deno.json.out b/tests/specs/add/exact_version/npm_deno.json.out
new file mode 100644
index 000000000..ff4afa772
--- /dev/null
+++ b/tests/specs/add/exact_version/npm_deno.json.out
@@ -0,0 +1,5 @@
+{
+ "imports": {
+ "@denotest/esm-basic": "npm:@denotest/esm-basic@1.0.0"
+ }
+}
diff --git a/tests/specs/add/existing_deps_singleline/__test__.jsonc b/tests/specs/add/existing_deps_singleline/__test__.jsonc
new file mode 100644
index 000000000..8a6ef1a5f
--- /dev/null
+++ b/tests/specs/add/existing_deps_singleline/__test__.jsonc
@@ -0,0 +1,16 @@
+{
+ "tempDir": true,
+ "steps": [
+ {
+ "args": "add npm:@denotest/esm-basic",
+ "output": "[WILDCARD]"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('package.json').trim())"
+ ],
+ "output": "package.json.out"
+ }
+ ]
+}
diff --git a/tests/specs/add/existing_deps_singleline/package.json b/tests/specs/add/existing_deps_singleline/package.json
new file mode 100644
index 000000000..3677a6e2e
--- /dev/null
+++ b/tests/specs/add/existing_deps_singleline/package.json
@@ -0,0 +1,3 @@
+{
+ "dependencies": { "cowsay": "*" }
+}
diff --git a/tests/specs/add/existing_deps_singleline/package.json.out b/tests/specs/add/existing_deps_singleline/package.json.out
new file mode 100644
index 000000000..5a7fa3680
--- /dev/null
+++ b/tests/specs/add/existing_deps_singleline/package.json.out
@@ -0,0 +1,6 @@
+{
+ "dependencies": {
+ "@denotest/esm-basic": "^1.0.0",
+ "cowsay": "*"
+ }
+}
diff --git a/tests/specs/add/exiting_dev_deps/__test__.jsonc b/tests/specs/add/exiting_dev_deps/__test__.jsonc
new file mode 100644
index 000000000..8a6ef1a5f
--- /dev/null
+++ b/tests/specs/add/exiting_dev_deps/__test__.jsonc
@@ -0,0 +1,16 @@
+{
+ "tempDir": true,
+ "steps": [
+ {
+ "args": "add npm:@denotest/esm-basic",
+ "output": "[WILDCARD]"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('package.json').trim())"
+ ],
+ "output": "package.json.out"
+ }
+ ]
+}
diff --git a/tests/specs/add/exiting_dev_deps/package.json b/tests/specs/add/exiting_dev_deps/package.json
new file mode 100644
index 000000000..e7b8c5061
--- /dev/null
+++ b/tests/specs/add/exiting_dev_deps/package.json
@@ -0,0 +1,5 @@
+{
+ "devDependencies": {
+ "cowsay": "*"
+ }
+}
diff --git a/tests/specs/add/exiting_dev_deps/package.json.out b/tests/specs/add/exiting_dev_deps/package.json.out
new file mode 100644
index 000000000..9bff99bc2
--- /dev/null
+++ b/tests/specs/add/exiting_dev_deps/package.json.out
@@ -0,0 +1,8 @@
+{
+ "dependencies": {
+ "@denotest/esm-basic": "^1.0.0"
+ },
+ "devDependencies": {
+ "cowsay": "*"
+ }
+}
diff --git a/tests/specs/add/jsr_prefers_deno_json/__test__.jsonc b/tests/specs/add/jsr_prefers_deno_json/__test__.jsonc
new file mode 100644
index 000000000..ca9c4b4d9
--- /dev/null
+++ b/tests/specs/add/jsr_prefers_deno_json/__test__.jsonc
@@ -0,0 +1,16 @@
+{
+ "tempDir": true,
+ "steps": [
+ {
+ "args": "add jsr:@denotest/add",
+ "output": "add.out"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('./deno.json').trim())"
+ ],
+ "output": "deno.json.out"
+ }
+ ]
+}
diff --git a/tests/specs/add/jsr_prefers_deno_json/add.out b/tests/specs/add/jsr_prefers_deno_json/add.out
new file mode 100644
index 000000000..cb8140c6d
--- /dev/null
+++ b/tests/specs/add/jsr_prefers_deno_json/add.out
@@ -0,0 +1,3 @@
+Created deno.json configuration file.
+Add jsr:@denotest/add@1.0.0
+Download [WILDCARD]
diff --git a/tests/specs/add/jsr_prefers_deno_json/deno.json.out b/tests/specs/add/jsr_prefers_deno_json/deno.json.out
new file mode 100644
index 000000000..38ca2d4b8
--- /dev/null
+++ b/tests/specs/add/jsr_prefers_deno_json/deno.json.out
@@ -0,0 +1,5 @@
+{
+ "imports": {
+ "@denotest/add": "jsr:@denotest/add@^1.0.0"
+ }
+}
diff --git a/tests/specs/add/jsr_prefers_deno_json/package.json b/tests/specs/add/jsr_prefers_deno_json/package.json
new file mode 100644
index 000000000..0967ef424
--- /dev/null
+++ b/tests/specs/add/jsr_prefers_deno_json/package.json
@@ -0,0 +1 @@
+{}
diff --git a/tests/specs/add/only_unstable_versions/__test__.jsonc b/tests/specs/add/only_unstable_versions/__test__.jsonc
index d05628b6f..ea5a270b9 100644
--- a/tests/specs/add/only_unstable_versions/__test__.jsonc
+++ b/tests/specs/add/only_unstable_versions/__test__.jsonc
@@ -1,9 +1,22 @@
{
"tempDir": true,
- "steps": [
- {
- "args": "add npm:@denotest/unstable",
- "output": "add.out"
+ "tests": {
+ "npm_package": {
+ "steps": [
+ {
+ "args": "add npm:@denotest/unstable",
+ "output": "add.out"
+ }
+ ]
+ },
+ "jsr_package": {
+ "steps": [
+ {
+ "args": "add jsr:@denotest/unstable",
+ "output": "add_jsr.out",
+ "exitCode": 1
+ }
+ ]
}
- ]
+ }
}
diff --git a/tests/specs/add/only_unstable_versions/add.out b/tests/specs/add/only_unstable_versions/add.out
index 48462b8be..8bd8d9303 100644
--- a/tests/specs/add/only_unstable_versions/add.out
+++ b/tests/specs/add/only_unstable_versions/add.out
@@ -1,3 +1,3 @@
Add npm:@denotest/unstable@1.0.0-beta.1
-Download http://localhost:4260/@denotest/unstable
+Download http://localhost:4260/@denotest%2funstable
Download http://localhost:4260/@denotest/unstable/1.0.0-beta.1.tgz
diff --git a/tests/specs/add/only_unstable_versions/add_jsr.out b/tests/specs/add/only_unstable_versions/add_jsr.out
new file mode 100644
index 000000000..95f0630bf
--- /dev/null
+++ b/tests/specs/add/only_unstable_versions/add_jsr.out
@@ -0,0 +1 @@
+error: jsr:@denotest/unstable has only pre-release versions available. Try specifying a version: `deno add jsr:@denotest/unstable@^1.0.0-beta.2`
diff --git a/tests/specs/add/package_json_and_deno_json/__test__.jsonc b/tests/specs/add/package_json_and_deno_json/__test__.jsonc
index 0beee02d1..8d67a07c8 100644
--- a/tests/specs/add/package_json_and_deno_json/__test__.jsonc
+++ b/tests/specs/add/package_json_and_deno_json/__test__.jsonc
@@ -41,6 +41,29 @@
"output": "good\n"
}
]
+ },
+ "only_prefers_package_json_if_closer": {
+ "steps": [
+ {
+ "cwd": "./subdir",
+ "args": "add npm:@denotest/esm-basic jsr:@denotest/add npm:@denotest/say-hello",
+ "output": "[WILDCARD]"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('package.json').trim())"
+ ],
+ "output": "{}\n"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('./subdir/deno.json').trim())"
+ ],
+ "output": "subdir/prefer_if_closer_deno.json.out"
+ }
+ ]
}
}
}
diff --git a/tests/specs/add/package_json_and_deno_json/add.out b/tests/specs/add/package_json_and_deno_json/add.out
index 5577a55ac..4ce7bb8ee 100644
--- a/tests/specs/add/package_json_and_deno_json/add.out
+++ b/tests/specs/add/package_json_and_deno_json/add.out
@@ -2,9 +2,9 @@
Add npm:@denotest/esm-basic@1.0.0
Add jsr:@denotest/add@1.0.0
Add npm:@denotest/say-hello@1.0.0
-Download http://localhost:4260/@denotest/esm-basic
+Download http://localhost:4260/@denotest%2fesm-basic
Download http://localhost:4260/@denotest/esm-basic/1.0.0.tgz
-Download http://localhost:4260/@denotest/say-hello
+Download http://localhost:4260/@denotest%2fsay-hello
Download http://localhost:4260/@denotest/say-hello/1.0.0.tgz
Initialize @denotest/esm-basic@1.0.0
Initialize @denotest/say-hello@1.0.0
diff --git a/tests/specs/add/package_json_and_deno_json/add_esm_basic.out b/tests/specs/add/package_json_and_deno_json/add_esm_basic.out
index 42161f3ae..44bd9cac7 100644
--- a/tests/specs/add/package_json_and_deno_json/add_esm_basic.out
+++ b/tests/specs/add/package_json_and_deno_json/add_esm_basic.out
@@ -1,4 +1,4 @@
Add npm:@denotest/esm-basic@1.0.0
-Download http://localhost:4260/@denotest/esm-basic
+Download http://localhost:4260/@denotest%2fesm-basic
Download http://localhost:4260/@denotest/esm-basic/1.0.0.tgz
Initialize @denotest/esm-basic@1.0.0
diff --git a/tests/specs/add/package_json_and_deno_json/subdir/deno.json b/tests/specs/add/package_json_and_deno_json/subdir/deno.json
new file mode 100644
index 000000000..cc54bbd8a
--- /dev/null
+++ b/tests/specs/add/package_json_and_deno_json/subdir/deno.json
@@ -0,0 +1,4 @@
+{
+ "name": "@test/subdir",
+ "exports": "./mod.ts"
+}
diff --git a/tests/specs/add/package_json_and_deno_json/subdir/mod.ts b/tests/specs/add/package_json_and_deno_json/subdir/mod.ts
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/specs/add/package_json_and_deno_json/subdir/mod.ts
diff --git a/tests/specs/add/package_json_and_deno_json/subdir/prefer_if_closer_deno.json.out b/tests/specs/add/package_json_and_deno_json/subdir/prefer_if_closer_deno.json.out
new file mode 100644
index 000000000..8a5819d50
--- /dev/null
+++ b/tests/specs/add/package_json_and_deno_json/subdir/prefer_if_closer_deno.json.out
@@ -0,0 +1,9 @@
+{
+ "name": "@test/subdir",
+ "exports": "./mod.ts",
+ "imports": {
+ "@denotest/add": "jsr:@denotest/add@^1.0.0",
+ "@denotest/esm-basic": "npm:@denotest/esm-basic@^1.0.0",
+ "@denotest/say-hello": "npm:@denotest/say-hello@^1.0.0"
+ }
+}
diff --git a/tests/specs/add/update_lockfile_if_package_json/__test__.jsonc b/tests/specs/add/update_lockfile_if_package_json/__test__.jsonc
new file mode 100644
index 000000000..80b35dc3c
--- /dev/null
+++ b/tests/specs/add/update_lockfile_if_package_json/__test__.jsonc
@@ -0,0 +1,31 @@
+{
+ "tempDir": true,
+ "tests": {
+ "updates_lockfile": {
+ "steps": [
+ {
+ "args": "add npm:@denotest/esm-basic npm:@denotest/say-hello",
+ "output": "add.out"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('deno.lock'))"
+ ],
+ "output": "lockfile_add.out"
+ },
+ {
+ "args": "remove @denotest/esm-basic @denotest/say-hello",
+ "output": "remove.out"
+ },
+ {
+ "args": [
+ "eval",
+ "console.log(Deno.readTextFileSync('deno.lock'))"
+ ],
+ "output": "lockfile_remove.out"
+ }
+ ]
+ }
+ }
+}
diff --git a/tests/specs/add/update_lockfile_if_package_json/add.out b/tests/specs/add/update_lockfile_if_package_json/add.out
new file mode 100644
index 000000000..97989b0c3
--- /dev/null
+++ b/tests/specs/add/update_lockfile_if_package_json/add.out
@@ -0,0 +1,5 @@
+[UNORDERED_START]
+Add npm:@denotest/esm-basic@1.0.0
+Add npm:@denotest/say-hello@1.0.0
+[UNORDERED_END]
+[WILDCARD] \ No newline at end of file
diff --git a/tests/specs/add/update_lockfile_if_package_json/lockfile_add.out b/tests/specs/add/update_lockfile_if_package_json/lockfile_add.out
new file mode 100644
index 000000000..d452c2de8
--- /dev/null
+++ b/tests/specs/add/update_lockfile_if_package_json/lockfile_add.out
@@ -0,0 +1,7 @@
+{
+ "version": "4",
+ "specifiers": {
+ "npm:@denotest/esm-basic@1": "1.0.0",
+ "npm:@denotest/say-hello@1": "1.0.0"
+ },
+[WILDCARD]
diff --git a/tests/specs/add/update_lockfile_if_package_json/lockfile_remove.out b/tests/specs/add/update_lockfile_if_package_json/lockfile_remove.out
new file mode 100644
index 000000000..fdd4f1cc6
--- /dev/null
+++ b/tests/specs/add/update_lockfile_if_package_json/lockfile_remove.out
@@ -0,0 +1,4 @@
+{
+ "version": "4"
+}
+
diff --git a/tests/specs/add/update_lockfile_if_package_json/package.json b/tests/specs/add/update_lockfile_if_package_json/package.json
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/specs/add/update_lockfile_if_package_json/package.json
diff --git a/tests/specs/add/update_lockfile_if_package_json/remove.out b/tests/specs/add/update_lockfile_if_package_json/remove.out
new file mode 100644
index 000000000..8efb0810c
--- /dev/null
+++ b/tests/specs/add/update_lockfile_if_package_json/remove.out
@@ -0,0 +1,4 @@
+[UNORDERED_START]
+Removed @denotest/esm-basic
+Removed @denotest/say-hello
+[UNORDERED_END]