From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 62EA920966 for ; Thu, 6 Apr 2017 05:11:58 +0000 (UTC) From: Eric Wong To: yahns-public@yhbt.net Subject: [PATCH] test_bin: use RbConfig.ruby for non-standard names Date: Thu, 6 Apr 2017 05:11:58 +0000 Message-Id: <20170406051158.27624-1-e@80x24.org> List-Id: It's possible to have "ruby" executables by other names (e.g. "ruby24"), so use a supported API for finding our executable. This feature was added in Ruby 1.9.2, so it's safe to use as we've always been 1.9.3+ (and nowadays 2.0+) --- test/test_bin.rb | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/test/test_bin.rb b/test/test_bin.rb index af990ad..579e39c 100644 --- a/test/test_bin.rb +++ b/test/test_bin.rb @@ -9,7 +9,7 @@ class TestBin < Testcase def setup server_helper_setup - @cmd = %W(ruby -I lib bin/yahns) + @cmd = %W(#{RbConfig.ruby} -I lib bin/yahns) end def test_listen_fd3 @@ -19,7 +19,7 @@ def test_listen_fd3 ru = tmpfile(%w(test_bin_daemon .ru)) ru.write("require 'rack/lobster'; run Rack::Lobster.new\n") - cmd = %W(ruby -I lib bin/yahns-rackup + cmd = %W(#{RbConfig.ruby} -I lib bin/yahns-rackup -E none -p #{port} -o #{host} #{ru.path}) pid = fork do # emulate a systemd environment env = { @@ -159,10 +159,9 @@ def usr2_dir(tmpdir, preload, worker) # other processes which fork (but do not exec), causing ETXTBUSY on # Process.spawn pid = fork do - ruby = "#!#{`which ruby`}" File.open(exe, "w") { |y| lines = File.readlines("bin/yahns") - lines[0] = ruby + lines[0] = "#!#{RbConfig.ruby}\n" y.chmod(0755) y.syswrite(lines.join) } -- EW