Skip to content

Commit ee31acf

Browse files
committed
🌿 add module that resolves testdata path or URL
1 parent f32f028 commit ee31acf

File tree

13 files changed

+65
-94
lines changed

13 files changed

+65
-94
lines changed

deno.jsonc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
// NOTE: Import maps should only be used from test modules.
1818
"imports": {
1919
"/denops-private/": "./denops/@denops-private/",
20+
"/denops-testdata/": "./tests/denops/testdata/",
2021
"/denops-testutil/": "./tests/denops/testutil/"
2122
}
2223
}

denops/@denops-private/service_test.ts

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,28 @@ import {
1717
spy,
1818
stub,
1919
} from "jsr:@std/testing@^1.0.0/mock";
20+
import { toFileUrl } from "jsr:@std/path@^1.0.2/to-file-url";
2021
import type { Meta } from "jsr:@denops/core@^7.0.0";
2122
import { promiseState } from "jsr:@lambdalisue/async@^2.1.1";
2223
import { unimplemented } from "jsr:@lambdalisue/errorutil@^1.1.0";
24+
import { resolveTestDataURL } from "/denops-testdata/resolve.ts";
2325
import type { Host } from "./denops.ts";
2426
import { Service } from "./service.ts";
25-
import { toFileUrl } from "jsr:@std/path@^1.0.2/to-file-url";
2627

2728
const NOOP = () => {};
2829

29-
const scriptValid = resolve("dummy_valid_plugin.ts");
30-
const scriptInvalid = resolve("dummy_invalid_plugin.ts");
31-
const scriptValidDispose = resolve("dummy_valid_dispose_plugin.ts");
32-
const scriptInvalidDispose = resolve("dummy_invalid_dispose_plugin.ts");
33-
const scriptInvalidConstraint = resolve("dummy_invalid_constraint_plugin.ts");
34-
const scriptInvalidConstraint2 = resolve("dummy_invalid_constraint_plugin2.ts");
30+
const scriptValid = resolveTestDataURL("dummy_valid_plugin.ts");
31+
const scriptInvalid = resolveTestDataURL("dummy_invalid_plugin.ts");
32+
const scriptValidDispose = resolveTestDataURL("dummy_valid_dispose_plugin.ts");
33+
const scriptInvalidDispose = resolveTestDataURL(
34+
"dummy_invalid_dispose_plugin.ts",
35+
);
36+
const scriptInvalidConstraint = resolveTestDataURL(
37+
"dummy_invalid_constraint_plugin.ts",
38+
);
39+
const scriptInvalidConstraint2 = resolveTestDataURL(
40+
"dummy_invalid_constraint_plugin2.ts",
41+
);
3542

3643
Deno.test("Service", async (t) => {
3744
const meta: Meta = {
@@ -1621,11 +1628,6 @@ Deno.test("Service", async (t) => {
16211628
});
16221629
});
16231630

1624-
/** Resolve testdata script URL. */
1625-
function resolve(path: string): string {
1626-
return new URL(`../../tests/denops/testdata/${path}`, import.meta.url).href;
1627-
}
1628-
16291631
async function useTempFile(options?: Deno.MakeTempOptions) {
16301632
const path = await Deno.makeTempFile(options);
16311633
return {

tests/denops/runtime/functions/plugin/check_type_test.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@ import {
33
assertNotMatch,
44
assertRejects,
55
} from "jsr:@std/assert@^1.0.1";
6-
import { join } from "jsr:@std/path@^1.0.2/join";
6+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
77
import { testHost } from "/denops-testutil/host.ts";
88
import { wait } from "/denops-testutil/wait.ts";
99

10-
const scriptValid = resolve("dummy_valid_plugin.ts");
10+
const scriptValid = resolveTestDataPath("dummy_valid_plugin.ts");
1111

1212
testHost({
1313
name: "denops#plugin#check_type()",
@@ -211,8 +211,3 @@ testHost({
211211
});
212212
},
213213
});
214-
215-
/** Resolve testdata script path. */
216-
function resolve(path: string): string {
217-
return join(import.meta.dirname!, `../../../testdata/${path}`);
218-
}

tests/denops/runtime/functions/plugin/discover_test.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ import {
44
assertMatch,
55
} from "jsr:@std/assert@^1.0.1";
66
import { delay } from "jsr:@std/async@^1.0.1";
7-
import { join } from "jsr:@std/path@^1.0.2/join";
7+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
88
import { testHost } from "/denops-testutil/host.ts";
99
import { wait } from "/denops-testutil/wait.ts";
1010

1111
const MESSAGE_DELAY = 200; // msc
1212

13-
const runtimepathPlugin = resolve("dummy_plugins");
13+
const runtimepathPlugin = resolveTestDataPath("dummy_plugins");
1414

1515
testHost({
1616
name: "denops#plugin#discover()",
@@ -83,8 +83,3 @@ testHost({
8383
});
8484
},
8585
});
86-
87-
/** Resolve testdata script path. */
88-
function resolve(path: string): string {
89-
return join(import.meta.dirname!, `../../../testdata/${path}`);
90-
}

tests/denops/runtime/functions/plugin/is_loaded_test.ts

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
import { assertEquals, assertRejects } from "jsr:@std/assert@^1.0.1";
22
import { delay } from "jsr:@std/async@^1.0.1";
3-
import { join } from "jsr:@std/path@^1.0.2/join";
3+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
44
import { testHost } from "/denops-testutil/host.ts";
55
import { wait } from "/denops-testutil/wait.ts";
66

77
const MESSAGE_DELAY = 200; // msc
88

9-
const scriptValid = resolve("dummy_valid_plugin.ts");
10-
const scriptInvalid = resolve("dummy_invalid_plugin.ts");
11-
const scriptInvalidDispose = resolve("dummy_invalid_dispose_plugin.ts");
9+
const scriptValid = resolveTestDataPath("dummy_valid_plugin.ts");
10+
const scriptInvalid = resolveTestDataPath("dummy_invalid_plugin.ts");
11+
const scriptInvalidDispose = resolveTestDataPath(
12+
"dummy_invalid_dispose_plugin.ts",
13+
);
1214

1315
testHost({
1416
name: "denops#plugin#is_loaded()",
@@ -309,8 +311,3 @@ testHost({
309311
});
310312
},
311313
});
312-
313-
/** Resolve testdata script path. */
314-
function resolve(path: string): string {
315-
return join(import.meta.dirname!, `../../../testdata/${path}`);
316-
}

tests/denops/runtime/functions/plugin/load_test.ts

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ import {
44
assertRejects,
55
} from "jsr:@std/assert@^1.0.1";
66
import { delay } from "jsr:@std/async@^1.0.1";
7-
import { join } from "jsr:@std/path@^1.0.2/join";
7+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
88
import { testHost } from "/denops-testutil/host.ts";
99
import { wait } from "/denops-testutil/wait.ts";
1010

1111
const MESSAGE_DELAY = 200; // msc
1212

13-
const scriptValid = resolve("dummy_valid_plugin.ts");
14-
const scriptInvalid = resolve("dummy_invalid_plugin.ts");
15-
const scriptValidDispose = resolve("dummy_valid_dispose_plugin.ts");
13+
const scriptValid = resolveTestDataPath("dummy_valid_plugin.ts");
14+
const scriptInvalid = resolveTestDataPath("dummy_invalid_plugin.ts");
15+
const scriptValidDispose = resolveTestDataPath("dummy_valid_dispose_plugin.ts");
1616

1717
testHost({
1818
name: "denops#plugin#load()",
@@ -387,8 +387,3 @@ testHost({
387387
});
388388
},
389389
});
390-
391-
/** Resolve testdata script path. */
392-
function resolve(path: string): string {
393-
return join(import.meta.dirname!, `../../../testdata/${path}`);
394-
}

tests/denops/runtime/functions/plugin/reload_test.ts

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,16 @@ import {
44
assertRejects,
55
} from "jsr:@std/assert@^1.0.1";
66
import { delay } from "jsr:@std/async@^1.0.1";
7-
import { join } from "jsr:@std/path@^1.0.2/join";
7+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
88
import { testHost } from "/denops-testutil/host.ts";
99
import { wait } from "/denops-testutil/wait.ts";
1010

1111
const MESSAGE_DELAY = 200; // msc
1212

13-
const scriptValid = resolve("dummy_valid_plugin.ts");
14-
const scriptInvalidDispose = resolve("dummy_invalid_dispose_plugin.ts");
13+
const scriptValid = resolveTestDataPath("dummy_valid_plugin.ts");
14+
const scriptInvalidDispose = resolveTestDataPath(
15+
"dummy_invalid_dispose_plugin.ts",
16+
);
1517

1618
testHost({
1719
name: "denops#plugin#reload()",
@@ -360,8 +362,3 @@ testHost({
360362
});
361363
},
362364
});
363-
364-
/** Resolve testdata script path. */
365-
function resolve(path: string): string {
366-
return join(import.meta.dirname!, `../../../testdata/${path}`);
367-
}

tests/denops/runtime/functions/plugin/unload_test.ts

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,16 @@ import {
44
assertRejects,
55
} from "jsr:@std/assert@^1.0.1";
66
import { delay } from "jsr:@std/async@^1.0.1";
7-
import { join } from "jsr:@std/path@^1.0.2/join";
7+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
88
import { testHost } from "/denops-testutil/host.ts";
99
import { wait } from "/denops-testutil/wait.ts";
1010

1111
const MESSAGE_DELAY = 200; // msc
1212

13-
const scriptValidDispose = resolve("dummy_valid_dispose_plugin.ts");
14-
const scriptInvalidDispose = resolve("dummy_invalid_dispose_plugin.ts");
13+
const scriptValidDispose = resolveTestDataPath("dummy_valid_dispose_plugin.ts");
14+
const scriptInvalidDispose = resolveTestDataPath(
15+
"dummy_invalid_dispose_plugin.ts",
16+
);
1517

1618
testHost({
1719
name: "denops#plugin#unload()",
@@ -358,8 +360,3 @@ testHost({
358360
});
359361
},
360362
});
361-
362-
/** Resolve testdata script path. */
363-
function resolve(path: string): string {
364-
return join(import.meta.dirname!, `../../../testdata/${path}`);
365-
}

tests/denops/runtime/functions/plugin/wait_async_test.ts

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,16 @@ import {
55
assertRejects,
66
} from "jsr:@std/assert@^1.0.1";
77
import { delay } from "jsr:@std/async@^1.0.1";
8-
import { join } from "jsr:@std/path@^1.0.2/join";
8+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
99
import { testHost } from "/denops-testutil/host.ts";
1010
import { wait } from "/denops-testutil/wait.ts";
1111

1212
const MESSAGE_DELAY = 200; // msc
1313

14-
const scriptValid = resolve("dummy_valid_plugin.ts");
15-
const scriptInvalid = resolve("dummy_invalid_plugin.ts");
16-
const scriptValidWait = resolve("dummy_valid_wait_plugin.ts");
17-
const scriptInvalidWait = resolve("dummy_invalid_wait_plugin.ts");
14+
const scriptValid = resolveTestDataPath("dummy_valid_plugin.ts");
15+
const scriptInvalid = resolveTestDataPath("dummy_invalid_plugin.ts");
16+
const scriptValidWait = resolveTestDataPath("dummy_valid_wait_plugin.ts");
17+
const scriptInvalidWait = resolveTestDataPath("dummy_invalid_wait_plugin.ts");
1818

1919
testHost({
2020
name: "denops#plugin#wait_async()",
@@ -308,8 +308,3 @@ testHost({
308308
});
309309
},
310310
});
311-
312-
/** Resolve testdata script path. */
313-
function resolve(path: string): string {
314-
return join(import.meta.dirname!, `../../../testdata/${path}`);
315-
}

tests/denops/runtime/functions/plugin/wait_test.ts

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,16 @@ import {
77
assertStringIncludes,
88
} from "jsr:@std/assert@^1.0.1";
99
import { delay } from "jsr:@std/async@^1.0.1";
10-
import { join } from "jsr:@std/path@^1.0.2/join";
10+
import { resolveTestDataPath } from "/denops-testdata/resolve.ts";
1111
import { testHost } from "/denops-testutil/host.ts";
1212
import { wait } from "/denops-testutil/wait.ts";
1313

1414
const MESSAGE_DELAY = 200; // msc
1515

16-
const scriptValid = resolve("dummy_valid_plugin.ts");
17-
const scriptInvalid = resolve("dummy_invalid_plugin.ts");
18-
const scriptValidWait = resolve("dummy_valid_wait_plugin.ts");
19-
const scriptInvalidWait = resolve("dummy_invalid_wait_plugin.ts");
16+
const scriptValid = resolveTestDataPath("dummy_valid_plugin.ts");
17+
const scriptInvalid = resolveTestDataPath("dummy_invalid_plugin.ts");
18+
const scriptValidWait = resolveTestDataPath("dummy_valid_wait_plugin.ts");
19+
const scriptInvalidWait = resolveTestDataPath("dummy_invalid_wait_plugin.ts");
2020

2121
testHost({
2222
name: "denops#plugin#wait()",
@@ -426,8 +426,3 @@ testHost({
426426
});
427427
},
428428
});
429-
430-
/** Resolve testdata script path. */
431-
function resolve(path: string): string {
432-
return join(import.meta.dirname!, `../../../testdata/${path}`);
433-
}

0 commit comments

Comments
 (0)