Ruby on RailsでStringIO
とは何ですか?RSpecテスト(Ruby on Rails)の文脈で `StringIO`とは何ですか?
私はStringIO
を参照している別の答えを理解しようとしていますが、それは私の頭の上です。
私はこのためにStringIOを使用して、SUT ではなく、ファイル名のに書き込むためにストリームを受け入れることを確認することを示唆しています。
testIO = StringIO.new
sutObject.writeStuffTo testIO
testIO.string.should == "Hello, world!"
出典:StringオブジェクトのRspec: how to test file operations and file content
Ruby-doc.org
擬似I/O。
出典:http://ruby-doc.org/stdlib-1.9.3/libdoc/stringio/rdoc/StringIO.html)
Robots.thoughtbot
これは、我々は、ディスクからの実際のファイルを読み込む代わりに のはStringIOを注入かもしれないテストでは一般的です。
出典:https://robots.thoughtbot.com/io-in-ruby#stringio
私の場合:私のアプリケーションで
File.open("data.dat", "wb") {|f| f.write(snapshot)}
私は上記をテストしたいが、私はまだStringIO
はRSpecのテストを実行するに適用されるか困惑しています。
StringIO
でいくつかの経験をお持ちの方は、何か指針を与えることができますか?