EVOLUTION-MANAGER
Edit File: TestRuleResult.test.tsx
import React from 'react'; import { TestRuleResult, Props } from './TestRuleResult'; import { DashboardModel } from '../dashboard/state'; import { shallow } from 'enzyme'; jest.mock('@grafana/runtime/src/services/backendSrv', () => ({ getBackendSrv: () => ({ post: jest.fn(), }), })); const setup = (propOverrides?: object) => { const props: Props = { panelId: 1, dashboard: new DashboardModel({ panels: [{ id: 1 }] }), }; Object.assign(props, propOverrides); const wrapper = shallow(<TestRuleResult {...props} />); return { wrapper, instance: wrapper.instance() as TestRuleResult }; }; describe('Render', () => { it('should render component', () => { const { wrapper } = setup(); expect(wrapper).toMatchSnapshot(); }); }); describe('Life cycle', () => { describe('component did mount', () => { it('should call testRule', () => { const { instance } = setup(); instance.testRule = jest.fn(); instance.componentDidMount(); expect(instance.testRule).toHaveBeenCalled(); }); }); });