I cannot run Jest tests and have a very vague error message. I found a similar problem in StackOverflow, and I could not solve it by suggesting adding jestSupport to the response folder in node_module.
Q: How to use Jest with React Native
__tests__/profile-test.js ● Runtime Error TypeError: Cannot read property 'DEFINE_MANY' of undefined
// Snippet from the package. Json
"scripts": { "test": "jest" }, "jest": { "scriptPreprocessor": "<rootDir>/node_modules/babel-jest" },
// test file
import React from 'react'; import ReactDOM from 'react-dom'; import TestUtils from 'react-addons-test-utils'; import Profile from '../components/profile'; jest.setMock('react', {}); // put this in after reading a troubleshooting article //jest.autoMockOff(Profile); describe('Profile'), () => { it("renders a form containing user information", function() { let Profile = TestUtils.renderIntoDocument(<Profile/>); let renderedDOM = () => React.findDOMNode(Profile); expect(renderedDOM.tagName).toBe('div'); expect(renderedDOM.classList).toEqual(['value', 'image', 'btn btn-primary', 'btn btn-danger' ]); var children = renderedDOM.querySelectorAll('fieldConfig.type'); //created a custom expect(children.length).toBe(3); expect(children[0]).toEqual({name: 'test mc nameyname', email: ' testmcnameyname@gmail.com '}); }); };
Has anyone encountered this problem before and had suggestions?
unit-testing reactjs jestjs
Christina mitchell
source share