-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
/
runtimeErrorsAndWarnings.ts
75 lines (69 loc) · 2.24 KB
/
runtimeErrorsAndWarnings.ts
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import chalk = require('chalk');
import slash = require('slash');
const BULLET = '\u25CF ';
const DOCUMENTATION_NOTE = ` ${chalk.bold(
'Code Transformation Documentation:',
)}
https://jestjs.io/docs/code-transformation
`;
const UPGRADE_NOTE = ` ${chalk.bold(
'This error may be caused by a breaking change in Jest 28:',
)}
https://jest-archive-august-2023.netlify.app/docs/28.x/upgrading-to-jest28#transformer
`;
export const makeInvalidReturnValueError = (transformPath: string): string =>
chalk.red(
[
chalk.bold(`${BULLET}Invalid return value:`),
' `process()` or/and `processAsync()` method of code transformer found at ',
` "${slash(transformPath)}" `,
' should return an object or a Promise resolving to an object. The object ',
' must have `code` property with a string of processed code.',
'',
].join('\n') +
UPGRADE_NOTE +
DOCUMENTATION_NOTE,
);
export const makeInvalidSourceMapWarning = (
filename: string,
transformPath: string,
): string =>
chalk.yellow(
[
chalk.bold(`${BULLET}Invalid source map:`),
` The source map for "${slash(filename)}" returned by "${slash(
transformPath,
)}" is invalid.`,
' Proceeding without source mapping for that file.',
].join('\n'),
);
export const makeInvalidSyncTransformerError = (
transformPath: string,
): string =>
chalk.red(
[
chalk.bold(`${BULLET}Invalid synchronous transformer module:`),
` "${slash(
transformPath,
)}" specified in the "transform" object of Jest configuration`,
' must export a `process` function.',
'',
].join('\n') + DOCUMENTATION_NOTE,
);
export const makeInvalidTransformerError = (transformPath: string): string =>
chalk.red(
[
chalk.bold(`${BULLET}Invalid transformer module:`),
` "${slash(
transformPath,
)}" specified in the "transform" object of Jest configuration`,
' must export a `process` or `processAsync` or `createTransformer` function.',
'',
].join('\n') + DOCUMENTATION_NOTE,
);