jest/prefer-equality-matcher スタイル
何をするか
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