From 9fad26fa1919fceda4abdfce0b973d536b42b6af Mon Sep 17 00:00:00 2001 From: Yongjie Zhao Date: Tue, 21 Jun 2022 20:38:58 +0800 Subject: [PATCH] fix: suppress translation warning in jest (#20404) --- superset-frontend/package-lock.json | 14 ++++++++------ .../packages/superset-ui-core/package.json | 1 + .../superset-ui-core/src/translation/Translator.ts | 2 +- .../test/translation/Translator.test.ts | 2 ++ superset-frontend/spec/helpers/shim.ts | 2 ++ superset-frontend/tsconfig.json | 3 ++- 6 files changed, 16 insertions(+), 8 deletions(-) diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json index 0ec9482e2d..c0b831b35d 100644 --- a/superset-frontend/package-lock.json +++ b/superset-frontend/package-lock.json @@ -16970,9 +16970,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", + "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==" }, "node_modules/@types/node-fetch": { "version": "2.6.1", @@ -54322,6 +54322,7 @@ "@types/fetch-mock": "^7.3.3", "@types/lodash": "^4.14.149", "@types/math-expression-evaluator": "^1.2.1", + "@types/node": "^18.0.0", "@types/prop-types": "^15.7.2", "@types/rison": "0.0.6", "@types/seedrandom": "^2.4.28", @@ -67442,6 +67443,7 @@ "@types/fetch-mock": "^7.3.3", "@types/lodash": "^4.14.149", "@types/math-expression-evaluator": "^1.2.1", + "@types/node": "^18.0.0", "@types/prop-types": "^15.7.2", "@types/rison": "0.0.6", "@types/seedrandom": "^2.4.28", @@ -69036,9 +69038,9 @@ "dev": true }, "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", + "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==" }, "@types/node-fetch": { "version": "2.6.1", diff --git a/superset-frontend/packages/superset-ui-core/package.json b/superset-frontend/packages/superset-ui-core/package.json index 424f3b8776..1958fe1a49 100644 --- a/superset-frontend/packages/superset-ui-core/package.json +++ b/superset-frontend/packages/superset-ui-core/package.json @@ -40,6 +40,7 @@ "@types/d3-time-format": "^2.1.0", "@types/lodash": "^4.14.149", "@types/math-expression-evaluator": "^1.2.1", + "@types/node": "^18.0.0", "@types/rison": "0.0.6", "@types/seedrandom": "^2.4.28", "@types/fetch-mock": "^7.3.3", diff --git a/superset-frontend/packages/superset-ui-core/src/translation/Translator.ts b/superset-frontend/packages/superset-ui-core/src/translation/Translator.ts index 823638ceec..d4a6982c8d 100644 --- a/superset-frontend/packages/superset-ui-core/src/translation/Translator.ts +++ b/superset-frontend/packages/superset-ui-core/src/translation/Translator.ts @@ -56,7 +56,7 @@ export default class Translator { */ addTranslation(key: string, texts: ReadonlyArray) { const translations = this.i18n.options.locale_data.superset; - if (key in translations) { + if (process.env.WEBPACK_MODE !== 'test' && key in translations) { logging.warn(`Duplicate translation key "${key}", will override.`); } translations[key] = texts; diff --git a/superset-frontend/packages/superset-ui-core/test/translation/Translator.test.ts b/superset-frontend/packages/superset-ui-core/test/translation/Translator.test.ts index 9466294aca..df718afe41 100644 --- a/superset-frontend/packages/superset-ui-core/test/translation/Translator.test.ts +++ b/superset-frontend/packages/superset-ui-core/test/translation/Translator.test.ts @@ -41,10 +41,12 @@ describe('Translator', () => { spy.mockImplementation((info: any) => { throw new Error(info); }); + process.env.WEBPACK_MODE = 'production'; }); afterAll(() => { spy.mockRestore(); + process.env.WEBPACK_MODE = 'test'; }); describe('new Translator(config)', () => { diff --git a/superset-frontend/spec/helpers/shim.ts b/superset-frontend/spec/helpers/shim.ts index 2d3e943b73..7955ee15e0 100644 --- a/superset-frontend/spec/helpers/shim.ts +++ b/superset-frontend/spec/helpers/shim.ts @@ -81,3 +81,5 @@ setupSupersetClient(); jest.mock('src/hooks/useTabId', () => ({ useTabId: () => 1, })); + +process.env.WEBPACK_MODE = 'test'; diff --git a/superset-frontend/tsconfig.json b/superset-frontend/tsconfig.json index 818147ca7c..9dba1c3f89 100644 --- a/superset-frontend/tsconfig.json +++ b/superset-frontend/tsconfig.json @@ -29,7 +29,8 @@ "types": [ "@emotion/react/types/css-prop", "jest", - "@testing-library/jest-dom" + "@testing-library/jest-dom", + "@types/node" ], /* Emit */