mirror of
https://github.com/grafana/grafana.git
synced 2025-02-20 11:48:34 -06:00
106 lines
2.8 KiB
TypeScript
106 lines
2.8 KiB
TypeScript
|
|
import {describe, beforeEach, it, sinon, expect, angularMocks} from 'test/lib/common';
|
|
|
|
import queryDef from '../query_def';
|
|
|
|
describe('ElasticQueryDef', function() {
|
|
|
|
describe('getPipelineAggOptions', function() {
|
|
describe('with zero targets', function() {
|
|
var response = queryDef.getPipelineAggOptions([]);
|
|
|
|
it('should return zero', function() {
|
|
expect(response.length).to.be(0);
|
|
});
|
|
});
|
|
|
|
describe('with count and sum targets', function() {
|
|
var targets = {
|
|
metrics: [
|
|
{ type: 'count', field: '@value' },
|
|
{ type: 'sum', field: '@value' }
|
|
]
|
|
};
|
|
|
|
var response = queryDef.getPipelineAggOptions(targets);
|
|
|
|
it('should return zero', function() {
|
|
expect(response.length).to.be(2);
|
|
});
|
|
});
|
|
|
|
describe('with count and moving average targets', function() {
|
|
var targets = {
|
|
metrics: [
|
|
{ type: 'count', field: '@value' },
|
|
{ type: 'moving_avg', field: '@value' }
|
|
]
|
|
};
|
|
|
|
var response = queryDef.getPipelineAggOptions(targets);
|
|
|
|
it('should return one', function() {
|
|
expect(response.length).to.be(1);
|
|
});
|
|
});
|
|
|
|
describe('with derivatives targets', function() {
|
|
var targets = {
|
|
metrics: [
|
|
{ type: 'derivative', field: '@value' }
|
|
]
|
|
};
|
|
|
|
var response = queryDef.getPipelineAggOptions(targets);
|
|
|
|
it('should return zero', function() {
|
|
expect(response.length).to.be(0);
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('isPipelineMetric', function() {
|
|
describe('moving_avg', function() {
|
|
var result = queryDef.isPipelineAgg('moving_avg');
|
|
|
|
it('is pipe line metric', function() {
|
|
expect(result).to.be(true);
|
|
});
|
|
});
|
|
|
|
describe('count', function() {
|
|
var result = queryDef.isPipelineAgg('count');
|
|
|
|
it('is not pipe line metric', function() {
|
|
expect(result).to.be(false);
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('pipeline aggs depending on esverison', function() {
|
|
describe('using esversion undefined', function() {
|
|
it('should not get pipeline aggs', function() {
|
|
expect(queryDef.getMetricAggTypes(undefined).length).to.be(9);
|
|
});
|
|
});
|
|
|
|
describe('using esversion 1', function() {
|
|
it('should not get pipeline aggs', function() {
|
|
expect(queryDef.getMetricAggTypes(1).length).to.be(9);
|
|
});
|
|
});
|
|
|
|
describe('using esversion 2', function() {
|
|
it('should get pipeline aggs', function() {
|
|
expect(queryDef.getMetricAggTypes(2).length).to.be(11);
|
|
});
|
|
});
|
|
|
|
describe('using esversion 5', function() {
|
|
it('should get pipeline aggs', function() {
|
|
expect(queryDef.getMetricAggTypes(5).length).to.be(11);
|
|
});
|
|
});
|
|
});
|
|
});
|