summaryrefslogtreecommitdiff
path: root/cli/tests/testdata/subdir
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests/testdata/subdir')
-rw-r--r--cli/tests/testdata/subdir/amd_like.js3
-rw-r--r--cli/tests/testdata/subdir/auto_print_hello.ts2
-rw-r--r--cli/tests/testdata/subdir/circular1.ts7
-rw-r--r--cli/tests/testdata/subdir/circular2.ts7
-rw-r--r--cli/tests/testdata/subdir/comment.ts4
-rw-r--r--cli/tests/testdata/subdir/config.json6
-rw-r--r--cli/tests/testdata/subdir/emittable.d.ts1
-rw-r--r--cli/tests/testdata/subdir/empty.ts0
-rw-r--r--cli/tests/testdata/subdir/evil_remote_import.js4
-rw-r--r--cli/tests/testdata/subdir/foo_types.d.ts3
-rw-r--r--cli/tests/testdata/subdir/form_urlencoded.txt1
-rw-r--r--cli/tests/testdata/subdir/indirect_import_error.js1
-rw-r--r--cli/tests/testdata/subdir/indirect_throws.js1
-rw-r--r--cli/tests/testdata/subdir/json_1.json5
-rw-r--r--cli/tests/testdata/subdir/json_2.json1
-rw-r--r--cli/tests/testdata/subdir/main.ts3
-rw-r--r--cli/tests/testdata/subdir/mismatch_ext.ts1
-rw-r--r--cli/tests/testdata/subdir/mod1.ts17
-rw-r--r--cli/tests/testdata/subdir/mod2.ts1
-rw-r--r--cli/tests/testdata/subdir/mod3.js1
-rw-r--r--cli/tests/testdata/subdir/mod4.js1
-rw-r--r--cli/tests/testdata/subdir/mod5.mjs1
-rw-r--r--cli/tests/testdata/subdir/mod6.js1
-rw-r--r--cli/tests/testdata/subdir/more_decorators.ts18
-rw-r--r--cli/tests/testdata/subdir/mt_application_ecmascript.j2.js1
-rw-r--r--cli/tests/testdata/subdir/mt_application_ecmascript_jsx.j2.jsx5
-rw-r--r--cli/tests/testdata/subdir/mt_application_x_javascript.j4.js1
-rw-r--r--cli/tests/testdata/subdir/mt_application_x_javascript_jsx.j4.jsx5
-rw-r--r--cli/tests/testdata/subdir/mt_application_x_typescript.t4.ts1
-rw-r--r--cli/tests/testdata/subdir/mt_application_x_typescript_tsx.t4.tsx5
-rw-r--r--cli/tests/testdata/subdir/mt_javascript.js1
-rw-r--r--cli/tests/testdata/subdir/mt_javascript_jsx.jsx5
-rw-r--r--cli/tests/testdata/subdir/mt_text_ecmascript.j3.js1
-rw-r--r--cli/tests/testdata/subdir/mt_text_ecmascript_jsx.j3.jsx5
-rw-r--r--cli/tests/testdata/subdir/mt_text_javascript.j1.js1
-rw-r--r--cli/tests/testdata/subdir/mt_text_javascript_jsx.j1.jsx5
-rw-r--r--cli/tests/testdata/subdir/mt_text_typescript.t1.ts1
-rw-r--r--cli/tests/testdata/subdir/mt_text_typescript_tsx.t1.tsx5
-rw-r--r--cli/tests/testdata/subdir/mt_video_mp2t.t3.ts1
-rw-r--r--cli/tests/testdata/subdir/mt_video_mp2t_tsx.t3.tsx5
-rw-r--r--cli/tests/testdata/subdir/mt_video_vdn.t2.ts1
-rw-r--r--cli/tests/testdata/subdir/mt_video_vdn_tsx.t2.tsx5
-rw-r--r--cli/tests/testdata/subdir/no_ext1
-rw-r--r--cli/tests/testdata/subdir/no_js_ext3
-rw-r--r--cli/tests/testdata/subdir/polyfill.ts10
-rw-r--r--cli/tests/testdata/subdir/print_hello.ts3
-rw-r--r--cli/tests/testdata/subdir/redirects/a.ts9
-rw-r--r--cli/tests/testdata/subdir/redirects/b.ts5
-rw-r--r--cli/tests/testdata/subdir/redirects/redirect1.js1
-rw-r--r--cli/tests/testdata/subdir/redirects/redirect1.ts1
-rw-r--r--cli/tests/testdata/subdir/redirects/redirect2.js1
-rw-r--r--cli/tests/testdata/subdir/redirects/redirect3.js2
-rw-r--r--cli/tests/testdata/subdir/redirects/redirect4.ts2
-rw-r--r--cli/tests/testdata/subdir/single_module.ts2
-rw-r--r--cli/tests/testdata/subdir/subdir2/dynamic_import.ts6
-rw-r--r--cli/tests/testdata/subdir/subdir2/mod2.ts9
-rw-r--r--cli/tests/testdata/subdir/test_worker_basic.js14
-rw-r--r--cli/tests/testdata/subdir/throws.js6
-rw-r--r--cli/tests/testdata/subdir/tla.ts1
-rw-r--r--cli/tests/testdata/subdir/type_and_code.ts7
-rw-r--r--cli/tests/testdata/subdir/type_reference.d.ts1
-rw-r--r--cli/tests/testdata/subdir/type_reference.js3
-rw-r--r--cli/tests/testdata/subdir/types.d.ts1
-rw-r--r--cli/tests/testdata/subdir/unknown_ext.deno1
64 files changed, 233 insertions, 0 deletions
diff --git a/cli/tests/testdata/subdir/amd_like.js b/cli/tests/testdata/subdir/amd_like.js
new file mode 100644
index 000000000..f27e505e4
--- /dev/null
+++ b/cli/tests/testdata/subdir/amd_like.js
@@ -0,0 +1,3 @@
+// looks like an AMD module, but isn't
+const define = () => {};
+define(["fake_module"], () => {});
diff --git a/cli/tests/testdata/subdir/auto_print_hello.ts b/cli/tests/testdata/subdir/auto_print_hello.ts
new file mode 100644
index 000000000..5efa72e03
--- /dev/null
+++ b/cli/tests/testdata/subdir/auto_print_hello.ts
@@ -0,0 +1,2 @@
+console.log("hello!");
+export default {};
diff --git a/cli/tests/testdata/subdir/circular1.ts b/cli/tests/testdata/subdir/circular1.ts
new file mode 100644
index 000000000..06fdb3373
--- /dev/null
+++ b/cli/tests/testdata/subdir/circular1.ts
@@ -0,0 +1,7 @@
+import * as circular2 from "./circular2.ts";
+
+export function f1() {
+ console.log("f1");
+}
+
+circular2.f2();
diff --git a/cli/tests/testdata/subdir/circular2.ts b/cli/tests/testdata/subdir/circular2.ts
new file mode 100644
index 000000000..0864b7adf
--- /dev/null
+++ b/cli/tests/testdata/subdir/circular2.ts
@@ -0,0 +1,7 @@
+import * as circular1 from "./circular1.ts";
+
+export function f2() {
+ console.log("f2");
+}
+
+circular1.f1();
diff --git a/cli/tests/testdata/subdir/comment.ts b/cli/tests/testdata/subdir/comment.ts
new file mode 100644
index 000000000..ea7e630c0
--- /dev/null
+++ b/cli/tests/testdata/subdir/comment.ts
@@ -0,0 +1,4 @@
+// This is a comment.
+export function comment(): string {
+ return "comment";
+}
diff --git a/cli/tests/testdata/subdir/config.json b/cli/tests/testdata/subdir/config.json
new file mode 100644
index 000000000..01c3b5e79
--- /dev/null
+++ b/cli/tests/testdata/subdir/config.json
@@ -0,0 +1,6 @@
+{
+ "foo": {
+ "bar": true,
+ "baz": ["qat", 1]
+ }
+}
diff --git a/cli/tests/testdata/subdir/emittable.d.ts b/cli/tests/testdata/subdir/emittable.d.ts
new file mode 100644
index 000000000..425b80f24
--- /dev/null
+++ b/cli/tests/testdata/subdir/emittable.d.ts
@@ -0,0 +1 @@
+export const a: string;
diff --git a/cli/tests/testdata/subdir/empty.ts b/cli/tests/testdata/subdir/empty.ts
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/cli/tests/testdata/subdir/empty.ts
diff --git a/cli/tests/testdata/subdir/evil_remote_import.js b/cli/tests/testdata/subdir/evil_remote_import.js
new file mode 100644
index 000000000..4ff7d1b97
--- /dev/null
+++ b/cli/tests/testdata/subdir/evil_remote_import.js
@@ -0,0 +1,4 @@
+// We expect to get a permission denied error if we dynamically
+// import this module without --allow-read.
+export * from "file:///c:/etc/passwd";
+console.log("Hello from evil_remote_import.js");
diff --git a/cli/tests/testdata/subdir/foo_types.d.ts b/cli/tests/testdata/subdir/foo_types.d.ts
new file mode 100644
index 000000000..c489584b9
--- /dev/null
+++ b/cli/tests/testdata/subdir/foo_types.d.ts
@@ -0,0 +1,3 @@
+declare namespace Foo {
+ const bar: string;
+}
diff --git a/cli/tests/testdata/subdir/form_urlencoded.txt b/cli/tests/testdata/subdir/form_urlencoded.txt
new file mode 100644
index 000000000..70e087c20
--- /dev/null
+++ b/cli/tests/testdata/subdir/form_urlencoded.txt
@@ -0,0 +1 @@
+field_1=Hi&field_2=%3CDeno%3E \ No newline at end of file
diff --git a/cli/tests/testdata/subdir/indirect_import_error.js b/cli/tests/testdata/subdir/indirect_import_error.js
new file mode 100644
index 000000000..84011d291
--- /dev/null
+++ b/cli/tests/testdata/subdir/indirect_import_error.js
@@ -0,0 +1 @@
+export * from "does not exist either";
diff --git a/cli/tests/testdata/subdir/indirect_throws.js b/cli/tests/testdata/subdir/indirect_throws.js
new file mode 100644
index 000000000..e1810a66c
--- /dev/null
+++ b/cli/tests/testdata/subdir/indirect_throws.js
@@ -0,0 +1 @@
+export * from "./throws.js";
diff --git a/cli/tests/testdata/subdir/json_1.json b/cli/tests/testdata/subdir/json_1.json
new file mode 100644
index 000000000..754d16b84
--- /dev/null
+++ b/cli/tests/testdata/subdir/json_1.json
@@ -0,0 +1,5 @@
+{
+ "$var": { "a": 123, "b": [1, 2, 3], "c": null },
+ "with space": "invalid variable name",
+ "function": "reserved word"
+}
diff --git a/cli/tests/testdata/subdir/json_2.json b/cli/tests/testdata/subdir/json_2.json
new file mode 100644
index 000000000..7deb8b173
--- /dev/null
+++ b/cli/tests/testdata/subdir/json_2.json
@@ -0,0 +1 @@
+"just a string"
diff --git a/cli/tests/testdata/subdir/main.ts b/cli/tests/testdata/subdir/main.ts
new file mode 100644
index 000000000..29acf42e0
--- /dev/null
+++ b/cli/tests/testdata/subdir/main.ts
@@ -0,0 +1,3 @@
+if (import.meta.main) {
+ console.log("Hello, world!");
+}
diff --git a/cli/tests/testdata/subdir/mismatch_ext.ts b/cli/tests/testdata/subdir/mismatch_ext.ts
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mismatch_ext.ts
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mod1.ts b/cli/tests/testdata/subdir/mod1.ts
new file mode 100644
index 000000000..5e58f432e
--- /dev/null
+++ b/cli/tests/testdata/subdir/mod1.ts
@@ -0,0 +1,17 @@
+import { printHello2, returnsFoo } from "./subdir2/mod2.ts";
+
+export function returnsHi(): string {
+ return "Hi";
+}
+
+export function returnsFoo2(): string {
+ return returnsFoo();
+}
+
+export function printHello3() {
+ printHello2();
+}
+
+export function throwsError() {
+ throw Error("exception from mod1");
+}
diff --git a/cli/tests/testdata/subdir/mod2.ts b/cli/tests/testdata/subdir/mod2.ts
new file mode 100644
index 000000000..ce1adc0e8
--- /dev/null
+++ b/cli/tests/testdata/subdir/mod2.ts
@@ -0,0 +1 @@
+export { printHello } from "./print_hello.ts";
diff --git a/cli/tests/testdata/subdir/mod3.js b/cli/tests/testdata/subdir/mod3.js
new file mode 100644
index 000000000..ce534f570
--- /dev/null
+++ b/cli/tests/testdata/subdir/mod3.js
@@ -0,0 +1 @@
+export const isTSFile = false;
diff --git a/cli/tests/testdata/subdir/mod4.js b/cli/tests/testdata/subdir/mod4.js
new file mode 100644
index 000000000..71332dbc4
--- /dev/null
+++ b/cli/tests/testdata/subdir/mod4.js
@@ -0,0 +1 @@
+export const isMod4 = true;
diff --git a/cli/tests/testdata/subdir/mod5.mjs b/cli/tests/testdata/subdir/mod5.mjs
new file mode 100644
index 000000000..f21d8862b
--- /dev/null
+++ b/cli/tests/testdata/subdir/mod5.mjs
@@ -0,0 +1 @@
+export const isMod5 = true;
diff --git a/cli/tests/testdata/subdir/mod6.js b/cli/tests/testdata/subdir/mod6.js
new file mode 100644
index 000000000..5e17c9ee0
--- /dev/null
+++ b/cli/tests/testdata/subdir/mod6.js
@@ -0,0 +1 @@
+export { isMod4 } from "./mod4.js";
diff --git a/cli/tests/testdata/subdir/more_decorators.ts b/cli/tests/testdata/subdir/more_decorators.ts
new file mode 100644
index 000000000..674705d56
--- /dev/null
+++ b/cli/tests/testdata/subdir/more_decorators.ts
@@ -0,0 +1,18 @@
+// deno-lint-ignore-file
+function a() {
+ console.log("a(): evaluated");
+ return (
+ _target: any,
+ _propertyKey: string,
+ _descriptor: PropertyDescriptor,
+ ) => {
+ console.log("a(): called");
+ };
+}
+
+export class B {
+ @a()
+ method() {
+ console.log("method");
+ }
+}
diff --git a/cli/tests/testdata/subdir/mt_application_ecmascript.j2.js b/cli/tests/testdata/subdir/mt_application_ecmascript.j2.js
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_application_ecmascript.j2.js
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_application_ecmascript_jsx.j2.jsx b/cli/tests/testdata/subdir/mt_application_ecmascript_jsx.j2.jsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_application_ecmascript_jsx.j2.jsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_application_x_javascript.j4.js b/cli/tests/testdata/subdir/mt_application_x_javascript.j4.js
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_application_x_javascript.j4.js
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_application_x_javascript_jsx.j4.jsx b/cli/tests/testdata/subdir/mt_application_x_javascript_jsx.j4.jsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_application_x_javascript_jsx.j4.jsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_application_x_typescript.t4.ts b/cli/tests/testdata/subdir/mt_application_x_typescript.t4.ts
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_application_x_typescript.t4.ts
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_application_x_typescript_tsx.t4.tsx b/cli/tests/testdata/subdir/mt_application_x_typescript_tsx.t4.tsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_application_x_typescript_tsx.t4.tsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_javascript.js b/cli/tests/testdata/subdir/mt_javascript.js
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_javascript.js
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_javascript_jsx.jsx b/cli/tests/testdata/subdir/mt_javascript_jsx.jsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_javascript_jsx.jsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_text_ecmascript.j3.js b/cli/tests/testdata/subdir/mt_text_ecmascript.j3.js
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_text_ecmascript.j3.js
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_text_ecmascript_jsx.j3.jsx b/cli/tests/testdata/subdir/mt_text_ecmascript_jsx.j3.jsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_text_ecmascript_jsx.j3.jsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_text_javascript.j1.js b/cli/tests/testdata/subdir/mt_text_javascript.j1.js
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_text_javascript.j1.js
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_text_javascript_jsx.j1.jsx b/cli/tests/testdata/subdir/mt_text_javascript_jsx.j1.jsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_text_javascript_jsx.j1.jsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_text_typescript.t1.ts b/cli/tests/testdata/subdir/mt_text_typescript.t1.ts
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_text_typescript.t1.ts
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_text_typescript_tsx.t1.tsx b/cli/tests/testdata/subdir/mt_text_typescript_tsx.t1.tsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_text_typescript_tsx.t1.tsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_video_mp2t.t3.ts b/cli/tests/testdata/subdir/mt_video_mp2t.t3.ts
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_video_mp2t.t3.ts
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_video_mp2t_tsx.t3.tsx b/cli/tests/testdata/subdir/mt_video_mp2t_tsx.t3.tsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_video_mp2t_tsx.t3.tsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_video_vdn.t2.ts b/cli/tests/testdata/subdir/mt_video_vdn.t2.ts
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_video_vdn.t2.ts
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/mt_video_vdn_tsx.t2.tsx b/cli/tests/testdata/subdir/mt_video_vdn_tsx.t2.tsx
new file mode 100644
index 000000000..c5c27f9f9
--- /dev/null
+++ b/cli/tests/testdata/subdir/mt_video_vdn_tsx.t2.tsx
@@ -0,0 +1,5 @@
+const React = {
+ createElement() {},
+};
+const temp = <div></div>;
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/no_ext b/cli/tests/testdata/subdir/no_ext
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/no_ext
@@ -0,0 +1 @@
+export const loaded = true;
diff --git a/cli/tests/testdata/subdir/no_js_ext b/cli/tests/testdata/subdir/no_js_ext
new file mode 100644
index 000000000..8322a106f
--- /dev/null
+++ b/cli/tests/testdata/subdir/no_js_ext
@@ -0,0 +1,3 @@
+// @ts-check
+import { printHello } from "./mod2.ts";
+printHello();
diff --git a/cli/tests/testdata/subdir/polyfill.ts b/cli/tests/testdata/subdir/polyfill.ts
new file mode 100644
index 000000000..e1cd923cb
--- /dev/null
+++ b/cli/tests/testdata/subdir/polyfill.ts
@@ -0,0 +1,10 @@
+declare global {
+ const polyfill: () => void;
+}
+
+export {};
+
+// deno-lint-ignore no-explicit-any
+(globalThis as any).polyfill = () => {
+ console.log("polyfill");
+};
diff --git a/cli/tests/testdata/subdir/print_hello.ts b/cli/tests/testdata/subdir/print_hello.ts
new file mode 100644
index 000000000..b9c0ad527
--- /dev/null
+++ b/cli/tests/testdata/subdir/print_hello.ts
@@ -0,0 +1,3 @@
+export function printHello() {
+ console.log("Hello");
+}
diff --git a/cli/tests/testdata/subdir/redirects/a.ts b/cli/tests/testdata/subdir/redirects/a.ts
new file mode 100644
index 000000000..071ee4728
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/a.ts
@@ -0,0 +1,9 @@
+import { createA } from "./b.ts";
+
+export class A {
+ private _a = "a";
+}
+
+export function start(): A {
+ return createA();
+}
diff --git a/cli/tests/testdata/subdir/redirects/b.ts b/cli/tests/testdata/subdir/redirects/b.ts
new file mode 100644
index 000000000..cdb71eaae
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/b.ts
@@ -0,0 +1,5 @@
+import { A } from "./a.ts";
+
+export function createA(): A {
+ return new A();
+}
diff --git a/cli/tests/testdata/subdir/redirects/redirect1.js b/cli/tests/testdata/subdir/redirects/redirect1.js
new file mode 100644
index 000000000..d674be88c
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/redirect1.js
@@ -0,0 +1 @@
+export const redirect = 1;
diff --git a/cli/tests/testdata/subdir/redirects/redirect1.ts b/cli/tests/testdata/subdir/redirects/redirect1.ts
new file mode 100644
index 000000000..d674be88c
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/redirect1.ts
@@ -0,0 +1 @@
+export const redirect = 1;
diff --git a/cli/tests/testdata/subdir/redirects/redirect2.js b/cli/tests/testdata/subdir/redirects/redirect2.js
new file mode 100644
index 000000000..e4244f638
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/redirect2.js
@@ -0,0 +1 @@
+import "./redirect1.js";
diff --git a/cli/tests/testdata/subdir/redirects/redirect3.js b/cli/tests/testdata/subdir/redirects/redirect3.js
new file mode 100644
index 000000000..e24f2af32
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/redirect3.js
@@ -0,0 +1,2 @@
+import { redirect } from "./redirect1.js";
+export const value = `3 imports ${redirect}`;
diff --git a/cli/tests/testdata/subdir/redirects/redirect4.ts b/cli/tests/testdata/subdir/redirects/redirect4.ts
new file mode 100644
index 000000000..45c65c5eb
--- /dev/null
+++ b/cli/tests/testdata/subdir/redirects/redirect4.ts
@@ -0,0 +1,2 @@
+import { redirect } from "./redirect1.ts";
+export const value = `4 imports ${redirect}`;
diff --git a/cli/tests/testdata/subdir/single_module.ts b/cli/tests/testdata/subdir/single_module.ts
new file mode 100644
index 000000000..f41b0a4b5
--- /dev/null
+++ b/cli/tests/testdata/subdir/single_module.ts
@@ -0,0 +1,2 @@
+console.log("Hello world!");
+export {}; // TODO(ry) This shouldn't be necessary.
diff --git a/cli/tests/testdata/subdir/subdir2/dynamic_import.ts b/cli/tests/testdata/subdir/subdir2/dynamic_import.ts
new file mode 100644
index 000000000..573887b71
--- /dev/null
+++ b/cli/tests/testdata/subdir/subdir2/dynamic_import.ts
@@ -0,0 +1,6 @@
+(async () => {
+ const { printHello } = await import("../mod2.ts");
+ printHello();
+})();
+
+export {};
diff --git a/cli/tests/testdata/subdir/subdir2/mod2.ts b/cli/tests/testdata/subdir/subdir2/mod2.ts
new file mode 100644
index 000000000..9071d0aeb
--- /dev/null
+++ b/cli/tests/testdata/subdir/subdir2/mod2.ts
@@ -0,0 +1,9 @@
+import { printHello } from "../print_hello.ts";
+
+export function returnsFoo(): string {
+ return "Foo";
+}
+
+export function printHello2() {
+ printHello();
+}
diff --git a/cli/tests/testdata/subdir/test_worker_basic.js b/cli/tests/testdata/subdir/test_worker_basic.js
new file mode 100644
index 000000000..b960128b4
--- /dev/null
+++ b/cli/tests/testdata/subdir/test_worker_basic.js
@@ -0,0 +1,14 @@
+console.log("hello from test_worker_basic.js");
+
+if (self.name !== "jsWorker") {
+ throw Error(`Bad worker name: ${self.name}, expected jsWorker`);
+}
+
+onmessage = function (e) {
+ postMessage(e.data);
+ close();
+};
+
+onerror = function () {
+ return false;
+};
diff --git a/cli/tests/testdata/subdir/throws.js b/cli/tests/testdata/subdir/throws.js
new file mode 100644
index 000000000..abdf29156
--- /dev/null
+++ b/cli/tests/testdata/subdir/throws.js
@@ -0,0 +1,6 @@
+// deno-lint-ignore-file
+export function boo() {
+ console.log("Boo!");
+}
+
+throw new Error("An error");
diff --git a/cli/tests/testdata/subdir/tla.ts b/cli/tests/testdata/subdir/tla.ts
new file mode 100644
index 000000000..713dbfca0
--- /dev/null
+++ b/cli/tests/testdata/subdir/tla.ts
@@ -0,0 +1 @@
+export const foo = await Promise.resolve("Hello");
diff --git a/cli/tests/testdata/subdir/type_and_code.ts b/cli/tests/testdata/subdir/type_and_code.ts
new file mode 100644
index 000000000..b14713419
--- /dev/null
+++ b/cli/tests/testdata/subdir/type_and_code.ts
@@ -0,0 +1,7 @@
+export interface AnInterface {
+ a: string;
+}
+
+export function isAnInterface(value: unknown): value is AnInterface {
+ return value && typeof value === "object" && "a" in value;
+}
diff --git a/cli/tests/testdata/subdir/type_reference.d.ts b/cli/tests/testdata/subdir/type_reference.d.ts
new file mode 100644
index 000000000..f9b8de5ed
--- /dev/null
+++ b/cli/tests/testdata/subdir/type_reference.d.ts
@@ -0,0 +1 @@
+export const foo: "foo";
diff --git a/cli/tests/testdata/subdir/type_reference.js b/cli/tests/testdata/subdir/type_reference.js
new file mode 100644
index 000000000..917d89198
--- /dev/null
+++ b/cli/tests/testdata/subdir/type_reference.js
@@ -0,0 +1,3 @@
+/// <reference types="./type_reference.d.ts" />
+
+export const foo = "foo";
diff --git a/cli/tests/testdata/subdir/types.d.ts b/cli/tests/testdata/subdir/types.d.ts
new file mode 100644
index 000000000..7f587e144
--- /dev/null
+++ b/cli/tests/testdata/subdir/types.d.ts
@@ -0,0 +1 @@
+declare var a: string;
diff --git a/cli/tests/testdata/subdir/unknown_ext.deno b/cli/tests/testdata/subdir/unknown_ext.deno
new file mode 100644
index 000000000..e67d2a017
--- /dev/null
+++ b/cli/tests/testdata/subdir/unknown_ext.deno
@@ -0,0 +1 @@
+export const loaded = true;