Skip to content
← Back to rules

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

参照