DashboardRow.jest.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import React from 'react';
  2. import { shallow } from 'enzyme';
  3. import { DashboardRow } from '../dashgrid/DashboardRow';
  4. import { PanelModel } from '../panel_model';
  5. describe('DashboardRow', () => {
  6. let wrapper, panel, getPanelContainer, dashboardMock;
  7. beforeEach(() => {
  8. dashboardMock = {toggleRow: jest.fn()};
  9. getPanelContainer = jest.fn().mockReturnValue({
  10. getDashboard: jest.fn().mockReturnValue(dashboardMock),
  11. getPanelLoader: jest.fn()
  12. });
  13. panel = new PanelModel({collapsed: false});
  14. wrapper = shallow(<DashboardRow panel={panel} getPanelContainer={getPanelContainer} />);
  15. });
  16. it('Should not have collapsed class when collaped is false', () => {
  17. expect(wrapper.find('.dashboard-row')).toHaveLength(1);
  18. expect(wrapper.find('.dashboard-row--collapsed')).toHaveLength(0);
  19. });
  20. it('Should collapse after clicking title', () => {
  21. wrapper.find('.dashboard-row__title').simulate('click');
  22. expect(wrapper.find('.dashboard-row--collapsed')).toHaveLength(1);
  23. expect(dashboardMock.toggleRow.mock.calls).toHaveLength(1);
  24. });
  25. });