Alerting: Fix threshold expression rewire (#58334)

pull/58593/head
Gilles De Mey 3 years ago committed by GitHub
parent 990d8cd22e
commit 738e023d13
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 30
      public/app/features/alerting/unified/components/rule-editor/util.test.ts
  2. 3
      public/app/features/alerting/unified/components/rule-editor/util.ts

@ -94,6 +94,28 @@ describe('rule-editor', () => {
queryType: '',
};
const thresholdExpression = {
refId: 'C',
datasourceUid: '-100',
model: {
refId: 'C',
type: 'threshold',
expression: 'B',
datasource: {
type: '__expr__',
uid: '-100',
},
conditions: [
{
evaluator: {
params: [0, 'gt'],
},
},
],
},
queryType: '',
};
describe('rewires query names', () => {
it('should rewire classic expressions', () => {
const queries: AlertQuery[] = [dataSource, classicCondition];
@ -133,6 +155,14 @@ describe('rule-editor', () => {
expect(queryModel.expression).toBe('C');
});
it('should rewire threshold expressions', () => {
const queries: AlertQuery[] = [dataSource, reduceExpression, thresholdExpression];
const rewiredQueries = queriesWithUpdatedReferences(queries, 'B', 'REDUCER');
const queryModel = rewiredQueries[2].model as ExpressionQuery;
expect(queryModel.expression).toBe('REDUCER');
});
it('should rewire multiple expressions', () => {
const queries: AlertQuery[] = [dataSource, mathExpression, resampleExpression];
const rewiredQueries = queriesWithUpdatedReferences(queries, 'A', 'C');

@ -23,6 +23,7 @@ export function queriesWithUpdatedReferences(
const isReduceExpression = query.model.type === 'reduce';
const isResampleExpression = query.model.type === 'resample';
const isClassicExpression = query.model.type === 'classic_conditions';
const isThresholdExpression = query.model.type === 'threshold';
if (isMathExpression) {
return {
@ -34,7 +35,7 @@ export function queriesWithUpdatedReferences(
};
}
if (isResampleExpression || isReduceExpression) {
if (isResampleExpression || isReduceExpression || isThresholdExpression) {
const isReferencing = query.model.expression === previousRefId;
return {

Loading…
Cancel
Save