0
STDINは、ファイルを再度開くことができるファイルを使用せずにSTDINを再度開きます何らかの方法で?ルビー
STDINは、ファイルを再度開くことができるファイルを使用せずにSTDINを再度開きます何らかの方法で?ルビー
なぜ同じように、ハンドルを再割り当てない:
$stdin = StringIO.new('text')
次に、あなたが定期的に$stdin
ハンドルと同じようにそれを扱うことができます:
gets
# => "text"
それはdocumentation on reopen
implies you can do thisでなく、何のために本当です理由StringIOはIOから派生しないので、ファイルハンドルとしてカウントされず、それによって使用することはできません。
RSpecテストでユーザー入力をスタブしようとしています。 $ stdin assigningはそれに対しては機能しません。 – Michael
読み込みを行っているコードを制御できたら、入力ソースのパラメータを試してみて、テスト目的でこのように微調整できます。 – tadman
UIには[HighLine gem](https://github.com/JEG2/highline)を使用します。あなたが何を示唆しているかのように[何か](http://www.rubydoc.info/github/JEG2/highline/master/Kernel)を行うことができるように見えます。しかし、私はそのための技術を抱かない。 – Michael