summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cli/tools/test/mod.rs33
-rw-r--r--tests/specs/test/type_check_with_doc/__test__.jsonc5
-rw-r--r--tests/specs/test/type_check_with_doc/main.out13
-rw-r--r--tests/specs/test/type_check_with_doc/main.ts8
4 files changed, 37 insertions, 22 deletions
diff --git a/cli/tools/test/mod.rs b/cli/tools/test/mod.rs
index ffa0fef9e..d63176d39 100644
--- a/cli/tools/test/mod.rs
+++ b/cli/tools/test/mod.rs
@@ -1326,27 +1326,7 @@ pub async fn check_specifiers(
)
.await?;
- if !inline_files.is_empty() {
- let specifiers = inline_files
- .iter()
- .map(|file| file.specifier.clone())
- .collect();
-
- for file in inline_files {
- file_fetcher.insert_memory_files(file);
- }
-
- module_load_preparer
- .prepare_module_load(
- specifiers,
- false,
- lib,
- PermissionsContainer::new(Permissions::allow_all()),
- )
- .await?;
- }
-
- let module_specifiers = specifiers
+ let mut module_specifiers = specifiers
.into_iter()
.filter_map(|(specifier, mode)| {
if mode != TestMode::Documentation {
@@ -1355,7 +1335,16 @@ pub async fn check_specifiers(
None
}
})
- .collect();
+ .collect::<Vec<_>>();
+
+ if !inline_files.is_empty() {
+ module_specifiers
+ .extend(inline_files.iter().map(|file| file.specifier.clone()));
+
+ for file in inline_files {
+ file_fetcher.insert_memory_files(file);
+ }
+ }
module_load_preparer
.prepare_module_load(
diff --git a/tests/specs/test/type_check_with_doc/__test__.jsonc b/tests/specs/test/type_check_with_doc/__test__.jsonc
new file mode 100644
index 000000000..c4a26529a
--- /dev/null
+++ b/tests/specs/test/type_check_with_doc/__test__.jsonc
@@ -0,0 +1,5 @@
+{
+ "args": "test --doc main.ts",
+ "output": "main.out",
+ "exitCode": 1
+}
diff --git a/tests/specs/test/type_check_with_doc/main.out b/tests/specs/test/type_check_with_doc/main.out
new file mode 100644
index 000000000..931a6a5f3
--- /dev/null
+++ b/tests/specs/test/type_check_with_doc/main.out
@@ -0,0 +1,13 @@
+Check [WILDCARD]/main.ts
+Check [WILDCARD]/main.ts$2-5.ts
+error: TS2322 [ERROR]: Type 'number' is not assignable to type 'string'.
+const a: string = 1;
+ ^
+ at file://[WILDCARD]/main.ts:8:7
+
+TS2322 [ERROR]: Type 'string' is not assignable to type 'number'.
+const b: number = "1";
+ ^
+ at file://[WILDCARD]/main.ts$2-5.ts:1:7
+
+Found 2 errors.
diff --git a/tests/specs/test/type_check_with_doc/main.ts b/tests/specs/test/type_check_with_doc/main.ts
new file mode 100644
index 000000000..04ccd00bf
--- /dev/null
+++ b/tests/specs/test/type_check_with_doc/main.ts
@@ -0,0 +1,8 @@
+/**
+ * ```ts
+ * const b: number = "1";
+ * ```
+ */
+function foo() {}
+
+const a: string = 1;