grafana/public/app/plugins/datasource/grafana-azure-monitor-datasource/utils/useLastError.test.ts
Josh Hunt 9a7c10cffe
AzureMonitor: display errors from requests for the dropdowns (#31921)
* AzureMonitor: display errors from requests for the dropdowns

* switch to array of errors, using just the last one

* unify error object

* move files into utils

* TESTS

* fix tests
2021-03-24 12:06:55 +00:00

27 lines
820 B
TypeScript

import { renderHook, act } from '@testing-library/react-hooks';
import useLastError from './useLastError';
describe('AzureMonitor: useLastError', () => {
it('returns the set error', () => {
const { result } = renderHook(() => useLastError());
act(() => {
result.current[1]('component-a', new Error('an error'));
});
expect(result.current[0]).toBe('an error');
});
it('returns the most recent error', () => {
const { result } = renderHook(() => useLastError());
act(() => {
result.current[1]('component-a', new Error('component a error'));
result.current[1]('component-b', new Error('component b error'));
result.current[1]('component-a', new Error('second component a error'));
});
expect(result.current[0]).toBe('second component a error');
});
});