文档测试
Deno 支持类型检查和评估您的文档示例。
这确保了您的文档中的示例是最新的并且可以正常工作。
基本思路如下
/**
* # Examples
*
* ```ts
* const x = 42;
* ```
*/
三个反引号标记代码块的开始和结束,语言由语言标识符属性确定,该属性可以是以下任何一种
js
javascript
mjs
cjs
jsx
ts
typescript
mts
cts
tsx
如果未指定语言标识符,则语言将从从中提取代码块的源文档的媒体类型推断。
支持的另一个属性是 ignore
,它告诉测试运行器跳过类型检查代码块。
/**
* # Does not pass type check
*
* ```typescript ignore
* const x: string = 42;
* ```
*/
如果此示例位于名为 foo.ts 的文件中,则运行 deno test --doc foo.ts
将提取此示例,然后对其进行类型检查和评估,作为与正在记录的模块位于同一目录中的独立模块。
要记录您的导出,请使用相对路径说明符导入模块
/**
* # Examples
*
* ```ts
* import { foo } from "./foo.ts";
* ```
*/
export function foo(): string {
return "foo";
}