mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Add a basic test of KairosDBDatasource
This commit is contained in:
parent
05c27d8340
commit
dbc07827cf
63
public/test/specs/kairosdb-datasource-specs.js
Normal file
63
public/test/specs/kairosdb-datasource-specs.js
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
define([
|
||||||
|
'helpers',
|
||||||
|
'plugins/datasource/kairosdb/datasource'
|
||||||
|
], function(helpers) {
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
describe('KairosDBDatasource', function() {
|
||||||
|
var ctx = new helpers.ServiceTestContext();
|
||||||
|
|
||||||
|
beforeEach(module('grafana.services'));
|
||||||
|
beforeEach(ctx.providePhase(['templateSrv']));
|
||||||
|
beforeEach(ctx.createService('KairosDBDatasource'));
|
||||||
|
beforeEach(function() {
|
||||||
|
ctx.ds = new ctx.service({ url: ''});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('When querying kairosdb with one target using query editor target spec', function() {
|
||||||
|
var results;
|
||||||
|
var urlExpected = "/api/v1/datapoints/query";
|
||||||
|
var bodyExpected = {
|
||||||
|
metrics: [{ name: "test" }],
|
||||||
|
cache_time: 0,
|
||||||
|
start_relative: {
|
||||||
|
value: "1",
|
||||||
|
unit: "hours"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
var query = {
|
||||||
|
range: { from: 'now-1h', to: 'now' },
|
||||||
|
targets: [{ metric: 'test', downsampling: '(NONE)'}]
|
||||||
|
};
|
||||||
|
|
||||||
|
var response = {
|
||||||
|
queries: [{
|
||||||
|
sample_size: 60,
|
||||||
|
results: [{
|
||||||
|
name: "test",
|
||||||
|
values: [[1420070400000, 1]]
|
||||||
|
}]
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
ctx.$httpBackend.expect('POST', urlExpected, bodyExpected).respond(response);
|
||||||
|
ctx.ds.query(query).then(function(data) { results = data; });
|
||||||
|
ctx.$httpBackend.flush();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should generate the correct query', function() {
|
||||||
|
ctx.$httpBackend.verifyNoOutstandingExpectation();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return series list', function() {
|
||||||
|
expect(results.data.length).to.be(1);
|
||||||
|
expect(results.data[0].target).to.be('test');
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
@ -128,6 +128,7 @@ require([
|
|||||||
'specs/influxQueryBuilder-specs',
|
'specs/influxQueryBuilder-specs',
|
||||||
'specs/influx09-querybuilder-specs',
|
'specs/influx09-querybuilder-specs',
|
||||||
'specs/influxdb-datasource-specs',
|
'specs/influxdb-datasource-specs',
|
||||||
|
'specs/kairosdb-datasource-specs',
|
||||||
'specs/graph-ctrl-specs',
|
'specs/graph-ctrl-specs',
|
||||||
'specs/graph-specs',
|
'specs/graph-specs',
|
||||||
'specs/graph-tooltip-specs',
|
'specs/graph-tooltip-specs',
|
||||||
@ -150,4 +151,3 @@ require([
|
|||||||
window.__karma__.start();
|
window.__karma__.start();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user