From 90e0ca0b2e11d13ea4f5b202afb7b776164e5bc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 13 Apr 2026 09:32:05 +0200 Subject: [PATCH 1/6] Point to module --- packages/react-native-gesture-handler/jest-utils/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-native-gesture-handler/jest-utils/package.json b/packages/react-native-gesture-handler/jest-utils/package.json index 5e0f521722..f6fb277781 100644 --- a/packages/react-native-gesture-handler/jest-utils/package.json +++ b/packages/react-native-gesture-handler/jest-utils/package.json @@ -1,5 +1,5 @@ { - "main": "../lib/commonjs/jestUtils/index", + "main": "../lib/module/jestUtils/index", "module": "../lib/module/jestUtils/index", "react-native": "../src/jestUtils/index", "types": "../lib/typescript/jestUtils/index.d.ts" From 86666aa608a6c3e57e289c433d71567a9ba7c43c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 13 Apr 2026 09:52:15 +0200 Subject: [PATCH 2/6] Improve docs --- .../docs/guides/testing.md | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/packages/docs-gesture-handler/docs/guides/testing.md b/packages/docs-gesture-handler/docs/guides/testing.md index 788a523347..8b9526b3b0 100644 --- a/packages/docs-gesture-handler/docs/guides/testing.md +++ b/packages/docs-gesture-handler/docs/guides/testing.md @@ -4,7 +4,29 @@ title: Testing with Jest sidebar_position: 4 --- -## Mocking native modules +## Setup + +### Jest configuration + +In order to use functions provided by Gesture Handler, add `react-native-gesture-handler` to `transformIgnorePatterns` in `jest.config.js`, e.g.: + +```js +module.exports = { + preset: '@react-native/jest-preset', + transformIgnorePatterns: [ + //highlight-next-line + 'node_modules/(?!((jest-)?react-native|react-native-gesture-handler)/)', + ], + ... +}; + +``` + +:::note +Remember not to split `transformIgnorePatterns` into multiple patterns. For more information check out [Jest documentation](https://jestjs.io/docs/tutorial-react-native#transformignorepatterns-customization). +::: + +### Mocking native modules In order to load mocks provided by RNGH, add the following to your jest config in `package.json`: From 8fa86e0eab4dc00a37acce9c8d3d39caf386b8a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 13 Apr 2026 10:06:46 +0200 Subject: [PATCH 3/6] Blank --- packages/docs-gesture-handler/docs/guides/testing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/docs-gesture-handler/docs/guides/testing.md b/packages/docs-gesture-handler/docs/guides/testing.md index 8b9526b3b0..07c1c9e053 100644 --- a/packages/docs-gesture-handler/docs/guides/testing.md +++ b/packages/docs-gesture-handler/docs/guides/testing.md @@ -14,7 +14,7 @@ In order to use functions provided by Gesture Handler, add `react-native-gesture module.exports = { preset: '@react-native/jest-preset', transformIgnorePatterns: [ - //highlight-next-line + // highlight-next-line 'node_modules/(?!((jest-)?react-native|react-native-gesture-handler)/)', ], ... From 1a797492344d7c5d9c41849293109942bd3cdd56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 13 Apr 2026 10:07:38 +0200 Subject: [PATCH 4/6] Components --- .../ReanimatedDrawerLayout/package.json | 2 +- .../ReanimatedSwipeable/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/react-native-gesture-handler/ReanimatedDrawerLayout/package.json b/packages/react-native-gesture-handler/ReanimatedDrawerLayout/package.json index 2ce199ec5a..9e84eea779 100644 --- a/packages/react-native-gesture-handler/ReanimatedDrawerLayout/package.json +++ b/packages/react-native-gesture-handler/ReanimatedDrawerLayout/package.json @@ -1,5 +1,5 @@ { - "main": "../lib/commonjs/components/ReanimatedDrawerLayout", + "main": "../lib/module/components/ReanimatedDrawerLayout", "module": "../lib/module/components/ReanimatedDrawerLayout", "react-native": "../src/components/ReanimatedDrawerLayout", "types": "../lib/typescript/components/ReanimatedDrawerLayout.d.ts" diff --git a/packages/react-native-gesture-handler/ReanimatedSwipeable/package.json b/packages/react-native-gesture-handler/ReanimatedSwipeable/package.json index 5569615eb2..4e20e4a090 100644 --- a/packages/react-native-gesture-handler/ReanimatedSwipeable/package.json +++ b/packages/react-native-gesture-handler/ReanimatedSwipeable/package.json @@ -1,5 +1,5 @@ { - "main": "../lib/commonjs/components/ReanimatedSwipeable/", + "main": "../lib/module/components/ReanimatedSwipeable/", "module": "../lib/module/components/ReanimatedSwipeable/", "react-native": "../src/components/ReanimatedSwipeable/", "types": "../lib/typescript/components/ReanimatedSwipeable/" From dbed7120639fa5336a0fc173f47d59c67e29c60e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 13 Apr 2026 11:14:37 +0200 Subject: [PATCH 5/6] Add example configs --- .../docs/guides/{testing.md => testing.mdx} | 55 ++++++++++++------- 1 file changed, 36 insertions(+), 19 deletions(-) rename packages/docs-gesture-handler/docs/guides/{testing.md => testing.mdx} (80%) diff --git a/packages/docs-gesture-handler/docs/guides/testing.md b/packages/docs-gesture-handler/docs/guides/testing.mdx similarity index 80% rename from packages/docs-gesture-handler/docs/guides/testing.md rename to packages/docs-gesture-handler/docs/guides/testing.mdx index 07c1c9e053..c7a6e48177 100644 --- a/packages/docs-gesture-handler/docs/guides/testing.md +++ b/packages/docs-gesture-handler/docs/guides/testing.mdx @@ -4,22 +4,19 @@ title: Testing with Jest sidebar_position: 4 --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + ## Setup ### Jest configuration -In order to use functions provided by Gesture Handler, add `react-native-gesture-handler` to `transformIgnorePatterns` in `jest.config.js`, e.g.: +In order to use functions provided by Gesture Handler, add `react-native-gesture-handler` to `transformIgnorePatterns` in jest config. ```js -module.exports = { - preset: '@react-native/jest-preset', - transformIgnorePatterns: [ - // highlight-next-line - 'node_modules/(?!((jest-)?react-native|react-native-gesture-handler)/)', - ], - ... -}; - +transformIgnorePatterns: [ + 'node_modules/(?!((jest-)?react-native|react-native-gesture-handler)/)', +], ``` :::note @@ -28,20 +25,40 @@ Remember not to split `transformIgnorePatterns` into multiple patterns. For more ### Mocking native modules -In order to load mocks provided by RNGH, add the following to your jest config in `package.json`: +In order to load mocks provided by RNGH, add the following to your jest config: ```json "setupFiles": ["./node_modules/react-native-gesture-handler/jestSetup.js"] ``` -Example: - -```json -"jest": { - "preset": "react-native", - "setupFiles": ["./node_modules/react-native-gesture-handler/jestSetup.js"] -} -``` +### Example jest config + + + + ```js + module.exports = { + preset: '@react-native/jest-preset', + transformIgnorePatterns: [ + 'node_modules/(?!((jest-)?react-native|react-native-gesture-handler)/)', + ], + setupFiles: ['react-native-gesture-handler/jestSetup.js'], + }; + ``` + + + ```json + "jest": { + "preset": "@react-native/jest-preset", + "transformIgnorePatterns": [ + "node_modules/(?!((jest-)?react-native|react-native-gesture-handler)/)" + ], + "setupFiles": [ + "react-native-gesture-handler/jestSetup.js" + ] + } + ``` + + ## Testing Gestures' and Gesture handlers' callbacks From 5f67f5ab6dee46069ada4679333874e5509d0646 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 13 Apr 2026 15:07:59 +0200 Subject: [PATCH 6/6] Rephrase warning --- packages/docs-gesture-handler/docs/guides/testing.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/docs-gesture-handler/docs/guides/testing.mdx b/packages/docs-gesture-handler/docs/guides/testing.mdx index c7a6e48177..ecefa47ae5 100644 --- a/packages/docs-gesture-handler/docs/guides/testing.mdx +++ b/packages/docs-gesture-handler/docs/guides/testing.mdx @@ -20,7 +20,7 @@ transformIgnorePatterns: [ ``` :::note -Remember not to split `transformIgnorePatterns` into multiple patterns. For more information check out [Jest documentation](https://jestjs.io/docs/tutorial-react-native#transformignorepatterns-customization). +Be careful when adding multiple entries to `transformIgnorePatterns`. Since `Jest` ignores a file if it matches any pattern in the list, splitting negative lookaheads into separate strings often causes them to override each other. It is safer to combine your exceptions into a single regex using the `|` operator. See the [Jest documentation](https://jestjs.io/docs/tutorial-react-native#transformignorepatterns-customization) for an example. ::: ### Mocking native modules