| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- import { describe, it, expect } from 'test/lib/common';
- import * as 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);
- });
- });
- });
- });
|