tim*_*xyz 2 ruby rubygems ruby-on-rails testunit
测试方法允许将 a 添加path到用户添加的包含数据的其他文件中。
例如,用户可能会data.txt在/workspace/data目录中存储一个调用的文件。我们希望将此目录的路径添加到名为DATA_PATH.
方法:
def add_custom_path(path)
DATA_PATH.unshift(path)
end
Run Code Online (Sandbox Code Playgroud)
哪里path是在Rails应用程序用户存储文件的位置。
宝石使用test-unit.
题:
有没有办法在某个目录中临时生成一个文件,运行一个assert_not_empty测试,然后让文件消失?
我没有为 gem 编写测试的经验,因此非常感谢任何指导。
在.create和.newRuby的方法Tempfile采取这是你想要的文件是在目录中的第二个参数,并通过创建文件Tempfile时临时文件的自动删除File对象是垃圾回收或Ruby退出。所以你可以创建一个临时文件,
tempfile = Tempfile.new('filename', 'directoryname')
Run Code Online (Sandbox Code Playgroud)
写入它,做你的测试,让 Ruby 为你清理它。
请注意,第一个参数不是文件的整个非限定名称,而是Tempfile添加消除歧义字符的部分,因此您可以安全地在测试套件中多次执行此操作。
此外,如果您需要文件具有特定的后缀,您可以执行例如
tempfile = Tempfile.new(['filename', '.rb'], 'directoryname')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4448 次 |
| 最近记录: |