From 1ee442ded91cef85b53d3bc8f3401c043b716ceb Mon Sep 17 00:00:00 2001 From: Paulo Amorim Date: Thu, 19 Sep 2024 15:06:49 -0300 Subject: [PATCH] update configuration and file names --- .eslintrc.js | 2 +- jsapp/jest/jest.config.ts | 4 +- .../{button.test.tsx => button.spec.tsx} | 3 - .../special/koboAccessibleSelect.spec.tsx | 0 package-lock.json | 87 ++++++++++++++----- package.json | 3 +- tsconfig.json | 3 +- 7 files changed, 69 insertions(+), 33 deletions(-) rename jsapp/js/components/common/{button.test.tsx => button.spec.tsx} (95%) create mode 100644 jsapp/js/components/special/koboAccessibleSelect.spec.tsx diff --git a/.eslintrc.js b/.eslintrc.js index c43c3f252e..c5d2ac60cf 100755 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -43,7 +43,7 @@ const jsRules = { 'react/no-multi-comp': 0, 'react/no-unknown-property': 0, 'react/prop-types': 0, - 'react/react-in-jsx-scope': 2, + // 'react/react-in-jsx-scope': 2, 'react/self-closing-comp': 2, 'react/wrap-multilines': 0, strict: 1, diff --git a/jsapp/jest/jest.config.ts b/jsapp/jest/jest.config.ts index 99efa61ff1..16fc7e63cf 100644 --- a/jsapp/jest/jest.config.ts +++ b/jsapp/jest/jest.config.ts @@ -9,9 +9,7 @@ const config: Config = { '\\.(css|scss)$': 'identity-obj-proxy', }, setupFilesAfterEnv: ['/setupJestTest.ts'], - transform: { - '\\.[jt]sx?$': ['babel-jest', {configFile: `${__dirname}/../../.babelrc.json`}], - }, + transform: {'^.+\\.(t|j)sx?$': '@swc/jest'}, }; export default config; diff --git a/jsapp/js/components/common/button.test.tsx b/jsapp/js/components/common/button.spec.tsx similarity index 95% rename from jsapp/js/components/common/button.test.tsx rename to jsapp/js/components/common/button.spec.tsx index 20a31ffcf2..4e3816621e 100644 --- a/jsapp/js/components/common/button.test.tsx +++ b/jsapp/js/components/common/button.spec.tsx @@ -1,6 +1,3 @@ -import React from 'react'; -import '@testing-library/jest-dom'; - import Button from './button'; import {render, screen} from '@testing-library/react'; diff --git a/jsapp/js/components/special/koboAccessibleSelect.spec.tsx b/jsapp/js/components/special/koboAccessibleSelect.spec.tsx new file mode 100644 index 0000000000..e69de29bb2 diff --git a/package-lock.json b/package-lock.json index cb6e6e3aaf..5c99923263 100644 --- a/package-lock.json +++ b/package-lock.json @@ -91,6 +91,7 @@ "@storybook/react-webpack5": "^7.0.24", "@storybook/testing-library": "^0.2.0", "@swc/core": "^1.6.6", + "@swc/jest": "^0.2.36", "@tanstack/eslint-plugin-query": "^5.50.1", "@tanstack/react-query-devtools": "^5.50.1", "@testing-library/jest-dom": "^6.5.0", @@ -116,7 +117,6 @@ "@types/lodash.values": "^4.3.7", "@types/lodash.zip": "^4.2.7", "@types/mocha": "^9.1.1", - "@types/node": "^22.5.5", "@types/react": "^18.3.3", "@types/react-document-title": "^2.0.9", "@types/react-dom": "^18.3.0", @@ -127,7 +127,6 @@ "@types/react-tagsinput": "^3.20.6", "@types/react-test-renderer": "^18.3.0", "@types/reflux": "^6.4.6", - "@types/testing-library__jest-dom": "^6.0.0", "@types/zxcvbn": "^4.4.4", "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", @@ -3460,6 +3459,19 @@ "node": ">=8" } }, + "node_modules/@jest/create-cache-key-function": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz", + "integrity": "sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, "node_modules/@jest/environment": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", @@ -7787,6 +7799,24 @@ "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", "dev": true }, + "node_modules/@swc/jest": { + "version": "0.2.36", + "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.36.tgz", + "integrity": "sha512-8X80dp81ugxs4a11z1ka43FPhP+/e+mJNXJSxiNYk8gIX/jPBtY4gQTrKu/KIoco8bzKuPI5lUxjfLiGsfvnlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/create-cache-key-function": "^29.7.0", + "@swc/counter": "^0.1.3", + "jsonc-parser": "^3.2.0" + }, + "engines": { + "npm": ">= 7.0.0" + }, + "peerDependencies": { + "@swc/core": "*" + } + }, "node_modules/@swc/types": { "version": "0.1.9", "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.9.tgz", @@ -8920,17 +8950,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/testing-library__jest-dom": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-6.0.0.tgz", - "integrity": "sha512-bnreXCgus6IIadyHNlN/oI5FfX4dWgvGhOPvpr7zzCYDGAPIfvyIoAozMBINmhmsVuqV0cncejF2y5KC7ScqOg==", - "deprecated": "This is a stub types definition. @testing-library/jest-dom provides its own type definitions, so you do not need this installed.", - "dev": true, - "license": "MIT", - "dependencies": { - "@testing-library/jest-dom": "*" - } - }, "node_modules/@types/tough-cookie": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", @@ -20184,6 +20203,13 @@ "node": ">=6" } }, + "node_modules/jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "dev": true, + "license": "MIT" + }, "node_modules/jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -32855,6 +32881,15 @@ } } }, + "@jest/create-cache-key-function": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/create-cache-key-function/-/create-cache-key-function-29.7.0.tgz", + "integrity": "sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==", + "dev": true, + "requires": { + "@jest/types": "^29.6.3" + } + }, "@jest/environment": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", @@ -35714,6 +35749,17 @@ "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", "dev": true }, + "@swc/jest": { + "version": "0.2.36", + "resolved": "https://registry.npmjs.org/@swc/jest/-/jest-0.2.36.tgz", + "integrity": "sha512-8X80dp81ugxs4a11z1ka43FPhP+/e+mJNXJSxiNYk8gIX/jPBtY4gQTrKu/KIoco8bzKuPI5lUxjfLiGsfvnlw==", + "dev": true, + "requires": { + "@jest/create-cache-key-function": "^29.7.0", + "@swc/counter": "^0.1.3", + "jsonc-parser": "^3.2.0" + } + }, "@swc/types": { "version": "0.1.9", "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.9.tgz", @@ -36717,15 +36763,6 @@ "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true }, - "@types/testing-library__jest-dom": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-6.0.0.tgz", - "integrity": "sha512-bnreXCgus6IIadyHNlN/oI5FfX4dWgvGhOPvpr7zzCYDGAPIfvyIoAozMBINmhmsVuqV0cncejF2y5KC7ScqOg==", - "dev": true, - "requires": { - "@testing-library/jest-dom": "*" - } - }, "@types/tough-cookie": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", @@ -44945,6 +44982,12 @@ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true }, + "jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "dev": true + }, "jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", diff --git a/package.json b/package.json index 13508c447c..80e5054569 100644 --- a/package.json +++ b/package.json @@ -87,6 +87,7 @@ "@storybook/react-webpack5": "^7.0.24", "@storybook/testing-library": "^0.2.0", "@swc/core": "^1.6.6", + "@swc/jest": "^0.2.36", "@tanstack/eslint-plugin-query": "^5.50.1", "@tanstack/react-query-devtools": "^5.50.1", "@testing-library/jest-dom": "^6.5.0", @@ -112,7 +113,6 @@ "@types/lodash.values": "^4.3.7", "@types/lodash.zip": "^4.2.7", "@types/mocha": "^9.1.1", - "@types/node": "^22.5.5", "@types/react": "^18.3.3", "@types/react-document-title": "^2.0.9", "@types/react-dom": "^18.3.0", @@ -123,7 +123,6 @@ "@types/react-tagsinput": "^3.20.6", "@types/react-test-renderer": "^18.3.0", "@types/reflux": "^6.4.6", - "@types/testing-library__jest-dom": "^6.0.0", "@types/zxcvbn": "^4.4.4", "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", diff --git a/tsconfig.json b/tsconfig.json index 71ace0c30c..c3222c2249 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -26,8 +26,7 @@ "allowJs": true, "outDir": "out", "jsx": "react-jsx", - "plugins": [{ "name": "typescript-plugin-css-modules"}], - "types": ["@testing-library/jest-dom"] + "plugins": [{ "name": "typescript-plugin-css-modules"}] }, "include": [ "jsapp/**/*.ts",