From: TAKANO Mitsuhiro Date: 2008-10-08T13:40:18+09:00 Subject: [ruby-dev:36684] Re: test_process.rb This is a multi-part message in MIME format. --------------080703020209040209000208 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit 高野です。 > r+でのテストもそれはそれであっていいと思いますが、現状のテストが > 通らないというのはバグです。 > > なるほど。確かにそうでした。現状のテストをテストから切り離して実行しても 期待通りに動きました。最初にテストの環境ではなくコードを疑ってしまったため、 ドキュメントを読んでぐしゃぐしゃいじってしまいました。 ごめんなさい。 >> # getsがSTDINを明示的に指定しないと読んでくれませんでした。 >> # 原因はボクにはわかりません。 >> > > ARGVが残ってたりとか 起動直後の環境では gets がSTDINを素直に読み出しているようなのですが、 テストの環境では最後まで到達したARGFから読み出しているのかもしれません。 nilが返却されてました。 元のコードでSTDINにputsした場合もパスしています。 putsやgetsが標準とか異なるものに繋がるような仕組みがあるのかしら? と思っているのですが、よくわかりません。 --------------080703020209040209000208 Content-Type: text/plain; name="test_process.rb.diff" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="test_process.rb.diff" SW5kZXg6IHRlc3QvcnVieS90ZXN0X3Byb2Nlc3MucmIKPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gdGVz dC9ydWJ5L3Rlc3RfcHJvY2Vzcy5yYiAgICiDioNyg1eDh4OTIDE5NzEyKQorKysgdGVzdC9y dWJ5L3Rlc3RfcHJvY2Vzcy5yYiAgICiN7IvGg1KDc4FbKQpAQCAtNDUyLDcgKzQ1Miw3IEBA CiAgICAgcmV0dXJuIGlmIC9mcmVlYnNkLyA9fiBSVUJZX1BMQVRGT1JNICMgdGhpcyB0ZXN0 IGZyZWV6ZSBpbiBGcmVlQlNECiAgICAgSU8ucG9wZW4oIi0iKSB7fGlvfAogICAgICAgaWYg IWlvCi0gICAgICAgIHB1dHMgImZvb28iCisgICAgICAgIFNURE9VVC5wdXRzICJmb29vIgog ICAgICAgZWxzZQogICAgICAgICBhc3NlcnRfZXF1YWwoImZvb29cbiIsIGlvLnJlYWQpCiAg ICAgICBlbmQK --------------080703020209040209000208--