Why doesn#39;t expo-file-system work in Jest?(为什么 expo-file-system 在 Jest 中不起作用?)
问题描述
我正在尝试为我的小项目编写一些测试.我们使用 expo-file-system 来允许我们访问 IOS 内部存储.这是我对保存功能的测试.
I am trying to write some tests for my little project. We used expo-file-system to allow us access IOS internal storage. And here is my test for our saving function.
import SaveData from "../app/resources/SaveData/SaveData"
import * as FileSystem from 'expo-file-system';
var promiseHolder = 0;
describe('
saveNewFile() is tested.
', ()=>{
it("A file is going to be created.",async ()=>{
await FileSystem.writeAsStringAsync("sometext","test.txt");
promiseHolder = await FileSystem.getInfoAsync("test.txt");
testHolder = await FileSystem.readAsStringAsync("test.txt");
console.log(promiseHolder)
console.log(testHolder)
});
});
这是输出.命令行输出
看起来 FileSystem.documentDirectory 在测试中不起作用,但我们的应用运行良好.我该怎么办?
It looks like FileSystem.documentDirectory does not work in test, but our app works well. What should I do?
推荐答案
你没有像 promiseHolder 那样声明 gan 变量.
You didn't declare gan variable like promiseHolder.
import SaveData from "../app/resources/SaveData/SaveData";
import * as FileSystem from 'expo-file-system';
var promiseHolder = 0;
var testHolder=0;
describe('
saveNewFile() is tested.
', ()=>{
it("A file is going to be created.",async ()=>{
let fileUri = FileSystem.documentDirectory + "text.txt";
await FileSystem.writeAsStringAsync(flileUri, "cao");
promiseHolder = await
FileSystem.getInfoAsync(fileUri);
testHolder = await FileSystem.readAsStringAsync(fileUri);
console.log(promiseHolder)
console.log(testHolder)
});
});
更新:expo-jest 为 FileSystem 等导入制作模型,测试中收到的结果旨在预定义模型预设.
Updates: expo-jest makes mockups for imports like FileSystem and results that were received in test intend to predefined mockup presets.
这篇关于为什么 expo-file-system 在 Jest 中不起作用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:为什么 expo-file-system 在 Jest 中不起作用?


基础教程推荐
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01