Project

General

Profile

Bug #14571 » add-failing-tests.patch

quixoten (Devin Christensen), 03/02/2018 07:09 PM

View differences:

test/resolv/test_dns.rb (working copy)
require 'resolv'
require 'socket'
require 'tempfile'
require 'timeout'
require 'minitest/mock'
class TestResolvDNS < Test::Unit::TestCase
def setup
......
}
assert_operator(2**14, :<, m.to_s.length)
end
def test_timeout_without_leaking_file_descriptors_connected
socket = nil
bind_random_port = lambda do |udpsock, bind_host="0.0.0.0"|
socket = udpsock
sleep 3
end
Resolv::DNS.stub(:bind_random_port, bind_random_port) do
r = Resolv::DNS.new(nameserver_port: [['127.0.0.1', 53]])
begin
Timeout.timeout(0.5) { r.getname("8.8.8.8") }
rescue Timeout::Error
end
end
assert(socket.closed?, "file descriptor leaked")
end
def test_timeout_without_leaking_file_descriptors_unconnected
socket = nil
bind_random_port = lambda do |udpsock, bind_host="0.0.0.0"|
socket = udpsock
sleep 3
end
Resolv::DNS.stub(:bind_random_port, bind_random_port) do
r = Resolv::DNS.new
begin
Timeout.timeout(0.5) { r.getname("8.8.8.8") }
rescue Timeout::Error
end
end
assert(socket.closed?, "file descriptor leaked")
end
end
(1-1/3)