blob: d55a6de06c308c14d8fadf914cd1b60d8649ebfe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
import { parseErrorMessage } from '~/lib/utils/error_message';
const defaultErrorMessage = 'Default error message';
const errorMessage = 'Returned error message';
const generateErrorWithMessage = (message) => {
return {
message,
};
};
describe('parseErrorMessage', () => {
const ufErrorPrefix = 'Foo:';
beforeEach(() => {
gon.uf_error_prefix = ufErrorPrefix;
});
it.each`
error | expectedResult
${`${ufErrorPrefix} ${errorMessage}`} | ${errorMessage}
${`${errorMessage} ${ufErrorPrefix}`} | ${defaultErrorMessage}
${errorMessage} | ${defaultErrorMessage}
${undefined} | ${defaultErrorMessage}
${''} | ${defaultErrorMessage}
`(
'properly parses "$error" error object and returns "$expectedResult"',
({ error, expectedResult }) => {
const errorObject = generateErrorWithMessage(error);
expect(parseErrorMessage(errorObject, defaultErrorMessage)).toEqual(expectedResult);
},
);
it.each`
error | defaultMessage | expectedResult
${undefined} | ${defaultErrorMessage} | ${defaultErrorMessage}
${''} | ${defaultErrorMessage} | ${defaultErrorMessage}
${{}} | ${defaultErrorMessage} | ${defaultErrorMessage}
${generateErrorWithMessage(errorMessage)} | ${undefined} | ${''}
${generateErrorWithMessage(`${ufErrorPrefix} ${errorMessage}`)} | ${undefined} | ${errorMessage}
${generateErrorWithMessage(errorMessage)} | ${''} | ${''}
${generateErrorWithMessage(`${ufErrorPrefix} ${errorMessage}`)} | ${''} | ${errorMessage}
`(
'properly handles the edge case of error="$error" and defaultMessage="$defaultMessage"',
({ error, defaultMessage, expectedResult }) => {
expect(parseErrorMessage(error, defaultMessage)).toEqual(expectedResult);
},
);
});
|