import { RuleTester } from "@typescript-eslint/rule-tester"; import componentPropsNamingRule from "../rules/component-props-naming"; const ruleTester = new RuleTester({ parser: "@typescript-eslint/parser", parserOptions: { project: "./tsconfig.json", tsconfigRootDir: __dirname, ecmaFeatures: { jsx: true, }, }, }); ruleTester.run("component-props-naming", componentPropsNamingRule, { valid: [ { code: "export const MyComponent= (props: MyComponentProps) =>
{props.message}
;", }, { code: "export const MyComponent = ({ message }: MyComponentProps) =>
{message}
;", }, ], invalid: [ { code: "export const MyComponent = (props: OwnProps) =>
{props.message}
;", errors: [ { messageId: "invalidPropsTypeName", }, ], output: "export const MyComponent = (props: MyComponentProps) =>
{props.message}
;", }, { code: "export const MyComponent = ({ message }: OwnProps) =>
{message}
;", errors: [ { messageId: "invalidPropsTypeName", }, ], output: "export const MyComponent = ({ message }: MyComponentProps) =>
{message}
;", }, ], });