From 7cca2ab4b584dd1c760b56d4f73e502fd761d901 Mon Sep 17 00:00:00 2001 From: Ashlee Boyer Date: Mon, 12 Apr 2021 23:05:11 -0400 Subject: [PATCH] Adding jest --- .babelrc | 2 +- package.json | 18 +- setupTests.ts | 6 + src/components/Button/Button.test.tsx | 10 + webpack.config.js | 5 +- yarn.lock | 2581 ++++++++++++++++++++++++- 6 files changed, 2565 insertions(+), 57 deletions(-) create mode 100644 setupTests.ts create mode 100644 src/components/Button/Button.test.tsx diff --git a/.babelrc b/.babelrc index 0dce8c0..6d137ab 100644 --- a/.babelrc +++ b/.babelrc @@ -1,3 +1,3 @@ { - "presets": ["@babel/env", "@babel/preset-react"] + "presets": ["@babel/env", "@babel/preset-react", "@babel/preset-typescript"] } diff --git a/package.json b/package.json index 09e3ece..57cb789 100644 --- a/package.json +++ b/package.json @@ -7,18 +7,34 @@ "build:dev": "webpack --mode development", "build:prod": "webpack --mode production", "dev": "webpack serve --mode development", - "test": "echo \"Error: no test specified\" && exit 1" + "test": "jest" }, "keywords": [], "author": "Ashlee M Boyer", "license": "ISC", + "jest": { + "setupFilesAfterEnv": [ + "./setupTests.ts" + ], + "moduleNameMapper": { + "\\.(css|less)$": "identity-obj-proxy" + } + }, "devDependencies": { "@babel/cli": "^7.1.0", "@babel/core": "^7.1.0", "@babel/preset-env": "^7.1.0", "@babel/preset-react": "^7.0.0", + "@babel/preset-typescript": "^7.13.0", + "@types/enzyme": "^3.10.8", + "@types/enzyme-adapter-react-16": "^1.0.6", + "@types/jest": "^26.0.22", "babel-loader": "^8.0.2", "css-loader": "^5.2.1", + "enzyme": "^3.11.0", + "enzyme-adapter-react-16": "^1.15.6", + "identity-obj-proxy": "^3.0.0", + "jest": "^26.6.3", "less": "^4.1.1", "less-loader": "^8.1.0", "style-loader": "^2.0.0", diff --git a/setupTests.ts b/setupTests.ts new file mode 100644 index 0000000..41c751e --- /dev/null +++ b/setupTests.ts @@ -0,0 +1,6 @@ +import * as Enzyme from 'enzyme'; +const Adapter = require('enzyme-adapter-react-16'); + +Enzyme.configure({ + adapter: new Adapter(), +}); diff --git a/src/components/Button/Button.test.tsx b/src/components/Button/Button.test.tsx new file mode 100644 index 0000000..68364f7 --- /dev/null +++ b/src/components/Button/Button.test.tsx @@ -0,0 +1,10 @@ +import * as React from 'react'; +import { shallow, ShallowWrapper } from 'enzyme'; +import Button from './Button'; + +describe('