diff options
author | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-06-29 14:35:37 +0000 |
---|---|---|
committer | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-06-29 14:35:37 +0000 |
commit | 5b593e388931490c1e2246d0347c892440167b2c (patch) | |
tree | 70d928d35c01b51bb9a6cdc44af4bd7cc05a669b /spec/rubyspec/core/kernel/fixtures | |
parent | 6a4aa4838cc53a520044b86deb4ecddb57bca876 (diff) | |
download | ruby-5b593e388931490c1e2246d0347c892440167b2c.tar.gz |
Update to ruby/spec@abf1700
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/rubyspec/core/kernel/fixtures')
-rw-r--r-- | spec/rubyspec/core/kernel/fixtures/classes.rb | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/spec/rubyspec/core/kernel/fixtures/classes.rb b/spec/rubyspec/core/kernel/fixtures/classes.rb index c4a4d00485..afa2bec12f 100644 --- a/spec/rubyspec/core/kernel/fixtures/classes.rb +++ b/spec/rubyspec/core/kernel/fixtures/classes.rb @@ -32,26 +32,36 @@ module KernelSpecs end def self.has_private_method(name) - cmd = %[| #{ruby_cmd(nil)} -n -e "print Kernel.private_method_defined?('#{name}')"] - ruby_exe("puts", args: cmd) == "true" + IO.popen([*ruby_exe, "-n", "-e", "print Kernel.private_method_defined?(#{name.inspect})"], "r+") do |io| + io.puts + io.close_write + io.read + end == "true" end def self.chop(str, method) - cmd = "| #{ruby_cmd(nil)} -n -e '$_ = #{str.inspect}; #{method}; print $_'" - ruby_exe "puts", args: cmd - end - - def self.encoded_chop(file) - ruby_exe "puts", args: "| #{ruby_cmd(nil)} -n #{file}" + IO.popen([*ruby_exe, "-n", "-e", "$_ = #{str.inspect}; #{method}; print $_"], "r+") do |io| + io.puts + io.close_write + io.read + end end def self.chomp(str, method, sep="\n") - cmd = "| #{ruby_cmd(nil)} -n -e '$_ = #{str.inspect}; $/ = #{sep.inspect}; #{method}; print $_'" - ruby_exe "puts", args: cmd + code = "$_ = #{str.inspect}; $/ = #{sep.inspect}; #{method}; print $_" + IO.popen([*ruby_exe, "-n", "-e", code], "r+") do |io| + io.puts + io.close_write + io.read + end end - def self.encoded_chomp(file) - ruby_exe "puts", args: "| #{ruby_cmd(nil)} -n #{file}" + def self.run_with_dash_n(file) + IO.popen([*ruby_exe, "-n", file], "r+") do |io| + io.puts + io.close_write + io.read + end end # kind_of?, is_a?, instance_of? |