Skip to content

後でテストを書くことを忘れないようにするには、test.todo 関数を使用します。テストの実装を提供する必要はありません。

ts
import { test, expect } from "bun:test";

// 後で書く
test.todo("未実装の機能");

bun test の出力には、いくつかの todo テストに遭遇したかが表示されます。

sh
bun test
txt
test.test.ts:
✓ add [0.03ms]
✓ multiply [0.02ms]
✎ unimplemented feature

 2 pass
 1 todo
 0 fail
 2 expect() calls
Ran 3 tests across 1 files. [74.00ms]

オプションで、テストの実装を提供することもできます。

ts
import { test, expect } from "bun:test";

test.todo("未実装の機能", () => {
  expect(Bun.isAwesome()).toBe(true);
});

実装が提供されている場合、--todo フラグが渡されない限り実行されません。--todo フラグが渡された場合、テストは実行され、テストランナーによって失敗することが期待されます!todo テストがパスした場合、bun test 実行は失敗を信号するためにゼロ以外の終了コードを返します。

sh
bun test --todo
txt
my.test.ts:
✗ unimplemented feature
  ^ このテストは todo としてマークされていますがパスします。`.todo` を削除するか、テストが正しいか確認してください。

 0 pass
 1 fail
 1 expect() calls
$ echo $?
1 # これは前のコマンドの終了コードです

関連項目:

Bun by www.bunjs.com.cn 編集