fix: data trails auto query use general generator for unconventional metrics (#80301)

This commit is contained in:
Darren Janeczek
2024-01-10 12:23:41 -05:00
committed by GitHub
parent 7400c8c844
commit 796ef05e97
2 changed files with 17 additions and 4 deletions

View File

@@ -167,4 +167,20 @@ describe('getAutoQueriesForMetric', () => {
expect(received).toStrictEqual(expectedVariants);
});
});
describe('Able to handle unconventional metric names', () => {
it.each([['PRODUCT_High_Priority_items_', 'avg(...)', 'short', 1]])(
'Given metric %p expect %p with unit %p',
(metric, expr, unit, queryCount) => {
const result = getAutoQueriesForMetric(metric);
const queryDef = result.main;
const expected = { expr: expandExpr(expr), unit, queryCount };
const actual = { expr: queryDef.queries[0].expr, unit: queryDef.unit, queryCount: queryDef.queries.length };
expect(actual).toStrictEqual(expected);
}
);
});
});

View File

@@ -7,8 +7,5 @@ const SUFFIX_TO_ALTERNATIVE_GENERATOR: Record<string, MetricQueriesGenerator> =
};
export function getQueryGeneratorFor(suffix?: string) {
if (!suffix || suffix === '') {
return null;
}
return SUFFIX_TO_ALTERNATIVE_GENERATOR[suffix] || general.generator;
return (suffix && SUFFIX_TO_ALTERNATIVE_GENERATOR[suffix]) || general.generator;
}