My .babelrc.json file:
{
"presets": [
["@babel/preset-env", { "targets": { "node": "current" } }],
"@babel/preset-typescript"
],
"plugins": [
["@babel/plugin-proposal-decorators", {"legacy": true}],
["@babel/plugin-syntax-decorators", {"legacy": true}],
["@babel/plugin-proposal-class-properties", { "loose" : true }],
"babel-plugin-parameter-decorator"
],
"env": {
"test": {
"plugins": [
["@babel/plugin-proposal-decorators", {"legacy": true}],
["@babel/plugin-syntax-decorators", {"legacy": true}],
["@babel/plugin-proposal-class-properties", { "loose" : true }],
"babel-plugin-parameter-decorator"
],
"presets": [
["@babel/preset-env", { "targets": { "node": "current" } }],
"@babel/preset-typescript"
]
}
}
}
My jest.config.js file:
module.exports = {
projects: [
{
displayName: 'node',
rootDir: __dirname,
testEnvironment: 'node',
testPathIgnorePatterns: ['/node_modules/', '.browser.js', 'dist'],
transform: {
'^.+\\.[t|j]sx?$': './babel-jest-transformer.js',
},
transformIgnorePatterns: ['node_modules/yaml$'],
globals: {
__NODE__: true,
__BROWSER__: false,
__DEV__: true,
},
},
{
displayName: 'browser',
rootDir: __dirname,
testEnvironment: 'jsdom',
testPathIgnorePatterns: ['/node_modules/', '.node.js', 'dist'],
transform: {
'^.+\\.[t|j]sx?$': './babel-jest-transformer.js',
},
transformIgnorePatterns: ['node_modules/yaml$'],
globals: {
__NODE__: false,
__BROWSER__: true,
__DEV__: true,
},
},
],
coverageReporters: ['cobertura', 'html'],
};
My devDependencies:
"@babel/plugin-syntax-decorators": "7.19.0",
"@babel/plugin-proposal-decorators": "7.20.5",
"@babel/preset-env": "^7.16.11",
"@babel/plugin-proposal-class-properties": "^7.16.7",
"@babel/preset-typescript": "7.18.6",
"babel-plugin-parameter-decorator": "1.0.16",
When I run jz test
, I got the following:
● Test suite failed to run
TypeError: /Users/proj/src/libts/antlr4ts/atn/SemanticContext.ts: Property name expected type of string but got undefined
at validate (../../../../../../.yarn/cache/@babel-types-npm-7.20.5-6bde64109f-773f0a1ad9.zip/node_modules/@babel/types/src/definitions/utils.ts:182:13)
at Object.fn [as validate] (../../../../../../.yarn/cache/@babel-types-npm-7.20.5-6bde64109f-773f0a1ad9.zip/node_modules/@babel/types/src/definitions/utils.ts:252:7)
at validate (../../../../../../.yarn/cache/@babel-types-npm-7.20.5-6bde64109f-773f0a1ad9.zip/node_modules/@babel/types/src/validators/validate.ts:32:9)
at validateField (../../../../../../.yarn/cache/@babel-types-npm-7.20.5-6bde64109f-773f0a1ad9.zip/node_modules/@babel/types/src/validators/validate.ts:19:3)
at validateNode (../../../../../../.yarn/cache/@babel-types-npm-7.20.5-6bde64109f-773f0a1ad9.zip/node_modules/@babel/types/src/builders/validateNode.ts:9:13)
at Object.identifier (../../../../../../.yarn/cache/@babel-types-npm-7.20.5-6bde64109f-773f0a1ad9.zip/node_modules/@babel/types/src/builders/generated/index.ts:244:22)
at ../../../../../../.yarn/cache/babel-plugin-parameter-decorator-npm-1.0.16-d82c52e96f-5a0d8ce40b.zip/node_modules/babel-plugin-parameter-decorator/lib/index.js:23:82
at ../../../../../../.yarn/cache/babel-plugin-parameter-decorator-npm-1.0.16-d82c52e96f-5a0d8ce40b.zip/node_modules/babel-plugin-parameter-decorator/lib/index.js:222:85
at Array.forEach (<anonymous>)
at ../../../../../../.yarn/cache/babel-plugin-parameter-decorator-npm-1.0.16-d82c52e96f-5a0d8ce40b.zip/node_modules/babel-plugin-parameter-decorator/lib/index.js:204:30
at Array.forEach (<anonymous>)
at PluginPass.Function (../../../../../../.yarn/cache/babel-plugin-parameter-decorator-npm-1.0.16-d82c52e96f-5a0d8ce40b.zip/node_modules/babel-plugin-parameter-decorator/lib/index.js:201:44)
at call (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/visitors.ts:250:21)
at NodePath.call [as _call] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:34:20)
at NodePath._call [as call] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:19:17)
at NodePath.call [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:92:31)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue [as visitMultiple] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:98:17)
at TraversalContext.visitMultiple [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:174:19)
at visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/traverse-node.ts:34:17)
at NodePath.visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:99:33)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue [as visitSingle] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:108:19)
at TraversalContext.visitSingle [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:176:19)
at visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/traverse-node.ts:34:17)
at NodePath.visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:99:33)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue [as visitSingle] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:108:19)
at TraversalContext.visitSingle [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:176:19)
at visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/traverse-node.ts:34:17)
at NodePath.visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:99:33)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue [as visitMultiple] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:98:17)
at TraversalContext.visitMultiple [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:174:19)
at visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/traverse-node.ts:34:17)
at NodePath.visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:99:33)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:150:21)
at TraversalContext.visitQueue [as visitSingle] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:108:19)
at TraversalContext.visitSingle [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:176:19)
at visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/traverse-node.ts:34:17)
at NodePath.visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:99:33)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue [as visitMultiple] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:98:17)
at TraversalContext.visitMultiple [as visit] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:174:19)
at visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/traverse-node.ts:34:17)
at NodePath.visit (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/path/context.ts:99:33)
at TraversalContext.visit [as visitQueue] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:144:16)
at TraversalContext.visitQueue (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:150:21)
at TraversalContext.visitQueue [as visitSingle] (../../../../../../.yarn/cache/@babel-traverse-npm-7.20.5-2965e66783-c7fed46861.zip/node_modules/@babel/traverse/src/context.ts:108:19)
Any idea why? Is there anything wrong with my .babelrc.json
file? Thank you. How can I find the line which raised the error?
By the way, I copied antlr4ts/src into my project to avoid circle import issue. I am using jazelle, and Yarn PNP