如何使用 Jest 在 React Native 中模拟“react-native-config”库的配置数据?

Avi*_*ash 4 javascript unit-testing jestjs react-native enzyme

在这里,我尝试获取环境详细信息以获取应用程序的基本 url。这是正在使用的包

// 配置文件.ts

import Config from 'react-native-config';

interface Setting {
  environment: string;
 
}
const settings: Setting = {
  environment: Config.ENV || '',

};

export default settings;
Run Code Online (Sandbox Code Playgroud)

现在,每当我尝试settings.environment从测试文件访问时,它都会返回空字符串(''),因为 的值Config.ENV未定义,因为我无法模拟该值。

例外结果:每当我调用时settings.environment,我应该得到“test”作为返回的字符串值。

Avi*_*ash 13

笑话

为了模拟 Config.ENV 的使用,请__mocks__在项目的根目录下创建一个文件夹,并在其中创建一个名为react-native-config.js

在文件内粘贴以下代码

//react-native-config.js

export default {
  ENV: 'test', // here 'test' is expected value
};
Run Code Online (Sandbox Code Playgroud)