| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- 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');
- });
- });
- });
- });
|