From 5adf8152bf4074168abf651c6fef81d34b351071 Mon Sep 17 00:00:00 2001 From: sosukesuzuki Date: Fri, 27 Aug 2021 11:08:58 +0900 Subject: [PATCH] Add tests --- packages/babel-parser/test/error-codes.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/babel-parser/test/error-codes.js b/packages/babel-parser/test/error-codes.js index 58bb5e411a6c..a072b0d7821a 100644 --- a/packages/babel-parser/test/error-codes.js +++ b/packages/babel-parser/test/error-codes.js @@ -18,4 +18,25 @@ describe("error codes", function () { expect(error.code).toBe("BABEL_PARSER_SYNTAX_ERROR"); expect(error.reasonCode).toBe("MissingSemicolon"); }); + it("consistent reasonCode between Flow and TypeScript in Babel 8", () => { + const code = `function f([]?) {}`; + const { + errors: [tsError], + } = parse(code, { + errorRecovery: true, + plugins: ["typescript"], + }); + const { + errors: [flowError], + } = parse(code, { + errorRecovery: true, + plugins: ["flow"], + }); + expect(flowError.reasonCode).toBe( + process.env.BABEL_8_BREAKING + ? tsError.reasonCode + : "OptionalBindingPattern", + ); + expect(flowError.message).toBe(tsError.message); + }); });