mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
BackendSrv: Fix error alert logic (#26411)
This commit is contained in:
parent
903c76415c
commit
3c1346d83a
@ -219,7 +219,7 @@ export class BackendSrv implements BackendService {
|
||||
}
|
||||
|
||||
// is showErrorAlert is undefined we only show alerts non data query and local api requests
|
||||
if (config.showErrorAlert === undefined || isDataQuery(config.url) || !isLocalUrl(config.url)) {
|
||||
if (config.showErrorAlert === undefined && (isDataQuery(config.url) || !isLocalUrl(config.url))) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -7,6 +7,7 @@ import { BackendSrv } from '../services/backend_srv';
|
||||
import { Emitter } from '../utils/emitter';
|
||||
import { ContextSrv, User } from '../services/context_srv';
|
||||
import { describe, expect } from '../../../test/lib/common';
|
||||
import { BackendSrvRequest, FetchError } from '@grafana/runtime';
|
||||
|
||||
const getTestContext = (overides?: object) => {
|
||||
const defaults = {
|
||||
@ -217,6 +218,26 @@ describe('backendSrv', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('when showing error alert', () => {
|
||||
describe('when showErrorAlert is undefined and url is a normal api call', () => {
|
||||
it('It should emit alert event for normal api errors', async () => {
|
||||
const { backendSrv, appEventsMock } = getTestContext({});
|
||||
backendSrv.showErrorAlert(
|
||||
{
|
||||
url: 'api/do/something',
|
||||
} as BackendSrvRequest,
|
||||
{
|
||||
data: {
|
||||
message: 'Something failed',
|
||||
error: 'Error',
|
||||
},
|
||||
} as FetchError
|
||||
);
|
||||
expect(appEventsMock.emit).toHaveBeenCalledWith(AppEvents.alertError, ['Something failed', '']);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('when making an unsuccessful 422 call', () => {
|
||||
it('then it should emit Validation failed message', async () => {
|
||||
jest.useFakeTimers();
|
||||
|
Loading…
Reference in New Issue
Block a user