@testing-library/react-native 12.2.1 → 12.3.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.
Files changed (395) hide show
  1. package/build/config.d.ts +1 -0
  2. package/build/config.js.map +1 -1
  3. package/build/fireEvent.js +2 -1
  4. package/build/fireEvent.js.map +1 -1
  5. package/build/helpers/accessiblity.d.ts +7 -0
  6. package/build/helpers/accessiblity.js +73 -2
  7. package/build/helpers/accessiblity.js.map +1 -1
  8. package/build/helpers/component-tree.d.ts +7 -0
  9. package/build/helpers/component-tree.js +18 -0
  10. package/build/helpers/component-tree.js.map +1 -1
  11. package/build/helpers/format-default.d.ts +1 -2
  12. package/build/helpers/format-default.js +22 -13
  13. package/build/helpers/format-default.js.map +1 -1
  14. package/build/helpers/format.js +1 -4
  15. package/build/helpers/format.js.map +1 -1
  16. package/build/helpers/host-component-names.d.ts +5 -0
  17. package/build/helpers/host-component-names.js +13 -1
  18. package/build/helpers/host-component-names.js.map +1 -1
  19. package/build/helpers/matchers/accessibilityState.js +3 -3
  20. package/build/helpers/matchers/accessibilityState.js.map +1 -1
  21. package/build/helpers/matchers/accessibilityValue.js +3 -2
  22. package/build/helpers/matchers/accessibilityValue.js.map +1 -1
  23. package/build/helpers/matchers/matchLabelText.d.ts +1 -1
  24. package/build/helpers/matchers/matchLabelText.js +5 -8
  25. package/build/helpers/matchers/matchLabelText.js.map +1 -1
  26. package/build/helpers/matchers/matchTextContent.js +2 -2
  27. package/build/helpers/matchers/matchTextContent.js.map +1 -1
  28. package/build/helpers/{getTextContent.js → text-content.js} +1 -1
  29. package/build/helpers/text-content.js.map +1 -0
  30. package/build/helpers/text-input.d.ts +3 -0
  31. package/build/helpers/text-input.js +21 -0
  32. package/build/helpers/text-input.js.map +1 -0
  33. package/build/matchers/extend-expect.d.js +2 -0
  34. package/build/matchers/extend-expect.d.js.map +1 -0
  35. package/build/matchers/extend-expect.d.ts +2 -0
  36. package/build/matchers/extend-expect.js +26 -0
  37. package/build/matchers/extend-expect.js.map +1 -0
  38. package/build/matchers/index.d.ts +9 -0
  39. package/build/matchers/index.js +75 -0
  40. package/build/matchers/index.js.map +1 -0
  41. package/build/matchers/to-be-checked.d.ts +6 -0
  42. package/build/matchers/to-be-checked.js +31 -0
  43. package/build/matchers/to-be-checked.js.map +1 -0
  44. package/build/matchers/to-be-disabled.d.ts +10 -0
  45. package/build/matchers/to-be-disabled.js +52 -0
  46. package/build/matchers/to-be-disabled.js.map +1 -0
  47. package/build/matchers/to-be-empty-element.d.ts +6 -0
  48. package/build/matchers/to-be-empty-element.js +20 -0
  49. package/build/matchers/to-be-empty-element.js.map +1 -0
  50. package/build/matchers/to-be-on-the-screen.d.ts +6 -0
  51. package/build/matchers/to-be-on-the-screen.js +29 -0
  52. package/build/matchers/to-be-on-the-screen.js.map +1 -0
  53. package/build/matchers/to-be-partially-checked.d.ts +6 -0
  54. package/build/matchers/to-be-partially-checked.js +28 -0
  55. package/build/matchers/to-be-partially-checked.js.map +1 -0
  56. package/build/matchers/to-be-visible.d.ts +6 -0
  57. package/build/matchers/to-be-visible.js +56 -0
  58. package/build/matchers/to-be-visible.js.map +1 -0
  59. package/build/matchers/to-have-display-value.d.ts +7 -0
  60. package/build/matchers/to-have-display-value.js +26 -0
  61. package/build/matchers/to-have-display-value.js.map +1 -0
  62. package/build/matchers/to-have-prop.d.ts +6 -0
  63. package/build/matchers/to-have-prop.js +35 -0
  64. package/build/matchers/to-have-prop.js.map +1 -0
  65. package/build/matchers/to-have-text-content.d.ts +7 -0
  66. package/build/matchers/to-have-text-content.js +21 -0
  67. package/build/matchers/to-have-text-content.js.map +1 -0
  68. package/build/matchers/utils.d.ts +18 -0
  69. package/build/matchers/utils.js +90 -0
  70. package/build/matchers/utils.js.map +1 -0
  71. package/build/matches.d.ts +1 -1
  72. package/build/matches.js.map +1 -1
  73. package/build/queries/displayValue.js +4 -3
  74. package/build/queries/displayValue.js.map +1 -1
  75. package/build/queries/labelText.js +2 -2
  76. package/build/queries/labelText.js.map +1 -1
  77. package/build/queries/role.js +1 -1
  78. package/build/queries/role.js.map +1 -1
  79. package/build/render.d.ts +12 -48
  80. package/build/user-event/clear.js +2 -1
  81. package/build/user-event/clear.js.map +1 -1
  82. package/build/user-event/press/press.js +2 -1
  83. package/build/user-event/press/press.js.map +1 -1
  84. package/build/user-event/type/type.js +2 -1
  85. package/build/user-event/type/type.js.map +1 -1
  86. package/build/user-event/utils/index.d.ts +0 -1
  87. package/build/user-event/utils/index.js +0 -11
  88. package/build/user-event/utils/index.js.map +1 -1
  89. package/package.json +6 -23
  90. package/.DS_Store +0 -0
  91. package/.codecov.yml +0 -9
  92. package/.eslintcache +0 -1
  93. package/.eslintignore +0 -3
  94. package/.eslintrc +0 -19
  95. package/.flowconfig +0 -63
  96. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  97. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -14
  98. package/.github/ISSUE_TEMPLATE/question.md +0 -9
  99. package/.github/PULL_REQUEST_TEMPLATE.md +0 -10
  100. package/.github/actions/setup-deps/action.yml +0 -22
  101. package/.github/actions/setup-website-deps/action.yml +0 -22
  102. package/.github/dependabot.yml +0 -10
  103. package/.github/workflows/deploy-website.yml +0 -36
  104. package/.github/workflows/example-apps.yml +0 -25
  105. package/.github/workflows/main.yml +0 -103
  106. package/.gitignore +0 -11
  107. package/.prettierrc.js +0 -5
  108. package/CODE_OF_CONDUCT.md +0 -73
  109. package/CONTRIBUTING.md +0 -64
  110. package/babel.config.js +0 -22
  111. package/build/helpers/getTextContent.js.map +0 -1
  112. package/build/user-event/utils/host-components.d.ts +0 -2
  113. package/build/user-event/utils/host-components.js +0 -11
  114. package/build/user-event/utils/host-components.js.map +0 -1
  115. package/examples/basic/.expo/README.md +0 -15
  116. package/examples/basic/.expo/packager-info.json +0 -4
  117. package/examples/basic/.expo/settings.json +0 -10
  118. package/examples/basic/.expo-shared/assets.json +0 -4
  119. package/examples/basic/.gitignore +0 -14
  120. package/examples/basic/App.tsx +0 -20
  121. package/examples/basic/README.md +0 -11
  122. package/examples/basic/__tests__/App.test.tsx +0 -137
  123. package/examples/basic/app.json +0 -31
  124. package/examples/basic/assets/adaptive-icon.png +0 -0
  125. package/examples/basic/assets/favicon.png +0 -0
  126. package/examples/basic/assets/icon.png +0 -0
  127. package/examples/basic/assets/splash.png +0 -0
  128. package/examples/basic/babel.config.js +0 -6
  129. package/examples/basic/components/Home.tsx +0 -28
  130. package/examples/basic/components/LoginForm.tsx +0 -138
  131. package/examples/basic/jest-setup.ts +0 -7
  132. package/examples/basic/jest.config.js +0 -5
  133. package/examples/basic/package.json +0 -30
  134. package/examples/basic/tsconfig.json +0 -7
  135. package/examples/basic/yarn.lock +0 -7499
  136. package/examples/react-navigation/README.md +0 -16
  137. package/examples/react-navigation/babel.config.js +0 -4
  138. package/examples/react-navigation/jest-setup.js +0 -11
  139. package/examples/react-navigation/jest.config.js +0 -10
  140. package/examples/react-navigation/package.json +0 -31
  141. package/examples/react-navigation/src/App.js +0 -21
  142. package/examples/react-navigation/src/DrawerNavigator.js +0 -15
  143. package/examples/react-navigation/src/DrawerNavigator.test.js +0 -42
  144. package/examples/react-navigation/src/NativeStackNavigator.js +0 -15
  145. package/examples/react-navigation/src/NativeStackNavigator.test.js +0 -34
  146. package/examples/react-navigation/src/StackNavigator.js +0 -15
  147. package/examples/react-navigation/src/StackNavigator.test.js +0 -34
  148. package/examples/react-navigation/src/TabNavigator.js +0 -15
  149. package/examples/react-navigation/src/TabNavigator.test.js +0 -21
  150. package/examples/react-navigation/src/screens/DetailsScreen.js +0 -43
  151. package/examples/react-navigation/src/screens/DetailsScreen.test.js +0 -27
  152. package/examples/react-navigation/src/screens/DrawerHomeScreen.js +0 -26
  153. package/examples/react-navigation/src/screens/HomeScreen.js +0 -48
  154. package/examples/react-navigation/src/screens/SettingsScreen.js +0 -20
  155. package/examples/react-navigation/src/test-utils.js +0 -12
  156. package/examples/react-navigation/yarn.lock +0 -5018
  157. package/examples/redux/App.js +0 -27
  158. package/examples/redux/README.md +0 -5
  159. package/examples/redux/actions/todoActions.js +0 -25
  160. package/examples/redux/babel.config.js +0 -6
  161. package/examples/redux/components/AddTodo.js +0 -73
  162. package/examples/redux/components/AddTodo.test.js +0 -27
  163. package/examples/redux/components/TodoElem.js +0 -25
  164. package/examples/redux/components/TodoList.js +0 -29
  165. package/examples/redux/components/TodoList.test.js +0 -34
  166. package/examples/redux/index.js +0 -8
  167. package/examples/redux/jest-setup.js +0 -2
  168. package/examples/redux/jest.config.js +0 -4
  169. package/examples/redux/package.json +0 -23
  170. package/examples/redux/reducers/index.js +0 -6
  171. package/examples/redux/reducers/todoReducer.js +0 -27
  172. package/examples/redux/store.js +0 -10
  173. package/examples/redux/test-utils.js +0 -11
  174. package/examples/redux/yarn.lock +0 -4819
  175. package/experiments-app/.expo/README.md +0 -15
  176. package/experiments-app/.expo/devices.json +0 -3
  177. package/experiments-app/.expo/packager-info.json +0 -9
  178. package/experiments-app/.expo/settings.json +0 -9
  179. package/experiments-app/.gitignore +0 -17
  180. package/experiments-app/.prettierrc.js +0 -5
  181. package/experiments-app/app.json +0 -30
  182. package/experiments-app/assets/adaptive-icon.png +0 -0
  183. package/experiments-app/assets/favicon.png +0 -0
  184. package/experiments-app/assets/icon.png +0 -0
  185. package/experiments-app/assets/splash.png +0 -0
  186. package/experiments-app/babel.config.js +0 -6
  187. package/experiments-app/index.js +0 -4
  188. package/experiments-app/package.json +0 -29
  189. package/experiments-app/src/App.tsx +0 -31
  190. package/experiments-app/src/MainScreen.tsx +0 -52
  191. package/experiments-app/src/experiments.ts +0 -35
  192. package/experiments-app/src/screens/FlatListEvents.tsx +0 -57
  193. package/experiments-app/src/screens/ScrollViewEvents.tsx +0 -65
  194. package/experiments-app/src/screens/SectionListEvents.tsx +0 -91
  195. package/experiments-app/src/screens/TextInputEventPropagation.tsx +0 -42
  196. package/experiments-app/src/screens/TextInputEvents.tsx +0 -48
  197. package/experiments-app/src/utils/helpers.ts +0 -18
  198. package/experiments-app/tsconfig.json +0 -6
  199. package/experiments-app/yarn.lock +0 -6709
  200. package/experiments-rtl/.babelrc +0 -8
  201. package/experiments-rtl/.eslintrc.json +0 -3
  202. package/experiments-rtl/.gitignore +0 -35
  203. package/experiments-rtl/README.md +0 -34
  204. package/experiments-rtl/jest-setup.js +0 -1
  205. package/experiments-rtl/jest.config.js +0 -4
  206. package/experiments-rtl/next.config.js +0 -4
  207. package/experiments-rtl/package.json +0 -38
  208. package/experiments-rtl/postcss.config.js +0 -6
  209. package/experiments-rtl/public/next.svg +0 -1
  210. package/experiments-rtl/public/vercel.svg +0 -1
  211. package/experiments-rtl/src/app/__tests__/click.test.tsx +0 -31
  212. package/experiments-rtl/src/app/__tests__/managed-text-input.test.tsx +0 -51
  213. package/experiments-rtl/src/app/globals.css +0 -27
  214. package/experiments-rtl/src/app/layout.tsx +0 -22
  215. package/experiments-rtl/src/app/page.tsx +0 -113
  216. package/experiments-rtl/tailwind.config.ts +0 -20
  217. package/experiments-rtl/tsconfig.json +0 -28
  218. package/experiments-rtl/yarn.lock +0 -5418
  219. package/flow-typed/npm/jest_v26.x.x.js +0 -1218
  220. package/flow-typed/npm/react-test-renderer_v16.x.x.js +0 -81
  221. package/jest-setup.ts +0 -10
  222. package/renovate.json +0 -19
  223. package/scripts/test_react_17 +0 -12
  224. package/src/__tests__/__snapshots__/render-debug.test.tsx.snap +0 -548
  225. package/src/__tests__/__snapshots__/render.test.tsx.snap +0 -39
  226. package/src/__tests__/act.test.tsx +0 -56
  227. package/src/__tests__/auto-cleanup-skip.test.tsx +0 -39
  228. package/src/__tests__/auto-cleanup.test.tsx +0 -50
  229. package/src/__tests__/cleanup.test.tsx +0 -26
  230. package/src/__tests__/config.test.ts +0 -55
  231. package/src/__tests__/fireEvent-textInput.test.tsx +0 -154
  232. package/src/__tests__/fireEvent.test.tsx +0 -485
  233. package/src/__tests__/host-component-names.test.tsx +0 -109
  234. package/src/__tests__/host-text-nesting.test.tsx +0 -90
  235. package/src/__tests__/jest-native.test.tsx +0 -84
  236. package/src/__tests__/questionsBoard.test.tsx +0 -62
  237. package/src/__tests__/react-native-api.test.tsx +0 -126
  238. package/src/__tests__/render-debug.test.tsx +0 -207
  239. package/src/__tests__/render-stringValidation.test.tsx +0 -157
  240. package/src/__tests__/render.test.tsx +0 -256
  241. package/src/__tests__/renderHook.test.tsx +0 -114
  242. package/src/__tests__/screen.test.tsx +0 -66
  243. package/src/__tests__/timerUtils.ts +0 -7
  244. package/src/__tests__/timers.test.ts +0 -27
  245. package/src/__tests__/waitFor.test.tsx +0 -327
  246. package/src/__tests__/waitForElementToBeRemoved.test.tsx +0 -151
  247. package/src/__tests__/within.test.tsx +0 -96
  248. package/src/act.ts +0 -86
  249. package/src/cleanup.ts +0 -15
  250. package/src/config.ts +0 -72
  251. package/src/fireEvent.ts +0 -159
  252. package/src/flush-micro-tasks.ts +0 -30
  253. package/src/helpers/__tests__/accessiblity.test.tsx +0 -373
  254. package/src/helpers/__tests__/component-tree.test.tsx +0 -226
  255. package/src/helpers/__tests__/format-default.tsx +0 -114
  256. package/src/helpers/__tests__/getTextContent.test.tsx +0 -49
  257. package/src/helpers/__tests__/includeHiddenElements.test.tsx +0 -39
  258. package/src/helpers/__tests__/query-name.test.ts +0 -10
  259. package/src/helpers/__tests__/timers.test.ts +0 -8
  260. package/src/helpers/accessiblity.ts +0 -108
  261. package/src/helpers/component-tree.ts +0 -94
  262. package/src/helpers/debugDeep.ts +0 -27
  263. package/src/helpers/debugShallow.ts +0 -22
  264. package/src/helpers/deprecation.ts +0 -53
  265. package/src/helpers/errors.ts +0 -66
  266. package/src/helpers/findAll.ts +0 -70
  267. package/src/helpers/format-default.ts +0 -72
  268. package/src/helpers/format.ts +0 -47
  269. package/src/helpers/getTextContent.ts +0 -20
  270. package/src/helpers/host-component-names.tsx +0 -88
  271. package/src/helpers/matchers/__tests__/matchArrayValue.test.ts +0 -34
  272. package/src/helpers/matchers/__tests__/matchObject.test.ts +0 -37
  273. package/src/helpers/matchers/__tests__/matchStringValue.test.ts +0 -15
  274. package/src/helpers/matchers/accessibilityState.ts +0 -48
  275. package/src/helpers/matchers/accessibilityValue.ts +0 -24
  276. package/src/helpers/matchers/matchArrayProp.ts +0 -21
  277. package/src/helpers/matchers/matchLabelText.ts +0 -50
  278. package/src/helpers/matchers/matchObjectProp.ts +0 -25
  279. package/src/helpers/matchers/matchStringProp.ts +0 -23
  280. package/src/helpers/matchers/matchTextContent.ts +0 -20
  281. package/src/helpers/pointer-events.ts +0 -27
  282. package/src/helpers/query-name.ts +0 -4
  283. package/src/helpers/stringValidation.ts +0 -36
  284. package/src/helpers/timers.ts +0 -98
  285. package/src/index.ts +0 -33
  286. package/src/matches.ts +0 -49
  287. package/src/pure.ts +0 -27
  288. package/src/queries/__tests__/a11yState.test.tsx +0 -439
  289. package/src/queries/__tests__/a11yValue.test.tsx +0 -309
  290. package/src/queries/__tests__/displayValue.test.tsx +0 -221
  291. package/src/queries/__tests__/hintText.test.tsx +0 -177
  292. package/src/queries/__tests__/labelText.test.tsx +0 -242
  293. package/src/queries/__tests__/makeQueries.test.tsx +0 -235
  294. package/src/queries/__tests__/placeholderText.test.tsx +0 -136
  295. package/src/queries/__tests__/role-value.test.tsx +0 -176
  296. package/src/queries/__tests__/role.test.tsx +0 -824
  297. package/src/queries/__tests__/testId.test.tsx +0 -200
  298. package/src/queries/__tests__/text.test.tsx +0 -556
  299. package/src/queries/a11yState.ts +0 -127
  300. package/src/queries/a11yValue.ts +0 -127
  301. package/src/queries/displayValue.ts +0 -71
  302. package/src/queries/hintText.ts +0 -107
  303. package/src/queries/labelText.ts +0 -57
  304. package/src/queries/makeQueries.ts +0 -255
  305. package/src/queries/options.ts +0 -14
  306. package/src/queries/placeholderText.ts +0 -72
  307. package/src/queries/role.ts +0 -131
  308. package/src/queries/testId.ts +0 -66
  309. package/src/queries/text.ts +0 -63
  310. package/src/queries/unsafeProps.ts +0 -76
  311. package/src/queries/unsafeType.ts +0 -73
  312. package/src/react-versions.ts +0 -11
  313. package/src/render-act.ts +0 -19
  314. package/src/render.tsx +0 -183
  315. package/src/renderHook.tsx +0 -56
  316. package/src/screen.ts +0 -123
  317. package/src/shallow.ts +0 -18
  318. package/src/test-utils/events.ts +0 -24
  319. package/src/test-utils/index.ts +0 -1
  320. package/src/user-event/__tests__/__snapshots__/clear.test.tsx.snap +0 -269
  321. package/src/user-event/__tests__/clear.test.tsx +0 -217
  322. package/src/user-event/clear.ts +0 -59
  323. package/src/user-event/event-builder/common.ts +0 -66
  324. package/src/user-event/event-builder/index.ts +0 -7
  325. package/src/user-event/event-builder/text-input.ts +0 -86
  326. package/src/user-event/index.ts +0 -18
  327. package/src/user-event/press/__tests__/longPress.real-timers.test.tsx +0 -117
  328. package/src/user-event/press/__tests__/longPress.test.tsx +0 -157
  329. package/src/user-event/press/__tests__/press.real-timers.test.tsx +0 -320
  330. package/src/user-event/press/__tests__/press.test.tsx +0 -457
  331. package/src/user-event/press/constants.ts +0 -7
  332. package/src/user-event/press/index.ts +0 -1
  333. package/src/user-event/press/press.ts +0 -163
  334. package/src/user-event/setup/index.ts +0 -2
  335. package/src/user-event/setup/setup.ts +0 -142
  336. package/src/user-event/type/__tests__/__snapshots__/type-managed.test.tsx.snap +0 -339
  337. package/src/user-event/type/__tests__/__snapshots__/type.test.tsx.snap +0 -668
  338. package/src/user-event/type/__tests__/parseKeys.test.ts +0 -23
  339. package/src/user-event/type/__tests__/type-managed.test.tsx +0 -120
  340. package/src/user-event/type/__tests__/type.test.tsx +0 -335
  341. package/src/user-event/type/index.ts +0 -1
  342. package/src/user-event/type/parseKeys.ts +0 -41
  343. package/src/user-event/type/type.ts +0 -138
  344. package/src/user-event/utils/__tests__/dispatch-event.test.tsx +0 -41
  345. package/src/user-event/utils/__tests__/wait.test.ts +0 -62
  346. package/src/user-event/utils/content-size.ts +0 -25
  347. package/src/user-event/utils/dispatch-event.ts +0 -38
  348. package/src/user-event/utils/host-components.ts +0 -6
  349. package/src/user-event/utils/index.ts +0 -6
  350. package/src/user-event/utils/text-range.ts +0 -4
  351. package/src/user-event/utils/wait.ts +0 -15
  352. package/src/user-event/utils/warn-about-real-timers.ts +0 -13
  353. package/src/waitFor.ts +0 -228
  354. package/src/waitForElementToBeRemoved.ts +0 -42
  355. package/src/within.ts +0 -30
  356. package/tsconfig.json +0 -17
  357. package/tsconfig.release.json +0 -8
  358. package/website/.gitignore +0 -20
  359. package/website/README.md +0 -33
  360. package/website/docker/.dockerignore +0 -3
  361. package/website/docker/Dockerfile +0 -9
  362. package/website/docker/docker-compose.yml +0 -11
  363. package/website/docs/API.md +0 -940
  364. package/website/docs/EslintPLluginTestingLibrary.md +0 -28
  365. package/website/docs/FAQ.md +0 -44
  366. package/website/docs/GettingStarted.md +0 -100
  367. package/website/docs/HowShouldIQuery.md +0 -21
  368. package/website/docs/MigrationV11.md +0 -64
  369. package/website/docs/MigrationV12.md +0 -67
  370. package/website/docs/MigrationV2.md +0 -126
  371. package/website/docs/MigrationV7.md +0 -119
  372. package/website/docs/MigrationV9.md +0 -67
  373. package/website/docs/Queries.md +0 -572
  374. package/website/docs/ReactNavigation.md +0 -371
  375. package/website/docs/ReduxIntegration.md +0 -137
  376. package/website/docs/TestingEnvironment.md +0 -154
  377. package/website/docs/Troubleshooting.md +0 -44
  378. package/website/docs/UnderstandingAct.md +0 -227
  379. package/website/docs/UserEvent.md +0 -191
  380. package/website/docusaurus.config.js +0 -114
  381. package/website/package.json +0 -31
  382. package/website/sidebars.js +0 -20
  383. package/website/src/components/Feature.js +0 -31
  384. package/website/src/css/custom.css +0 -13
  385. package/website/src/css/index.module.css +0 -77
  386. package/website/src/pages/index.js +0 -82
  387. package/website/static/.nojekyll +0 -0
  388. package/website/static/css/custom.css +0 -28
  389. package/website/static/img/hit.png +0 -0
  390. package/website/static/img/locomotive.png +0 -0
  391. package/website/static/img/owl.png +0 -0
  392. package/website/static/img/tools.png +0 -0
  393. package/website/yarn.lock +0 -7669
  394. package/yarn.lock +0 -7765
  395. /package/build/helpers/{getTextContent.d.ts → text-content.d.ts} +0 -0
@@ -1,25 +0,0 @@
1
- /**
2
- * check that each key value pair of the objects match
3
- * BE CAREFUL it works only for 1 level deep key value pairs
4
- * won't work for nested objects
5
- */
6
-
7
- /**
8
- * Matches whether given object prop contains all key/value pairs.
9
- * @param prop - The object prop to match.
10
- * @param matcher - The key/value pairs to be included in the object.
11
- * @returns Whether the object prop contains all key/value pairs.
12
- */
13
- export function matchObjectProp<T extends Record<string, unknown>>(
14
- prop: T | undefined,
15
- matcher: T
16
- ): boolean {
17
- if (!prop || Object.keys(matcher).length === 0) {
18
- return false;
19
- }
20
-
21
- return (
22
- Object.keys(prop).length !== 0 &&
23
- Object.keys(matcher).every((key) => prop[key] === matcher[key])
24
- );
25
- }
@@ -1,23 +0,0 @@
1
- import { TextMatch } from '../../matches';
2
-
3
- /**
4
- * Matches the given string property again string or regex matcher.
5
- *
6
- * @param prop - The string prop to match.
7
- * @param matcher - The string or regex to match.
8
- * @returns - Whether the string prop matches the given string or regex.
9
- */
10
- export function matchStringProp(
11
- prop: string | undefined,
12
- matcher: TextMatch
13
- ): boolean {
14
- if (!prop) {
15
- return false;
16
- }
17
-
18
- if (typeof matcher === 'string') {
19
- return prop === matcher;
20
- }
21
-
22
- return prop.match(matcher) != null;
23
- }
@@ -1,20 +0,0 @@
1
- import type { ReactTestInstance } from 'react-test-renderer';
2
- import { matches, TextMatch, TextMatchOptions } from '../../matches';
3
- import { getTextContent } from '../getTextContent';
4
-
5
- /**
6
- * Matches the given node's text content against string or regex matcher.
7
- *
8
- * @param node - Node which text content will be matched
9
- * @param text - The string or regex to match.
10
- * @returns - Whether the node's text content matches the given string or regex.
11
- */
12
- export function matchTextContent(
13
- node: ReactTestInstance,
14
- text: TextMatch,
15
- options: TextMatchOptions = {}
16
- ) {
17
- const textContent = getTextContent(node);
18
- const { exact, normalizer } = options;
19
- return matches(text, textContent, normalizer, exact);
20
- }
@@ -1,27 +0,0 @@
1
- import { ReactTestInstance } from 'react-test-renderer';
2
- import { getHostParent } from './component-tree';
3
-
4
- /**
5
- * pointerEvents controls whether the View can be the target of touch events.
6
- * 'auto': The View and its children can be the target of touch events.
7
- * 'none': The View is never the target of touch events.
8
- * 'box-none': The View is never the target of touch events but its subviews can be
9
- * 'box-only': The view can be the target of touch events but its subviews cannot be
10
- * see the official react native doc https://reactnative.dev/docs/view#pointerevents */
11
- export const isPointerEventEnabled = (
12
- element: ReactTestInstance,
13
- isParent?: boolean
14
- ): boolean => {
15
- const parentCondition = isParent
16
- ? element?.props.pointerEvents === 'box-only'
17
- : element?.props.pointerEvents === 'box-none';
18
-
19
- if (element?.props.pointerEvents === 'none' || parentCondition) {
20
- return false;
21
- }
22
-
23
- const hostParent = getHostParent(element);
24
- if (!hostParent) return true;
25
-
26
- return isPointerEventEnabled(hostParent, true);
27
- };
@@ -1,4 +0,0 @@
1
- export function getQueryPrefix(queryName: string) {
2
- const parts = queryName.split('By');
3
- return parts[0];
4
- }
@@ -1,36 +0,0 @@
1
- import { ReactTestRendererNode } from 'react-test-renderer';
2
-
3
- export const validateStringsRenderedWithinText = (
4
- rendererJSON: ReactTestRendererNode | Array<ReactTestRendererNode> | null
5
- ) => {
6
- if (!rendererJSON) return;
7
-
8
- if (Array.isArray(rendererJSON)) {
9
- rendererJSON.forEach(validateStringsRenderedWithinTextForNode);
10
- return;
11
- }
12
-
13
- return validateStringsRenderedWithinTextForNode(rendererJSON);
14
- };
15
-
16
- const validateStringsRenderedWithinTextForNode = (
17
- node: ReactTestRendererNode
18
- ) => {
19
- if (typeof node === 'string') {
20
- return;
21
- }
22
-
23
- if (node.type !== 'Text') {
24
- node.children?.forEach((child) => {
25
- if (typeof child === 'string') {
26
- throw new Error(
27
- `Invariant Violation: Text strings must be rendered within a <Text> component. Detected attempt to render "${child}" string within a <${node.type}> component.`
28
- );
29
- }
30
- });
31
- }
32
-
33
- if (node.children) {
34
- node.children.forEach(validateStringsRenderedWithinTextForNode);
35
- }
36
- };
@@ -1,98 +0,0 @@
1
- // Most content of this file sourced directly from https://github.com/testing-library/dom-testing-library/blob/main/src/helpers.js
2
- /* globals jest */
3
- const globalObj = typeof window === 'undefined' ? global : window;
4
-
5
- type FakeTimersTypes = 'modern' | 'legacy';
6
-
7
- // Currently this fn only supports jest timers, but it could support other test runners in the future.
8
- function runWithRealTimers<T>(callback: () => T): T {
9
- const fakeTimersType = getJestFakeTimersType();
10
- if (fakeTimersType) {
11
- jest.useRealTimers();
12
- }
13
-
14
- const callbackReturnValue = callback();
15
-
16
- if (fakeTimersType) {
17
- const fakeTimersConfig = getFakeTimersConfigFromType(fakeTimersType);
18
- jest.useFakeTimers(fakeTimersConfig);
19
- }
20
-
21
- return callbackReturnValue;
22
- }
23
-
24
- function getJestFakeTimersType(): FakeTimersTypes | null {
25
- // istanbul ignore if
26
- if (
27
- typeof jest === 'undefined' ||
28
- typeof globalObj.setTimeout === 'undefined' ||
29
- process.env.RNTL_SKIP_AUTO_DETECT_FAKE_TIMERS
30
- ) {
31
- return null;
32
- }
33
-
34
- if (
35
- // @ts-expect-error jest mutates setTimeout
36
- typeof globalObj.setTimeout._isMockFunction !== 'undefined' &&
37
- // @ts-expect-error jest mutates setTimeout
38
- globalObj.setTimeout._isMockFunction
39
- ) {
40
- return 'legacy';
41
- }
42
-
43
- if (
44
- // @ts-expect-error jest mutates setTimeout
45
- typeof globalObj.setTimeout.clock !== 'undefined' &&
46
- typeof jest.getRealSystemTime !== 'undefined'
47
- ) {
48
- try {
49
- // jest.getRealSystemTime is only supported for Jest's `modern` fake timers and otherwise throws
50
- jest.getRealSystemTime();
51
- return 'modern';
52
- } catch {
53
- // not using Jest's modern fake timers
54
- }
55
- }
56
-
57
- return null;
58
- }
59
-
60
- function getFakeTimersConfigFromType(type: FakeTimersTypes) {
61
- return type === 'legacy'
62
- ? { legacyFakeTimers: true }
63
- : { legacyFakeTimers: false };
64
- }
65
-
66
- const jestFakeTimersAreEnabled = (): boolean =>
67
- Boolean(getJestFakeTimersType());
68
-
69
- // we only run our tests in node, and setImmediate is supported in node.
70
- function setImmediatePolyfill(fn: Function) {
71
- return globalObj.setTimeout(fn, 0);
72
- }
73
-
74
- type BindTimeFunctions = {
75
- clearTimeoutFn: typeof clearTimeout;
76
- setImmediateFn: typeof setImmediate;
77
- setTimeoutFn: typeof setTimeout;
78
- };
79
-
80
- function bindTimeFunctions(): BindTimeFunctions {
81
- return {
82
- clearTimeoutFn: globalObj.clearTimeout,
83
- setImmediateFn: globalObj.setImmediate || setImmediatePolyfill,
84
- setTimeoutFn: globalObj.setTimeout,
85
- };
86
- }
87
-
88
- const { clearTimeoutFn, setImmediateFn, setTimeoutFn } = runWithRealTimers(
89
- bindTimeFunctions
90
- ) as BindTimeFunctions;
91
-
92
- export {
93
- runWithRealTimers,
94
- jestFakeTimersAreEnabled,
95
- clearTimeoutFn as clearTimeout,
96
- setImmediateFn as setImmediate,
97
- setTimeoutFn as setTimeout,
98
- };
package/src/index.ts DELETED
@@ -1,33 +0,0 @@
1
- import { cleanup } from './pure';
2
- import { flushMicroTasksLegacy } from './flush-micro-tasks';
3
- import { getIsReactActEnvironment, setReactActEnvironment } from './act';
4
-
5
- if (typeof process === 'undefined' || !process.env?.RNTL_SKIP_AUTO_CLEANUP) {
6
- // If we're running in a test runner that supports afterEach
7
- // then we'll automatically run cleanup afterEach test
8
- // this ensures that tests run in isolation from each other
9
- // if you don't like this then either import the `pure` module
10
- // or set the RNTL_SKIP_AUTO_CLEANUP env variable to 'true'.
11
- if (typeof afterEach === 'function') {
12
- // eslint-disable-next-line no-undef
13
- afterEach(async () => {
14
- await flushMicroTasksLegacy();
15
- cleanup();
16
- });
17
- }
18
-
19
- if (typeof beforeAll === 'function' && typeof afterAll === 'function') {
20
- // This matches the behavior of React < 18.
21
- let previousIsReactActEnvironment = getIsReactActEnvironment();
22
- beforeAll(() => {
23
- previousIsReactActEnvironment = getIsReactActEnvironment();
24
- setReactActEnvironment(true);
25
- });
26
-
27
- afterAll(() => {
28
- setReactActEnvironment(previousIsReactActEnvironment);
29
- });
30
- }
31
- }
32
-
33
- export * from './pure';
package/src/matches.ts DELETED
@@ -1,49 +0,0 @@
1
- export type NormalizerFn = (textToNormalize: string) => string;
2
-
3
- export type TextMatch = string | RegExp;
4
- export type TextMatchOptions = {
5
- exact?: boolean;
6
- normalizer?: NormalizerFn;
7
- };
8
-
9
- export function matches(
10
- matcher: TextMatch,
11
- text: string,
12
- normalizer: NormalizerFn = getDefaultNormalizer(),
13
- exact: boolean = true
14
- ): boolean {
15
- if (typeof text !== 'string') {
16
- return false;
17
- }
18
-
19
- const normalizedText = normalizer(text);
20
- if (typeof matcher === 'string') {
21
- const normalizedMatcher = normalizer(matcher);
22
- return exact
23
- ? normalizedText === normalizedMatcher
24
- : normalizedText.toLowerCase().includes(normalizedMatcher.toLowerCase());
25
- } else {
26
- // Reset state for global regexes: https://stackoverflow.com/a/1520839/484499
27
- matcher.lastIndex = 0;
28
- return matcher.test(normalizedText);
29
- }
30
- }
31
-
32
- type NormalizerConfig = {
33
- trim?: boolean;
34
- collapseWhitespace?: boolean;
35
- };
36
-
37
- export function getDefaultNormalizer({
38
- trim = true,
39
- collapseWhitespace = true,
40
- }: NormalizerConfig = {}): NormalizerFn {
41
- return (text: string) => {
42
- let normalizedText = text;
43
- normalizedText = trim ? normalizedText.trim() : normalizedText;
44
- normalizedText = collapseWhitespace
45
- ? normalizedText.replace(/\s+/g, ' ')
46
- : normalizedText;
47
- return normalizedText;
48
- };
49
- }
package/src/pure.ts DELETED
@@ -1,27 +0,0 @@
1
- export { default as act } from './act';
2
- export { default as cleanup } from './cleanup';
3
- export { default as fireEvent } from './fireEvent';
4
- export { default as render } from './render';
5
- export { default as waitFor } from './waitFor';
6
- export { default as waitForElementToBeRemoved } from './waitForElementToBeRemoved';
7
- export { within, getQueriesForElement } from './within';
8
-
9
- export { configure, resetToDefaults } from './config';
10
- export {
11
- isHiddenFromAccessibility,
12
- isInaccessible,
13
- } from './helpers/accessiblity';
14
- export { getDefaultNormalizer } from './matches';
15
- export { renderHook } from './renderHook';
16
- export { screen } from './screen';
17
- export { userEvent } from './user-event';
18
-
19
- export type {
20
- RenderOptions,
21
- RenderResult,
22
- RenderResult as RenderAPI,
23
- DebugFunction,
24
- } from './render';
25
- export type { RenderHookOptions, RenderHookResult } from './renderHook';
26
- export type { Config } from './config';
27
- export type { UserEventConfig } from './user-event';