mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
* improve some types * more tidy up * better error message handling + update tests * undo store changes
57 lines
1.7 KiB
TypeScript
57 lines
1.7 KiB
TypeScript
import { FetchError } from '@grafana/runtime';
|
|
import { getMessageFromError } from 'app/core/utils/errors';
|
|
|
|
describe('errors functions', () => {
|
|
let message: string | null;
|
|
|
|
describe('when getMessageFromError gets an error string', () => {
|
|
beforeEach(() => {
|
|
message = getMessageFromError('error string');
|
|
});
|
|
|
|
it('should return the string', () => {
|
|
expect(message).toBe('error string');
|
|
});
|
|
});
|
|
|
|
describe('when getMessageFromError gets an error object with message field', () => {
|
|
beforeEach(() => {
|
|
message = getMessageFromError(new Error('error string'));
|
|
});
|
|
|
|
it('should return the message text', () => {
|
|
expect(message).toBe('error string');
|
|
});
|
|
});
|
|
|
|
describe('when getMessageFromError gets an error object with data.message field', () => {
|
|
beforeEach(() => {
|
|
message = getMessageFromError({ data: { message: 'error string' }, status: 500 } as FetchError);
|
|
});
|
|
|
|
it('should return the message text', () => {
|
|
expect(message).toBe('error string');
|
|
});
|
|
});
|
|
|
|
describe('when getMessageFromError gets an error object with statusText field', () => {
|
|
beforeEach(() => {
|
|
message = getMessageFromError({ data: 'foo', statusText: 'error string', status: 500 } as FetchError);
|
|
});
|
|
|
|
it('should return the statusText text', () => {
|
|
expect(message).toBe('error string');
|
|
});
|
|
});
|
|
|
|
describe('when getMessageFromError gets an error object', () => {
|
|
beforeEach(() => {
|
|
message = getMessageFromError({ customError: 'error string' } as any);
|
|
});
|
|
|
|
it('should return the stringified error', () => {
|
|
expect(message).toBe('{"customError":"error string"}');
|
|
});
|
|
});
|
|
});
|