Skip to content
← Back to rules

jest/prefer-equality-matcher スタイル

An auto-fix is available for this rule.

何をするか

Jest には等価性を期待するための組み込みマッチャーが用意されており、テストの可読性とエラー発生時のメッセージの明確さを高めます。

なぜ問題なのか

一般的なマッチャー(例:toBe(true))を使用して等価性をテストすると、テストの読みやすさが低下し、理解が難しくなります。テストが失敗した場合、実際の値が表示されないため、エラーメッセージの役立ち具合も低くなります。特定の等価性マッチャーを使うことで、テストの意図が明確になり、デバッグ情報もより良くなるのです。

このルールに違反する誤ったコードの例:

javascript
expect(x === 5).toBe(true);
expect(name === "Carl").not.toEqual(true);
expect(myObj !== thatObj).toStrictEqual(true);

このルールに準拠する正しいコードの例:

javascript
expect(x).toBe(5);
expect(name).not.toEqual("Carl");
expect(myObj).toStrictEqual(thatObj);

このルールは eslint-plugin-vitest と互換性があります。使用するには、.oxlintrc.json に以下の設定を追加してください:

json
{
  "rules": {
    "vitest/prefer-equality-matcher": "error"
  }
}

使用方法

このルールを有効にするには、設定ファイルまたは CLI で以下のように使用できます:

json
{
  "plugins": ["jest"],
  "rules": {
    "jest/prefer-equality-matcher": "error"
  }
}
bash
oxlint --deny jest/prefer-equality-matcher --jest-plugin

参照