我想编写一个使用Pharo 4.0 FileSystem使用文件的SUnit测试。
我想写一个文件,然后再读。

像这样

fname := 'TabularTestExport1.xlsx'. (FileLocator temp / fname ) delete. TabularXSLXExport workbook: myWorkbook fileName: (FileLocator temp / fname ).

问题


temp directory以平台无关的方式使用临时文件的方法是什么。 FileLocator tempFileLocator tempDirectory未实现。
删除现有的测试文件如何确保删除文件?即如果文件不存在,如何避免后退。
另外,所有事情都可以在内存中完成:1.创建测试文件,2.导出测试文件,3.导入测试文件

最佳答案

对于测试,除非您拥有真正的大档案,否则最好在内存中做事。
FileSystem为您提供了一种方法,您只需要执行以下操作:

fs := FileSystem memory.


它将为您提供兼容的API,以便您进行测试。
如果要文件而不是目录,可以执行以下操作:

file := FileSystem memory / 'myFile'.


编辑:我忘记了几件事:


FileLocator temp已实现,应该可以正常工作。为什么说不执行?您是否由于某种原因找不到它?
myFileReference ensureDelete将...很好,请确保您的文件已删除:)

10-05 20:55
查看更多