* lib/net/imap.rb: do not use Thread#raise. [ruby-dev:34739]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shugo 2008-05-21 17:47:33 +00:00
parent 2c8dd794e9
commit 79fdbe0519
3 changed files with 64 additions and 7 deletions

View file

@ -81,6 +81,37 @@ class IMAPTest < Test::Unit::TestCase
end
end
def test_unexpected_eof
server = TCPServer.new(0)
port = server.addr[1]
Thread.start do
begin
sock = server.accept
begin
sock.print("* OK test server\r\n")
sock.gets
# sock.print("* BYE terminating connection\r\n")
# sock.print("RUBY0001 OK LOGOUT completed\r\n")
ensure
sock.close
end
rescue
end
end
begin
begin
imap = Net::IMAP.new("localhost", :port => port)
assert_raise(EOFError) do
imap.logout
end
ensure
imap.disconnect if imap
end
ensure
server.close
end
end
private
def imaps_test