简体   繁体   中英

How to do testing with Relay modern with jest and enzyme?

How to test this kind of file with jest and enzyme...

 class App extends React.Component{ constructor(){ super() } render(){ const { viewer, children, isLoading } = this.props return( <div> <div id="container"> {children} </div> {isLoading && <Loading />} </div> ); } } export default createFragmentContainer( App, graphql` fragment App_viewer on User{ id email } ` )

You can do something like this

const React = require('React');
const App = require('App.react');
jest.mock('react-relay', () => ({
  createFragmentContainer: App =>
    App,
}));

const {shallow} = require('enzyme');
const {shallowToJson} = require('enzyme-to-json');

describe('App', () => {
  it('renders the dashboard section correctly', () => {
    const wrapper = shallow(
      < App
        title="Test Dashboard Section"
        charts={[]}
      />,
    );
    expect(shallowToJson(wrapper)).toMatchSnapshot();
  });

We need to mock react-relay. As mentioned above.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM