Don't send INT signal itself.

On make test-all, it kills the process.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
naruse 2012-11-20 00:50:58 +00:00
parent 029b59ba53
commit 29996bb313

View File

@ -243,19 +243,21 @@ EOS
def test_signame
return unless Process.respond_to?(:kill)
begin
10.times do
caught = 0
signame = "wrong"
Signal.trap("INT") { |signo| signame = Signal.signame(signo); caught = 1; }
Process.kill("INT", 0)
sleep 0.01 while caught==0
10.times do
IO.popen([EnvUtil.rubybin, "-e", <<EOS, :err => File::NULL]) do |child|
Signal.trap("INT") do |signo|
signame = Signal.signame(signo)
Marshal.dump(signame, STDOUT)
STDOUT.flush
exit 0
end
sleep
EOS
sleep 0.1
Process.kill("INT", child.pid)
signame = Marshal.load(child)
assert_equal(signame, "INT")
end
ensure
Signal.trap("INT", "DEFAULT")
end
end
end