An opinionated Jest preset for React modules. For non-React projects use amex-jest-preset
Want to get paid for your contributions to
amex-jest-preset-react
? Send your resume to oneamex.careers@aexp.com
- Base for Jest's configuration for React modules
-
Install:
npm install --save-dev amex-jest-preset-react
-
And in your Jest configuration:
{ "preset": "amex-jest-preset-react" }
And... that's it! You now have all the boilerplate Jest configurations set up for you! Running jest
from your npm test
script will use all these configurations!
You can add on and/or override any values provided in this preset as you wish in your Jest configuration.
It should be noted that if overriding the setupFilesAfterEnv
option you may want to extend off of the setup file provided by amex-jest-preset-react in order to preserve that files' content. Otherwise you will lose anything we provide for you in there. Do so as follows:
// in custom-jest-setup.js
require('amex-jest-preset-react/jest-setup');
// your own custom setup
Extends amex-jest-preset and adds the following configurations that are specific to testing React modules:
-
testEnvironment tells Jest to use
jsdom
test environment as it is often used while testing React components (amex-jest-preset setstestEnvironment
tonode
) -
moduleNameMapper tells Jest to treat CSS modules as identity objects
-
setupFilesAfterEnv is where we setup enzyme with enzyme-adapter-react-16
-
snapshotSerializers tells Jest to use enzyme-to-json's serializer
This package is compatible only with React 16+.
Any contributions made under this project will be governed by the Apache License 2.0.
This project adheres to the American Express Community Guidelines. By participating, you are expected to honor these guidelines.
We welcome Your interest in the American Express Open Source Community on Github. Any Contributor to any Open Source Project managed by the American Express Open Source Community must accept and sign an Agreement indicating agreement to the terms below. Except for the rights granted in this Agreement to American Express and to recipients of software distributed by American Express, You reserve all right, title, and interest, if any, in and to Your Contributions. Please fill out the Agreement.
Please feel free to open pull requests and see CONTRIBUTING.md to learn how to get started contributing.