Vitest では expectTypeOf
や assetType
を使って型のテストを書くことができます。自作のユーティリティ型が期待する型を返すか検査したり、言語ファイルの JSON スキーマが同じ型を返すことを確認するなどに利用できます。
デフォルトでは *.test-d.ts
という名前のファイルが型テストとして実行されます。これは typecheck.include
オプションで変更できます。
import { expectTypeOf, it, test } from "vitest";
it("should be same type", () => {
expectTypeOf<{ foo: string }>().toEqualTypeOf<{ foo: string }>();
});
型テストを実行したい場合には --typecheck
オプションを付けて vitest
を実行します。
vitest --typecheck