@testing-library/react-native 11.3.0 → 11.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/build/act.js +9 -15
- package/build/act.js.map +1 -1
- package/build/cleanup.js +0 -4
- package/build/cleanup.js.map +1 -1
- package/build/config.d.ts +5 -0
- package/build/config.js +4 -5
- package/build/config.js.map +1 -1
- package/build/fireEvent.js +3 -31
- package/build/fireEvent.js.map +1 -1
- package/build/flushMicroTasks.js +0 -3
- package/build/flushMicroTasks.js.map +1 -1
- package/build/helpers/accessiblity.d.ts +3 -0
- package/build/helpers/accessiblity.js +14 -20
- package/build/helpers/accessiblity.js.map +1 -1
- package/build/helpers/component-tree.js +6 -27
- package/build/helpers/component-tree.js.map +1 -1
- package/build/helpers/debugDeep.d.ts +5 -1
- package/build/helpers/debugDeep.js +7 -6
- package/build/helpers/debugDeep.js.map +1 -1
- package/build/helpers/debugShallow.js +0 -5
- package/build/helpers/debugShallow.js.map +1 -1
- package/build/helpers/errors.js +4 -25
- package/build/helpers/errors.js.map +1 -1
- package/build/helpers/filterNodeByType.js +0 -2
- package/build/helpers/filterNodeByType.js.map +1 -1
- package/build/helpers/format.d.ts +5 -1
- package/build/helpers/format.js +17 -7
- package/build/helpers/format.js.map +1 -1
- package/build/helpers/matchers/accessibilityState.d.ts +3 -0
- package/build/helpers/matchers/accessibilityState.js +28 -0
- package/build/helpers/matchers/accessibilityState.js.map +1 -0
- package/build/helpers/matchers/matchArrayProp.js +0 -3
- package/build/helpers/matchers/matchArrayProp.js.map +1 -1
- package/build/helpers/matchers/matchObjectProp.js +0 -2
- package/build/helpers/matchers/matchObjectProp.js.map +1 -1
- package/build/helpers/matchers/matchStringProp.js +0 -3
- package/build/helpers/matchers/matchStringProp.js.map +1 -1
- package/build/helpers/stringValidation.js +0 -7
- package/build/helpers/stringValidation.js.map +1 -1
- package/build/helpers/timers.js +10 -21
- package/build/helpers/timers.js.map +1 -1
- package/build/index.flow.js +66 -21
- package/build/index.js +0 -6
- package/build/index.js.map +1 -1
- package/build/matches.js +2 -4
- package/build/matches.js.map +1 -1
- package/build/pure.js +0 -13
- package/build/pure.js.map +1 -1
- package/build/queries/a11yState.js +15 -13
- package/build/queries/a11yState.js.map +1 -1
- package/build/queries/a11yValue.js +0 -8
- package/build/queries/a11yValue.js.map +1 -1
- package/build/queries/displayValue.js +0 -11
- package/build/queries/displayValue.js.map +1 -1
- package/build/queries/hintText.d.ts +19 -18
- package/build/queries/hintText.js +10 -11
- package/build/queries/hintText.js.map +1 -1
- package/build/queries/labelText.d.ts +7 -6
- package/build/queries/labelText.js +10 -11
- package/build/queries/labelText.js.map +1 -1
- package/build/queries/makeQueries.d.ts +3 -3
- package/build/queries/makeQueries.js +40 -24
- package/build/queries/makeQueries.js.map +1 -1
- package/build/queries/placeholderText.js +0 -11
- package/build/queries/placeholderText.js.map +1 -1
- package/build/queries/role.d.ts +3 -2
- package/build/queries/role.js +23 -13
- package/build/queries/role.js.map +1 -1
- package/build/queries/testId.js +0 -9
- package/build/queries/testId.js.map +1 -1
- package/build/queries/text.js +0 -24
- package/build/queries/text.js.map +1 -1
- package/build/queries/unsafeProps.js +2 -11
- package/build/queries/unsafeProps.js.map +1 -1
- package/build/queries/unsafeType.js +2 -9
- package/build/queries/unsafeType.js.map +1 -1
- package/build/react-versions.js +0 -4
- package/build/react-versions.js.map +1 -1
- package/build/render.d.ts +32 -31
- package/build/render.js +21 -31
- package/build/render.js.map +1 -1
- package/build/renderHook.js +2 -12
- package/build/renderHook.js.map +1 -1
- package/build/screen.js +0 -6
- package/build/screen.js.map +1 -1
- package/build/shallow.js +0 -6
- package/build/shallow.js.map +1 -1
- package/build/waitFor.js +29 -52
- package/build/waitFor.js.map +1 -1
- package/build/waitForElementToBeRemoved.js +2 -11
- package/build/waitForElementToBeRemoved.js.map +1 -1
- package/build/within.d.ts +30 -30
- package/build/within.js +2 -14
- package/build/within.js.map +1 -1
- package/package.json +9 -8
- package/typings/index.flow.js +66 -21
package/build/queries/text.js
CHANGED
|
@@ -4,23 +4,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.bindByTextQueries = void 0;
|
|
7
|
-
|
|
8
7
|
var _reactNative = require("react-native");
|
|
9
|
-
|
|
10
8
|
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _filterNodeByType = require("../helpers/filterNodeByType");
|
|
13
|
-
|
|
14
10
|
var _componentTree = require("../helpers/component-tree");
|
|
15
|
-
|
|
16
11
|
var _matches = require("../matches");
|
|
17
|
-
|
|
18
12
|
var _makeQueries = require("./makeQueries");
|
|
19
|
-
|
|
20
13
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
|
-
|
|
22
14
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
-
|
|
24
15
|
const getChildrenAsText = children => {
|
|
25
16
|
const textContent = [];
|
|
26
17
|
React.Children.forEach(children, child => {
|
|
@@ -28,12 +19,10 @@ const getChildrenAsText = children => {
|
|
|
28
19
|
textContent.push(child);
|
|
29
20
|
return;
|
|
30
21
|
}
|
|
31
|
-
|
|
32
22
|
if (typeof child === 'number') {
|
|
33
23
|
textContent.push(child.toString());
|
|
34
24
|
return;
|
|
35
25
|
}
|
|
36
|
-
|
|
37
26
|
if (child?.props?.children) {
|
|
38
27
|
// Bail on traversing text children down the tree if current node (child)
|
|
39
28
|
// has no text. In such situations, react-test-renderer will traverse down
|
|
@@ -42,7 +31,6 @@ const getChildrenAsText = children => {
|
|
|
42
31
|
if ((0, _filterNodeByType.filterNodeByType)(child, _reactNative.Text)) {
|
|
43
32
|
return;
|
|
44
33
|
}
|
|
45
|
-
|
|
46
34
|
if ((0, _filterNodeByType.filterNodeByType)(child, React.Fragment)) {
|
|
47
35
|
textContent.push(...getChildrenAsText(child.props.children));
|
|
48
36
|
}
|
|
@@ -50,13 +38,10 @@ const getChildrenAsText = children => {
|
|
|
50
38
|
});
|
|
51
39
|
return textContent;
|
|
52
40
|
};
|
|
53
|
-
|
|
54
41
|
const getNodeByText = (node, text, options = {}) => {
|
|
55
42
|
const isTextComponent = (0, _filterNodeByType.filterNodeByType)(node, _reactNative.Text);
|
|
56
|
-
|
|
57
43
|
if (isTextComponent) {
|
|
58
44
|
const textChildren = getChildrenAsText(node.props.children);
|
|
59
|
-
|
|
60
45
|
if (textChildren) {
|
|
61
46
|
const textToTest = textChildren.join('');
|
|
62
47
|
const {
|
|
@@ -66,25 +51,18 @@ const getNodeByText = (node, text, options = {}) => {
|
|
|
66
51
|
return (0, _matches.matches)(text, textToTest, normalizer, exact);
|
|
67
52
|
}
|
|
68
53
|
}
|
|
69
|
-
|
|
70
54
|
return false;
|
|
71
55
|
};
|
|
72
|
-
|
|
73
56
|
const queryAllByText = instance => function queryAllByTextFn(text, options) {
|
|
74
57
|
const baseInstance = (0, _componentTree.isHostElementForType)(instance, _reactNative.Text) ? (0, _componentTree.getCompositeParentOfType)(instance, _reactNative.Text) : instance;
|
|
75
|
-
|
|
76
58
|
if (!baseInstance) {
|
|
77
59
|
return [];
|
|
78
60
|
}
|
|
79
|
-
|
|
80
61
|
const results = baseInstance.findAll(node => getNodeByText(node, text, options));
|
|
81
62
|
return results;
|
|
82
63
|
};
|
|
83
|
-
|
|
84
64
|
const getMultipleError = text => `Found multiple elements with text: ${String(text)}`;
|
|
85
|
-
|
|
86
65
|
const getMissingError = text => `Unable to find an element with text: ${String(text)}`;
|
|
87
|
-
|
|
88
66
|
const {
|
|
89
67
|
getBy,
|
|
90
68
|
getAllBy,
|
|
@@ -93,7 +71,6 @@ const {
|
|
|
93
71
|
findBy,
|
|
94
72
|
findAllBy
|
|
95
73
|
} = (0, _makeQueries.makeQueries)(queryAllByText, getMissingError, getMultipleError);
|
|
96
|
-
|
|
97
74
|
const bindByTextQueries = instance => ({
|
|
98
75
|
getByText: getBy(instance),
|
|
99
76
|
getAllByText: getAllBy(instance),
|
|
@@ -102,6 +79,5 @@ const bindByTextQueries = instance => ({
|
|
|
102
79
|
findByText: findBy(instance),
|
|
103
80
|
findAllByText: findAllBy(instance)
|
|
104
81
|
});
|
|
105
|
-
|
|
106
82
|
exports.bindByTextQueries = bindByTextQueries;
|
|
107
83
|
//# sourceMappingURL=text.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","names":["getChildrenAsText","children","textContent","React","Children","forEach","child","push","toString","props","filterNodeByType","Text","Fragment","getNodeByText","node","text","options","isTextComponent","textChildren","textToTest","join","exact","normalizer","matches","queryAllByText","instance","queryAllByTextFn","baseInstance","isHostElementForType","getCompositeParentOfType","results","findAll","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","makeQueries","bindByTextQueries","getByText","getAllByText","queryByText","findByText","findAllByText"],"sources":["../../src/queries/text.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { Text } from 'react-native';\nimport * as React from 'react';\nimport { filterNodeByType } from '../helpers/filterNodeByType';\nimport {\n isHostElementForType,\n getCompositeParentOfType,\n} from '../helpers/component-tree';\nimport { matches, TextMatch } from '../matches';\nimport type { NormalizerFn } from '../matches';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\n\nexport type TextMatchOptions = {\n exact?: boolean;\n normalizer?: NormalizerFn;\n};\n\nconst getChildrenAsText = (children: React.ReactChild[]) => {\n const textContent: string[] = [];\n React.Children.forEach(children, (child) => {\n if (typeof child === 'string') {\n textContent.push(child);\n return;\n }\n\n if (typeof child === 'number') {\n textContent.push(child.toString());\n return;\n }\n\n if (child?.props?.children) {\n // Bail on traversing text children down the tree if current node (child)\n // has no text. In such situations, react-test-renderer will traverse down\n // this tree in a separate call and run this query again. As a result, the\n // query will match the deepest text node that matches requested text.\n if (filterNodeByType(child, Text)) {\n return;\n }\n\n if (filterNodeByType(child, React.Fragment)) {\n textContent.push(...getChildrenAsText(child.props.children));\n }\n }\n });\n\n return textContent;\n};\n\nconst getNodeByText = (\n node: ReactTestInstance,\n text: TextMatch,\n options: TextMatchOptions = {}\n) => {\n const isTextComponent = filterNodeByType(node, Text);\n if (isTextComponent) {\n const textChildren = getChildrenAsText(node.props.children);\n if (textChildren) {\n const textToTest = textChildren.join('');\n const { exact, normalizer } = options;\n return matches(text, textToTest, normalizer, exact);\n }\n }\n return false;\n};\n\nconst queryAllByText = (\n instance: ReactTestInstance\n): ((\n text: TextMatch,\n options?: TextMatchOptions\n) => Array<ReactTestInstance>) =>\n function queryAllByTextFn(text, options) {\n const baseInstance = isHostElementForType(instance, Text)\n ? getCompositeParentOfType(instance, Text)\n : instance;\n\n if (!baseInstance) {\n return [];\n }\n\n const results = baseInstance.findAll((node) =>\n getNodeByText(node, text, options)\n );\n\n return results;\n };\n\nconst getMultipleError = (text: TextMatch) =>\n `Found multiple elements with text: ${String(text)}`;\nconst getMissingError = (text: TextMatch) =>\n `Unable to find an element with text: ${String(text)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByText,\n getMissingError,\n getMultipleError\n);\n\nexport type ByTextQueries = {\n getByText: GetByQuery<TextMatch, TextMatchOptions>;\n getAllByText: GetAllByQuery<TextMatch, TextMatchOptions>;\n queryByText: QueryByQuery<TextMatch, TextMatchOptions>;\n queryAllByText: QueryAllByQuery<TextMatch, TextMatchOptions>;\n findByText: FindByQuery<TextMatch, TextMatchOptions>;\n findAllByText: FindAllByQuery<TextMatch, TextMatchOptions>;\n};\n\nexport const bindByTextQueries = (\n instance: ReactTestInstance\n): ByTextQueries => ({\n getByText: getBy(instance),\n getAllByText: getAllBy(instance),\n queryByText: queryBy(instance),\n queryAllByText: queryAllBy(instance),\n findByText: findBy(instance),\n findAllByText: findAllBy(instance),\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"text.js","names":["getChildrenAsText","children","textContent","React","Children","forEach","child","push","toString","props","filterNodeByType","Text","Fragment","getNodeByText","node","text","options","isTextComponent","textChildren","textToTest","join","exact","normalizer","matches","queryAllByText","instance","queryAllByTextFn","baseInstance","isHostElementForType","getCompositeParentOfType","results","findAll","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","makeQueries","bindByTextQueries","getByText","getAllByText","queryByText","findByText","findAllByText"],"sources":["../../src/queries/text.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { Text } from 'react-native';\nimport * as React from 'react';\nimport { filterNodeByType } from '../helpers/filterNodeByType';\nimport {\n isHostElementForType,\n getCompositeParentOfType,\n} from '../helpers/component-tree';\nimport { matches, TextMatch } from '../matches';\nimport type { NormalizerFn } from '../matches';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\n\nexport type TextMatchOptions = {\n exact?: boolean;\n normalizer?: NormalizerFn;\n};\n\nconst getChildrenAsText = (children: React.ReactChild[]) => {\n const textContent: string[] = [];\n React.Children.forEach(children, (child) => {\n if (typeof child === 'string') {\n textContent.push(child);\n return;\n }\n\n if (typeof child === 'number') {\n textContent.push(child.toString());\n return;\n }\n\n if (child?.props?.children) {\n // Bail on traversing text children down the tree if current node (child)\n // has no text. In such situations, react-test-renderer will traverse down\n // this tree in a separate call and run this query again. As a result, the\n // query will match the deepest text node that matches requested text.\n if (filterNodeByType(child, Text)) {\n return;\n }\n\n if (filterNodeByType(child, React.Fragment)) {\n textContent.push(...getChildrenAsText(child.props.children));\n }\n }\n });\n\n return textContent;\n};\n\nconst getNodeByText = (\n node: ReactTestInstance,\n text: TextMatch,\n options: TextMatchOptions = {}\n) => {\n const isTextComponent = filterNodeByType(node, Text);\n if (isTextComponent) {\n const textChildren = getChildrenAsText(node.props.children);\n if (textChildren) {\n const textToTest = textChildren.join('');\n const { exact, normalizer } = options;\n return matches(text, textToTest, normalizer, exact);\n }\n }\n return false;\n};\n\nconst queryAllByText = (\n instance: ReactTestInstance\n): ((\n text: TextMatch,\n options?: TextMatchOptions\n) => Array<ReactTestInstance>) =>\n function queryAllByTextFn(text, options) {\n const baseInstance = isHostElementForType(instance, Text)\n ? getCompositeParentOfType(instance, Text)\n : instance;\n\n if (!baseInstance) {\n return [];\n }\n\n const results = baseInstance.findAll((node) =>\n getNodeByText(node, text, options)\n );\n\n return results;\n };\n\nconst getMultipleError = (text: TextMatch) =>\n `Found multiple elements with text: ${String(text)}`;\nconst getMissingError = (text: TextMatch) =>\n `Unable to find an element with text: ${String(text)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByText,\n getMissingError,\n getMultipleError\n);\n\nexport type ByTextQueries = {\n getByText: GetByQuery<TextMatch, TextMatchOptions>;\n getAllByText: GetAllByQuery<TextMatch, TextMatchOptions>;\n queryByText: QueryByQuery<TextMatch, TextMatchOptions>;\n queryAllByText: QueryAllByQuery<TextMatch, TextMatchOptions>;\n findByText: FindByQuery<TextMatch, TextMatchOptions>;\n findAllByText: FindAllByQuery<TextMatch, TextMatchOptions>;\n};\n\nexport const bindByTextQueries = (\n instance: ReactTestInstance\n): ByTextQueries => ({\n getByText: getBy(instance),\n getAllByText: getAllBy(instance),\n queryByText: queryBy(instance),\n queryAllByText: queryAllBy(instance),\n findByText: findBy(instance),\n findAllByText: findAllBy(instance),\n});\n"],"mappings":"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"}
|
|
@@ -4,13 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.bindUnsafeByPropsQueries = void 0;
|
|
7
|
-
|
|
8
7
|
var _prettyFormat = _interopRequireDefault(require("pretty-format"));
|
|
9
|
-
|
|
10
8
|
var _errors = require("../helpers/errors");
|
|
11
|
-
|
|
12
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
10
|
const UNSAFE_getByProps = instance => function getByPropsFn(props) {
|
|
15
11
|
try {
|
|
16
12
|
return instance.findByProps(props);
|
|
@@ -18,17 +14,13 @@ const UNSAFE_getByProps = instance => function getByPropsFn(props) {
|
|
|
18
14
|
throw new _errors.ErrorWithStack((0, _errors.prepareErrorMessage)(error), getByPropsFn);
|
|
19
15
|
}
|
|
20
16
|
};
|
|
21
|
-
|
|
22
17
|
const UNSAFE_getAllByProps = instance => function getAllByPropsFn(props) {
|
|
23
18
|
const results = instance.findAllByProps(props);
|
|
24
|
-
|
|
25
19
|
if (results.length === 0) {
|
|
26
20
|
throw new _errors.ErrorWithStack(`No instances found with props:\n${(0, _prettyFormat.default)(props)}`, getAllByPropsFn);
|
|
27
21
|
}
|
|
28
|
-
|
|
29
22
|
return results;
|
|
30
23
|
};
|
|
31
|
-
|
|
32
24
|
const UNSAFE_queryByProps = instance => function queryByPropsFn(props) {
|
|
33
25
|
try {
|
|
34
26
|
return UNSAFE_getByProps(instance)(props);
|
|
@@ -36,15 +28,15 @@ const UNSAFE_queryByProps = instance => function queryByPropsFn(props) {
|
|
|
36
28
|
return (0, _errors.createQueryByError)(error, queryByPropsFn);
|
|
37
29
|
}
|
|
38
30
|
};
|
|
39
|
-
|
|
40
31
|
const UNSAFE_queryAllByProps = instance => props => {
|
|
41
32
|
try {
|
|
42
33
|
return UNSAFE_getAllByProps(instance)(props);
|
|
43
34
|
} catch (error) {
|
|
44
35
|
return [];
|
|
45
36
|
}
|
|
46
|
-
};
|
|
37
|
+
};
|
|
47
38
|
|
|
39
|
+
// Unsafe aliases
|
|
48
40
|
|
|
49
41
|
// TODO: migrate to makeQueries pattern
|
|
50
42
|
const bindUnsafeByPropsQueries = instance => ({
|
|
@@ -53,6 +45,5 @@ const bindUnsafeByPropsQueries = instance => ({
|
|
|
53
45
|
UNSAFE_queryByProps: UNSAFE_queryByProps(instance),
|
|
54
46
|
UNSAFE_queryAllByProps: UNSAFE_queryAllByProps(instance)
|
|
55
47
|
});
|
|
56
|
-
|
|
57
48
|
exports.bindUnsafeByPropsQueries = bindUnsafeByPropsQueries;
|
|
58
49
|
//# sourceMappingURL=unsafeProps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsafeProps.js","names":["UNSAFE_getByProps","instance","getByPropsFn","props","findByProps","error","ErrorWithStack","prepareErrorMessage","UNSAFE_getAllByProps","getAllByPropsFn","results","findAllByProps","length","prettyFormat","UNSAFE_queryByProps","queryByPropsFn","createQueryByError","UNSAFE_queryAllByProps","bindUnsafeByPropsQueries"],"sources":["../../src/queries/unsafeProps.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport prettyFormat from 'pretty-format';\nimport { ErrorWithStack, prepareErrorMessage } from '../helpers/errors';\nimport { createQueryByError } from '../helpers/errors';\n\nconst UNSAFE_getByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => ReactTestInstance) =>\n function getByPropsFn(props: { [propName: string]: any }) {\n try {\n return instance.findByProps(props);\n } catch (error) {\n throw new ErrorWithStack(prepareErrorMessage(error), getByPropsFn);\n }\n };\n\nconst UNSAFE_getAllByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => Array<ReactTestInstance>) =>\n function getAllByPropsFn(props: { [propName: string]: any }) {\n const results = instance.findAllByProps(props);\n if (results.length === 0) {\n throw new ErrorWithStack(\n `No instances found with props:\\n${prettyFormat(props)}`,\n getAllByPropsFn\n );\n }\n return results;\n };\n\nconst UNSAFE_queryByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => ReactTestInstance | null) =>\n function queryByPropsFn(props: { [propName: string]: any }) {\n try {\n return UNSAFE_getByProps(instance)(props);\n } catch (error) {\n return createQueryByError(error, queryByPropsFn);\n }\n };\n\nconst UNSAFE_queryAllByProps =\n (\n instance: ReactTestInstance\n ): ((props: { [propName: string]: any }) => Array<ReactTestInstance>) =>\n (props: { [propName: string]: any }) => {\n try {\n return UNSAFE_getAllByProps(instance)(props);\n } catch (error) {\n return [];\n }\n };\n\n// Unsafe aliases\nexport type UnsafeByPropsQueries = {\n UNSAFE_getByProps: (props: { [key: string]: any }) => ReactTestInstance;\n UNSAFE_getAllByProps: (props: {\n [key: string]: any;\n }) => Array<ReactTestInstance>;\n UNSAFE_queryByProps: (props: {\n [key: string]: any;\n }) => ReactTestInstance | null;\n UNSAFE_queryAllByProps: (props: {\n [key: string]: any;\n }) => Array<ReactTestInstance>;\n};\n\n// TODO: migrate to makeQueries pattern\nexport const bindUnsafeByPropsQueries = (\n instance: ReactTestInstance\n): UnsafeByPropsQueries => ({\n UNSAFE_getByProps: UNSAFE_getByProps(instance),\n UNSAFE_getAllByProps: UNSAFE_getAllByProps(instance),\n UNSAFE_queryByProps: UNSAFE_queryByProps(instance),\n UNSAFE_queryAllByProps: UNSAFE_queryAllByProps(instance),\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"unsafeProps.js","names":["UNSAFE_getByProps","instance","getByPropsFn","props","findByProps","error","ErrorWithStack","prepareErrorMessage","UNSAFE_getAllByProps","getAllByPropsFn","results","findAllByProps","length","prettyFormat","UNSAFE_queryByProps","queryByPropsFn","createQueryByError","UNSAFE_queryAllByProps","bindUnsafeByPropsQueries"],"sources":["../../src/queries/unsafeProps.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport prettyFormat from 'pretty-format';\nimport { ErrorWithStack, prepareErrorMessage } from '../helpers/errors';\nimport { createQueryByError } from '../helpers/errors';\n\nconst UNSAFE_getByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => ReactTestInstance) =>\n function getByPropsFn(props: { [propName: string]: any }) {\n try {\n return instance.findByProps(props);\n } catch (error) {\n throw new ErrorWithStack(prepareErrorMessage(error), getByPropsFn);\n }\n };\n\nconst UNSAFE_getAllByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => Array<ReactTestInstance>) =>\n function getAllByPropsFn(props: { [propName: string]: any }) {\n const results = instance.findAllByProps(props);\n if (results.length === 0) {\n throw new ErrorWithStack(\n `No instances found with props:\\n${prettyFormat(props)}`,\n getAllByPropsFn\n );\n }\n return results;\n };\n\nconst UNSAFE_queryByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => ReactTestInstance | null) =>\n function queryByPropsFn(props: { [propName: string]: any }) {\n try {\n return UNSAFE_getByProps(instance)(props);\n } catch (error) {\n return createQueryByError(error, queryByPropsFn);\n }\n };\n\nconst UNSAFE_queryAllByProps =\n (\n instance: ReactTestInstance\n ): ((props: { [propName: string]: any }) => Array<ReactTestInstance>) =>\n (props: { [propName: string]: any }) => {\n try {\n return UNSAFE_getAllByProps(instance)(props);\n } catch (error) {\n return [];\n }\n };\n\n// Unsafe aliases\nexport type UnsafeByPropsQueries = {\n UNSAFE_getByProps: (props: { [key: string]: any }) => ReactTestInstance;\n UNSAFE_getAllByProps: (props: {\n [key: string]: any;\n }) => Array<ReactTestInstance>;\n UNSAFE_queryByProps: (props: {\n [key: string]: any;\n }) => ReactTestInstance | null;\n UNSAFE_queryAllByProps: (props: {\n [key: string]: any;\n }) => Array<ReactTestInstance>;\n};\n\n// TODO: migrate to makeQueries pattern\nexport const bindUnsafeByPropsQueries = (\n instance: ReactTestInstance\n): UnsafeByPropsQueries => ({\n UNSAFE_getByProps: UNSAFE_getByProps(instance),\n UNSAFE_getAllByProps: UNSAFE_getAllByProps(instance),\n UNSAFE_queryByProps: UNSAFE_queryByProps(instance),\n UNSAFE_queryAllByProps: UNSAFE_queryAllByProps(instance),\n});\n"],"mappings":";;;;;;AACA;AACA;AAAwE;AAGxE,MAAMA,iBAAiB,GACrBC,QAA2B,IAE3B,SAASC,YAAY,CAACC,KAAkC,EAAE;EACxD,IAAI;IACF,OAAOF,QAAQ,CAACG,WAAW,CAACD,KAAK,CAAC;EACpC,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,MAAM,IAAIC,sBAAc,CAAC,IAAAC,2BAAmB,EAACF,KAAK,CAAC,EAAEH,YAAY,CAAC;EACpE;AACF,CAAC;AAEH,MAAMM,oBAAoB,GACxBP,QAA2B,IAE3B,SAASQ,eAAe,CAACN,KAAkC,EAAE;EAC3D,MAAMO,OAAO,GAAGT,QAAQ,CAACU,cAAc,CAACR,KAAK,CAAC;EAC9C,IAAIO,OAAO,CAACE,MAAM,KAAK,CAAC,EAAE;IACxB,MAAM,IAAIN,sBAAc,CACrB,mCAAkC,IAAAO,qBAAY,EAACV,KAAK,CAAE,EAAC,EACxDM,eAAe,CAChB;EACH;EACA,OAAOC,OAAO;AAChB,CAAC;AAEH,MAAMI,mBAAmB,GACvBb,QAA2B,IAE3B,SAASc,cAAc,CAACZ,KAAkC,EAAE;EAC1D,IAAI;IACF,OAAOH,iBAAiB,CAACC,QAAQ,CAAC,CAACE,KAAK,CAAC;EAC3C,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,IAAAW,0BAAkB,EAACX,KAAK,EAAEU,cAAc,CAAC;EAClD;AACF,CAAC;AAEH,MAAME,sBAAsB,GAExBhB,QAA2B,IAE5BE,KAAkC,IAAK;EACtC,IAAI;IACF,OAAOK,oBAAoB,CAACP,QAAQ,CAAC,CAACE,KAAK,CAAC;EAC9C,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,EAAE;EACX;AACF,CAAC;;AAEH;;AAcA;AACO,MAAMa,wBAAwB,GACnCjB,QAA2B,KACD;EAC1BD,iBAAiB,EAAEA,iBAAiB,CAACC,QAAQ,CAAC;EAC9CO,oBAAoB,EAAEA,oBAAoB,CAACP,QAAQ,CAAC;EACpDa,mBAAmB,EAAEA,mBAAmB,CAACb,QAAQ,CAAC;EAClDgB,sBAAsB,EAAEA,sBAAsB,CAAChB,QAAQ;AACzD,CAAC,CAAC;AAAC"}
|
|
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.bindUnsafeByTypeQueries = void 0;
|
|
7
|
-
|
|
8
7
|
var _errors = require("../helpers/errors");
|
|
9
|
-
|
|
10
8
|
const UNSAFE_getByType = instance => function getByTypeFn(type) {
|
|
11
9
|
try {
|
|
12
10
|
return instance.findByType(type);
|
|
@@ -14,17 +12,13 @@ const UNSAFE_getByType = instance => function getByTypeFn(type) {
|
|
|
14
12
|
throw new _errors.ErrorWithStack((0, _errors.prepareErrorMessage)(error), getByTypeFn);
|
|
15
13
|
}
|
|
16
14
|
};
|
|
17
|
-
|
|
18
15
|
const UNSAFE_getAllByType = instance => function getAllByTypeFn(type) {
|
|
19
16
|
const results = instance.findAllByType(type);
|
|
20
|
-
|
|
21
17
|
if (results.length === 0) {
|
|
22
18
|
throw new _errors.ErrorWithStack('No instances found', getAllByTypeFn);
|
|
23
19
|
}
|
|
24
|
-
|
|
25
20
|
return results;
|
|
26
21
|
};
|
|
27
|
-
|
|
28
22
|
const UNSAFE_queryByType = instance => function queryByTypeFn(type) {
|
|
29
23
|
try {
|
|
30
24
|
return UNSAFE_getByType(instance)(type);
|
|
@@ -32,15 +26,15 @@ const UNSAFE_queryByType = instance => function queryByTypeFn(type) {
|
|
|
32
26
|
return (0, _errors.createQueryByError)(error, queryByTypeFn);
|
|
33
27
|
}
|
|
34
28
|
};
|
|
35
|
-
|
|
36
29
|
const UNSAFE_queryAllByType = instance => type => {
|
|
37
30
|
try {
|
|
38
31
|
return UNSAFE_getAllByType(instance)(type);
|
|
39
32
|
} catch (error) {
|
|
40
33
|
return [];
|
|
41
34
|
}
|
|
42
|
-
};
|
|
35
|
+
};
|
|
43
36
|
|
|
37
|
+
// Unsafe aliases
|
|
44
38
|
|
|
45
39
|
// TODO: migrate to makeQueries pattern
|
|
46
40
|
const bindUnsafeByTypeQueries = instance => ({
|
|
@@ -49,6 +43,5 @@ const bindUnsafeByTypeQueries = instance => ({
|
|
|
49
43
|
UNSAFE_queryByType: UNSAFE_queryByType(instance),
|
|
50
44
|
UNSAFE_queryAllByType: UNSAFE_queryAllByType(instance)
|
|
51
45
|
});
|
|
52
|
-
|
|
53
46
|
exports.bindUnsafeByTypeQueries = bindUnsafeByTypeQueries;
|
|
54
47
|
//# sourceMappingURL=unsafeType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsafeType.js","names":["UNSAFE_getByType","instance","getByTypeFn","type","findByType","error","ErrorWithStack","prepareErrorMessage","UNSAFE_getAllByType","getAllByTypeFn","results","findAllByType","length","UNSAFE_queryByType","queryByTypeFn","createQueryByError","UNSAFE_queryAllByType","bindUnsafeByTypeQueries"],"sources":["../../src/queries/unsafeType.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport * as React from 'react';\nimport { ErrorWithStack, prepareErrorMessage } from '../helpers/errors';\nimport { createQueryByError } from '../helpers/errors';\n\nconst UNSAFE_getByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => ReactTestInstance) =>\n function getByTypeFn(type: React.ComponentType<any>) {\n try {\n return instance.findByType(type);\n } catch (error) {\n throw new ErrorWithStack(prepareErrorMessage(error), getByTypeFn);\n }\n };\n\nconst UNSAFE_getAllByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => Array<ReactTestInstance>) =>\n function getAllByTypeFn(type: React.ComponentType<any>) {\n const results = instance.findAllByType(type);\n if (results.length === 0) {\n throw new ErrorWithStack('No instances found', getAllByTypeFn);\n }\n return results;\n };\n\nconst UNSAFE_queryByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => ReactTestInstance | null) =>\n function queryByTypeFn(type: React.ComponentType<any>) {\n try {\n return UNSAFE_getByType(instance)(type);\n } catch (error) {\n return createQueryByError(error, queryByTypeFn);\n }\n };\n\nconst UNSAFE_queryAllByType =\n (\n instance: ReactTestInstance\n ): ((type: React.ComponentType<any>) => Array<ReactTestInstance>) =>\n (type: React.ComponentType<any>) => {\n try {\n return UNSAFE_getAllByType(instance)(type);\n } catch (error) {\n return [];\n }\n };\n\n// Unsafe aliases\nexport type UnsafeByTypeQueries = {\n UNSAFE_getByType: <P>(type: React.ComponentType<P>) => ReactTestInstance;\n UNSAFE_getAllByType: <P>(\n type: React.ComponentType<P>\n ) => Array<ReactTestInstance>;\n UNSAFE_queryByType: <P>(\n type: React.ComponentType<P>\n ) => ReactTestInstance | null;\n UNSAFE_queryAllByType: <P>(\n type: React.ComponentType<P>\n ) => Array<ReactTestInstance>;\n};\n\n// TODO: migrate to makeQueries pattern\nexport const bindUnsafeByTypeQueries = (\n instance: ReactTestInstance\n): UnsafeByTypeQueries => ({\n UNSAFE_getByType: UNSAFE_getByType(instance),\n UNSAFE_getAllByType: UNSAFE_getAllByType(instance),\n UNSAFE_queryByType: UNSAFE_queryByType(instance),\n UNSAFE_queryAllByType: UNSAFE_queryAllByType(instance),\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"unsafeType.js","names":["UNSAFE_getByType","instance","getByTypeFn","type","findByType","error","ErrorWithStack","prepareErrorMessage","UNSAFE_getAllByType","getAllByTypeFn","results","findAllByType","length","UNSAFE_queryByType","queryByTypeFn","createQueryByError","UNSAFE_queryAllByType","bindUnsafeByTypeQueries"],"sources":["../../src/queries/unsafeType.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport * as React from 'react';\nimport { ErrorWithStack, prepareErrorMessage } from '../helpers/errors';\nimport { createQueryByError } from '../helpers/errors';\n\nconst UNSAFE_getByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => ReactTestInstance) =>\n function getByTypeFn(type: React.ComponentType<any>) {\n try {\n return instance.findByType(type);\n } catch (error) {\n throw new ErrorWithStack(prepareErrorMessage(error), getByTypeFn);\n }\n };\n\nconst UNSAFE_getAllByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => Array<ReactTestInstance>) =>\n function getAllByTypeFn(type: React.ComponentType<any>) {\n const results = instance.findAllByType(type);\n if (results.length === 0) {\n throw new ErrorWithStack('No instances found', getAllByTypeFn);\n }\n return results;\n };\n\nconst UNSAFE_queryByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => ReactTestInstance | null) =>\n function queryByTypeFn(type: React.ComponentType<any>) {\n try {\n return UNSAFE_getByType(instance)(type);\n } catch (error) {\n return createQueryByError(error, queryByTypeFn);\n }\n };\n\nconst UNSAFE_queryAllByType =\n (\n instance: ReactTestInstance\n ): ((type: React.ComponentType<any>) => Array<ReactTestInstance>) =>\n (type: React.ComponentType<any>) => {\n try {\n return UNSAFE_getAllByType(instance)(type);\n } catch (error) {\n return [];\n }\n };\n\n// Unsafe aliases\nexport type UnsafeByTypeQueries = {\n UNSAFE_getByType: <P>(type: React.ComponentType<P>) => ReactTestInstance;\n UNSAFE_getAllByType: <P>(\n type: React.ComponentType<P>\n ) => Array<ReactTestInstance>;\n UNSAFE_queryByType: <P>(\n type: React.ComponentType<P>\n ) => ReactTestInstance | null;\n UNSAFE_queryAllByType: <P>(\n type: React.ComponentType<P>\n ) => Array<ReactTestInstance>;\n};\n\n// TODO: migrate to makeQueries pattern\nexport const bindUnsafeByTypeQueries = (\n instance: ReactTestInstance\n): UnsafeByTypeQueries => ({\n UNSAFE_getByType: UNSAFE_getByType(instance),\n UNSAFE_getAllByType: UNSAFE_getAllByType(instance),\n UNSAFE_queryByType: UNSAFE_queryByType(instance),\n UNSAFE_queryAllByType: UNSAFE_queryAllByType(instance),\n});\n"],"mappings":";;;;;;AAEA;AAGA,MAAMA,gBAAgB,GACpBC,QAA2B,IAE3B,SAASC,WAAW,CAACC,IAA8B,EAAE;EACnD,IAAI;IACF,OAAOF,QAAQ,CAACG,UAAU,CAACD,IAAI,CAAC;EAClC,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,MAAM,IAAIC,sBAAc,CAAC,IAAAC,2BAAmB,EAACF,KAAK,CAAC,EAAEH,WAAW,CAAC;EACnE;AACF,CAAC;AAEH,MAAMM,mBAAmB,GACvBP,QAA2B,IAE3B,SAASQ,cAAc,CAACN,IAA8B,EAAE;EACtD,MAAMO,OAAO,GAAGT,QAAQ,CAACU,aAAa,CAACR,IAAI,CAAC;EAC5C,IAAIO,OAAO,CAACE,MAAM,KAAK,CAAC,EAAE;IACxB,MAAM,IAAIN,sBAAc,CAAC,oBAAoB,EAAEG,cAAc,CAAC;EAChE;EACA,OAAOC,OAAO;AAChB,CAAC;AAEH,MAAMG,kBAAkB,GACtBZ,QAA2B,IAE3B,SAASa,aAAa,CAACX,IAA8B,EAAE;EACrD,IAAI;IACF,OAAOH,gBAAgB,CAACC,QAAQ,CAAC,CAACE,IAAI,CAAC;EACzC,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,IAAAU,0BAAkB,EAACV,KAAK,EAAES,aAAa,CAAC;EACjD;AACF,CAAC;AAEH,MAAME,qBAAqB,GAEvBf,QAA2B,IAE5BE,IAA8B,IAAK;EAClC,IAAI;IACF,OAAOK,mBAAmB,CAACP,QAAQ,CAAC,CAACE,IAAI,CAAC;EAC5C,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,EAAE;EACX;AACF,CAAC;;AAEH;;AAcA;AACO,MAAMY,uBAAuB,GAClChB,QAA2B,KACF;EACzBD,gBAAgB,EAAEA,gBAAgB,CAACC,QAAQ,CAAC;EAC5CO,mBAAmB,EAAEA,mBAAmB,CAACP,QAAQ,CAAC;EAClDY,kBAAkB,EAAEA,kBAAkB,CAACZ,QAAQ,CAAC;EAChDe,qBAAqB,EAAEA,qBAAqB,CAACf,QAAQ;AACvD,CAAC,CAAC;AAAC"}
|
package/build/react-versions.js
CHANGED
|
@@ -4,13 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.checkReactVersionAtLeast = checkReactVersionAtLeast;
|
|
7
|
-
|
|
8
7
|
var React = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
8
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
|
-
|
|
12
9
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
13
|
-
|
|
14
10
|
function checkReactVersionAtLeast(major, minor) {
|
|
15
11
|
if (React.version === undefined) return false;
|
|
16
12
|
const [actualMajor, actualMinor] = React.version.split('.').map(Number);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-versions.js","names":["checkReactVersionAtLeast","major","minor","React","version","undefined","actualMajor","actualMinor","split","map","Number"],"sources":["../src/react-versions.ts"],"sourcesContent":["import * as React from 'react';\n\nexport function checkReactVersionAtLeast(\n major: number,\n minor: number\n): boolean {\n if (React.version === undefined) return false;\n const [actualMajor, actualMinor] = React.version.split('.').map(Number);\n\n return actualMajor > major || (actualMajor === major && actualMinor >= minor);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"react-versions.js","names":["checkReactVersionAtLeast","major","minor","React","version","undefined","actualMajor","actualMinor","split","map","Number"],"sources":["../src/react-versions.ts"],"sourcesContent":["import * as React from 'react';\n\nexport function checkReactVersionAtLeast(\n major: number,\n minor: number\n): boolean {\n if (React.version === undefined) return false;\n const [actualMajor, actualMinor] = React.version.split('.').map(Number);\n\n return actualMajor > major || (actualMajor === major && actualMinor >= minor);\n}\n"],"mappings":";;;;;;AAAA;AAA+B;AAAA;AAExB,SAASA,wBAAwB,CACtCC,KAAa,EACbC,KAAa,EACJ;EACT,IAAIC,KAAK,CAACC,OAAO,KAAKC,SAAS,EAAE,OAAO,KAAK;EAC7C,MAAM,CAACC,WAAW,EAAEC,WAAW,CAAC,GAAGJ,KAAK,CAACC,OAAO,CAACI,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAACC,MAAM,CAAC;EAEvE,OAAOJ,WAAW,GAAGL,KAAK,IAAKK,WAAW,KAAKL,KAAK,IAAIM,WAAW,IAAIL,KAAM;AAC/E"}
|
package/build/render.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import TestRenderer from 'react-test-renderer';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
+
import { DebugOptions } from './helpers/debugDeep';
|
|
3
4
|
export declare type RenderOptions = {
|
|
4
5
|
wrapper?: React.ComponentType<any>;
|
|
5
6
|
createNodeMock?: (element: React.ReactElement) => any;
|
|
@@ -119,46 +120,46 @@ export default function render<T>(component: React.ReactElement<T>, { wrapper: W
|
|
|
119
120
|
findAllByAccessibilityState: import("./queries/makeQueries").FindAllByQuery<import("react-native").AccessibilityState, void>;
|
|
120
121
|
getByRole: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch, {
|
|
121
122
|
name?: import("./matches").TextMatch | undefined;
|
|
122
|
-
}>;
|
|
123
|
+
} & import("react-native").AccessibilityState>;
|
|
123
124
|
getAllByRole: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch, {
|
|
124
125
|
name?: import("./matches").TextMatch | undefined;
|
|
125
|
-
}>;
|
|
126
|
+
} & import("react-native").AccessibilityState>;
|
|
126
127
|
queryByRole: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch, {
|
|
127
128
|
name?: import("./matches").TextMatch | undefined;
|
|
128
|
-
}>;
|
|
129
|
+
} & import("react-native").AccessibilityState>;
|
|
129
130
|
queryAllByRole: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch, {
|
|
130
131
|
name?: import("./matches").TextMatch | undefined;
|
|
131
|
-
}>;
|
|
132
|
+
} & import("react-native").AccessibilityState>;
|
|
132
133
|
findByRole: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch, {
|
|
133
134
|
name?: import("./matches").TextMatch | undefined;
|
|
134
|
-
}>;
|
|
135
|
+
} & import("react-native").AccessibilityState>;
|
|
135
136
|
findAllByRole: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch, {
|
|
136
137
|
name?: import("./matches").TextMatch | undefined;
|
|
137
|
-
}>;
|
|
138
|
-
getByHintText: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch,
|
|
139
|
-
getAllByHintText: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch,
|
|
140
|
-
queryByHintText: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch,
|
|
141
|
-
queryAllByHintText: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch,
|
|
142
|
-
findByHintText: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch,
|
|
143
|
-
findAllByHintText: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch,
|
|
144
|
-
getByA11yHint: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch,
|
|
145
|
-
getAllByA11yHint: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch,
|
|
146
|
-
queryByA11yHint: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch,
|
|
147
|
-
queryAllByA11yHint: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch,
|
|
148
|
-
findByA11yHint: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch,
|
|
149
|
-
findAllByA11yHint: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch,
|
|
150
|
-
getByAccessibilityHint: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch,
|
|
151
|
-
getAllByAccessibilityHint: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch,
|
|
152
|
-
queryByAccessibilityHint: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch,
|
|
153
|
-
queryAllByAccessibilityHint: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch,
|
|
154
|
-
findByAccessibilityHint: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch,
|
|
155
|
-
findAllByAccessibilityHint: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch,
|
|
156
|
-
getByLabelText: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch,
|
|
157
|
-
getAllByLabelText: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch,
|
|
158
|
-
queryByLabelText: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch,
|
|
159
|
-
queryAllByLabelText: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch,
|
|
160
|
-
findByLabelText: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch,
|
|
161
|
-
findAllByLabelText: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch,
|
|
138
|
+
} & import("react-native").AccessibilityState>;
|
|
139
|
+
getByHintText: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
140
|
+
getAllByHintText: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
141
|
+
queryByHintText: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
142
|
+
queryAllByHintText: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
143
|
+
findByHintText: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
144
|
+
findAllByHintText: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
145
|
+
getByA11yHint: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
146
|
+
getAllByA11yHint: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
147
|
+
queryByA11yHint: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
148
|
+
queryAllByA11yHint: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
149
|
+
findByA11yHint: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
150
|
+
findAllByA11yHint: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
151
|
+
getByAccessibilityHint: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
152
|
+
getAllByAccessibilityHint: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
153
|
+
queryByAccessibilityHint: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
154
|
+
queryAllByAccessibilityHint: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
155
|
+
findByAccessibilityHint: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
156
|
+
findAllByAccessibilityHint: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
157
|
+
getByLabelText: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
158
|
+
getAllByLabelText: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
159
|
+
queryByLabelText: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
160
|
+
queryAllByLabelText: import("./queries/makeQueries").QueryAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
161
|
+
findByLabelText: import("./queries/makeQueries").FindByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
162
|
+
findAllByLabelText: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
162
163
|
getByPlaceholderText: import("./queries/makeQueries").GetByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
163
164
|
getAllByPlaceholderText: import("./queries/makeQueries").GetAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
164
165
|
queryByPlaceholderText: import("./queries/makeQueries").QueryByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
@@ -185,7 +186,7 @@ export default function render<T>(component: React.ReactElement<T>, { wrapper: W
|
|
|
185
186
|
findAllByText: import("./queries/makeQueries").FindAllByQuery<import("./matches").TextMatch, import("./queries/text").TextMatchOptions>;
|
|
186
187
|
};
|
|
187
188
|
interface DebugFunction {
|
|
188
|
-
(
|
|
189
|
+
(options?: DebugOptions | string): void;
|
|
189
190
|
shallow: (message?: string) => void;
|
|
190
191
|
}
|
|
191
192
|
export {};
|
package/build/render.js
CHANGED
|
@@ -4,31 +4,19 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = render;
|
|
7
|
-
|
|
8
7
|
var _reactTestRenderer = _interopRequireDefault(require("react-test-renderer"));
|
|
9
|
-
|
|
10
8
|
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _act = _interopRequireDefault(require("./act"));
|
|
13
|
-
|
|
14
10
|
var _cleanup = require("./cleanup");
|
|
15
|
-
|
|
16
11
|
var _debugShallow = _interopRequireDefault(require("./helpers/debugShallow"));
|
|
17
|
-
|
|
18
12
|
var _debugDeep = _interopRequireDefault(require("./helpers/debugDeep"));
|
|
19
|
-
|
|
20
13
|
var _within = require("./within");
|
|
21
|
-
|
|
22
14
|
var _screen = require("./screen");
|
|
23
|
-
|
|
24
15
|
var _stringValidation = require("./helpers/stringValidation");
|
|
25
|
-
|
|
16
|
+
var _config = require("./config");
|
|
26
17
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
-
|
|
28
18
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
-
|
|
30
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
|
-
|
|
32
20
|
/**
|
|
33
21
|
* Renders test component deeply using react-test-renderer and exposes helpers
|
|
34
22
|
* to assert on the output.
|
|
@@ -44,15 +32,12 @@ function render(component, {
|
|
|
44
32
|
createNodeMock
|
|
45
33
|
});
|
|
46
34
|
}
|
|
47
|
-
|
|
48
35
|
const wrap = element => Wrapper ? /*#__PURE__*/React.createElement(Wrapper, null, element) : element;
|
|
49
|
-
|
|
50
36
|
const renderer = renderWithAct(wrap(component), createNodeMock ? {
|
|
51
37
|
createNodeMock
|
|
52
38
|
} : undefined);
|
|
53
39
|
return buildRenderResult(renderer, wrap);
|
|
54
40
|
}
|
|
55
|
-
|
|
56
41
|
function renderWithStringValidation(component, {
|
|
57
42
|
wrapper: Wrapper,
|
|
58
43
|
createNodeMock
|
|
@@ -62,31 +47,27 @@ function renderWithStringValidation(component, {
|
|
|
62
47
|
(0, _stringValidation.validateStringsRenderedWithinText)(_screen.screen.toJSON());
|
|
63
48
|
}
|
|
64
49
|
};
|
|
65
|
-
|
|
66
50
|
const wrap = element => /*#__PURE__*/React.createElement(React.Profiler, {
|
|
67
51
|
id: "renderProfiler",
|
|
68
52
|
onRender: handleRender
|
|
69
53
|
}, Wrapper ? /*#__PURE__*/React.createElement(Wrapper, null, element) : element);
|
|
70
|
-
|
|
71
54
|
const renderer = renderWithAct(wrap(component), createNodeMock ? {
|
|
72
55
|
createNodeMock
|
|
73
56
|
} : undefined);
|
|
74
57
|
(0, _stringValidation.validateStringsRenderedWithinText)(renderer.toJSON());
|
|
75
58
|
return buildRenderResult(renderer, wrap);
|
|
76
59
|
}
|
|
77
|
-
|
|
78
60
|
function buildRenderResult(renderer, wrap) {
|
|
79
61
|
const update = updateWithAct(renderer, wrap);
|
|
80
62
|
const instance = renderer.root;
|
|
81
|
-
|
|
82
63
|
const unmount = () => {
|
|
83
64
|
(0, _act.default)(() => {
|
|
84
65
|
renderer.unmount();
|
|
85
66
|
});
|
|
86
67
|
};
|
|
87
|
-
|
|
88
68
|
(0, _cleanup.addToCleanupQueue)(unmount);
|
|
89
|
-
const result = {
|
|
69
|
+
const result = {
|
|
70
|
+
...(0, _within.getQueriesForElement)(instance),
|
|
90
71
|
update,
|
|
91
72
|
unmount,
|
|
92
73
|
container: instance,
|
|
@@ -98,16 +79,15 @@ function buildRenderResult(renderer, wrap) {
|
|
|
98
79
|
(0, _screen.setRenderResult)(result);
|
|
99
80
|
return result;
|
|
100
81
|
}
|
|
101
|
-
|
|
102
82
|
function renderWithAct(component, options) {
|
|
103
83
|
let renderer;
|
|
104
84
|
(0, _act.default)(() => {
|
|
105
85
|
renderer = _reactTestRenderer.default.create(component, options);
|
|
106
|
-
});
|
|
86
|
+
});
|
|
107
87
|
|
|
88
|
+
// @ts-ignore act is sync, so renderer is always initialised here
|
|
108
89
|
return renderer;
|
|
109
90
|
}
|
|
110
|
-
|
|
111
91
|
function updateWithAct(renderer, wrap) {
|
|
112
92
|
return function (component) {
|
|
113
93
|
(0, _act.default)(() => {
|
|
@@ -115,18 +95,28 @@ function updateWithAct(renderer, wrap) {
|
|
|
115
95
|
});
|
|
116
96
|
};
|
|
117
97
|
}
|
|
118
|
-
|
|
119
98
|
function debug(instance, renderer) {
|
|
120
|
-
function debugImpl(
|
|
99
|
+
function debugImpl(options) {
|
|
100
|
+
const {
|
|
101
|
+
defaultDebugOptions
|
|
102
|
+
} = (0, _config.getConfig)();
|
|
103
|
+
const debugOptions = typeof options === 'string' ? {
|
|
104
|
+
...defaultDebugOptions,
|
|
105
|
+
message: options
|
|
106
|
+
} : {
|
|
107
|
+
...defaultDebugOptions,
|
|
108
|
+
...options
|
|
109
|
+
};
|
|
110
|
+
if (typeof options === 'string') {
|
|
111
|
+
// eslint-disable-next-line no-console
|
|
112
|
+
console.warn('Using debug("message") is deprecated and will be removed in future release, please use debug({ message; "message" }) instead.');
|
|
113
|
+
}
|
|
121
114
|
const json = renderer.toJSON();
|
|
122
|
-
|
|
123
115
|
if (json) {
|
|
124
|
-
return (0, _debugDeep.default)(json,
|
|
116
|
+
return (0, _debugDeep.default)(json, debugOptions);
|
|
125
117
|
}
|
|
126
118
|
}
|
|
127
|
-
|
|
128
119
|
debugImpl.shallow = message => (0, _debugShallow.default)(instance, message);
|
|
129
|
-
|
|
130
120
|
return debugImpl;
|
|
131
121
|
}
|
|
132
122
|
//# sourceMappingURL=render.js.map
|
package/build/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","names":["render","component","wrapper","Wrapper","createNodeMock","unstable_validateStringsRenderedWithinText","renderWithStringValidation","wrap","element","renderer","renderWithAct","undefined","buildRenderResult","handleRender","_","phase","validateStringsRenderedWithinText","screen","toJSON","update","updateWithAct","instance","root","unmount","act","addToCleanupQueue","result","getQueriesForElement","container","rerender","debug","setRenderResult","options","TestRenderer","create","debugImpl","message","json","debugDeep","shallow","debugShallow"],"sources":["../src/render.tsx"],"sourcesContent":["import TestRenderer from 'react-test-renderer';\nimport type { ReactTestInstance, ReactTestRenderer } from 'react-test-renderer';\nimport * as React from 'react';\nimport { Profiler } from 'react';\nimport act from './act';\nimport { addToCleanupQueue } from './cleanup';\nimport debugShallow from './helpers/debugShallow';\nimport debugDeep from './helpers/debugDeep';\nimport { getQueriesForElement } from './within';\nimport { setRenderResult, screen } from './screen';\nimport { validateStringsRenderedWithinText } from './helpers/stringValidation';\n\nexport type RenderOptions = {\n wrapper?: React.ComponentType<any>;\n createNodeMock?: (element: React.ReactElement) => any;\n unstable_validateStringsRenderedWithinText?: boolean;\n};\n\ntype TestRendererOptions = {\n createNodeMock: (element: React.ReactElement) => any;\n};\n\nexport type RenderResult = ReturnType<typeof render>;\n\n/**\n * Renders test component deeply using react-test-renderer and exposes helpers\n * to assert on the output.\n */\nexport default function render<T>(\n component: React.ReactElement<T>,\n {\n wrapper: Wrapper,\n createNodeMock,\n unstable_validateStringsRenderedWithinText,\n }: RenderOptions = {}\n) {\n if (unstable_validateStringsRenderedWithinText) {\n return renderWithStringValidation(component, {\n wrapper: Wrapper,\n createNodeMock,\n });\n }\n\n const wrap = (element: React.ReactElement) =>\n Wrapper ? <Wrapper>{element}</Wrapper> : element;\n\n const renderer = renderWithAct(\n wrap(component),\n createNodeMock ? { createNodeMock } : undefined\n );\n\n return buildRenderResult(renderer, wrap);\n}\n\nfunction renderWithStringValidation<T>(\n component: React.ReactElement<T>,\n {\n wrapper: Wrapper,\n createNodeMock,\n }: Omit<RenderOptions, 'unstable_validateStringsRenderedWithinText'> = {}\n) {\n const handleRender: React.ProfilerProps['onRender'] = (_, phase) => {\n if (phase === 'update') {\n validateStringsRenderedWithinText(screen.toJSON());\n }\n };\n\n const wrap = (element: React.ReactElement) => (\n <Profiler id=\"renderProfiler\" onRender={handleRender}>\n {Wrapper ? <Wrapper>{element}</Wrapper> : element}\n </Profiler>\n );\n\n const renderer = renderWithAct(\n wrap(component),\n createNodeMock ? { createNodeMock } : undefined\n );\n validateStringsRenderedWithinText(renderer.toJSON());\n\n return buildRenderResult(renderer, wrap);\n}\n\nfunction buildRenderResult(\n renderer: ReactTestRenderer,\n wrap: (element: React.ReactElement) => JSX.Element\n) {\n const update = updateWithAct(renderer, wrap);\n const instance = renderer.root;\n\n const unmount = () => {\n act(() => {\n renderer.unmount();\n });\n };\n\n addToCleanupQueue(unmount);\n\n const result = {\n ...getQueriesForElement(instance),\n update,\n unmount,\n container: instance,\n rerender: update, // alias for `update`\n toJSON: renderer.toJSON,\n debug: debug(instance, renderer),\n };\n\n setRenderResult(result);\n return result;\n}\n\nfunction renderWithAct(\n component: React.ReactElement,\n options?: TestRendererOptions\n): ReactTestRenderer {\n let renderer: ReactTestRenderer;\n\n act(() => {\n renderer = TestRenderer.create(component, options);\n });\n\n // @ts-ignore act is sync, so renderer is always initialised here\n return renderer;\n}\n\nfunction updateWithAct(\n renderer: ReactTestRenderer,\n wrap: (innerElement: React.ReactElement) => React.ReactElement\n) {\n return function (component: React.ReactElement) {\n act(() => {\n renderer.update(wrap(component));\n });\n };\n}\n\ninterface DebugFunction {\n (
|
|
1
|
+
{"version":3,"file":"render.js","names":["render","component","wrapper","Wrapper","createNodeMock","unstable_validateStringsRenderedWithinText","renderWithStringValidation","wrap","element","renderer","renderWithAct","undefined","buildRenderResult","handleRender","_","phase","validateStringsRenderedWithinText","screen","toJSON","update","updateWithAct","instance","root","unmount","act","addToCleanupQueue","result","getQueriesForElement","container","rerender","debug","setRenderResult","options","TestRenderer","create","debugImpl","defaultDebugOptions","getConfig","debugOptions","message","console","warn","json","debugDeep","shallow","debugShallow"],"sources":["../src/render.tsx"],"sourcesContent":["import TestRenderer from 'react-test-renderer';\nimport type { ReactTestInstance, ReactTestRenderer } from 'react-test-renderer';\nimport * as React from 'react';\nimport { Profiler } from 'react';\nimport act from './act';\nimport { addToCleanupQueue } from './cleanup';\nimport debugShallow from './helpers/debugShallow';\nimport debugDeep, { DebugOptions } from './helpers/debugDeep';\nimport { getQueriesForElement } from './within';\nimport { setRenderResult, screen } from './screen';\nimport { validateStringsRenderedWithinText } from './helpers/stringValidation';\nimport { getConfig } from './config';\n\nexport type RenderOptions = {\n wrapper?: React.ComponentType<any>;\n createNodeMock?: (element: React.ReactElement) => any;\n unstable_validateStringsRenderedWithinText?: boolean;\n};\n\ntype TestRendererOptions = {\n createNodeMock: (element: React.ReactElement) => any;\n};\n\nexport type RenderResult = ReturnType<typeof render>;\n\n/**\n * Renders test component deeply using react-test-renderer and exposes helpers\n * to assert on the output.\n */\nexport default function render<T>(\n component: React.ReactElement<T>,\n {\n wrapper: Wrapper,\n createNodeMock,\n unstable_validateStringsRenderedWithinText,\n }: RenderOptions = {}\n) {\n if (unstable_validateStringsRenderedWithinText) {\n return renderWithStringValidation(component, {\n wrapper: Wrapper,\n createNodeMock,\n });\n }\n\n const wrap = (element: React.ReactElement) =>\n Wrapper ? <Wrapper>{element}</Wrapper> : element;\n\n const renderer = renderWithAct(\n wrap(component),\n createNodeMock ? { createNodeMock } : undefined\n );\n\n return buildRenderResult(renderer, wrap);\n}\n\nfunction renderWithStringValidation<T>(\n component: React.ReactElement<T>,\n {\n wrapper: Wrapper,\n createNodeMock,\n }: Omit<RenderOptions, 'unstable_validateStringsRenderedWithinText'> = {}\n) {\n const handleRender: React.ProfilerProps['onRender'] = (_, phase) => {\n if (phase === 'update') {\n validateStringsRenderedWithinText(screen.toJSON());\n }\n };\n\n const wrap = (element: React.ReactElement) => (\n <Profiler id=\"renderProfiler\" onRender={handleRender}>\n {Wrapper ? <Wrapper>{element}</Wrapper> : element}\n </Profiler>\n );\n\n const renderer = renderWithAct(\n wrap(component),\n createNodeMock ? { createNodeMock } : undefined\n );\n validateStringsRenderedWithinText(renderer.toJSON());\n\n return buildRenderResult(renderer, wrap);\n}\n\nfunction buildRenderResult(\n renderer: ReactTestRenderer,\n wrap: (element: React.ReactElement) => JSX.Element\n) {\n const update = updateWithAct(renderer, wrap);\n const instance = renderer.root;\n\n const unmount = () => {\n act(() => {\n renderer.unmount();\n });\n };\n\n addToCleanupQueue(unmount);\n\n const result = {\n ...getQueriesForElement(instance),\n update,\n unmount,\n container: instance,\n rerender: update, // alias for `update`\n toJSON: renderer.toJSON,\n debug: debug(instance, renderer),\n };\n\n setRenderResult(result);\n return result;\n}\n\nfunction renderWithAct(\n component: React.ReactElement,\n options?: TestRendererOptions\n): ReactTestRenderer {\n let renderer: ReactTestRenderer;\n\n act(() => {\n renderer = TestRenderer.create(component, options);\n });\n\n // @ts-ignore act is sync, so renderer is always initialised here\n return renderer;\n}\n\nfunction updateWithAct(\n renderer: ReactTestRenderer,\n wrap: (innerElement: React.ReactElement) => React.ReactElement\n) {\n return function (component: React.ReactElement) {\n act(() => {\n renderer.update(wrap(component));\n });\n };\n}\n\ninterface DebugFunction {\n (options?: DebugOptions | string): void;\n shallow: (message?: string) => void;\n}\n\nfunction debug(\n instance: ReactTestInstance,\n renderer: ReactTestRenderer\n): DebugFunction {\n function debugImpl(options?: DebugOptions | string) {\n const { defaultDebugOptions } = getConfig();\n const debugOptions =\n typeof options === 'string'\n ? { ...defaultDebugOptions, message: options }\n : { ...defaultDebugOptions, ...options };\n\n if (typeof options === 'string') {\n // eslint-disable-next-line no-console\n console.warn(\n 'Using debug(\"message\") is deprecated and will be removed in future release, please use debug({ message; \"message\" }) instead.'\n );\n }\n\n const json = renderer.toJSON();\n if (json) {\n return debugDeep(json, debugOptions);\n }\n }\n debugImpl.shallow = (message?: string) => debugShallow(instance, message);\n return debugImpl;\n}\n"],"mappings":"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"}
|