mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
* CloudWatch: call query method from DataSourceWithBackend to support public dashboards * add test * remove unneeded properties from test case * update betterer * add parens to group related logic * remove unnecessary aliasing of variable * use t.Cleanup * remove redundant check * add comment
36 lines
1.2 KiB
TypeScript
36 lines
1.2 KiB
TypeScript
import { of } from 'rxjs';
|
|
|
|
import { CustomVariableModel, DataQueryRequest } from '@grafana/data';
|
|
import { TemplateSrv } from 'app/features/templating/template_srv';
|
|
|
|
import { CloudWatchAnnotationQueryRunner } from '../query-runner/CloudWatchAnnotationQueryRunner';
|
|
import { CloudWatchQuery } from '../types';
|
|
|
|
import { CloudWatchSettings, setupMockedTemplateService } from './CloudWatchDataSource';
|
|
import { TimeRangeMock } from './timeRange';
|
|
|
|
export function setupMockedAnnotationQueryRunner({ variables }: { variables?: CustomVariableModel[] }) {
|
|
let templateService = new TemplateSrv();
|
|
if (variables) {
|
|
templateService = setupMockedTemplateService(variables);
|
|
}
|
|
|
|
const queryMock = jest.fn().mockReturnValue(of({}));
|
|
const runner = new CloudWatchAnnotationQueryRunner(CloudWatchSettings, templateService, queryMock);
|
|
|
|
const request: DataQueryRequest<CloudWatchQuery> = {
|
|
range: TimeRangeMock,
|
|
rangeRaw: { from: '1483228800', to: '1483232400' },
|
|
targets: [],
|
|
requestId: '',
|
|
interval: '',
|
|
intervalMs: 0,
|
|
scopedVars: {},
|
|
timezone: '',
|
|
app: '',
|
|
startTime: 0,
|
|
};
|
|
|
|
return { runner, queryMock, templateService, request, timeRange: TimeRangeMock };
|
|
}
|