jest/no-restricted-jest-methods スタイル
何をするのか
特定の jest および vi メソッドの使用を制限します。
なぜ悪いのか
一部の Jest や Vitest メソッドは非推奨である、特定の文脈では推奨されていない、またはテスト環境と互換性がない可能性があります。これらのメソッドの使用を制限することで、一貫性があり信頼性の高いテスト実践を維持できます。
デフォルトでは、このルールによってどのメソッドも制限されません。 何かを無効化するには、ルールの設定が必要です。
例
このルールに違反するコードの例:
javascript
jest.useFakeTimers();
it("advanceTimersByTime を通じて1秒後にコールバックを呼び出す", () => {
// ...
jest.advanceTimersByTime(1000);
// ...
});
test("動画を再生する", () => {
const spy = jest.spyOn(video, "play");
// ...
});このルールは eslint-plugin-vitest と互換性があります。 これを使用するには、.oxlintrc.json に以下の設定を追加します:
json
{
"rules": {
"vitest/no-restricted-vi-methods": [
"error",
{ "badFunction": "`badFunction` を使わないでください。これは不適切です。" }
]
}
}設定
このルールは、以下のプロパティを持つ設定オブジェクトを受け入れます:
restrictedJestMethods
type: Record<string, string>
default: {}
制限対象の Jest メソッド名からカスタムメッセージへのマッピング — または、汎用メッセージ用に null。
使用方法
設定ファイルまたは CLI でこのルールを有効化するには、次のように使用できます:
json
{
"plugins": ["jest"],
"rules": {
"jest/no-restricted-jest-methods": "error"
}
}bash
oxlint --deny jest/no-restricted-jest-methods --jest-plugin