chore: Fix loading state in the inbox settings page (#4926)
This commit is contained in:
@@ -45,3 +45,13 @@ export const clearCookiesOnLogout = () => {
|
||||
const logoutRedirectLink = globalConfig.LOGOUT_REDIRECT_LINK || '/';
|
||||
window.location = logoutRedirectLink;
|
||||
};
|
||||
|
||||
export const parseAPIErrorResponse = error => {
|
||||
if (error?.response?.data?.message) {
|
||||
return error?.response?.data?.message;
|
||||
}
|
||||
if (error?.response?.data?.error) {
|
||||
return error?.response?.data?.error;
|
||||
}
|
||||
return error;
|
||||
};
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
import { getLoadingStatus, setLoadingStatus } from '../api';
|
||||
import {
|
||||
getLoadingStatus,
|
||||
parseAPIErrorResponse,
|
||||
setLoadingStatus,
|
||||
} from '../api';
|
||||
|
||||
describe('#getLoadingStatus', () => {
|
||||
it('returns correct status', () => {
|
||||
@@ -13,3 +17,23 @@ describe('#setLoadingStatus', () => {
|
||||
expect(state.fetchAPIloadingStatus).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe('#parseAPIErrorResponse', () => {
|
||||
it('returns correct values', () => {
|
||||
expect(
|
||||
parseAPIErrorResponse({
|
||||
response: { data: { message: 'Error Message [message]' } },
|
||||
})
|
||||
).toBe('Error Message [message]');
|
||||
|
||||
expect(
|
||||
parseAPIErrorResponse({
|
||||
response: { data: { error: 'Error Message [error]' } },
|
||||
})
|
||||
).toBe('Error Message [error]');
|
||||
|
||||
expect(parseAPIErrorResponse('Error: 422 Failed')).toBe(
|
||||
'Error: 422 Failed'
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user