diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-03-02 04:04:30 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-03-02 04:04:30 +0000 |
commit | 76d1d5269f72e72e8fb39877bb1850aca823158d (patch) | |
tree | 893db691c0b42bfb7d8643ed8b4929123c5df741 /test | |
parent | ba536e41549f694d5c7434edb967ee571b2161c2 (diff) | |
download | ruby-76d1d5269f72e72e8fb39877bb1850aca823158d.tar.gz |
signal.c: nil for invalid signum
* signal.c (sig_signame): return nil if the argument is a valid
signal number.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r-- | test/ruby/test_signal.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/test/ruby/test_signal.rb b/test/ruby/test_signal.rb index 4a59aa66c8..781045d30a 100644 --- a/test/ruby/test_signal.rb +++ b/test/ruby/test_signal.rb @@ -218,6 +218,15 @@ class TestSignal < Test::Unit::TestCase end def test_signame + Signal.list.each do |name, num| + assert_equal(num, Signal.list[Signal.signame(num)], name) + end + assert_nil(Signal.signame(-1)) + signums = Signal.list.invert + assert_nil(Signal.signame((1..1000).find {|num| !signums[num]})) + end + + def test_signame_delivered 10.times do IO.popen([EnvUtil.rubybin, "-e", <<EOS, :err => File::NULL]) do |child| Signal.trap("INT") do |signo| |