From d6b2a4487b0c9d5c67ba36a69f22250be9791300 Mon Sep 17 00:00:00 2001 From: Christophe Hurpeau Date: Thu, 13 Jul 2023 16:22:10 +0200 Subject: [PATCH] feat(jest-config-react-native): add testEnvironment config for native --- @ornikar/jest-config-react-native/jest-preset.js | 1 + .../ornikar-react-native-env.js | 11 +++++++++++ @ornikar/jest-config-react-native/web/jest-preset.js | 1 + 3 files changed, 13 insertions(+) create mode 100644 @ornikar/jest-config-react-native/ornikar-react-native-env.js diff --git a/@ornikar/jest-config-react-native/jest-preset.js b/@ornikar/jest-config-react-native/jest-preset.js index 288ef1c35..e1758afd1 100644 --- a/@ornikar/jest-config-react-native/jest-preset.js +++ b/@ornikar/jest-config-react-native/jest-preset.js @@ -18,6 +18,7 @@ module.exports = { '@storybook/react$': require.resolve('./__mocks__/@storybook/react-native.jsx'), '^@storybook/react$': require.resolve('./__mocks__/@storybook/react-native.jsx'), }, + testEnvironment: require.resolve('./ornikar-react-native-env.js'), // override expo transformIgnorePatterns with custom config transformIgnorePatterns: [ 'node_modules/(?!(react-native.*|@react-native.*|expo.*|@expo(nent)?/.*|react-navigation.*|@react-navigation/.*|native-base)/)', diff --git a/@ornikar/jest-config-react-native/ornikar-react-native-env.js b/@ornikar/jest-config-react-native/ornikar-react-native-env.js new file mode 100644 index 000000000..a27c9359c --- /dev/null +++ b/@ornikar/jest-config-react-native/ornikar-react-native-env.js @@ -0,0 +1,11 @@ +'use strict'; + +// eslint-disable-next-line import/no-unresolved +const ReactNativeEnv = require('react-native/jest/react-native-env'); + +module.exports = class OrnikarReactNativeEnv extends ReactNativeEnv { + // eslint-disable-next-line class-methods-use-this + exportConditions() { + return ['react-native', 'jest']; + } +}; diff --git a/@ornikar/jest-config-react-native/web/jest-preset.js b/@ornikar/jest-config-react-native/web/jest-preset.js index 6a938ab01..45b520c07 100644 --- a/@ornikar/jest-config-react-native/web/jest-preset.js +++ b/@ornikar/jest-config-react-native/web/jest-preset.js @@ -8,6 +8,7 @@ const ornikarReactNativePreset = require('../jest-preset'); module.exports = { ...baseOrnikarPreset, ...expoPreset, + testEnvironment: baseOrnikarPreset.testEnvironment, // override testEnvironment in expo preset snapshotResolver: require.resolve('../snapshot-resolvers/resolver.web.js'), setupFiles: [...expoPreset.setupFiles, ...baseOrnikarPreset.setupFiles, require.resolve('../test-setup')], testMatch: [