I'm trying to run a test for the React component. I need to check how it looks like after rendering. Tried to use ReactDOMServer.renderToString()
but it fails. Here is the code:
import { NewRec } from '../src/components/edit';
import { shallow } from 'enzyme';
import React from 'react/lib/ReactWithAddons';
import ReactDOMServer from 'react-dom/server';
jest.mock('react-dom');
jest.mock('react/lib/ReactDefaultInjection');
describe('NewRec component', () => {
const component = shallow(<NewRec />);
it('returns true if blah blah', ()=>{
var htmlstring = ReactDOMServer.renderToString(<component />);
});
});
I'm getting the following error:
Invariant Violation: There is no registered component for the tag component
I tried to call it like: var htmlstring = ReactDOMServer.renderToString(component);
then I get this error:
Invariant Violation: renderToString(): You must pass a valid ReactElement.
Does anyone knows where the problem is?