vendredi 21 février 2020

How spy mock function in object props when tests with jest?

I have a prop mock object inside two mock function. I need to spy both of them and I don't know how to spy.

This is an example:

myComponent.js

function Package(props) {
  const { lockUI } = props
  lockUI.set();
  // ...
}

myComponent.test.js

import React from 'react';
import Package from 'src/Package';
import { cleanup, render } from '@testing-library/react';

describe('Package Unit Test', () => {
    let props;

    beforeEach(() => {
        props = {
            lockUI                                 : {
                set   : jest.fn(),
                unset : jest.fn(),
            },
        };
    });

    afterEach(cleanup);

    test('testing example', () => {
        render(<Package {...props} />);
        expect(props.lockUI.set).toHaveBeenCalledTimes(1);
    });
});

Response console:

 Expected number of calls: 1
 Received number of calls: 0

Aucun commentaire:

Enregistrer un commentaire