vitest/consistent-each-for 정확성
작동 방식
이 규칙은 매개변수화된 테스트를 생성할 때 사용되는 메서드의 일관성을 보장합니다.
이 설정은 다양한 테스트 함수 유형(test, it, describe, suite)에 영향을 미칩니다.
왜 좋지 않은가?
매개변수화된 테스트를 생성하는 방법이 일관되지 않으면, 개발자가 .for가 값을 별도의 인수로 전달한다는 것과 .each가 배열을 단일 인수로 전달한다는 것을 기억해야 합니다. 이는 실수를 유발할 수 있습니다.
예시
이 규칙에 부적절한 코드 예시:
js
// { test: 'for' }
test.each([[1, 1, 2]])("테스트", (a, b, expected) => {
expect(a + b).toBe(expected);
});
// { describe: 'for' }
describe.each([[1], [2]])("세트 %s", (n) => {
test("테스트", () => {});
});이 규칙에 적절한 코드 예시:
js
// { test: 'for' }
test.for([[1, 1, 2]])("테스트", ([a, b, expected]) => {
expect(a + b).toBe(expected);
});
// { describe: 'for' }
describe.for([[1], [2]])("세트 %s", ([n]) => {
test("테스트", () => {});
});구성
이 규칙은 다음 속성을 가진 구성 객체를 수용합니다.
describe
type: "for" | "each"
it
type: "for" | "each"
suite
type: "for" | "each"
test
type: "for" | "each"
사용 방법
이 규칙을 구성 파일 또는 명령줄에서 활성화하려면 다음과 같이 사용할 수 있습니다:
json
{
"plugins": ["vitest"],
"rules": {
"vitest/consistent-each-for": "error"
}
}bash
oxlint --deny vitest/consistent-each-for --vitest-plugin