diff --git a/compiler/packages/eslint-plugin-react-forget/__tests__/ReactForgetDiagnostics-test.ts b/compiler/packages/eslint-plugin-react-forget/__tests__/ReactForgetDiagnostics-test.ts index 1a5b44b93b..af89c76465 100644 --- a/compiler/packages/eslint-plugin-react-forget/__tests__/ReactForgetDiagnostics-test.ts +++ b/compiler/packages/eslint-plugin-react-forget/__tests__/ReactForgetDiagnostics-test.ts @@ -6,7 +6,6 @@ */ import { RuleTester as ESLintTester } from "eslint"; -import * as HermesEslintParser from "hermes-eslint"; import ReactForgetDiagnostics from "../src/rules/ReactForgetDiagnostics"; /** @@ -38,6 +37,18 @@ const tests: ForgetTestCases = { } `, }, + { + name: "Basic example with component syntax", + code: normalizeIndent` + export default component HelloWorld( + text: string = 'Hello!', + onClick: () => void, + ) { + 'use forget'; + return
{text}
; + } + `, + }, { name: "Unsupported syntax", code: normalizeIndent` @@ -121,10 +132,11 @@ const tests: ForgetTestCases = { }; const eslintTester = new ESLintTester({ - parser: HermesEslintParser, + parser: require.resolve("hermes-eslint"), parserOptions: { ecmaVersion: 2015, sourceType: "module", + enableExperimentalComponentSyntax: true, }, }); eslintTester.run("react-forget-diagnostics", ReactForgetDiagnostics, tests); diff --git a/compiler/packages/eslint-plugin-react-forget/src/rules/ReactForgetDiagnostics.ts b/compiler/packages/eslint-plugin-react-forget/src/rules/ReactForgetDiagnostics.ts index c045085a1a..a493da9e9a 100644 --- a/compiler/packages/eslint-plugin-react-forget/src/rules/ReactForgetDiagnostics.ts +++ b/compiler/packages/eslint-plugin-react-forget/src/rules/ReactForgetDiagnostics.ts @@ -83,6 +83,7 @@ const rule: Rule.RuleModule = { const babelAST = HermesParser.parse(sourceCode, { babel: true, + enableExperimentalComponentSyntax: true, sourceFilename: filename, sourceType: "module", });