baseChart.spec.tsx 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import {mountWithTheme} from 'sentry-test/enzyme';
  2. import {initializeOrg} from 'sentry-test/initializeOrg';
  3. import BaseChart from 'sentry/components/charts/baseChart';
  4. import theme from 'sentry/utils/theme';
  5. describe('BaseChart', function () {
  6. const {routerContext} = initializeOrg();
  7. it('renders with grey dotted previous period when using only a single series', function () {
  8. const wrapper = mountWithTheme(
  9. <BaseChart
  10. colors={['#444674', '#d6567f', '#f2b712']}
  11. previousPeriod={[
  12. {seriesName: 'count()', data: [{value: 123, name: new Date().getTime()}]},
  13. ]}
  14. />,
  15. routerContext
  16. );
  17. const series = wrapper.find('ChartContainer').props().children.props.option.series;
  18. expect(series.length).toEqual(1);
  19. expect(series[0].lineStyle.color).toEqual(theme.gray200);
  20. expect(series[0].lineStyle.type).toEqual('dotted');
  21. });
  22. it('renders with lightened colored dotted previous period when using multiple series', function () {
  23. const wrapper = mountWithTheme(
  24. <BaseChart
  25. colors={['#444674', '#d6567f', '#f2b712']}
  26. previousPeriod={[
  27. {seriesName: 'count()', data: [{value: 123, name: new Date().getTime()}]},
  28. {
  29. seriesName: 'count_unique(user)',
  30. data: [{value: 123, name: new Date().getTime()}],
  31. },
  32. {
  33. seriesName: 'failure_count()',
  34. data: [{value: 123, name: new Date().getTime()}],
  35. },
  36. ]}
  37. />,
  38. routerContext
  39. );
  40. const series = wrapper.find('ChartContainer').props().children.props.option.series;
  41. expect(series.length).toEqual(3);
  42. expect(series[0].lineStyle.color).toEqual('rgb(98, 100, 146)');
  43. expect(series[0].lineStyle.type).toEqual('dotted');
  44. expect(series[1].lineStyle.color).toEqual('rgb(244, 116, 157)');
  45. expect(series[1].lineStyle.type).toEqual('dotted');
  46. expect(series[2].lineStyle.color).toEqual('rgb(255, 213, 48)');
  47. expect(series[2].lineStyle.type).toEqual('dotted');
  48. });
  49. });