2018-08-27 14:25:00 +00:00
|
|
|
require_relative '../spec_helper'
|
|
|
|
|
2017-05-07 12:04:49 +00:00
|
|
|
describe "The -x command line option" do
|
2017-05-14 14:09:56 +00:00
|
|
|
it "runs code after the first /\#!.*ruby.*/-ish line in target file" do
|
|
|
|
embedded_ruby = fixture __FILE__, "bin/embedded_ruby.txt"
|
|
|
|
result = ruby_exe(embedded_ruby, options: '-x')
|
|
|
|
result.should == "success\n"
|
2017-05-07 12:04:49 +00:00
|
|
|
end
|
|
|
|
|
2017-05-14 14:09:56 +00:00
|
|
|
it "fails when /\#!.*ruby.*/-ish line in target file is not found" do
|
|
|
|
bad_embedded_ruby = fixture __FILE__, "bin/bad_embedded_ruby.txt"
|
2021-06-02 14:34:07 +02:00
|
|
|
result = ruby_exe(bad_embedded_ruby, options: '-x', args: '2>&1', exit_status: 1)
|
2017-05-14 14:09:56 +00:00
|
|
|
result.should include "no Ruby script found in input"
|
|
|
|
end
|
|
|
|
|
|
|
|
it "behaves as -x was set when non-ruby shebang is encountered on first line" do
|
|
|
|
embedded_ruby = fixture __FILE__, "bin/hybrid_launcher.sh"
|
|
|
|
result = ruby_exe(embedded_ruby)
|
2017-05-07 12:04:49 +00:00
|
|
|
result.should == "success\n"
|
|
|
|
end
|
|
|
|
end
|