mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
test_rubyoptions.rb: fix test
* test/ruby/test_rubyoptions.rb (test_shebang): adjust only expected stderr as a warning, assertion has meaning on all platforms. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
e89d48a1e6
commit
b8f987b36c
2 changed files with 5 additions and 6 deletions
6
ruby.c
6
ruby.c
|
@ -1676,6 +1676,8 @@ warn_cr_in_shebang(const char *str, long len)
|
|||
rb_warn("shebang line ends with \\r may cause a problem");
|
||||
}
|
||||
}
|
||||
#else
|
||||
#define warn_cr_in_shebang(str, len) (void)0
|
||||
#endif
|
||||
|
||||
struct load_file_arg {
|
||||
|
@ -1725,9 +1727,7 @@ load_file_internal(VALUE argp_v)
|
|||
line_start++;
|
||||
RSTRING_GETMEM(line, str, len);
|
||||
if (len > 2 && str[0] == '#' && str[1] == '!') {
|
||||
#ifndef DOSISH
|
||||
if (line_start == 1) warn_cr_in_shebang(str, len);
|
||||
#endif
|
||||
if ((p = strstr(str+2, ruby_engine)) != 0) {
|
||||
goto start_read;
|
||||
}
|
||||
|
@ -1745,9 +1745,7 @@ load_file_internal(VALUE argp_v)
|
|||
return 0;
|
||||
|
||||
RSTRING_GETMEM(line, str, len);
|
||||
#ifndef DOSISH
|
||||
warn_cr_in_shebang(str, len);
|
||||
#endif
|
||||
if ((p = strstr(str, ruby_engine)) == 0) {
|
||||
/* not ruby script, assume -x flag */
|
||||
goto search_shebang;
|
||||
|
|
|
@ -312,9 +312,10 @@ class TestRubyOptions < Test::Unit::TestCase
|
|||
assert_in_out_err([], "#! /test_r_u_b_y_test_r_u_b_y_options_foobarbazqux -foo -bar\r\np 1\r\n",
|
||||
[], /: no Ruby script found in input/)
|
||||
|
||||
warning = /mswin|mingw/ =~ RUBY_PLATFORM ? [] : /shebang line ends with \\r/
|
||||
assert_in_out_err([{'RUBYOPT' => nil}], "#!ruby -KU -Eutf-8\r\np \"\u3042\"\r\n",
|
||||
["\"\u3042\""], /shebang line ends with \\r/,
|
||||
encoding: Encoding::UTF_8) if /mswin|mingw/ !~ RUBY_PLATFORM
|
||||
["\"\u3042\""], warning,
|
||||
encoding: Encoding::UTF_8)
|
||||
|
||||
bug4118 = '[ruby-dev:42680]'
|
||||
assert_in_out_err(%w[], "#!/bin/sh\n""#!shebang\n""#!ruby\n""puts __LINE__\n",
|
||||
|
|
Loading…
Reference in a new issue