jest/prefer-comparison-matcher 스타일
동작 방식
이 규칙은 테스트에서 비교 표현식을 사용하는 경우, 다음 중 하나의 내장 비교 매처로 대체할 수 있는지 확인합니다:
toBeGreaterThantoBeGreaterThanOrEqualtoBeLessThantoBeLessThanOrEqual
왜 문제가 되는가?
>, < 등의 비교 표현식과 함께 일반적인 매처(toBe(true))를 사용하면, 실패했을 때 더 명확한 오류 메시지를 제공하지 못하고, 테스트 코드의 가독성이 떨어집니다. Jest의 특정 비교 매처는 의도를 더 명확하게 보여주며, 실제로 비교된 값을 포함한 더 나은 오류 출력을 제공합니다.
예시
이 규칙에 부적절한 코드 예시:
js
expect(x > 5).toBe(true);
expect(x < 7).not.toEqual(true);
expect(x <= y).toStrictEqual(true);이 규칙에 적절한 코드 예시:
js
expect(x).toBeGreaterThan(5);
expect(x).not.toBeLessThanOrEqual(7);
expect(x).toBeLessThanOrEqual(y);
// 특수 사례 - 아래 설명 참조
expect(x < "Carl").toBe(true);이 규칙은 eslint-plugin-vitest와 호환되며, 이를 사용하려면 .oxlintrc.json 파일에 다음 구성 정보를 추가하세요:
json
{
"rules": {
"vitest/prefer-comparison-matcher": "error"
}
}사용 방법
구성 파일 또는 커맨드 라인을 통해 이 규칙을 활성화하려면 다음을 사용하세요:
json
{
"plugins": ["jest"],
"rules": {
"jest/prefer-comparison-matcher": "error"
}
}bash
oxlint --deny jest/prefer-comparison-matcher --jest-plugin