| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- define([
- 'plugins/datasource/influxdb_08/queryBuilder'
- ], function(InfluxQueryBuilder) {
- 'use strict';
- describe('InfluxQueryBuilder', function() {
- describe('series with conditon and group by', function() {
- var builder = new InfluxQueryBuilder({
- series: 'google.test',
- column: 'value',
- function: 'mean',
- condition: "code=1",
- groupby_field: 'code'
- });
- var query = builder.build();
- it('should generate correct query', function() {
- expect(query).to.be('select code, mean(value) from "google.test" where $timeFilter and code=1 ' +
- 'group by time($interval), code order asc');
- });
- it('should expose groupByFiled', function() {
- expect(builder.groupByField).to.be('code');
- });
- });
- describe('series with fill and minimum group by time', function() {
- var builder = new InfluxQueryBuilder({
- series: 'google.test',
- column: 'value',
- function: 'mean',
- fill: '0',
- });
- var query = builder.build();
- it('should generate correct query', function() {
- expect(query).to.be('select mean(value) from "google.test" where $timeFilter ' +
- 'group by time($interval) fill(0) order asc');
- });
- });
- describe('merge function detection', function() {
- it('should not quote wrap regex merged series', function() {
- var builder = new InfluxQueryBuilder({
- series: 'merge(/^google.test/)',
- column: 'value',
- function: 'mean'
- });
- var query = builder.build();
- expect(query).to.be('select mean(value) from merge(/^google.test/) where $timeFilter ' +
- 'group by time($interval) order asc');
- });
- it('should quote wrap series names that start with "merge"', function() {
- var builder = new InfluxQueryBuilder({
- series: 'merge.google.test',
- column: 'value',
- function: 'mean'
- });
- var query = builder.build();
- expect(query).to.be('select mean(value) from "merge.google.test" where $timeFilter ' +
- 'group by time($interval) order asc');
- });
- });
- });
- });
|