| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- import {
- getAnnotationsFromResult,
- getNameFromRecord,
- getTableModelFromResult,
- getTimeSeriesFromResult,
- getValuesFromResult,
- parseResults,
- parseValue,
- } from '../response_parser';
- import response from './sample_response_csv';
- describe('influxdb ifql response parser', () => {
- describe('parseResults()', () => {
- it('expects three results', () => {
- const results = parseResults(response);
- expect(results.length).toBe(2);
- });
- });
- describe('getAnnotationsFromResult()', () => {
- it('expects a list of annotations', () => {
- const results = parseResults(response);
- const annotations = getAnnotationsFromResult(results[0], { tagsCol: 'cpu' });
- expect(annotations.length).toBe(300);
- expect(annotations[0].tags.length).toBe(1);
- expect(annotations[0].tags[0]).toBe('cpu-total');
- expect(annotations[0].text).toBe('0');
- });
- });
- describe('getTableModelFromResult()', () => {
- it('expects a table model', () => {
- const results = parseResults(response);
- const table = getTableModelFromResult(results[0]);
- expect(table.columns.length).toBe(6);
- expect(table.rows.length).toBe(300);
- });
- });
- describe('getTimeSeriesFromResult()', () => {
- it('expects time series', () => {
- const results = parseResults(response);
- const series = getTimeSeriesFromResult(results[0]);
- expect(series.length).toBe(50);
- expect(series[0].datapoints.length).toBe(6);
- });
- });
- describe('getValuesFromResult()', () => {
- it('returns all values from the _value field in the response', () => {
- const results = parseResults(response);
- const values = getValuesFromResult(results[0]);
- expect(values.length).toBe(300);
- });
- });
- describe('getNameFromRecord()', () => {
- it('expects name based on measurements and tags', () => {
- const record = {
- '': '',
- result: '',
- table: '0',
- _start: '2018-06-02T06:35:25.651942602Z',
- _stop: '2018-06-02T07:35:25.651942602Z',
- _time: '2018-06-02T06:35:31Z',
- _value: '0',
- _field: 'usage_guest',
- _measurement: 'cpu',
- cpu: 'cpu-total',
- host: 'kenobi-3.local',
- };
- expect(getNameFromRecord(record)).toBe('cpu usage_guest cpu=cpu-total host=kenobi-3.local');
- });
- });
- describe('parseValue()', () => {
- it('parses a number', () => {
- expect(parseValue('42.3')).toBe(42.3);
- });
- it('parses a non-number to null', () => {
- expect(parseValue('foo')).toBe(null);
- });
- });
- });
|