prometheus

Форк
0
/
TargetLabels.test.tsx 
38 строк · 1.2 Кб
1
import * as React from 'react';
2
import { shallow } from 'enzyme';
3
import TargetLabels from './TargetLabels';
4
import { Tooltip, Badge } from 'reactstrap';
5
import toJson from 'enzyme-to-json';
6

7
describe('targetLabels', () => {
8
  const defaultProps = {
9
    discoveredLabels: {
10
      __address__: 'localhost:9100',
11
      __metrics_path__: '/metrics',
12
      __scheme__: 'http',
13
      job: 'node_exporter',
14
    },
15
    labels: {
16
      instance: 'localhost:9100',
17
      job: 'node_exporter',
18
      foo: 'bar',
19
    },
20
  };
21
  const targetLabels = shallow(<TargetLabels {...defaultProps} />);
22

23
  it('renders a div of series labels', () => {
24
    const div = targetLabels.find('div').filterWhere((elem) => elem.hasClass('series-labels-container'));
25
    expect(div).toHaveLength(1);
26
  });
27

28
  it('wraps each label in a label badge', () => {
29
    const l: { [key: string]: string } = defaultProps.labels;
30
    Object.keys(l).forEach((labelName: string): void => {
31
      const badge = targetLabels
32
        .find(Badge)
33
        .filterWhere((badge) => badge.children().text() === `${labelName}="${l[labelName]}"`);
34
      expect(badge).toHaveLength(1);
35
    });
36
    expect(targetLabels.find(Badge)).toHaveLength(3);
37
  });
38
});
39

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.