summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-01-12 08:24:33 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-01-12 08:24:33 +0000
commit9835b48a385c7f6663945a325d2165a1c07cc3a9 (patch)
treeb196a411fca8622470976f600c6c2e77d0086fc1 /test/ruby
parentc0e208bc397f5a61611affe06ce4ce4bbdb47984 (diff)
merge revision(s) 53346,53347,53348,53349: [Backport #11898]
* process.c: use rb_w32_uchdir() instead of plain chdir() on Windows. reported by naruse via twitter. * process.c (rb_execarg_addopt): need to convert to ospath. * process.c (rb_execarg_parent_start1): need to convert the encoding to ospath's one. * process.c (rb_execarg_addopt): need to convert the encoding to ospath's one. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@53508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_process.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ruby/test_process.rb b/test/ruby/test_process.rb
index ca35d151a9..c8b4b7d343 100644
--- a/test/ruby/test_process.rb
+++ b/test/ruby/test_process.rb
@@ -425,6 +425,16 @@ class TestProcess < Test::Unit::TestCase
}
end
+ def test_execopts_open_chdir_m17n_path
+ with_tmpchdir {|d|
+ Dir.mkdir "テスト"
+ system(*PWD, :chdir => "テスト", :out => "open_chdir_テスト")
+ assert_file.exist?("open_chdir_テスト")
+ assert_file.not_exist?("テスト/open_chdir_テスト")
+ assert_equal("#{d}/テスト", File.read("open_chdir_テスト").chomp.encode(__ENCODING__))
+ }
+ end
+
def test_execopts_open_failure
with_tmpchdir {|d|
assert_raise_with_message(Errno::ENOENT, %r"d/notexist") {