remove default value
This commit is contained in:
@@ -62,7 +62,6 @@ const verifyRequestParams = (
|
||||
expect(requestSpy).toHaveBeenCalled();
|
||||
expect(requestSpy).toHaveBeenCalledWith(
|
||||
expectedUrl,
|
||||
expect.anything(),
|
||||
expect.objectContaining(expectedParams),
|
||||
expectedOptions
|
||||
);
|
||||
@@ -208,7 +207,6 @@ describe('Prometheus Language Provider', () => {
|
||||
expect(requestSpy).toHaveBeenCalled();
|
||||
expect(requestSpy).toHaveBeenCalledWith(
|
||||
'/api/v1/labels',
|
||||
[],
|
||||
{
|
||||
end: (
|
||||
dateTime(fromPrometheusTime * 1000)
|
||||
@@ -339,7 +337,7 @@ describe('Prometheus Language Provider', () => {
|
||||
const tr = getMockTimeRange();
|
||||
|
||||
const getParams = (requestSpy: ReturnType<typeof jest.spyOn>) => {
|
||||
return requestSpy.mock.calls[0][2]?.toString() ?? 'undefined';
|
||||
return requestSpy.mock.calls[0][1]?.toString() ?? 'undefined';
|
||||
};
|
||||
|
||||
describe('with POST method', () => {
|
||||
@@ -588,7 +586,7 @@ describe('Prometheus Language Provider', () => {
|
||||
fetchLabelValues(getMockTimeRange(), 'job');
|
||||
|
||||
expect(requestSpy).toHaveBeenCalled();
|
||||
expect(requestSpy.mock.calls[0][3]).toEqual({
|
||||
expect(requestSpy.mock.calls[0][2]).toEqual({
|
||||
headers: { 'X-Grafana-Cache': `private, max-age=${timeSnapMinutes * 60}` },
|
||||
});
|
||||
});
|
||||
@@ -600,10 +598,10 @@ describe('Prometheus Language Provider', () => {
|
||||
.spyOn(defaultDatasource, 'metadataRequest')
|
||||
.mockRejectedValue(new Error('Network error'));
|
||||
|
||||
const result = await languageProvider.request('/api/v1/labels', [], {});
|
||||
const result = await languageProvider.request('/api/v1/labels', {});
|
||||
|
||||
expect(datasourceRequestMock).toHaveBeenCalled();
|
||||
expect(result).toEqual([]);
|
||||
expect(result).toEqual(undefined);
|
||||
});
|
||||
|
||||
it('should ignore cancelled request errors', async () => {
|
||||
@@ -612,10 +610,10 @@ describe('Prometheus Language Provider', () => {
|
||||
const error = { cancelled: true };
|
||||
const datasourceRequestMock = jest.spyOn(defaultDatasource, 'metadataRequest').mockRejectedValue(error);
|
||||
|
||||
const result = await languageProvider.request('/api/v1/labels', [], {});
|
||||
const result = await languageProvider.request('/api/v1/labels', {});
|
||||
|
||||
expect(datasourceRequestMock).toHaveBeenCalled();
|
||||
expect(result).toEqual([]);
|
||||
expect(result).toEqual(undefined);
|
||||
expect(console.error).not.toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
@@ -722,13 +720,13 @@ describe('Prometheus Language Provider', () => {
|
||||
expect(requestSpy.mock.calls[0][0]).toBe('/suggestions');
|
||||
|
||||
// Check method and content type
|
||||
expect(requestSpy.mock.calls[0][3]).toMatchObject({
|
||||
expect(requestSpy.mock.calls[0][2]).toMatchObject({
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
method: 'POST',
|
||||
});
|
||||
|
||||
// Check query parameters
|
||||
expect(requestSpy.mock.calls[0][2]).toMatchObject({
|
||||
expect(requestSpy.mock.calls[0][1]).toMatchObject({
|
||||
labelName: 'metric',
|
||||
limit: 100,
|
||||
queries: ['interpolated_metric1'],
|
||||
@@ -745,8 +743,8 @@ describe('Prometheus Language Provider', () => {
|
||||
|
||||
expect(requestSpy).toHaveBeenCalled();
|
||||
// Default time range should be used
|
||||
expect(requestSpy.mock.calls[0][2]).toHaveProperty('start');
|
||||
expect(requestSpy.mock.calls[0][2]).toHaveProperty('end');
|
||||
expect(requestSpy.mock.calls[0][1]).toHaveProperty('start');
|
||||
expect(requestSpy.mock.calls[0][1]).toHaveProperty('end');
|
||||
});
|
||||
|
||||
it('should handle empty response gracefully', async () => {
|
||||
@@ -770,8 +768,8 @@ describe('Prometheus Language Provider', () => {
|
||||
await languageProvider.fetchSuggestions(getMockTimeRange(), [], [], [], 'test');
|
||||
|
||||
expect(requestSpy).toHaveBeenCalled();
|
||||
expect(requestSpy.mock.calls[0][3]?.headers).toHaveProperty('X-Grafana-Cache');
|
||||
expect(requestSpy.mock.calls[0][3]?.headers?.['X-Grafana-Cache']).toContain(
|
||||
expect(requestSpy.mock.calls[0][2]?.headers).toHaveProperty('X-Grafana-Cache');
|
||||
expect(requestSpy.mock.calls[0][2]?.headers?.['X-Grafana-Cache']).toContain(
|
||||
`private, max-age=${timeSnapMinutes * 60}`
|
||||
);
|
||||
});
|
||||
|
||||
@@ -124,7 +124,7 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
Object.assign(this, initialValues);
|
||||
}
|
||||
|
||||
request = async (url: string, defaultValue: unknown, params = {}, options?: Partial<BackendSrvRequest>) => {
|
||||
request = async (url: string, params = {}, options?: Partial<BackendSrvRequest>) => {
|
||||
try {
|
||||
const res = await this.datasource.metadataRequest(url, params, options);
|
||||
return res.data.data;
|
||||
@@ -134,7 +134,7 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
}
|
||||
}
|
||||
|
||||
return defaultValue;
|
||||
return undefined;
|
||||
};
|
||||
|
||||
start = async (timeRange: TimeRange = getDefaultTimeRange()): Promise<any[]> => {
|
||||
@@ -153,7 +153,6 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
await this.request(
|
||||
API_V1.METADATA,
|
||||
{},
|
||||
{},
|
||||
{
|
||||
showErrorAlert: false,
|
||||
...headers,
|
||||
@@ -189,7 +188,6 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
const interpolatedAndEscapedName = escapeForUtf8Support(removeQuotesIfExist(interpolatedName));
|
||||
const value = await this.request(
|
||||
API_V1.LABELS_VALUES(interpolatedAndEscapedName),
|
||||
[],
|
||||
params,
|
||||
getDefaultCacheHeaders(this.datasource.cacheLevel)
|
||||
);
|
||||
@@ -226,7 +224,7 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
url += `?${searchParams.toString()}`;
|
||||
}
|
||||
|
||||
const res = await this.request(url, [], searchParams, getDefaultCacheHeaders(this.datasource.cacheLevel));
|
||||
const res = await this.request(url, searchParams, getDefaultCacheHeaders(this.datasource.cacheLevel));
|
||||
if (Array.isArray(res)) {
|
||||
this.labelKeys = res.slice().sort();
|
||||
return [...this.labelKeys];
|
||||
@@ -277,7 +275,7 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
|
||||
const interpolatedAndEscapedName = escapeForUtf8Support(removeQuotesIfExist(interpolatedName ?? ''));
|
||||
|
||||
const value = await this.request(API_V1.LABELS_VALUES(interpolatedAndEscapedName), [], urlParams, requestOptions);
|
||||
const value = await this.request(API_V1.LABELS_VALUES(interpolatedAndEscapedName), urlParams, requestOptions);
|
||||
return value ?? [];
|
||||
};
|
||||
|
||||
@@ -342,7 +340,7 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
urlParams = { ...urlParams, limit: withLimit ?? DEFAULT_SERIES_LIMIT };
|
||||
}
|
||||
|
||||
const data = await this.request(API_V1.SERIES, [], urlParams, getDefaultCacheHeaders(this.datasource.cacheLevel));
|
||||
const data = await this.request(API_V1.SERIES, urlParams, getDefaultCacheHeaders(this.datasource.cacheLevel));
|
||||
const { values } = processLabels(data, withName);
|
||||
return values;
|
||||
};
|
||||
@@ -366,7 +364,6 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
|
||||
const data: string[] = await this.request(
|
||||
API_V1.LABELS,
|
||||
[],
|
||||
urlParams,
|
||||
getDefaultCacheHeaders(this.datasource.cacheLevel)
|
||||
);
|
||||
@@ -380,7 +377,7 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
fetchSeries = async (timeRange: TimeRange, match: string): Promise<Array<Record<string, string>>> => {
|
||||
const range = this.datasource.getTimeRangeParams(timeRange);
|
||||
const params = { ...range, 'match[]': match };
|
||||
return await this.request(API_V1.SERIES, {}, params, getDefaultCacheHeaders(this.datasource.cacheLevel));
|
||||
return await this.request(API_V1.SERIES, params, getDefaultCacheHeaders(this.datasource.cacheLevel));
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -413,7 +410,6 @@ export default class PromQlLanguageProvider extends LanguageProvider {
|
||||
const timeParams = this.datasource.getAdjustedInterval(timeRange);
|
||||
const value = await this.request(
|
||||
url,
|
||||
[],
|
||||
{
|
||||
labelName,
|
||||
queries: queries?.map((q) =>
|
||||
|
||||
Reference in New Issue
Block a user