summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2021-09-10 08:07:08 +0900
committergit <svn-admin@ruby-lang.org>2021-09-10 08:34:51 +0900
commit7983fb965891330f5c41919b266ada53ab822f12 (patch)
treef820958253fd8a9162e95232b8350adf813c2259 /test
parent62cecea073a6d86f3176fba11762606c7e1ed2a1 (diff)
[ruby/irb] Tests may not execute in the source directory
https://github.com/ruby/irb/commit/f4aaa70cfc
Diffstat (limited to 'test')
-rw-r--r--test/irb/test_workspace.rb15
1 files changed, 7 insertions, 8 deletions
diff --git a/test/irb/test_workspace.rb b/test/irb/test_workspace.rb
index 7439796447..1a1dc1f49b 100644
--- a/test/irb/test_workspace.rb
+++ b/test/irb/test_workspace.rb
@@ -85,14 +85,13 @@ module TestIRB
pend if RUBY_ENGINE == 'truffleruby'
bug17623 = '[ruby-core:102468]'
bundle_exec = ENV.key?('BUNDLE_GEMFILE') ? ['-rbundler/setup'] : []
- if File.exist?('./exe/irb')
- irb_path = './exe/irb'
- elsif File.exist?('./libexec/irb')
- irb_path = './libexec/irb'
- else
- omit 'irb command not found'
- end
- assert_in_out_err(bundle_exec + ['-W0', '-e', <<~RUBY , '--', '-f', '--'], 'binding.local_variables', /\[:_\]/, [], bug17623)
+ top_srcdir = "#{__dir__}/../.."
+ irb_path = nil
+ %w[exe libexec].find do |dir|
+ irb_path = "#{top_srcdir}/#{dir}/irb"
+ File.exist?(irb_path)
+ end or omit 'irb command not found'
+ assert_in_out_err(bundle_exec + ['-W0', "-C#{top_srcdir}", '-e', <<~RUBY , '--', '-f', '--'], 'binding.local_variables', /\[:_\]/, [], bug17623)
version = 'xyz' # typical rubygems loading file
load('#{irb_path}')
RUBY