test/readline/test_readline.rb: skip a test on i686-linux

... because readline library (or libtinfo) seems to cause SEGV
internally even with Readline 8.1.

This SEGV is caught as SystemStackError, which leads to a test failure.
http://rubyci.s3.amazonaws.com/debian-i386/ruby-master/log/20211109T030008Z.fail.html.gz
```
  1) Failure:
TestReadline#test_interrupt_in_other_thread [/home/chkbuild/chkbuild/tmp/build/20211109T030008Z/ruby/test/readline/test_readline.rb:568]:
Unknown failure with exit status pid 13097 exit 1
Log: ** START **Readline::VERSION is 8.1.
/home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `readline': stack level too deep (SystemStackError)
	from /home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `block in <main>'
/home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `readline': stack level too deep (SystemStackError)
	from /home/chkbuild/chkbuild/tmp/build/20211109T030008Z/tmp/interrupt_in_other_thread20211109-6272-kcfqxo:13:in `block in <main>'
```
This commit is contained in:
Yusuke Endoh 2021-11-09 14:48:10 +09:00
Родитель 1290bdf1ae
Коммит 6cf7c0a48f
1 изменённых файлов: 6 добавлений и 0 удалений

Просмотреть файл

@ -488,6 +488,12 @@ module BasetestReadline
omit "Skip Readline 7.0" if Readline::VERSION == "7.0"
omit unless respond_to?(:assert_ruby_status)
omit if /mswin|mingw/ =~ RUBY_PLATFORM
# On 32-bit machine, readline library (or libtinfo) seems to cause SEGV internally even with Readline 8.0
# GDB Backtrace: https://gist.github.com/mame/d12b9de3bbc3f16d440c1927398d176a
# Maybe the same issue: https://github.com/facebookresearch/nle/issues/120
omit if /i[3-6]86-linux/ =~ RUBY_PLATFORM
code = <<-"end;"
$stdout.sync = true
require 'readline'