1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

spec/ruby/optional/capi/kernel_spec.rb: stop a spec that causes SEGV

I think the wrong terminating argument cannot work.
To stop the noisy CI failures, the spec is tentatively suspended.
This commit is contained in:
Yusuke Endoh 2020-03-28 11:12:30 +09:00
parent f234d51eab
commit 6eb3820aad

View file

@ -392,16 +392,24 @@ describe "C-API Kernel function" do
}.should raise_error(TypeError) }.should raise_error(TypeError)
end end
it "works when the terminating argument has not been sizes as a VALUE" do if false # pending
proc = -> x { x } # This spec causes core dump on many platforms:
arg_error_proc = -> *_ { raise ArgumentError, '' } # * https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos7/ruby-master/log/20200328T003002Z.fail.html.gz
run_error_proc = -> *_ { raise RuntimeError, '' } # * https://rubyci.org/logs/rubyci.s3.amazonaws.com/archlinux/ruby-master/log/20200328T003503Z.fail.html.gz
type_error_proc = -> *_ { raise TypeError, '' } # * https://rubyci.org/logs/rubyci.s3.amazonaws.com/android28-x86_64/ruby-master/log/20200328T014134Z.fail.html.gz
@s.rb_rescue2_wrong_arg_type(arg_error_proc, :no_exc, proc, :exc, ArgumentError, RuntimeError).should == :exc # * http://ci.rvm.jp/results/trunk_gcc4@silicon-docker/2829165
@s.rb_rescue2_wrong_arg_type(run_error_proc, :no_exc, proc, :exc, ArgumentError, RuntimeError).should == :exc # * http://ci.rvm.jp/results/trunk_clang_60@silicon-docker/2829309
-> { it "works when the terminating argument has not been sizes as a VALUE" do
@s.rb_rescue2_wrong_arg_type(type_error_proc, :no_exc, proc, :exc, ArgumentError, RuntimeError) proc = -> x { x }
}.should raise_error(TypeError) arg_error_proc = -> *_ { raise ArgumentError, '' }
run_error_proc = -> *_ { raise RuntimeError, '' }
type_error_proc = -> *_ { raise TypeError, '' }
@s.rb_rescue2_wrong_arg_type(arg_error_proc, :no_exc, proc, :exc, ArgumentError, RuntimeError).should == :exc
@s.rb_rescue2_wrong_arg_type(run_error_proc, :no_exc, proc, :exc, ArgumentError, RuntimeError).should == :exc
-> {
@s.rb_rescue2_wrong_arg_type(type_error_proc, :no_exc, proc, :exc, ArgumentError, RuntimeError)
}.should raise_error(TypeError)
end
end end
end end