0
标准输入可以使用文件重新打开:红宝石重开STDIN没有文件
STDIN.reopen(File.open('filename'))
但用StringIO返回错误:
STDIN.reopen(StringIO.new('text'))
TypeError:
no implicit conversion of StringIO into String
我应该使用文件重新打开始终,也可以使用字符串来完成某种程度上来说?
我尝试用RSpec测试存根用户输入。 $ stdin赋值不起作用。 – Michael
如果您可以控制正在进行读取的代码,请尝试为输入源创建一个参数,以便您可以将其调整为用于测试目的。 – tadman
我为UI使用[HighLine gem](https://github.com/JEG2/highline)。它看起来有可能像你所说的那样做[something](http://www.rubydoc.info/github/JEG2/highline/master/Kernel)。但是我还没有为此提供技能。 – Michael