summaryrefslogtreecommitdiff
path: root/tests/specs/run
diff options
context:
space:
mode:
Diffstat (limited to 'tests/specs/run')
-rw-r--r--tests/specs/run/patch/__test__.jsonc25
-rw-r--r--tests/specs/run/patch/add/deno.json5
-rw-r--r--tests/specs/run/patch/add/mod.test.ts9
-rw-r--r--tests/specs/run/patch/add/mod.ts4
-rw-r--r--tests/specs/run/patch/modify_version.ts3
-rw-r--r--tests/specs/run/patch/my-pkg/deno.json11
-rw-r--r--tests/specs/run/patch/my-pkg/mod.test.ts7
-rw-r--r--tests/specs/run/patch/my-pkg/mod.ts2
-rw-r--r--tests/specs/run/patch/not_matching_version.out11
-rw-r--r--tests/specs/run/patch/test.out10
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/__test__.jsonc4
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/add/deno.json5
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/add/mod.ts4
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/deno.json3
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/deno.lock23
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/subtract/deno.json8
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.test.ts7
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.ts5
-rw-r--r--tests/specs/run/workspaces/member_not_match_constraint/test.out11
19 files changed, 157 insertions, 0 deletions
diff --git a/tests/specs/run/patch/__test__.jsonc b/tests/specs/run/patch/__test__.jsonc
new file mode 100644
index 000000000..00ae3baac
--- /dev/null
+++ b/tests/specs/run/patch/__test__.jsonc
@@ -0,0 +1,25 @@
+{
+ "tempDir": true,
+ "tests": {
+ "matching_version": {
+ "cwd": "./my-pkg",
+ "steps": [{
+ "args": "test",
+ "output": "test.out"
+ }, {
+ "args": "lint",
+ "output": "Checked 2 files\n"
+ }]
+ },
+ "not_matching_version": {
+ "steps": [{
+ "args": "run --allow-read=. --allow-write=. modify_version.ts",
+ "output": "[WILDCARD]"
+ }, {
+ "cwd": "./my-pkg",
+ "args": "test",
+ "output": "not_matching_version.out"
+ }]
+ }
+ }
+}
diff --git a/tests/specs/run/patch/add/deno.json b/tests/specs/run/patch/add/deno.json
new file mode 100644
index 000000000..05d24d7b5
--- /dev/null
+++ b/tests/specs/run/patch/add/deno.json
@@ -0,0 +1,5 @@
+{
+ "name": "@denotest/add",
+ "version": "1.0.0",
+ "exports": "./mod.ts"
+}
diff --git a/tests/specs/run/patch/add/mod.test.ts b/tests/specs/run/patch/add/mod.test.ts
new file mode 100644
index 000000000..3d3804e07
--- /dev/null
+++ b/tests/specs/run/patch/add/mod.test.ts
@@ -0,0 +1,9 @@
+import { add } from "./mod.ts";
+
+// this test should not be run or linted
+Deno.test("add", () => {
+ let unusedVar = 5; // purposefully causing a lint error to ensure it's not linted
+ if (add(1, 2) !== 3) {
+ throw new Error("fail");
+ }
+});
diff --git a/tests/specs/run/patch/add/mod.ts b/tests/specs/run/patch/add/mod.ts
new file mode 100644
index 000000000..97a779a44
--- /dev/null
+++ b/tests/specs/run/patch/add/mod.ts
@@ -0,0 +1,4 @@
+export function add(a: number, b: number): number {
+ console.log("adding", a, "and", b);
+ return a + b;
+}
diff --git a/tests/specs/run/patch/modify_version.ts b/tests/specs/run/patch/modify_version.ts
new file mode 100644
index 000000000..3d59aa1b9
--- /dev/null
+++ b/tests/specs/run/patch/modify_version.ts
@@ -0,0 +1,3 @@
+const data = JSON.parse(Deno.readTextFileSync("./add/deno.json"));
+data.version = "2.0.0";
+Deno.writeTextFileSync("./add/deno.json", JSON.stringify(data, null, 2));
diff --git a/tests/specs/run/patch/my-pkg/deno.json b/tests/specs/run/patch/my-pkg/deno.json
new file mode 100644
index 000000000..0303c9974
--- /dev/null
+++ b/tests/specs/run/patch/my-pkg/deno.json
@@ -0,0 +1,11 @@
+{
+ "name": "@scope/my-pkg",
+ "version": "1.0.0",
+ "exports": "./mod.ts",
+ "imports": {
+ "@denotest/add": "jsr:@denotest/add@1"
+ },
+ "patch": [
+ "../add"
+ ]
+}
diff --git a/tests/specs/run/patch/my-pkg/mod.test.ts b/tests/specs/run/patch/my-pkg/mod.test.ts
new file mode 100644
index 000000000..1c694298c
--- /dev/null
+++ b/tests/specs/run/patch/my-pkg/mod.test.ts
@@ -0,0 +1,7 @@
+import { add } from "./mod.ts";
+
+Deno.test("add", () => {
+ if (add(1, 2) !== 3) {
+ throw new Error("fail");
+ }
+});
diff --git a/tests/specs/run/patch/my-pkg/mod.ts b/tests/specs/run/patch/my-pkg/mod.ts
new file mode 100644
index 000000000..41389ed65
--- /dev/null
+++ b/tests/specs/run/patch/my-pkg/mod.ts
@@ -0,0 +1,2 @@
+export { add } from "@denotest/add";
+import "@denotest/add"; // ensure it only warns once
diff --git a/tests/specs/run/patch/not_matching_version.out b/tests/specs/run/patch/not_matching_version.out
new file mode 100644
index 000000000..7a9ee6f39
--- /dev/null
+++ b/tests/specs/run/patch/not_matching_version.out
@@ -0,0 +1,11 @@
+Warning Patch '@denotest/add@2.0.0' was not used because it did not match '@denotest/add@1'
+ at file:///[WILDLINE]/my-pkg/mod.ts:1:21
+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
+Check file:///[WILDLINE]/mod.test.ts
+running 1 test from ./mod.test.ts
+add ... ok ([WILDLINE])
+
+ok | 1 passed | 0 failed ([WILDLINE])
+
diff --git a/tests/specs/run/patch/test.out b/tests/specs/run/patch/test.out
new file mode 100644
index 000000000..4eb9f3383
--- /dev/null
+++ b/tests/specs/run/patch/test.out
@@ -0,0 +1,10 @@
+Check file:///[WILDLINE]/mod.test.ts
+running 1 test from ./mod.test.ts
+add ...
+------- output -------
+adding 1 and 2
+----- output end -----
+add ... ok ([WILDLINE])
+
+ok | 1 passed | 0 failed ([WILDLINE])
+
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/__test__.jsonc b/tests/specs/run/workspaces/member_not_match_constraint/__test__.jsonc
new file mode 100644
index 000000000..532705939
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/__test__.jsonc
@@ -0,0 +1,4 @@
+{
+ "args": "test",
+ "output": "test.out"
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/add/deno.json b/tests/specs/run/workspaces/member_not_match_constraint/add/deno.json
new file mode 100644
index 000000000..ff1abb9fe
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/add/deno.json
@@ -0,0 +1,5 @@
+{
+ "name": "@denotest/add",
+ "version": "2.0.0",
+ "exports": "./mod.ts"
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/add/mod.ts b/tests/specs/run/workspaces/member_not_match_constraint/add/mod.ts
new file mode 100644
index 000000000..2c8d7ef7a
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/add/mod.ts
@@ -0,0 +1,4 @@
+export function add(a: number, b: number): number {
+ console.log("local");
+ return a + b;
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/deno.json b/tests/specs/run/workspaces/member_not_match_constraint/deno.json
new file mode 100644
index 000000000..ec5dc2bdf
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/deno.json
@@ -0,0 +1,3 @@
+{
+ "workspace": ["./add", "./subtract"]
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/deno.lock b/tests/specs/run/workspaces/member_not_match_constraint/deno.lock
new file mode 100644
index 000000000..373359d72
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/deno.lock
@@ -0,0 +1,23 @@
+{
+ "version": "3",
+ "packages": {
+ "specifiers": {
+ "jsr:@denotest/add@1": "jsr:@denotest/add@1.0.0"
+ },
+ "jsr": {
+ "@denotest/add@1.0.0": {
+ "integrity": "3b2e675c1ad7fba2a45bc251992e01aff08a3c974ac09079b11e6a5b95d4bfcb"
+ }
+ }
+ },
+ "remote": {},
+ "workspace": {
+ "members": {
+ "subtract": {
+ "dependencies": [
+ "jsr:@denotest/add@1"
+ ]
+ }
+ }
+ }
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/subtract/deno.json b/tests/specs/run/workspaces/member_not_match_constraint/subtract/deno.json
new file mode 100644
index 000000000..e585197c0
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/subtract/deno.json
@@ -0,0 +1,8 @@
+{
+ "name": "@denotest/subtract",
+ "version": "1.0.0",
+ "exports": "./mod.ts",
+ "imports": {
+ "@denotest/add": "jsr:@denotest/add@1"
+ }
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.test.ts b/tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.test.ts
new file mode 100644
index 000000000..7d699d4d7
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.test.ts
@@ -0,0 +1,7 @@
+import { subtract } from "./mod.ts";
+
+Deno.test("subtract", () => {
+ if (subtract(3, 2) !== 1) {
+ throw new Error("fail");
+ }
+});
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.ts b/tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.ts
new file mode 100644
index 000000000..6e301511b
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/subtract/mod.ts
@@ -0,0 +1,5 @@
+import { add } from "@denotest/add";
+
+export function subtract(a: number, b: number): number {
+ return add(a, -b);
+}
diff --git a/tests/specs/run/workspaces/member_not_match_constraint/test.out b/tests/specs/run/workspaces/member_not_match_constraint/test.out
new file mode 100644
index 000000000..0e16426c6
--- /dev/null
+++ b/tests/specs/run/workspaces/member_not_match_constraint/test.out
@@ -0,0 +1,11 @@
+Warning Workspace member '@denotest/add@2.0.0' was not used because it did not match '@denotest/add@1'
+ at file:///[WILDLINE]/mod.ts:1:21
+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
+Check file:///[WILDLINE]/mod.test.ts
+running 1 test from ./subtract/mod.test.ts
+subtract ... ok ([WILDLINE])
+
+ok | 1 passed | 0 failed ([WILDLINE])
+