mirror of
https://github.com/grafana/grafana.git
synced 2025-02-20 11:48:34 -06:00
54 lines
1.5 KiB
TypeScript
54 lines
1.5 KiB
TypeScript
import InfluxDatasource from '../datasource';
|
|
import $q from 'q';
|
|
import { TemplateSrvStub } from 'test/specs/helpers';
|
|
|
|
describe('InfluxDataSource', () => {
|
|
const ctx: any = {
|
|
backendSrv: {},
|
|
$q: $q,
|
|
templateSrv: new TemplateSrvStub(),
|
|
instanceSettings: { url: 'url', name: 'influxDb', jsonData: {} },
|
|
};
|
|
|
|
beforeEach(() => {
|
|
ctx.instanceSettings.url = '/api/datasources/proxy/1';
|
|
ctx.ds = new InfluxDatasource(ctx.instanceSettings, ctx.$q, ctx.backendSrv, ctx.templateSrv);
|
|
});
|
|
|
|
describe('When issuing metricFindQuery', () => {
|
|
const query = 'SELECT max(value) FROM measurement WHERE $timeFilter';
|
|
const queryOptions: any = {
|
|
range: {
|
|
from: '2018-01-01T00:00:00Z',
|
|
to: '2018-01-02T00:00:00Z',
|
|
},
|
|
};
|
|
let requestQuery;
|
|
|
|
beforeEach(async () => {
|
|
ctx.backendSrv.datasourceRequest = req => {
|
|
requestQuery = req.params.q;
|
|
return ctx.$q.when({
|
|
results: [
|
|
{
|
|
series: [
|
|
{
|
|
name: 'measurement',
|
|
columns: ['max'],
|
|
values: [[1]],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
});
|
|
};
|
|
|
|
await ctx.ds.metricFindQuery(query, queryOptions).then(_ => {});
|
|
});
|
|
|
|
it('should replace $timefilter', () => {
|
|
expect(requestQuery).toMatch('time >= 1514764800000ms and time <= 1514851200000ms');
|
|
});
|
|
});
|
|
});
|