Cannot pass tests via jest if react-native-share was used
See original GitHub issueSteps to reproduce
- Add
import Share from 'react-native-share';
to any component. - Run
jest
Expected behaviour
Test should be passed.
Actual behaviour
● Test suite failed to run
TypeError: Cannot read property 'FACEBOOK' of undefined
> 9 | import Share from 'react-native-share';
Environment
React Native Environment Info: System: OS: macOS High Sierra 10.13.6 CPU: (4) x64 Intel® Core™ i5-4288U CPU @ 2.60GHz Memory: 33.05 MB / 8.00 GB Shell: 5.3 - /bin/zsh Binaries: Node: 8.13.0 - ~/.nvm/versions/node/v8.13.0/bin/node Yarn: 1.12.3 - /usr/local/bin/yarn npm: 6.4.1 - ~/.nvm/versions/node/v8.13.0/bin/npm Watchman: 4.9.0 - /usr/local/bin/watchman SDKs: iOS SDK: Platforms: iOS 11.4, macOS 10.13, tvOS 11.4, watchOS 4.3 Android SDK: API Levels: 26, 27, 28 Build Tools: 27.0.3, 28.0.3 System Images: android-27 | Google Play Intel x86 Atom IDEs: Android Studio: 3.2 AI-181.5540.7.32.5056338 Xcode: 9.4.1/9F2000 - /usr/bin/xcodebuild npmPackages: react: 16.6.1 => 16.6.1 react-native: 0.57.5 => 0.57.5 npmGlobalPackages: react-native-cli: 2.0.1
react-native-share
"react-native-share": "^1.1.3"
Issue Analytics
- State:
- Created 5 years ago
- Reactions:6
- Comments:13 (9 by maintainers)
Top GitHub Comments
The code you need in your jest setup file is:
On another repo (https://github.com/react-native-community/react-native-device-info) I help maintain, we explicitly tell people to mock:
Though we did just merge something that may make jest snapshots work (I don’t use them (yet?) so I don’t know): https://github.com/react-native-community/react-native-device-info/pull/375
Which is just to say this may be completely expected behavior. The fix may just be documentation