From d52099f2f7fdaa3fe145507311025539ebe89ff3 Mon Sep 17 00:00:00 2001 From: "D. Ror" Date: Thu, 3 Dec 2020 12:08:29 -0500 Subject: [PATCH 1/2] Update App testing: react-dom -> react-test-renderer; use jest-canvas-mock to solve warning. --- package-lock.json | 33 +++++++++++++++++++++++++++++ package.json | 1 + src/components/App/App.test.tsx | 37 ++++++++++++++++++--------------- 3 files changed, 54 insertions(+), 17 deletions(-) diff --git a/package-lock.json b/package-lock.json index d6e413c81a..e9272dca0c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4661,6 +4661,12 @@ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" }, + "cssfontparser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/cssfontparser/-/cssfontparser-1.2.1.tgz", + "integrity": "sha1-9AIvyPlwDGgCnVQghK+69CWj8+M=", + "dev": true + }, "cssnano": { "version": "4.1.10", "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", @@ -7901,6 +7907,16 @@ } } }, + "jest-canvas-mock": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/jest-canvas-mock/-/jest-canvas-mock-2.3.0.tgz", + "integrity": "sha512-3TMyR66VG2MzAW8Negzec03bbcIjVJMfGNvKzrEnbws1CYKqMNkvIJ8LbkoGYfp42tKqDmhIpQq3v+MNLW2A2w==", + "dev": true, + "requires": { + "cssfontparser": "^1.2.1", + "moo-color": "^1.0.2" + } + }, "jest-changed-files": { "version": "24.9.0", "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz", @@ -9395,6 +9411,23 @@ "minimist": "^1.2.5" } }, + "moo-color": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/moo-color/-/moo-color-1.0.2.tgz", + "integrity": "sha512-5iXz5n9LWQzx/C2WesGFfpE6RLamzdHwsn3KpfzShwbfIqs7stnoEpaNErf/7+3mbxwZ4s8Foq7I0tPxw7BWHg==", + "dev": true, + "requires": { + "color-name": "^1.1.4" + }, + "dependencies": { + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } + } + }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", diff --git a/package.json b/package.json index 2b7f05767b..3f6c58764a 100644 --- a/package.json +++ b/package.json @@ -98,6 +98,7 @@ "@types/redux-mock-store": "^1.0.2", "@types/redux-thunk": "^2.1.0", "@types/validator": "^13.0.0", + "jest-canvas-mock": "^2.3.0", "jest-teamcity-reporter": "^0.9.0", "license-checker": "^25.0.1", "npm-run-all": "^4.1.5", diff --git a/src/components/App/App.test.tsx b/src/components/App/App.test.tsx index 170de516a6..4e703a57b4 100644 --- a/src/components/App/App.test.tsx +++ b/src/components/App/App.test.tsx @@ -1,28 +1,31 @@ +import "jest-canvas-mock"; import React from "react"; -import ReactDOM from "react-dom"; -import App from "./component"; import configureMockStore from "redux-mock-store"; -import { defaultState } from "./DefaultState"; import { Provider } from "react-redux"; -import thunk from "redux-thunk"; import { MemoryRouter } from "react-router-dom"; +import renderer from "react-test-renderer"; +import thunk from "redux-thunk"; + +import App from "./component"; +import { defaultState } from "./DefaultState"; + jest.mock("@matt-block/react-recaptcha-v2", () => () => (
Recaptcha'ed
)); const createMockStore = configureMockStore([thunk]); +const mockStore = createMockStore(defaultState); -it("renders without crashing", () => { - const mockStore = createMockStore(defaultState); - const div = document.createElement("div"); - - ReactDOM.render( - - - - - , - div - ); - ReactDOM.unmountComponentAtNode(div); +describe("App", () => { + it("renders without crashing", () => { + renderer.act(() => { + renderer.create( + + + + + + ); + }); + }); }); From 353c8129415cbde4b4cbf51717cf5c3dfd31270f Mon Sep 17 00:00:00 2001 From: "D. Ror" Date: Thu, 3 Dec 2020 12:51:17 -0500 Subject: [PATCH 2/2] Update GoalRoute testing. --- .../GoalRoute/tests/component.test.tsx | 32 +++++++------------ 1 file changed, 12 insertions(+), 20 deletions(-) diff --git a/src/components/GoalRoute/tests/component.test.tsx b/src/components/GoalRoute/tests/component.test.tsx index 3ed782b156..68f0df1076 100644 --- a/src/components/GoalRoute/tests/component.test.tsx +++ b/src/components/GoalRoute/tests/component.test.tsx @@ -1,27 +1,19 @@ +import "jest-canvas-mock"; import React from "react"; -import ReactDOM from "react-dom"; -import { Provider } from "react-redux"; -import { MemoryRouter } from "react-router"; -import configureMockStore from "redux-mock-store"; +import { MemoryRouter } from "react-router-dom"; +import renderer from "react-test-renderer"; import { Path } from "../../../history"; -import { defaultState } from "../../App/DefaultState"; import GoalRoute from "../component"; -const createMockStore = configureMockStore([]); - -it("renders without crashing", () => { - const mockStore = createMockStore({ - ...defaultState, +describe("GoalRoute", () => { + it("renders without crashing", () => { + renderer.act(() => { + renderer.create( + + + + ); + }); }); - const div = document.createElement("div"); - ReactDOM.render( - - - - - , - div - ); - ReactDOM.unmountComponentAtNode(div); });