@testing-library/react-native 9.1.0 → 10.0.1
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 +2 -2
- package/build/act.d.ts +3 -0
- package/build/act.js +2 -1
- package/build/act.js.map +1 -0
- package/build/cleanup.d.ts +5 -0
- package/build/cleanup.js +3 -2
- package/build/cleanup.js.map +1 -0
- package/build/fireEvent.d.ts +8 -0
- package/build/fireEvent.js +2 -1
- package/build/fireEvent.js.map +1 -0
- package/build/flushMicroTasks.d.ts +5 -0
- package/build/flushMicroTasks.js +2 -12
- package/build/flushMicroTasks.js.map +1 -0
- package/build/helpers/debugDeep.d.ts +5 -0
- package/build/helpers/debugDeep.js +4 -1
- package/build/helpers/debugDeep.js.map +1 -0
- package/build/helpers/debugShallow.d.ts +6 -0
- package/build/helpers/debugShallow.js +4 -7
- package/build/helpers/debugShallow.js.map +1 -0
- package/build/helpers/errors.d.ts +10 -0
- package/build/helpers/errors.js +29 -9
- package/build/helpers/errors.js.map +1 -0
- package/build/helpers/filterNodeByType.d.ts +3 -0
- package/build/helpers/filterNodeByType.js +2 -1
- package/build/helpers/filterNodeByType.js.map +1 -0
- package/build/helpers/format.d.ts +3 -0
- package/build/helpers/format.js +4 -3
- package/build/helpers/format.js.map +1 -0
- package/build/helpers/timers.d.ts +6 -0
- package/build/helpers/timers.js +9 -6
- package/build/helpers/timers.js.map +1 -0
- package/build/index.d.ts +1 -0
- package/build/index.flow.js +394 -0
- package/build/index.js +2 -1
- package/build/index.js.map +1 -0
- package/build/matches.d.ts +9 -0
- package/build/matches.js +3 -2
- package/build/matches.js.map +1 -0
- package/build/{pure.js.flow → pure.d.ts} +5 -8
- package/build/pure.js +14 -31
- package/build/pure.js.map +1 -0
- package/build/queries/a11yAPI.d.ts +66 -0
- package/build/{helpers → queries}/a11yAPI.js +16 -15
- package/build/queries/a11yAPI.js.map +1 -0
- package/build/queries/displayValue.d.ts +13 -0
- package/build/{helpers/byDisplayValue.js → queries/displayValue.js} +23 -17
- package/build/queries/displayValue.js.map +1 -0
- package/build/queries/makeA11yQuery.d.ts +13 -0
- package/build/{helpers → queries}/makeA11yQuery.js +3 -2
- package/build/queries/makeA11yQuery.js.map +1 -0
- package/build/queries/makeQueries.d.ts +19 -0
- package/build/{helpers → queries}/makeQueries.js +23 -19
- package/build/queries/makeQueries.js.map +1 -0
- package/build/queries/placeholderText.d.ts +13 -0
- package/build/{helpers/byPlaceholderText.js → queries/placeholderText.js} +23 -17
- package/build/queries/placeholderText.js.map +1 -0
- package/build/queries/testId.d.ts +13 -0
- package/build/{helpers/byTestId.js → queries/testId.js} +19 -13
- package/build/queries/testId.js.map +1 -0
- package/build/queries/text.d.ts +17 -0
- package/build/{helpers/byText.js → queries/text.js} +27 -21
- package/build/queries/text.js.map +1 -0
- package/build/queries/unsafeProps.d.ts +16 -0
- package/build/queries/unsafeProps.js +58 -0
- package/build/queries/unsafeProps.js.map +1 -0
- package/build/queries/unsafeType.d.ts +9 -0
- package/build/queries/unsafeType.js +54 -0
- package/build/queries/unsafeType.js.map +1 -0
- package/build/render.d.ts +135 -0
- package/build/render.js +16 -21
- package/build/render.js.map +1 -0
- package/build/renderHook.d.ts +17 -0
- package/build/renderHook.js +57 -0
- package/build/renderHook.js.map +1 -0
- package/build/shallow.d.ts +8 -0
- package/build/shallow.js +3 -9
- package/build/shallow.js.map +1 -0
- package/build/waitFor.d.ts +8 -0
- package/build/waitFor.js +26 -22
- package/build/waitFor.js.map +1 -0
- package/build/waitForElementToBeRemoved.d.ts +2 -0
- package/build/waitForElementToBeRemoved.js +2 -1
- package/build/waitForElementToBeRemoved.js.map +1 -0
- package/build/within.d.ts +117 -0
- package/build/within.js +19 -9
- package/build/within.js.map +1 -0
- package/package.json +24 -14
- package/typings/index.flow.js +394 -0
- package/build/act.js.flow +0 -9
- package/build/cleanup.js.flow +0 -13
- package/build/fireEvent.js.flow +0 -127
- package/build/flushMicroTasks.js.flow +0 -23
- package/build/helpers/a11yAPI.js.flow +0 -241
- package/build/helpers/byDisplayValue.js.flow +0 -66
- package/build/helpers/byPlaceholderText.js.flow +0 -62
- package/build/helpers/byTestId.js.flow +0 -50
- package/build/helpers/byText.js.flow +0 -108
- package/build/helpers/debugDeep.js.flow +0 -16
- package/build/helpers/debugShallow.js.flow +0 -20
- package/build/helpers/errors.js.flow +0 -82
- package/build/helpers/filterNodeByType.js.flow +0 -1
- package/build/helpers/findByAPI.js +0 -32
- package/build/helpers/findByAPI.js.flow +0 -76
- package/build/helpers/format.js.flow +0 -10
- package/build/helpers/getByAPI.js +0 -98
- package/build/helpers/getByAPI.js.flow +0 -157
- package/build/helpers/makeA11yQuery.js.flow +0 -98
- package/build/helpers/makeQueries.js.flow +0 -165
- package/build/helpers/queryByAPI.js +0 -92
- package/build/helpers/queryByAPI.js.flow +0 -166
- package/build/helpers/timers.js.flow +0 -88
- package/build/index.js.flow +0 -18
- package/build/matches.js.flow +0 -41
- package/build/render.js.flow +0 -109
- package/build/shallow.js.flow +0 -26
- package/build/types.flow.js +0 -1
- package/build/types.flow.js.flow +0 -59
- package/build/waitFor.js.flow +0 -226
- package/build/waitForElementToBeRemoved.js.flow +0 -42
- package/build/within.js.flow +0 -18
- package/typings/index.d.ts +0 -433
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.a11yAPI = void 0;
|
|
7
7
|
exports.matchArrayValue = matchArrayValue;
|
|
8
8
|
exports.matchObject = matchObject;
|
|
9
|
-
exports.
|
|
9
|
+
exports.matchStringValue = matchStringValue;
|
|
10
10
|
|
|
11
11
|
var _makeA11yQuery = _interopRequireDefault(require("./makeA11yQuery"));
|
|
12
12
|
|
|
@@ -41,12 +41,12 @@ function matchObject(prop, matcher) {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
const a11yAPI = instance => ({ ...(0, _makeA11yQuery.default)('accessibilityLabel', {
|
|
44
|
-
getBy: ['
|
|
45
|
-
getAllBy: ['
|
|
46
|
-
queryBy: ['
|
|
47
|
-
queryAllBy: ['
|
|
48
|
-
findBy: ['
|
|
49
|
-
findAllBy: ['
|
|
44
|
+
getBy: ['getByLabelText'],
|
|
45
|
+
getAllBy: ['getAllByLabelText'],
|
|
46
|
+
queryBy: ['queryByLabelText'],
|
|
47
|
+
queryAllBy: ['queryAllByLabelText'],
|
|
48
|
+
findBy: ['findByLabelText'],
|
|
49
|
+
findAllBy: ['findAllByLabelText']
|
|
50
50
|
}, matchStringValue)(instance),
|
|
51
51
|
...(0, _makeA11yQuery.default)('accessibilityHint', {
|
|
52
52
|
getBy: ['getByA11yHint', 'getByAccessibilityHint', 'getByHintText'],
|
|
@@ -57,12 +57,12 @@ const a11yAPI = instance => ({ ...(0, _makeA11yQuery.default)('accessibilityLabe
|
|
|
57
57
|
findAllBy: ['findAllByA11yHint', 'findAllByAccessibilityHint', 'findAllByHintText']
|
|
58
58
|
}, matchStringValue)(instance),
|
|
59
59
|
...(0, _makeA11yQuery.default)('accessibilityRole', {
|
|
60
|
-
getBy: ['
|
|
61
|
-
getAllBy: ['
|
|
62
|
-
queryBy: ['
|
|
63
|
-
queryAllBy: ['
|
|
64
|
-
findBy: ['
|
|
65
|
-
findAllBy: ['
|
|
60
|
+
getBy: ['getByRole'],
|
|
61
|
+
getAllBy: ['getAllByRole'],
|
|
62
|
+
queryBy: ['queryByRole'],
|
|
63
|
+
queryAllBy: ['queryAllByRole'],
|
|
64
|
+
findBy: ['findByRole'],
|
|
65
|
+
findAllBy: ['findAllByRole']
|
|
66
66
|
}, matchStringValue)(instance),
|
|
67
67
|
...(0, _makeA11yQuery.default)('accessibilityStates', {
|
|
68
68
|
getBy: ['getByA11yStates', 'getByAccessibilityStates'],
|
|
@@ -90,4 +90,5 @@ const a11yAPI = instance => ({ ...(0, _makeA11yQuery.default)('accessibilityLabe
|
|
|
90
90
|
}, matchObject)(instance)
|
|
91
91
|
});
|
|
92
92
|
|
|
93
|
-
exports.a11yAPI = a11yAPI;
|
|
93
|
+
exports.a11yAPI = a11yAPI;
|
|
94
|
+
//# sourceMappingURL=a11yAPI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/queries/a11yAPI.ts"],"names":["matchStringValue","prop","matcher","Boolean","match","matchArrayValue","length","includes","some","e","matchObject","Object","keys","key","a11yAPI","instance","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy"],"mappings":"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","sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport type { AccessibilityRole, AccessibilityState } from 'react-native';\nimport type { WaitForOptions } from '../waitFor';\nimport type { TextMatch } from '../matches';\nimport makeA11yQuery from './makeA11yQuery';\n\ntype AccessibilityStateKey = keyof AccessibilityState;\ntype A11yValue = {\n min?: number;\n max?: number;\n now?: number;\n text?: string;\n};\n\ntype GetReturn = ReactTestInstance;\ntype GetAllReturn = Array<ReactTestInstance>;\ntype QueryReturn = ReactTestInstance | null;\ntype QueryAllReturn = Array<ReactTestInstance>;\ntype FindReturn = Promise<GetReturn>;\ntype FindAllReturn = Promise<GetAllReturn>;\n\nexport type A11yAPI = {\n // Label\n getByLabelText: (label: TextMatch) => GetReturn;\n getAllByLabelText: (label: TextMatch) => GetAllReturn;\n queryByLabelText: (label: TextMatch) => QueryReturn;\n queryAllByLabelText: (label: TextMatch) => QueryAllReturn;\n findByLabelText: (\n label: TextMatch,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findAllByLabelText: (\n label: TextMatch,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n\n // Hint\n getByA11yHint: (a11yHint: TextMatch) => GetReturn;\n getByHintText: (a11yHint: TextMatch) => GetReturn;\n getAllByA11yHint: (a11yHint: TextMatch) => GetAllReturn;\n getAllByHintText: (a11yHint: TextMatch) => GetAllReturn;\n queryByA11yHint: (a11yHint: TextMatch) => QueryReturn;\n queryByHintText: (a11yHint: TextMatch) => QueryReturn;\n queryAllByA11yHint: (a11yHint: TextMatch) => QueryAllReturn;\n queryAllByHintText: (a11yHint: TextMatch) => QueryAllReturn;\n findByA11yHint: (\n a11yHint: TextMatch,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findByHintText: (\n a11yHint: TextMatch,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findAllByA11yHint: (\n a11yHint: TextMatch,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n findAllByHintText: (\n a11yHint: TextMatch,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n\n // Role\n getByRole: (role: AccessibilityRole | RegExp) => GetReturn;\n getAllByRole: (role: AccessibilityRole | RegExp) => GetAllReturn;\n queryByRole: (role: AccessibilityRole | RegExp) => QueryReturn;\n queryAllByRole: (role: AccessibilityRole | RegExp) => QueryAllReturn;\n findByRole: (\n role: AccessibilityRole,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findAllByRole: (\n role: AccessibilityRole,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n\n // States\n getByA11yStates: (\n accessibilityStateKey: AccessibilityStateKey | Array<AccessibilityStateKey>\n ) => GetReturn;\n getAllByA11yStates: (\n accessibilityStateKey: AccessibilityStateKey | Array<AccessibilityStateKey>\n ) => GetAllReturn;\n queryByA11yStates: (\n accessibilityStateKey: AccessibilityStateKey | Array<AccessibilityStateKey>\n ) => QueryReturn;\n queryAllByA11yStates: (\n accessibilityStateKey: AccessibilityStateKey | Array<AccessibilityStateKey>\n ) => QueryAllReturn;\n findByA11yStates: (\n accessibilityStateKey: AccessibilityStateKey,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findAllByA11yStates: (\n accessibilityStateKey: AccessibilityStateKey,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n\n // State\n getByA11yState: (accessibilityState: AccessibilityState) => GetReturn;\n getAllByA11yState: (accessibilityState: AccessibilityState) => GetAllReturn;\n queryByA11yState: (accessibilityState: AccessibilityState) => QueryReturn;\n queryAllByA11yState: (\n accessibilityState: AccessibilityState\n ) => QueryAllReturn;\n findByA11yState: (\n accessibilityState: AccessibilityState,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findAllByA11yState: (\n accessibilityState: AccessibilityState,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n\n // Value\n getByA11yValue: (a11yValue: A11yValue) => GetReturn;\n getAllByA11yValue: (a11yValue: A11yValue) => GetAllReturn;\n queryByA11yValue: (a11yValue: A11yValue) => QueryReturn;\n queryAllByA11yValue: (a11yValue: A11yValue) => QueryAllReturn;\n findByA11yValue: (\n a11yValue: A11yValue,\n waitForOptions?: WaitForOptions\n ) => FindReturn;\n findAllByA11yValue: (\n a11yValue: A11yValue,\n waitForOptions?: WaitForOptions\n ) => FindAllReturn;\n};\n\nexport function matchStringValue(\n prop: string | undefined,\n matcher: TextMatch\n): boolean {\n if (!prop) {\n return false;\n }\n\n if (typeof matcher === 'string') {\n return prop === matcher;\n }\n\n return Boolean(prop.match(matcher));\n}\n\nexport function matchArrayValue(\n prop: Array<string> | undefined,\n matcher: string | Array<string>\n): boolean {\n if (!prop || matcher.length === 0) {\n return false;\n }\n\n if (typeof matcher === 'string') {\n return prop.includes(matcher);\n }\n\n return !matcher.some((e) => !prop.includes(e));\n}\n\nexport function matchObject<T extends Record<string, unknown>>(\n prop: T | undefined,\n matcher: T\n): boolean {\n return prop\n ? Object.keys(matcher).length !== 0 &&\n Object.keys(prop).length !== 0 &&\n !Object.keys(matcher).some((key) => prop[key] !== matcher[key])\n : false;\n}\n\nexport const a11yAPI = (instance: ReactTestInstance): A11yAPI =>\n ({\n ...makeA11yQuery(\n 'accessibilityLabel',\n {\n getBy: ['getByLabelText'],\n getAllBy: ['getAllByLabelText'],\n queryBy: ['queryByLabelText'],\n queryAllBy: ['queryAllByLabelText'],\n findBy: ['findByLabelText'],\n findAllBy: ['findAllByLabelText'],\n },\n matchStringValue\n )(instance),\n ...makeA11yQuery(\n 'accessibilityHint',\n {\n getBy: ['getByA11yHint', 'getByAccessibilityHint', 'getByHintText'],\n getAllBy: [\n 'getAllByA11yHint',\n 'getAllByAccessibilityHint',\n 'getAllByHintText',\n ],\n queryBy: [\n 'queryByA11yHint',\n 'queryByAccessibilityHint',\n 'queryByHintText',\n ],\n queryAllBy: [\n 'queryAllByA11yHint',\n 'queryAllByAccessibilityHint',\n 'queryAllByHintText',\n ],\n findBy: ['findByA11yHint', 'findByAccessibilityHint', 'findByHintText'],\n findAllBy: [\n 'findAllByA11yHint',\n 'findAllByAccessibilityHint',\n 'findAllByHintText',\n ],\n },\n matchStringValue\n )(instance),\n ...makeA11yQuery(\n 'accessibilityRole',\n {\n getBy: ['getByRole'],\n getAllBy: ['getAllByRole'],\n queryBy: ['queryByRole'],\n queryAllBy: ['queryAllByRole'],\n findBy: ['findByRole'],\n findAllBy: ['findAllByRole'],\n },\n matchStringValue\n )(instance),\n ...makeA11yQuery(\n 'accessibilityStates',\n {\n getBy: ['getByA11yStates', 'getByAccessibilityStates'],\n getAllBy: ['getAllByA11yStates', 'getAllByAccessibilityStates'],\n queryBy: ['queryByA11yStates', 'queryByAccessibilityStates'],\n queryAllBy: ['queryAllByA11yStates', 'queryAllByAccessibilityStates'],\n findBy: ['findByA11yStates', 'findByAccessibilityStates'],\n findAllBy: ['findAllByA11yStates', 'findAllByAccessibilityStates'],\n },\n matchArrayValue\n )(instance),\n ...makeA11yQuery(\n 'accessibilityState',\n {\n getBy: ['getByA11yState', 'getByAccessibilityState'],\n getAllBy: ['getAllByA11yState', 'getAllByAccessibilityState'],\n queryBy: ['queryByA11yState', 'queryByAccessibilityState'],\n queryAllBy: ['queryAllByA11yState', 'queryAllByAccessibilityState'],\n findBy: ['findByA11yState', 'findByAccessibilityState'],\n findAllBy: ['findAllByA11yState', 'findAllByAccessibilityState'],\n },\n matchObject\n )(instance),\n ...makeA11yQuery(\n 'accessibilityValue',\n {\n getBy: ['getByA11yValue', 'getByAccessibilityValue'],\n getAllBy: ['getAllByA11yValue', 'getAllByAccessibilityValue'],\n queryBy: ['queryByA11yValue', 'queryByAccessibilityValue'],\n queryAllBy: ['queryAllByA11yValue', 'queryAllByAccessibilityValue'],\n findBy: ['findByA11yValue', 'findByAccessibilityValue'],\n findAllBy: ['findAllByA11yValue', 'findAllByAccessibilityValue'],\n },\n matchObject\n )(instance),\n } as any);\n"],"file":"a11yAPI.js"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ReactTestInstance } from 'react-test-renderer';
|
|
2
|
+
import { TextMatch } from '../matches';
|
|
3
|
+
import type { FindAllByQuery, FindByQuery, GetAllByQuery, GetByQuery, QueryAllByQuery, QueryByQuery } from './makeQueries';
|
|
4
|
+
import type { TextMatchOptions } from './text';
|
|
5
|
+
export declare type ByDisplayValueQueries = {
|
|
6
|
+
getByDisplayValue: GetByQuery<TextMatch, TextMatchOptions>;
|
|
7
|
+
getAllByDisplayValue: GetAllByQuery<TextMatch, TextMatchOptions>;
|
|
8
|
+
queryByDisplayValue: QueryByQuery<TextMatch, TextMatchOptions>;
|
|
9
|
+
queryAllByDisplayValue: QueryAllByQuery<TextMatch, TextMatchOptions>;
|
|
10
|
+
findByDisplayValue: FindByQuery<TextMatch, TextMatchOptions>;
|
|
11
|
+
findAllByDisplayValue: FindAllByQuery<TextMatch, TextMatchOptions>;
|
|
12
|
+
};
|
|
13
|
+
export declare const bindByDisplayValueQueries: (instance: ReactTestInstance) => ByDisplayValueQueries;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.bindByDisplayValueQueries = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _errors = require("../helpers/errors");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _filterNodeByType = require("../helpers/filterNodeByType");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _matches = require("../matches");
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _makeQueries = require("./makeQueries");
|
|
15
15
|
|
|
16
16
|
const getTextInputNodeByDisplayValue = (node, value, options = {}) => {
|
|
17
17
|
try {
|
|
@@ -34,21 +34,27 @@ const queryAllByDisplayValue = instance => function queryAllByDisplayValueFn(dis
|
|
|
34
34
|
return instance.findAll(node => getTextInputNodeByDisplayValue(node, displayValue, queryOptions));
|
|
35
35
|
};
|
|
36
36
|
|
|
37
|
-
exports.queryAllByDisplayValue = queryAllByDisplayValue;
|
|
38
|
-
|
|
39
37
|
const getMultipleError = displayValue => `Found multiple elements with display value: ${String(displayValue)} `;
|
|
40
38
|
|
|
41
39
|
const getMissingError = displayValue => `Unable to find an element with displayValue: ${String(displayValue)}`;
|
|
42
40
|
|
|
43
41
|
const {
|
|
44
|
-
getBy
|
|
45
|
-
getAllBy
|
|
46
|
-
queryBy
|
|
47
|
-
|
|
48
|
-
|
|
42
|
+
getBy,
|
|
43
|
+
getAllBy,
|
|
44
|
+
queryBy,
|
|
45
|
+
queryAllBy,
|
|
46
|
+
findBy,
|
|
47
|
+
findAllBy
|
|
49
48
|
} = (0, _makeQueries.makeQueries)(queryAllByDisplayValue, getMissingError, getMultipleError);
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
49
|
+
|
|
50
|
+
const bindByDisplayValueQueries = instance => ({
|
|
51
|
+
getByDisplayValue: getBy(instance),
|
|
52
|
+
getAllByDisplayValue: getAllBy(instance),
|
|
53
|
+
queryByDisplayValue: queryBy(instance),
|
|
54
|
+
queryAllByDisplayValue: queryAllBy(instance),
|
|
55
|
+
findByDisplayValue: findBy(instance),
|
|
56
|
+
findAllByDisplayValue: findAllBy(instance)
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
exports.bindByDisplayValueQueries = bindByDisplayValueQueries;
|
|
60
|
+
//# sourceMappingURL=displayValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/queries/displayValue.ts"],"names":["getTextInputNodeByDisplayValue","node","value","options","TextInput","require","exact","normalizer","nodeValue","props","undefined","defaultValue","error","queryAllByDisplayValue","instance","queryAllByDisplayValueFn","displayValue","queryOptions","findAll","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","bindByDisplayValueQueries","getByDisplayValue","getAllByDisplayValue","queryByDisplayValue","findByDisplayValue","findAllByDisplayValue"],"mappings":";;;;;;;AACA;;AACA;;AACA;;AACA;;AAWA,MAAMA,8BAA8B,GAAG,CACrCC,IADqC,EAErCC,KAFqC,EAGrCC,OAAyB,GAAG,EAHS,KAIlC;AACH,MAAI;AACF,UAAM;AAAEC,MAAAA;AAAF,QAAgBC,OAAO,CAAC,cAAD,CAA7B;;AACA,UAAM;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAwBJ,OAA9B;AACA,UAAMK,SAAS,GACbP,IAAI,CAACQ,KAAL,CAAWP,KAAX,KAAqBQ,SAArB,GACIT,IAAI,CAACQ,KAAL,CAAWP,KADf,GAEID,IAAI,CAACQ,KAAL,CAAWE,YAHjB;AAIA,WACE,wCAAiBV,IAAjB,EAAuBG,SAAvB,KACA,sBAAQF,KAAR,EAAeM,SAAf,EAA0BD,UAA1B,EAAsCD,KAAtC,CAFF;AAID,GAXD,CAWE,OAAOM,KAAP,EAAc;AACd,UAAM,4CAA+BA,KAA/B,CAAN;AACD;AACF,CAnBD;;AAqBA,MAAMC,sBAAsB,GAC1BC,QAD6B,IAM7B,SAASC,wBAAT,CAAkCC,YAAlC,EAAgDC,YAAhD,EAA8D;AAC5D,SAAOH,QAAQ,CAACI,OAAT,CAAkBjB,IAAD,IACtBD,8BAA8B,CAACC,IAAD,EAAOe,YAAP,EAAqBC,YAArB,CADzB,CAAP;AAGD,CAVH;;AAYA,MAAME,gBAAgB,GAAIH,YAAD,IACtB,+CAA8CI,MAAM,CAACJ,YAAD,CAAe,GADtE;;AAEA,MAAMK,eAAe,GAAIL,YAAD,IACrB,gDAA+CI,MAAM,CAACJ,YAAD,CAAe,EADvE;;AAGA,MAAM;AAAEM,EAAAA,KAAF;AAASC,EAAAA,QAAT;AAAmBC,EAAAA,OAAnB;AAA4BC,EAAAA,UAA5B;AAAwCC,EAAAA,MAAxC;AAAgDC,EAAAA;AAAhD,IAA8D,8BAClEd,sBADkE,EAElEQ,eAFkE,EAGlEF,gBAHkE,CAApE;;AAeO,MAAMS,yBAAyB,GACpCd,QADuC,KAEZ;AAC3Be,EAAAA,iBAAiB,EAAEP,KAAK,CAACR,QAAD,CADG;AAE3BgB,EAAAA,oBAAoB,EAAEP,QAAQ,CAACT,QAAD,CAFH;AAG3BiB,EAAAA,mBAAmB,EAAEP,OAAO,CAACV,QAAD,CAHD;AAI3BD,EAAAA,sBAAsB,EAAEY,UAAU,CAACX,QAAD,CAJP;AAK3BkB,EAAAA,kBAAkB,EAAEN,MAAM,CAACZ,QAAD,CALC;AAM3BmB,EAAAA,qBAAqB,EAAEN,SAAS,CAACb,QAAD;AANL,CAFY,CAAlC","sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { createLibraryNotSupportedError } from '../helpers/errors';\nimport { filterNodeByType } from '../helpers/filterNodeByType';\nimport { matches, TextMatch } from '../matches';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\nimport type { TextMatchOptions } from './text';\n\nconst getTextInputNodeByDisplayValue = (\n node: ReactTestInstance,\n value: TextMatch,\n options: TextMatchOptions = {}\n) => {\n try {\n const { TextInput } = require('react-native');\n const { exact, normalizer } = options;\n const nodeValue =\n node.props.value !== undefined\n ? node.props.value\n : node.props.defaultValue;\n return (\n filterNodeByType(node, TextInput) &&\n matches(value, nodeValue, normalizer, exact)\n );\n } catch (error) {\n throw createLibraryNotSupportedError(error);\n }\n};\n\nconst queryAllByDisplayValue = (\n instance: ReactTestInstance\n): ((\n displayValue: TextMatch,\n queryOptions?: TextMatchOptions\n) => Array<ReactTestInstance>) =>\n function queryAllByDisplayValueFn(displayValue, queryOptions) {\n return instance.findAll((node) =>\n getTextInputNodeByDisplayValue(node, displayValue, queryOptions)\n );\n };\n\nconst getMultipleError = (displayValue: TextMatch) =>\n `Found multiple elements with display value: ${String(displayValue)} `;\nconst getMissingError = (displayValue: TextMatch) =>\n `Unable to find an element with displayValue: ${String(displayValue)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByDisplayValue,\n getMissingError,\n getMultipleError\n);\n\nexport type ByDisplayValueQueries = {\n getByDisplayValue: GetByQuery<TextMatch, TextMatchOptions>;\n getAllByDisplayValue: GetAllByQuery<TextMatch, TextMatchOptions>;\n queryByDisplayValue: QueryByQuery<TextMatch, TextMatchOptions>;\n queryAllByDisplayValue: QueryAllByQuery<TextMatch, TextMatchOptions>;\n findByDisplayValue: FindByQuery<TextMatch, TextMatchOptions>;\n findAllByDisplayValue: FindAllByQuery<TextMatch, TextMatchOptions>;\n};\n\nexport const bindByDisplayValueQueries = (\n instance: ReactTestInstance\n): ByDisplayValueQueries => ({\n getByDisplayValue: getBy(instance),\n getAllByDisplayValue: getAllBy(instance),\n queryByDisplayValue: queryBy(instance),\n queryAllByDisplayValue: queryAllBy(instance),\n findByDisplayValue: findBy(instance),\n findAllByDisplayValue: findAllBy(instance),\n});\n"],"file":"displayValue.js"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ReactTestInstance } from 'react-test-renderer';
|
|
2
|
+
declare type QueryNames = {
|
|
3
|
+
getBy: Array<string>;
|
|
4
|
+
getAllBy: Array<string>;
|
|
5
|
+
queryBy: Array<string>;
|
|
6
|
+
queryAllBy: Array<string>;
|
|
7
|
+
findBy: Array<string>;
|
|
8
|
+
findAllBy: Array<string>;
|
|
9
|
+
};
|
|
10
|
+
declare const makeA11yQuery: <P extends unknown, M extends unknown>(name: string, queryNames: QueryNames, matcherFn: (prop: P, value: M) => boolean) => (instance: ReactTestInstance) => {
|
|
11
|
+
[x: string]: Function;
|
|
12
|
+
};
|
|
13
|
+
export default makeA11yQuery;
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _waitFor = _interopRequireDefault(require("../waitFor"));
|
|
9
9
|
|
|
10
|
-
var _errors = require("
|
|
10
|
+
var _errors = require("../helpers/errors");
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
@@ -76,4 +76,5 @@ const makeA11yQuery = (name, queryNames, matcherFn) => instance => {
|
|
|
76
76
|
};
|
|
77
77
|
|
|
78
78
|
var _default = makeA11yQuery;
|
|
79
|
-
exports.default = _default;
|
|
79
|
+
exports.default = _default;
|
|
80
|
+
//# sourceMappingURL=makeA11yQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/queries/makeA11yQuery.ts"],"names":["isNodeValid","node","type","makeAliases","aliases","query","map","alias","reduce","acc","makeA11yQuery","name","queryNames","matcherFn","instance","getBy","matcher","find","props","error","ErrorWithStack","getAllBy","results","findAll","length","Error","queryBy","queryAllBy","findBy","waitForOptions","findAllBy"],"mappings":";;;;;;;AACA;;AAEA;;;;AAMA,SAASA,WAAT,CAAqBC,IAArB,EAA8C;AAC5C,SAAO,OAAOA,IAAI,CAACC,IAAZ,KAAqB,QAA5B;AACD;;AAED,SAASC,WAAT,CAAqBC,OAArB,EAA6CC,KAA7C,EAA8D;AAC5D,SAAOD,OAAO,CACXE,GADI,CACCC,KAAD,KAAY;AAAE,KAACA,KAAD,GAASF;AAAX,GAAZ,CADA,EAEJG,MAFI,CAEG,CAACC,GAAD,EAAMJ,KAAN,MAAiB,EAAE,GAAGI,GAAL;AAAU,OAAGJ;AAAb,GAAjB,CAFH,EAE2C,EAF3C,CAAP;AAGD;;AAWD,MAAMK,aAAa,GAAG,CACpBC,IADoB,EAEpBC,UAFoB,EAGpBC,SAHoB,KAIhBC,QAAD,IAAiC;AACpC,QAAMC,KAAK,GAAIC,OAAD,IAAgB;AAC5B,QAAI;AACF,aAAOF,QAAQ,CAACG,IAAT,CACJhB,IAAD,IAAUD,WAAW,CAACC,IAAD,CAAX,IAAqBY,SAAS,CAACZ,IAAI,CAACiB,KAAL,CAAWP,IAAX,CAAD,EAAmBK,OAAnB,CADnC,CAAP;AAGD,KAJD,CAIE,OAAOG,KAAP,EAAc;AACd,YAAM,IAAIC,sBAAJ,CACJ,iCAAoBD,KAApB,EAA2BR,IAA3B,EAAiCK,OAAjC,CADI,EAEJD,KAFI,CAAN;AAID;AACF,GAXD;;AAaA,QAAMM,QAAQ,GAAIL,OAAD,IAAgB;AAC/B,UAAMM,OAAO,GAAGR,QAAQ,CAACS,OAAT,CACbtB,IAAD,IAAUD,WAAW,CAACC,IAAD,CAAX,IAAqBY,SAAS,CAACZ,IAAI,CAACiB,KAAL,CAAWP,IAAX,CAAD,EAAmBK,OAAnB,CAD1B,CAAhB;;AAIA,QAAIM,OAAO,CAACE,MAAR,KAAmB,CAAvB,EAA0B;AACxB,YAAM,IAAIJ,sBAAJ,CACJ,iCAAoB,IAAIK,KAAJ,CAAU,oBAAV,CAApB,EAAqDd,IAArD,EAA2DK,OAA3D,CADI,EAEJK,QAFI,CAAN;AAID;;AAED,WAAOC,OAAP;AACD,GAbD;;AAeA,QAAMI,OAAO,GAAIV,OAAD,IAAgB;AAC9B,QAAI;AACF,aAAOD,KAAK,CAACC,OAAD,CAAZ;AACD,KAFD,CAEE,OAAOG,KAAP,EAAc;AACd,aAAO,gCAAmBA,KAAnB,EAA0BO,OAA1B,CAAP;AACD;AACF,GAND;;AAQA,QAAMC,UAAU,GAAIX,OAAD,IAAgB;AACjC,QAAI;AACF,aAAOK,QAAQ,CAACL,OAAD,CAAf;AACD,KAFD,CAEE,OAAOG,KAAP,EAAc;AACd,aAAO,EAAP;AACD;AACF,GAND;;AAQA,QAAMS,MAAM,GAAG,CAACZ,OAAD,EAAaa,cAAb,KAAiD;AAC9D,WAAO,sBAAQ,MAAMd,KAAK,CAACC,OAAD,CAAnB,EAA8Ba,cAA9B,CAAP;AACD,GAFD;;AAIA,QAAMC,SAAS,GAAG,CAACd,OAAD,EAAaa,cAAb,KAAiD;AACjE,WAAO,sBAAQ,MAAMR,QAAQ,CAACL,OAAD,CAAtB,EAAiCa,cAAjC,CAAP;AACD,GAFD;;AAIA,SAAO,EACL,GAAG1B,WAAW,CAACS,UAAU,CAACG,KAAZ,EAAmBA,KAAnB,CADT;AAEL,OAAGZ,WAAW,CAACS,UAAU,CAACS,QAAZ,EAAsBA,QAAtB,CAFT;AAGL,OAAGlB,WAAW,CAACS,UAAU,CAACc,OAAZ,EAAqBA,OAArB,CAHT;AAIL,OAAGvB,WAAW,CAACS,UAAU,CAACe,UAAZ,EAAwBA,UAAxB,CAJT;AAKL,OAAGxB,WAAW,CAACS,UAAU,CAACgB,MAAZ,EAAoBA,MAApB,CALT;AAML,OAAGzB,WAAW,CAACS,UAAU,CAACkB,SAAZ,EAAuBA,SAAvB;AANT,GAAP;AAQD,CAjED;;eAmEepB,a","sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport waitFor from '../waitFor';\nimport type { WaitForOptions } from '../waitFor';\nimport {\n ErrorWithStack,\n prepareErrorMessage,\n createQueryByError,\n} from '../helpers/errors';\n\nfunction isNodeValid(node: ReactTestInstance) {\n return typeof node.type === 'string';\n}\n\nfunction makeAliases(aliases: Array<string>, query: Function) {\n return aliases\n .map((alias) => ({ [alias]: query }))\n .reduce((acc, query) => ({ ...acc, ...query }), {});\n}\n\ntype QueryNames = {\n getBy: Array<string>;\n getAllBy: Array<string>;\n queryBy: Array<string>;\n queryAllBy: Array<string>;\n findBy: Array<string>;\n findAllBy: Array<string>;\n};\n\nconst makeA11yQuery = <P extends unknown, M extends unknown>(\n name: string,\n queryNames: QueryNames,\n matcherFn: (prop: P, value: M) => boolean\n) => (instance: ReactTestInstance) => {\n const getBy = (matcher: M) => {\n try {\n return instance.find(\n (node) => isNodeValid(node) && matcherFn(node.props[name], matcher)\n );\n } catch (error) {\n throw new ErrorWithStack(\n prepareErrorMessage(error, name, matcher),\n getBy\n );\n }\n };\n\n const getAllBy = (matcher: M) => {\n const results = instance.findAll(\n (node) => isNodeValid(node) && matcherFn(node.props[name], matcher)\n );\n\n if (results.length === 0) {\n throw new ErrorWithStack(\n prepareErrorMessage(new Error('No instances found'), name, matcher),\n getAllBy\n );\n }\n\n return results;\n };\n\n const queryBy = (matcher: M) => {\n try {\n return getBy(matcher);\n } catch (error) {\n return createQueryByError(error, queryBy);\n }\n };\n\n const queryAllBy = (matcher: M) => {\n try {\n return getAllBy(matcher);\n } catch (error) {\n return [];\n }\n };\n\n const findBy = (matcher: M, waitForOptions?: WaitForOptions) => {\n return waitFor(() => getBy(matcher), waitForOptions);\n };\n\n const findAllBy = (matcher: M, waitForOptions?: WaitForOptions) => {\n return waitFor(() => getAllBy(matcher), waitForOptions);\n };\n\n return {\n ...makeAliases(queryNames.getBy, getBy),\n ...makeAliases(queryNames.getAllBy, getAllBy),\n ...makeAliases(queryNames.queryBy, queryBy),\n ...makeAliases(queryNames.queryAllBy, queryAllBy),\n ...makeAliases(queryNames.findBy, findBy),\n ...makeAliases(queryNames.findAllBy, findAllBy),\n };\n};\n\nexport default makeA11yQuery;\n"],"file":"makeA11yQuery.js"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ReactTestInstance } from 'react-test-renderer';
|
|
2
|
+
import type { WaitForOptions } from '../waitFor';
|
|
3
|
+
export declare type GetByQuery<Predicate, Options> = (predicate: Predicate, options?: Options) => ReactTestInstance;
|
|
4
|
+
export declare type GetAllByQuery<Predicate, Options> = (predicate: Predicate, options?: Options) => ReactTestInstance[];
|
|
5
|
+
export declare type QueryByQuery<Predicate, Options> = (predicate: Predicate, options?: Options) => ReactTestInstance | null;
|
|
6
|
+
export declare type QueryAllByQuery<Predicate, Options> = (predicate: Predicate, options?: Options) => ReactTestInstance[];
|
|
7
|
+
export declare type FindByQuery<Predicate, Options> = (predicate: Predicate, options?: Options & WaitForOptions, waitForOptions?: WaitForOptions) => Promise<ReactTestInstance>;
|
|
8
|
+
export declare type FindAllByQuery<Predicate, Options> = (predicate: Predicate, options?: Options & WaitForOptions, waitForOptions?: WaitForOptions) => Promise<ReactTestInstance[]>;
|
|
9
|
+
declare type UnboundQuery<Query> = (instance: ReactTestInstance) => Query;
|
|
10
|
+
export declare type UnboundQueries<Predicate, Options> = {
|
|
11
|
+
getBy: UnboundQuery<GetByQuery<Predicate, Options>>;
|
|
12
|
+
getAllBy: UnboundQuery<GetAllByQuery<Predicate, Options>>;
|
|
13
|
+
queryBy: UnboundQuery<QueryByQuery<Predicate, Options>>;
|
|
14
|
+
queryAllBy: UnboundQuery<QueryAllByQuery<Predicate, Options>>;
|
|
15
|
+
findBy: UnboundQuery<FindByQuery<Predicate, Options>>;
|
|
16
|
+
findAllBy: UnboundQuery<FindAllByQuery<Predicate, Options>>;
|
|
17
|
+
};
|
|
18
|
+
export declare function makeQueries<Predicate, Options>(queryAllByQuery: UnboundQuery<QueryAllByQuery<Predicate, Options>>, getMissingError: (predicate: Predicate) => string, getMultipleError: (predicate: Predicate) => string): UnboundQueries<Predicate, Options>;
|
|
19
|
+
export {};
|
|
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.makeQueries = makeQueries;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _errors = require("../helpers/errors");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _waitFor = _interopRequireDefault(require("../waitFor"));
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
@@ -23,12 +23,14 @@ const extractDeprecatedWaitForOptionUsage = queryOptions => {
|
|
|
23
23
|
stackTraceError: queryOptions.stackTraceError
|
|
24
24
|
};
|
|
25
25
|
deprecatedKeys.forEach(key => {
|
|
26
|
-
|
|
26
|
+
const option = queryOptions[key];
|
|
27
|
+
|
|
28
|
+
if (option) {
|
|
27
29
|
// eslint-disable-next-line no-console
|
|
28
30
|
console.warn(`Use of option "${key}" in a findBy* query's second parameter, TextMatchOptions, is deprecated. Please pass this option in the third, WaitForOptions, parameter.
|
|
29
31
|
Example:
|
|
30
32
|
|
|
31
|
-
findByText(text, {}, { ${key}: ${
|
|
33
|
+
findByText(text, {}, { ${key}: ${option.toString()} })`);
|
|
32
34
|
}
|
|
33
35
|
});
|
|
34
36
|
return waitForOptions;
|
|
@@ -37,11 +39,11 @@ Example:
|
|
|
37
39
|
|
|
38
40
|
function makeQueries(queryAllByQuery, getMissingError, getMultipleError) {
|
|
39
41
|
function getAllByQuery(instance) {
|
|
40
|
-
return function getAllFn(
|
|
41
|
-
const results = queryAllByQuery(instance)(
|
|
42
|
+
return function getAllFn(predicate, options) {
|
|
43
|
+
const results = queryAllByQuery(instance)(predicate, options);
|
|
42
44
|
|
|
43
45
|
if (results.length === 0) {
|
|
44
|
-
throw new _errors.ErrorWithStack(getMissingError(
|
|
46
|
+
throw new _errors.ErrorWithStack(getMissingError(predicate), getAllFn);
|
|
45
47
|
}
|
|
46
48
|
|
|
47
49
|
return results;
|
|
@@ -49,11 +51,11 @@ function makeQueries(queryAllByQuery, getMissingError, getMultipleError) {
|
|
|
49
51
|
}
|
|
50
52
|
|
|
51
53
|
function queryByQuery(instance) {
|
|
52
|
-
return function singleQueryFn(
|
|
53
|
-
const results = queryAllByQuery(instance)(
|
|
54
|
+
return function singleQueryFn(predicate, options) {
|
|
55
|
+
const results = queryAllByQuery(instance)(predicate, options);
|
|
54
56
|
|
|
55
57
|
if (results.length > 1) {
|
|
56
|
-
throw new _errors.ErrorWithStack(getMultipleError(
|
|
58
|
+
throw new _errors.ErrorWithStack(getMultipleError(predicate), singleQueryFn);
|
|
57
59
|
}
|
|
58
60
|
|
|
59
61
|
if (results.length === 0) {
|
|
@@ -65,15 +67,15 @@ function makeQueries(queryAllByQuery, getMissingError, getMultipleError) {
|
|
|
65
67
|
}
|
|
66
68
|
|
|
67
69
|
function getByQuery(instance) {
|
|
68
|
-
return function getFn(
|
|
69
|
-
const results = queryAllByQuery(instance)(
|
|
70
|
+
return function getFn(predicate, options) {
|
|
71
|
+
const results = queryAllByQuery(instance)(predicate, options);
|
|
70
72
|
|
|
71
73
|
if (results.length > 1) {
|
|
72
|
-
throw new _errors.ErrorWithStack(getMultipleError(
|
|
74
|
+
throw new _errors.ErrorWithStack(getMultipleError(predicate), getFn);
|
|
73
75
|
}
|
|
74
76
|
|
|
75
77
|
if (results.length === 0) {
|
|
76
|
-
throw new _errors.ErrorWithStack(getMissingError(
|
|
78
|
+
throw new _errors.ErrorWithStack(getMissingError(predicate), getFn);
|
|
77
79
|
}
|
|
78
80
|
|
|
79
81
|
return results[0];
|
|
@@ -81,18 +83,18 @@ function makeQueries(queryAllByQuery, getMissingError, getMultipleError) {
|
|
|
81
83
|
}
|
|
82
84
|
|
|
83
85
|
function findAllByQuery(instance) {
|
|
84
|
-
return function findAllFn(
|
|
86
|
+
return function findAllFn(predicate, queryOptions, waitForOptions = {}) {
|
|
85
87
|
const deprecatedWaitForOptions = extractDeprecatedWaitForOptionUsage(queryOptions);
|
|
86
|
-
return (0, _waitFor.default)(() => getAllByQuery(instance)(
|
|
88
|
+
return (0, _waitFor.default)(() => getAllByQuery(instance)(predicate, queryOptions), { ...deprecatedWaitForOptions,
|
|
87
89
|
...waitForOptions
|
|
88
90
|
});
|
|
89
91
|
};
|
|
90
92
|
}
|
|
91
93
|
|
|
92
94
|
function findByQuery(instance) {
|
|
93
|
-
return function findFn(
|
|
95
|
+
return function findFn(predicate, queryOptions, waitForOptions = {}) {
|
|
94
96
|
const deprecatedWaitForOptions = extractDeprecatedWaitForOptionUsage(queryOptions);
|
|
95
|
-
return (0, _waitFor.default)(() => getByQuery(instance)(
|
|
97
|
+
return (0, _waitFor.default)(() => getByQuery(instance)(predicate, queryOptions), { ...deprecatedWaitForOptions,
|
|
96
98
|
...waitForOptions
|
|
97
99
|
});
|
|
98
100
|
};
|
|
@@ -102,7 +104,9 @@ function makeQueries(queryAllByQuery, getMissingError, getMultipleError) {
|
|
|
102
104
|
getBy: getByQuery,
|
|
103
105
|
getAllBy: getAllByQuery,
|
|
104
106
|
queryBy: queryByQuery,
|
|
107
|
+
queryAllBy: queryAllByQuery,
|
|
105
108
|
findBy: findByQuery,
|
|
106
109
|
findAllBy: findAllByQuery
|
|
107
110
|
};
|
|
108
|
-
}
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=makeQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/queries/makeQueries.ts"],"names":["deprecatedKeys","extractDeprecatedWaitForOptionUsage","queryOptions","waitForOptions","timeout","interval","stackTraceError","forEach","key","option","console","warn","toString","makeQueries","queryAllByQuery","getMissingError","getMultipleError","getAllByQuery","instance","getAllFn","predicate","options","results","length","ErrorWithStack","queryByQuery","singleQueryFn","getByQuery","getFn","findAllByQuery","findAllFn","deprecatedWaitForOptions","findByQuery","findFn","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy"],"mappings":"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","sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { ErrorWithStack } from '../helpers/errors';\nimport waitFor from '../waitFor';\nimport type { WaitForOptions } from '../waitFor';\n\nexport type GetByQuery<Predicate, Options> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance;\n\nexport type GetAllByQuery<Predicate, Options> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance[];\n\nexport type QueryByQuery<Predicate, Options> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance | null;\n\nexport type QueryAllByQuery<Predicate, Options> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance[];\n\nexport type FindByQuery<Predicate, Options> = (\n predicate: Predicate,\n options?: Options & WaitForOptions,\n waitForOptions?: WaitForOptions\n) => Promise<ReactTestInstance>;\n\nexport type FindAllByQuery<Predicate, Options> = (\n predicate: Predicate,\n options?: Options & WaitForOptions,\n waitForOptions?: WaitForOptions\n) => Promise<ReactTestInstance[]>;\n\ntype UnboundQuery<Query> = (instance: ReactTestInstance) => Query;\n\nexport type UnboundQueries<Predicate, Options> = {\n getBy: UnboundQuery<GetByQuery<Predicate, Options>>;\n getAllBy: UnboundQuery<GetAllByQuery<Predicate, Options>>;\n queryBy: UnboundQuery<QueryByQuery<Predicate, Options>>;\n queryAllBy: UnboundQuery<QueryAllByQuery<Predicate, Options>>;\n findBy: UnboundQuery<FindByQuery<Predicate, Options>>;\n findAllBy: UnboundQuery<FindAllByQuery<Predicate, Options>>;\n};\n\n// The WaitForOptions has been moved to the second option param of findBy* methods with the adding of TextMatchOptions\n// To make the migration easier and avoid a breaking change, keep reading this options from the first param but warn\nconst deprecatedKeys: (keyof WaitForOptions)[] = [\n 'timeout',\n 'interval',\n 'stackTraceError',\n];\nconst extractDeprecatedWaitForOptionUsage = (queryOptions?: WaitForOptions) => {\n if (queryOptions) {\n const waitForOptions: WaitForOptions = {\n timeout: queryOptions.timeout,\n interval: queryOptions.interval,\n stackTraceError: queryOptions.stackTraceError,\n };\n deprecatedKeys.forEach((key) => {\n const option = queryOptions[key];\n if (option) {\n // eslint-disable-next-line no-console\n console.warn(\n `Use of option \"${key}\" in a findBy* query's second parameter, TextMatchOptions, is deprecated. Please pass this option in the third, WaitForOptions, parameter. \nExample: \n\n findByText(text, {}, { ${key}: ${option.toString()} })`\n );\n }\n });\n return waitForOptions;\n }\n};\n\nexport function makeQueries<Predicate, Options>(\n queryAllByQuery: UnboundQuery<QueryAllByQuery<Predicate, Options>>,\n getMissingError: (predicate: Predicate) => string,\n getMultipleError: (predicate: Predicate) => string\n): UnboundQueries<Predicate, Options> {\n function getAllByQuery(instance: ReactTestInstance) {\n return function getAllFn(predicate: Predicate, options?: Options) {\n const results = queryAllByQuery(instance)(predicate, options);\n\n if (results.length === 0) {\n throw new ErrorWithStack(getMissingError(predicate), getAllFn);\n }\n\n return results;\n };\n }\n\n function queryByQuery(instance: ReactTestInstance) {\n return function singleQueryFn(predicate: Predicate, options?: Options) {\n const results = queryAllByQuery(instance)(predicate, options);\n\n if (results.length > 1) {\n throw new ErrorWithStack(getMultipleError(predicate), singleQueryFn);\n }\n\n if (results.length === 0) {\n return null;\n }\n\n return results[0];\n };\n }\n\n function getByQuery(instance: ReactTestInstance) {\n return function getFn(predicate: Predicate, options?: Options) {\n const results = queryAllByQuery(instance)(predicate, options);\n\n if (results.length > 1) {\n throw new ErrorWithStack(getMultipleError(predicate), getFn);\n }\n\n if (results.length === 0) {\n throw new ErrorWithStack(getMissingError(predicate), getFn);\n }\n\n return results[0];\n };\n }\n\n function findAllByQuery(instance: ReactTestInstance) {\n return function findAllFn(\n predicate: Predicate,\n queryOptions?: Options & WaitForOptions,\n waitForOptions: WaitForOptions = {}\n ) {\n const deprecatedWaitForOptions = extractDeprecatedWaitForOptionUsage(\n queryOptions\n );\n return waitFor(() => getAllByQuery(instance)(predicate, queryOptions), {\n ...deprecatedWaitForOptions,\n ...waitForOptions,\n });\n };\n }\n\n function findByQuery(instance: ReactTestInstance) {\n return function findFn(\n predicate: Predicate,\n queryOptions?: Options & WaitForOptions,\n waitForOptions: WaitForOptions = {}\n ) {\n const deprecatedWaitForOptions = extractDeprecatedWaitForOptionUsage(\n queryOptions\n );\n return waitFor(() => getByQuery(instance)(predicate, queryOptions), {\n ...deprecatedWaitForOptions,\n ...waitForOptions,\n });\n };\n }\n\n return {\n getBy: getByQuery,\n getAllBy: getAllByQuery,\n queryBy: queryByQuery,\n queryAllBy: queryAllByQuery,\n findBy: findByQuery,\n findAllBy: findAllByQuery,\n };\n}\n"],"file":"makeQueries.js"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ReactTestInstance } from 'react-test-renderer';
|
|
2
|
+
import { TextMatch } from '../matches';
|
|
3
|
+
import type { FindAllByQuery, FindByQuery, GetAllByQuery, GetByQuery, QueryAllByQuery, QueryByQuery } from './makeQueries';
|
|
4
|
+
import type { TextMatchOptions } from './text';
|
|
5
|
+
export declare type ByPlaceholderTextQueries = {
|
|
6
|
+
getByPlaceholderText: GetByQuery<TextMatch, TextMatchOptions>;
|
|
7
|
+
getAllByPlaceholderText: GetAllByQuery<TextMatch, TextMatchOptions>;
|
|
8
|
+
queryByPlaceholderText: QueryByQuery<TextMatch, TextMatchOptions>;
|
|
9
|
+
queryAllByPlaceholderText: QueryAllByQuery<TextMatch, TextMatchOptions>;
|
|
10
|
+
findByPlaceholderText: FindByQuery<TextMatch, TextMatchOptions>;
|
|
11
|
+
findAllByPlaceholderText: FindAllByQuery<TextMatch, TextMatchOptions>;
|
|
12
|
+
};
|
|
13
|
+
export declare const bindByPlaceholderTextQueries: (instance: ReactTestInstance) => ByPlaceholderTextQueries;
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.bindByPlaceholderTextQueries = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _errors = require("../helpers/errors");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _filterNodeByType = require("../helpers/filterNodeByType");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _matches = require("../matches");
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _makeQueries = require("./makeQueries");
|
|
15
15
|
|
|
16
16
|
const getTextInputNodeByPlaceholderText = (node, placeholder, options = {}) => {
|
|
17
17
|
try {
|
|
@@ -33,21 +33,27 @@ const queryAllByPlaceholderText = instance => function queryAllByPlaceholderFn(p
|
|
|
33
33
|
return instance.findAll(node => getTextInputNodeByPlaceholderText(node, placeholder, queryOptions));
|
|
34
34
|
};
|
|
35
35
|
|
|
36
|
-
exports.queryAllByPlaceholderText = queryAllByPlaceholderText;
|
|
37
|
-
|
|
38
36
|
const getMultipleError = placeholder => `Found multiple elements with placeholder: ${String(placeholder)} `;
|
|
39
37
|
|
|
40
38
|
const getMissingError = placeholder => `Unable to find an element with placeholder: ${String(placeholder)}`;
|
|
41
39
|
|
|
42
40
|
const {
|
|
43
|
-
getBy
|
|
44
|
-
getAllBy
|
|
45
|
-
queryBy
|
|
46
|
-
|
|
47
|
-
|
|
41
|
+
getBy,
|
|
42
|
+
getAllBy,
|
|
43
|
+
queryBy,
|
|
44
|
+
queryAllBy,
|
|
45
|
+
findBy,
|
|
46
|
+
findAllBy
|
|
48
47
|
} = (0, _makeQueries.makeQueries)(queryAllByPlaceholderText, getMissingError, getMultipleError);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
|
|
49
|
+
const bindByPlaceholderTextQueries = instance => ({
|
|
50
|
+
getByPlaceholderText: getBy(instance),
|
|
51
|
+
getAllByPlaceholderText: getAllBy(instance),
|
|
52
|
+
queryByPlaceholderText: queryBy(instance),
|
|
53
|
+
queryAllByPlaceholderText: queryAllBy(instance),
|
|
54
|
+
findByPlaceholderText: findBy(instance),
|
|
55
|
+
findAllByPlaceholderText: findAllBy(instance)
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
exports.bindByPlaceholderTextQueries = bindByPlaceholderTextQueries;
|
|
59
|
+
//# sourceMappingURL=placeholderText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/queries/placeholderText.ts"],"names":["getTextInputNodeByPlaceholderText","node","placeholder","options","TextInput","require","exact","normalizer","props","error","queryAllByPlaceholderText","instance","queryAllByPlaceholderFn","queryOptions","findAll","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","bindByPlaceholderTextQueries","getByPlaceholderText","getAllByPlaceholderText","queryByPlaceholderText","findByPlaceholderText","findAllByPlaceholderText"],"mappings":";;;;;;;AACA;;AACA;;AACA;;AACA;;AAWA,MAAMA,iCAAiC,GAAG,CACxCC,IADwC,EAExCC,WAFwC,EAGxCC,OAAyB,GAAG,EAHY,KAIrC;AACH,MAAI;AACF,UAAM;AAAEC,MAAAA;AAAF,QAAgBC,OAAO,CAAC,cAAD,CAA7B;;AACA,UAAM;AAAEC,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAwBJ,OAA9B;AACA,WACE,wCAAiBF,IAAjB,EAAuBG,SAAvB,KACA,sBAAQF,WAAR,EAAqBD,IAAI,CAACO,KAAL,CAAWN,WAAhC,EAA6CK,UAA7C,EAAyDD,KAAzD,CAFF;AAID,GAPD,CAOE,OAAOG,KAAP,EAAc;AACd,UAAM,4CAA+BA,KAA/B,CAAN;AACD;AACF,CAfD;;AAiBA,MAAMC,yBAAyB,GAC7BC,QADgC,IAMhC,SAASC,uBAAT,CAAiCV,WAAjC,EAA8CW,YAA9C,EAA4D;AAC1D,SAAOF,QAAQ,CAACG,OAAT,CAAkBb,IAAD,IACtBD,iCAAiC,CAACC,IAAD,EAAOC,WAAP,EAAoBW,YAApB,CAD5B,CAAP;AAGD,CAVH;;AAYA,MAAME,gBAAgB,GAAIb,WAAD,IACtB,6CAA4Cc,MAAM,CAACd,WAAD,CAAc,GADnE;;AAEA,MAAMe,eAAe,GAAIf,WAAD,IACrB,+CAA8Cc,MAAM,CAACd,WAAD,CAAc,EADrE;;AAGA,MAAM;AAAEgB,EAAAA,KAAF;AAASC,EAAAA,QAAT;AAAmBC,EAAAA,OAAnB;AAA4BC,EAAAA,UAA5B;AAAwCC,EAAAA,MAAxC;AAAgDC,EAAAA;AAAhD,IAA8D,8BAClEb,yBADkE,EAElEO,eAFkE,EAGlEF,gBAHkE,CAApE;;AAeO,MAAMS,4BAA4B,GACvCb,QAD0C,KAEZ;AAC9Bc,EAAAA,oBAAoB,EAAEP,KAAK,CAACP,QAAD,CADG;AAE9Be,EAAAA,uBAAuB,EAAEP,QAAQ,CAACR,QAAD,CAFH;AAG9BgB,EAAAA,sBAAsB,EAAEP,OAAO,CAACT,QAAD,CAHD;AAI9BD,EAAAA,yBAAyB,EAAEW,UAAU,CAACV,QAAD,CAJP;AAK9BiB,EAAAA,qBAAqB,EAAEN,MAAM,CAACX,QAAD,CALC;AAM9BkB,EAAAA,wBAAwB,EAAEN,SAAS,CAACZ,QAAD;AANL,CAFY,CAArC","sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { createLibraryNotSupportedError } from '../helpers/errors';\nimport { filterNodeByType } from '../helpers/filterNodeByType';\nimport { matches, TextMatch } from '../matches';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\nimport type { TextMatchOptions } from './text';\n\nconst getTextInputNodeByPlaceholderText = (\n node: ReactTestInstance,\n placeholder: TextMatch,\n options: TextMatchOptions = {}\n) => {\n try {\n const { TextInput } = require('react-native');\n const { exact, normalizer } = options;\n return (\n filterNodeByType(node, TextInput) &&\n matches(placeholder, node.props.placeholder, normalizer, exact)\n );\n } catch (error) {\n throw createLibraryNotSupportedError(error);\n }\n};\n\nconst queryAllByPlaceholderText = (\n instance: ReactTestInstance\n): ((\n placeholder: TextMatch,\n queryOptions?: TextMatchOptions\n) => Array<ReactTestInstance>) =>\n function queryAllByPlaceholderFn(placeholder, queryOptions) {\n return instance.findAll((node) =>\n getTextInputNodeByPlaceholderText(node, placeholder, queryOptions)\n );\n };\n\nconst getMultipleError = (placeholder: TextMatch) =>\n `Found multiple elements with placeholder: ${String(placeholder)} `;\nconst getMissingError = (placeholder: TextMatch) =>\n `Unable to find an element with placeholder: ${String(placeholder)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByPlaceholderText,\n getMissingError,\n getMultipleError\n);\n\nexport type ByPlaceholderTextQueries = {\n getByPlaceholderText: GetByQuery<TextMatch, TextMatchOptions>;\n getAllByPlaceholderText: GetAllByQuery<TextMatch, TextMatchOptions>;\n queryByPlaceholderText: QueryByQuery<TextMatch, TextMatchOptions>;\n queryAllByPlaceholderText: QueryAllByQuery<TextMatch, TextMatchOptions>;\n findByPlaceholderText: FindByQuery<TextMatch, TextMatchOptions>;\n findAllByPlaceholderText: FindAllByQuery<TextMatch, TextMatchOptions>;\n};\n\nexport const bindByPlaceholderTextQueries = (\n instance: ReactTestInstance\n): ByPlaceholderTextQueries => ({\n getByPlaceholderText: getBy(instance),\n getAllByPlaceholderText: getAllBy(instance),\n queryByPlaceholderText: queryBy(instance),\n queryAllByPlaceholderText: queryAllBy(instance),\n findByPlaceholderText: findBy(instance),\n findAllByPlaceholderText: findAllBy(instance),\n});\n"],"file":"placeholderText.js"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ReactTestInstance } from 'react-test-renderer';
|
|
2
|
+
import { TextMatch } from '../matches';
|
|
3
|
+
import type { FindAllByQuery, FindByQuery, GetAllByQuery, GetByQuery, QueryAllByQuery, QueryByQuery } from './makeQueries';
|
|
4
|
+
import type { TextMatchOptions } from './text';
|
|
5
|
+
export declare type ByTestIdQueries = {
|
|
6
|
+
getByTestId: GetByQuery<TextMatch, TextMatchOptions>;
|
|
7
|
+
getAllByTestId: GetAllByQuery<TextMatch, TextMatchOptions>;
|
|
8
|
+
queryByTestId: QueryByQuery<TextMatch, TextMatchOptions>;
|
|
9
|
+
queryAllByTestId: QueryAllByQuery<TextMatch, TextMatchOptions>;
|
|
10
|
+
findByTestId: FindByQuery<TextMatch, TextMatchOptions>;
|
|
11
|
+
findAllByTestId: FindAllByQuery<TextMatch, TextMatchOptions>;
|
|
12
|
+
};
|
|
13
|
+
export declare const bindByTestIdQueries: (instance: ReactTestInstance) => ByTestIdQueries;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.bindByTestIdQueries = void 0;
|
|
7
7
|
|
|
8
8
|
var _matches = require("../matches");
|
|
9
9
|
|
|
@@ -22,21 +22,27 @@ const queryAllByTestId = instance => function queryAllByTestIdFn(testId, queryOp
|
|
|
22
22
|
return results;
|
|
23
23
|
};
|
|
24
24
|
|
|
25
|
-
exports.queryAllByTestId = queryAllByTestId;
|
|
26
|
-
|
|
27
25
|
const getMultipleError = testId => `Found multiple elements with testID: ${String(testId)}`;
|
|
28
26
|
|
|
29
27
|
const getMissingError = testId => `Unable to find an element with testID: ${String(testId)}`;
|
|
30
28
|
|
|
31
29
|
const {
|
|
32
|
-
getBy
|
|
33
|
-
getAllBy
|
|
34
|
-
queryBy
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
getBy,
|
|
31
|
+
getAllBy,
|
|
32
|
+
queryBy,
|
|
33
|
+
queryAllBy,
|
|
34
|
+
findBy,
|
|
35
|
+
findAllBy
|
|
37
36
|
} = (0, _makeQueries.makeQueries)(queryAllByTestId, getMissingError, getMultipleError);
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
37
|
+
|
|
38
|
+
const bindByTestIdQueries = instance => ({
|
|
39
|
+
getByTestId: getBy(instance),
|
|
40
|
+
getAllByTestId: getAllBy(instance),
|
|
41
|
+
queryByTestId: queryBy(instance),
|
|
42
|
+
queryAllByTestId: queryAllBy(instance),
|
|
43
|
+
findByTestId: findBy(instance),
|
|
44
|
+
findAllByTestId: findAllBy(instance)
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
exports.bindByTestIdQueries = bindByTestIdQueries;
|
|
48
|
+
//# sourceMappingURL=testId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/queries/testId.ts"],"names":["getNodeByTestId","node","testID","options","exact","normalizer","props","queryAllByTestId","instance","queryAllByTestIdFn","testId","queryOptions","results","findAll","filter","element","type","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","bindByTestIdQueries","getByTestId","getAllByTestId","queryByTestId","findByTestId","findAllByTestId"],"mappings":";;;;;;;AACA;;AACA;;AAWA,MAAMA,eAAe,GAAG,CACtBC,IADsB,EAEtBC,MAFsB,EAGtBC,OAAyB,GAAG,EAHN,KAInB;AACH,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAAwBF,OAA9B;AACA,SAAO,sBAAQD,MAAR,EAAgBD,IAAI,CAACK,KAAL,CAAWJ,MAA3B,EAAmCG,UAAnC,EAA+CD,KAA/C,CAAP;AACD,CAPD;;AASA,MAAMG,gBAAgB,GACpBC,QADuB,IAMvB,SAASC,kBAAT,CAA4BC,MAA5B,EAAoCC,YAApC,EAAkD;AAChD,QAAMC,OAAO,GAAGJ,QAAQ,CACrBK,OADa,CACJZ,IAAD,IAAUD,eAAe,CAACC,IAAD,EAAOS,MAAP,EAAeC,YAAf,CADpB,EAEbG,MAFa,CAELC,OAAD,IAAa,OAAOA,OAAO,CAACC,IAAf,KAAwB,QAF/B,CAAhB;AAIA,SAAOJ,OAAP;AACD,CAZH;;AAcA,MAAMK,gBAAgB,GAAIP,MAAD,IACtB,wCAAuCQ,MAAM,CAACR,MAAD,CAAS,EADzD;;AAEA,MAAMS,eAAe,GAAIT,MAAD,IACrB,0CAAyCQ,MAAM,CAACR,MAAD,CAAS,EAD3D;;AAGA,MAAM;AAAEU,EAAAA,KAAF;AAASC,EAAAA,QAAT;AAAmBC,EAAAA,OAAnB;AAA4BC,EAAAA,UAA5B;AAAwCC,EAAAA,MAAxC;AAAgDC,EAAAA;AAAhD,IAA8D,8BAClElB,gBADkE,EAElEY,eAFkE,EAGlEF,gBAHkE,CAApE;;AAeO,MAAMS,mBAAmB,GAC9BlB,QADiC,KAEZ;AACrBmB,EAAAA,WAAW,EAAEP,KAAK,CAACZ,QAAD,CADG;AAErBoB,EAAAA,cAAc,EAAEP,QAAQ,CAACb,QAAD,CAFH;AAGrBqB,EAAAA,aAAa,EAAEP,OAAO,CAACd,QAAD,CAHD;AAIrBD,EAAAA,gBAAgB,EAAEgB,UAAU,CAACf,QAAD,CAJP;AAKrBsB,EAAAA,YAAY,EAAEN,MAAM,CAAChB,QAAD,CALC;AAMrBuB,EAAAA,eAAe,EAAEN,SAAS,CAACjB,QAAD;AANL,CAFY,CAA5B","sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { matches, TextMatch } from '../matches';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\nimport type { TextMatchOptions } from './text';\n\nconst getNodeByTestId = (\n node: ReactTestInstance,\n testID: TextMatch,\n options: TextMatchOptions = {}\n) => {\n const { exact, normalizer } = options;\n return matches(testID, node.props.testID, normalizer, exact);\n};\n\nconst queryAllByTestId = (\n instance: ReactTestInstance\n): ((\n testId: TextMatch,\n queryOptions?: TextMatchOptions\n) => Array<ReactTestInstance>) =>\n function queryAllByTestIdFn(testId, queryOptions) {\n const results = instance\n .findAll((node) => getNodeByTestId(node, testId, queryOptions))\n .filter((element) => typeof element.type === 'string');\n\n return results;\n };\n\nconst getMultipleError = (testId: TextMatch) =>\n `Found multiple elements with testID: ${String(testId)}`;\nconst getMissingError = (testId: TextMatch) =>\n `Unable to find an element with testID: ${String(testId)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByTestId,\n getMissingError,\n getMultipleError\n);\n\nexport type ByTestIdQueries = {\n getByTestId: GetByQuery<TextMatch, TextMatchOptions>;\n getAllByTestId: GetAllByQuery<TextMatch, TextMatchOptions>;\n queryByTestId: QueryByQuery<TextMatch, TextMatchOptions>;\n queryAllByTestId: QueryAllByQuery<TextMatch, TextMatchOptions>;\n findByTestId: FindByQuery<TextMatch, TextMatchOptions>;\n findAllByTestId: FindAllByQuery<TextMatch, TextMatchOptions>;\n};\n\nexport const bindByTestIdQueries = (\n instance: ReactTestInstance\n): ByTestIdQueries => ({\n getByTestId: getBy(instance),\n getAllByTestId: getAllBy(instance),\n queryByTestId: queryBy(instance),\n queryAllByTestId: queryAllBy(instance),\n findByTestId: findBy(instance),\n findAllByTestId: findAllBy(instance),\n});\n"],"file":"testId.js"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ReactTestInstance } from 'react-test-renderer';
|
|
2
|
+
import { TextMatch } from '../matches';
|
|
3
|
+
import type { NormalizerFn } from '../matches';
|
|
4
|
+
import type { FindAllByQuery, FindByQuery, GetAllByQuery, GetByQuery, QueryAllByQuery, QueryByQuery } from './makeQueries';
|
|
5
|
+
export declare type TextMatchOptions = {
|
|
6
|
+
exact?: boolean;
|
|
7
|
+
normalizer?: NormalizerFn;
|
|
8
|
+
};
|
|
9
|
+
export declare type ByTextQueries = {
|
|
10
|
+
getByText: GetByQuery<TextMatch, TextMatchOptions>;
|
|
11
|
+
getAllByText: GetAllByQuery<TextMatch, TextMatchOptions>;
|
|
12
|
+
queryByText: QueryByQuery<TextMatch, TextMatchOptions>;
|
|
13
|
+
queryAllByText: QueryAllByQuery<TextMatch, TextMatchOptions>;
|
|
14
|
+
findByText: FindByQuery<TextMatch, TextMatchOptions>;
|
|
15
|
+
findAllByText: FindAllByQuery<TextMatch, TextMatchOptions>;
|
|
16
|
+
};
|
|
17
|
+
export declare const bindByTextQueries: (instance: ReactTestInstance) => ByTextQueries;
|