use timeSrv in metricFindQuery as timeRange

This commit is contained in:
thatsparesh
2019-02-09 14:57:20 -06:00
parent 716db35fae
commit 105879ab5d
2 changed files with 50 additions and 12 deletions

View File

@@ -1,6 +1,6 @@
import moment from 'moment';
import { MssqlDatasource } from '../datasource';
import { TemplateSrvStub } from 'test/specs/helpers';
import { TemplateSrvStub, TimeSrvStub } from 'test/specs/helpers';
import { CustomVariable } from 'app/features/templating/custom_variable';
import q from 'q';
@@ -8,13 +8,14 @@ describe('MSSQLDatasource', () => {
const ctx: any = {
backendSrv: {},
templateSrv: new TemplateSrvStub(),
timeSrv: new TimeSrvStub(),
};
beforeEach(() => {
ctx.$q = q;
ctx.instanceSettings = { name: 'mssql' };
ctx.ds = new MssqlDatasource(ctx.instanceSettings, ctx.backendSrv, ctx.$q, ctx.templateSrv);
ctx.ds = new MssqlDatasource(ctx.instanceSettings, ctx.backendSrv, ctx.$q, ctx.templateSrv, ctx.timeSrv);
});
describe('When performing annotationQuery', () => {
@@ -188,6 +189,49 @@ describe('MSSQLDatasource', () => {
});
});
describe('When performing metricFindQuery', () => {
let results;
const query = 'select * from atable';
const response = {
results: {
tempvar: {
meta: {
rowCount: 1,
},
refId: 'tempvar',
tables: [
{
columns: [{ text: 'title' }],
rows: [['aTitle']],
},
],
},
},
};
const time = {
from: moment(1521545610656),
to: moment(1521546251185)
};
beforeEach(() => {
ctx.timeSrv.setTime(time);
ctx.backendSrv.datasourceRequest = options => {
results = options.data;
return ctx.$q.when({ data: response, status: 200 });
};
return ctx.ds.metricFindQuery(query);
});
it('should pass timerange to datasourceRequest', () => {
expect(results.from).toBe(time.from.valueOf().toString());
expect(results.to).toBe(time.to.valueOf().toString());
expect(results.queries.length).toBe(1);
expect(results.queries[0].rawSql).toBe(query);
});
});
describe('When interpolating variables', () => {
beforeEach(() => {
ctx.variable = new CustomVariable({}, {});