|
|
@@ -3,12 +3,13 @@ import {describe, beforeEach, it, sinon, expect} from 'test/lib/common';
|
|
|
import InfluxQuery from '../influx_query';
|
|
|
|
|
|
describe('InfluxQuery', function() {
|
|
|
+ var templateSrv = {replace: val => val};
|
|
|
|
|
|
describe('render series with mesurement only', function() {
|
|
|
it('should generate correct query', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE $timeFilter GROUP BY time($interval) fill(null)');
|
|
|
@@ -20,7 +21,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
policy: '5m_avg'
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") FROM "5m_avg"."cpu" WHERE $timeFilter GROUP BY time($interval) fill(null)');
|
|
|
@@ -39,7 +40,7 @@ describe('InfluxQuery', function() {
|
|
|
{type: 'alias', params: ['text']},
|
|
|
]
|
|
|
]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") /100 AS "text" FROM "cpu" WHERE $timeFilter GROUP BY time($interval) fill(null)');
|
|
|
@@ -52,7 +53,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
groupBy: [{type: 'time', params: ['auto']}],
|
|
|
tags: [{key: 'hostname', value: 'server\\1'}]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
|
|
|
@@ -65,7 +66,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
groupBy: [{type: 'time', params: ['auto']}],
|
|
|
tags: [{key: 'app', value: '/e.*/'}]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "app" =~ /e.*/ AND $timeFilter GROUP BY time($interval)');
|
|
|
@@ -78,7 +79,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
groupBy: [{type: 'time', params: ['auto']}],
|
|
|
tags: [{key: 'hostname', value: 'server1'}, {key: 'app', value: 'email', condition: "AND"}]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "hostname" = \'server1\' AND "app" = \'email\' AND ' +
|
|
|
@@ -92,7 +93,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
groupBy: [{type: 'time', params: ['auto']}],
|
|
|
tags: [{key: 'hostname', value: 'server1'}, {key: 'hostname', value: 'server2', condition: "OR"}]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "hostname" = \'server1\' OR "hostname" = \'server2\' AND ' +
|
|
|
@@ -106,7 +107,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
tags: [],
|
|
|
groupBy: [{type: 'time', interval: 'auto'}, {type: 'tag', params: ['host']}],
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE $timeFilter ' +
|
|
|
@@ -120,7 +121,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}]],
|
|
|
groupBy: [],
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT "value" FROM "cpu" WHERE $timeFilter');
|
|
|
});
|
|
|
@@ -132,7 +133,7 @@ describe('InfluxQuery', function() {
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}]],
|
|
|
groupBy: [{type: 'time'}, {type: 'fill', params: ['0']}],
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
var queryText = query.render();
|
|
|
expect(queryText).to.be('SELECT "value" FROM "cpu" WHERE $timeFilter GROUP BY time($interval) fill(0)');
|
|
|
});
|
|
|
@@ -144,7 +145,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
groupBy: [{type: 'time'}, {type: 'fill'}]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addGroupBy('tag(host)');
|
|
|
expect(query.target.groupBy.length).to.be(3);
|
|
|
@@ -157,7 +158,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
groupBy: []
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addGroupBy('tag(host)');
|
|
|
expect(query.target.groupBy.length).to.be(1);
|
|
|
@@ -172,7 +173,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}]]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addSelectPart(query.selectModels[0], 'mean');
|
|
|
expect(query.target.select[0].length).to.be(2);
|
|
|
@@ -183,7 +184,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}, {type: 'mean'}]]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addSelectPart(query.selectModels[0], 'sum');
|
|
|
expect(query.target.select[0].length).to.be(2);
|
|
|
@@ -194,7 +195,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}, {type: 'mean'}, {type: 'alias'}]]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addSelectPart(query.selectModels[0], 'math');
|
|
|
expect(query.target.select[0].length).to.be(4);
|
|
|
@@ -205,7 +206,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}, {type: 'mean'}]]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addSelectPart(query.selectModels[0], 'math');
|
|
|
expect(query.target.select[0].length).to.be(3);
|
|
|
@@ -216,7 +217,7 @@ describe('InfluxQuery', function() {
|
|
|
var query = new InfluxQuery({
|
|
|
measurement: 'cpu',
|
|
|
select: [[{type: 'field', params: ['value']}, {type: 'mean'}, {type: 'math'}]]
|
|
|
- });
|
|
|
+ }, templateSrv, {});
|
|
|
|
|
|
query.addSelectPart(query.selectModels[0], 'math');
|
|
|
expect(query.target.select[0].length).to.be(3);
|