OrgDetailsPage.test.tsx 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import React from 'react';
  2. import { shallow } from 'enzyme';
  3. import { OrgDetailsPage, Props } from './OrgDetailsPage';
  4. import { Organization } from '../../types';
  5. import { NavModel } from '@grafana/data';
  6. const setup = (propOverrides?: object) => {
  7. const props: Props = {
  8. organization: {} as Organization,
  9. navModel: {
  10. main: {
  11. text: 'Configuration',
  12. },
  13. node: {
  14. text: 'Org details',
  15. },
  16. } as NavModel,
  17. loadOrganization: jest.fn(),
  18. setOrganizationName: jest.fn(),
  19. updateOrganization: jest.fn(),
  20. };
  21. Object.assign(props, propOverrides);
  22. return shallow(<OrgDetailsPage {...props} />);
  23. };
  24. describe('Render', () => {
  25. it('should render component', () => {
  26. const wrapper = setup();
  27. expect(wrapper).toMatchSnapshot();
  28. });
  29. it('should render organization and preferences', () => {
  30. const wrapper = setup({
  31. organization: {
  32. name: 'Cool org',
  33. id: 1,
  34. },
  35. preferences: {
  36. homeDashboardId: 1,
  37. theme: 'Default',
  38. timezone: 'Default',
  39. },
  40. });
  41. expect(wrapper).toMatchSnapshot();
  42. });
  43. });