Issue #4846 has been reported by Kazuhiro NISHIYAMA.
Bug #4846: Permission denied - /tmp/nonexisting
Author: Kazuhiro NISHIYAMA
Status: Assigned
Priority: Normal
Assignee: Kazuhiro NISHIYAMA
Category: test
Target version: 1.9.3
ruby -v: ruby 1.9.3dev (2011-06-06 trunk 31944) [x86_64-linux]
=begin
なぜか chkbuild が所有者になっている /tmp/nonexisting というファイルが存在していて、
test_s_binwrite(TestIO) と test_s_write(TestIO) が以下の Failure になります。
[Errno::EINVAL] exception expected, not
Class: Errno::EACCES
Message: <“Permission denied - /tmp/nonexisting”>
基本的には (Tempfile や Tmpdir 以外で) ファイルを作成するなら ensure で確実に削除してください。
そもそも /tmp 決め打ちでファイルを読み書きしないでください。
プラットフォームによっては /tmp がなかったり、/tmp があっても symlink attack の危険があったり、複数のユーザで同時に
test-all を実行したときに問題が起きたりすると思います。
=end