Skip to content

Commit

Permalink
add unit test
Browse files Browse the repository at this point in the history
  • Loading branch information
yincongcyincong committed Jun 24, 2024
1 parent 30e7a0c commit 984c9a2
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions src/datasource.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,22 @@ describe('PrometheusDatasource', () => {
expr: `metric{job="foo", k1=~"v.*", k2=~"v\\\\'.*"} - metric{k1=~"v.*", k2=~"v\\\\'.*"}`,
});
});

it('should add filters to expression', () => {
getAdhocFiltersMock.mockReturnValue([
{
key: 'k1',
operator: '=',
value: 'v1',
}
]);
replaceMock.mockImplementation((str, params) => {
return str.replace('$topk', '5');
});
const caseTarget: PromQuery = { expr: 'topk_max($topk, vmalert_iteration_duration_seconds_sum)', refId: 'A' };
const result = ds.createQuery(caseTarget, { interval: '15s', scopedVars: { 'topk': { text: 'topk', value: '5' } } as ScopedVars} as DataQueryRequest<PromQuery>, 0, 0);
expect(result).toMatchObject({ expr: 'topk_max(5, vmalert_iteration_duration_seconds_sum{k1="v1"})'});
});
});

describe('alignRange', () => {
Expand Down Expand Up @@ -489,6 +505,26 @@ describe('PrometheusDatasource', () => {
const result = ds.applyTemplateVariables(query, {});
expect(result).toMatchObject({ expr: 'test{job="bar", k1="v1", k2!="v2"}' });
});

it('should add filters to expression', () => {
getAdhocFiltersMock.mockReturnValue([
{
key: 'k1',
operator: '=',
value: 'v1',
}
]);
replaceMock.mockImplementation((str, params) => {
return str?.replace('$topk', '5');
});
const query: PromQuery = {
expr: 'topk_max($topk, vmalert_iteration_duration_seconds_sum)',
refId: 'A'
};
const result = ds.applyTemplateVariables(query, { 'topk': { text: 'topk', value: '5' } } as ScopedVars);
console.log(result);
expect(result).toMatchObject({ expr: 'topk_max(5, vmalert_iteration_duration_seconds_sum{k1="v1"})'});
});
});

describe('metricFindQuery', () => {
Expand Down

0 comments on commit 984c9a2

Please sign in to comment.