Commit 98e5815c by ilgizar

append test to thresholds on right axis

parent 578ee88f
import { describe, it, expect } from '../../../../../test/lib/common'; import { describe, it, expect } from '../../../../../test/lib/common';
import angular from 'angular';
import TimeSeries from 'app/core/time_series2';
import { ThresholdManager } from '../threshold_manager'; import { ThresholdManager } from '../threshold_manager';
describe('ThresholdManager', function() { describe('ThresholdManager', function() {
...@@ -15,9 +17,13 @@ describe('ThresholdManager', function() { ...@@ -15,9 +17,13 @@ describe('ThresholdManager', function() {
panelCtrl: {}, panelCtrl: {},
}; };
ctx.setup = function(thresholds) { ctx.setup = function(thresholds, data) {
ctx.panel.thresholds = thresholds; ctx.panel.thresholds = thresholds;
var manager = new ThresholdManager(ctx.panelCtrl); var manager = new ThresholdManager(ctx.panelCtrl);
if (data !== undefined) {
var element = angular.element('<div grafana-graph><div>');
manager.prepare(element, data);
}
manager.addFlotOptions(ctx.options, ctx.panel); manager.addFlotOptions(ctx.options, ctx.panel);
}; };
...@@ -101,5 +107,36 @@ describe('ThresholdManager', function() { ...@@ -101,5 +107,36 @@ describe('ThresholdManager', function() {
expect(markings[1].yaxis.to).to.be(-Infinity); expect(markings[1].yaxis.to).to.be(-Infinity);
}); });
}); });
plotOptionsScenario('for threshold on two Y axes', ctx => {
var data = new Array(2);
data[0] = new TimeSeries({
datapoints: [[0, 1], [300, 2]],
alias: 'left',
});
data[0].yaxis = 1;
data[1] = new TimeSeries({
datapoints: [[0, 1], [300, 2]],
alias: 'right',
});
data[1].yaxis = 2;
ctx.setup(
[
{ op: 'gt', value: 100, line: true, colorMode: 'critical' },
{ op: 'gt', value: 200, line: true, colorMode: 'critical', yaxis: 'right' },
],
data
);
it('should add first threshold for left axis', function() {
var markings = ctx.options.grid.markings;
expect(markings[0].yaxis.from).to.be(100);
});
it('should add second threshold for right axis', function() {
var markings = ctx.options.grid.markings;
expect(markings[1].y2axis.from).to.be(200);
});
});
}); });
}); });
...@@ -222,7 +222,7 @@ export class ThresholdManager { ...@@ -222,7 +222,7 @@ export class ThresholdManager {
// fill // fill
if (threshold.fill) { if (threshold.fill) {
if (threshold.yaxis === 'right' && this.shouldDrawHandles) { if (threshold.yaxis === 'right' && this.hasSecondYAxis) {
options.grid.markings.push({ options.grid.markings.push({
y2axis: { from: threshold.value, to: limit }, y2axis: { from: threshold.value, to: limit },
color: fillColor, color: fillColor,
...@@ -235,7 +235,7 @@ export class ThresholdManager { ...@@ -235,7 +235,7 @@ export class ThresholdManager {
} }
} }
if (threshold.line) { if (threshold.line) {
if (threshold.yaxis === 'right' && this.shouldDrawHandles) { if (threshold.yaxis === 'right' && this.hasSecondYAxis) {
options.grid.markings.push({ options.grid.markings.push({
y2axis: { from: threshold.value, to: threshold.value }, y2axis: { from: threshold.value, to: threshold.value },
color: lineColor, color: lineColor,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment