IO#readpartial rejects bad args

Sometimes a sleepy developer will want to swap read_nonblock
for readpartial forget to remove "exception: false"

* io.c (io_getpartial): remove unused kwarg from template
* test/ruby/test_io.rb (test_readpartial_bad_args): new
  [Bug #11885]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
normal 2015-12-27 06:15:06 +00:00
parent 509cfc4c37
commit edea151a4b
3 changed files with 18 additions and 1 deletions

View file

@ -3186,6 +3186,17 @@ End
}
end
def test_readpartial_bad_args
IO.pipe do |r, w|
w.write '.'
buf = String.new
assert_raise(ArgumentError) { r.readpartial(1, buf, exception: false) }
assert_raise(TypeError) { r.readpartial(1, exception: false) }
assert_equal [[r],[],[]], IO.select([r], nil, nil, 1)
assert_equal '.', r.readpartial(1)
end
end
def test_sysread_unlocktmp_ensure
bug8669 = '[ruby-core:56121] [Bug #8669]'