mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/open3.rb (Open3.poutput3): new method.
(Open3.poutput2): ditto. (Open3.poutput2e): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
644d1e7a47
commit
bca9bf7fef
3 changed files with 121 additions and 10 deletions
|
@ -123,6 +123,32 @@ class TestOpen3 < Test::Unit::TestCase
|
|||
}
|
||||
end
|
||||
|
||||
def test_poutput3
|
||||
o, e, s = Open3.poutput3(RUBY, '-e', 'i=STDIN.read; print i+"o"; STDOUT.flush; STDERR.print i+"e"', :stdin_data=>"i")
|
||||
assert_equal("io", o)
|
||||
assert_equal("ie", e)
|
||||
assert(s.success?)
|
||||
end
|
||||
|
||||
def test_poutput3_flip
|
||||
o, e, s = Open3.poutput3(RUBY, '-e', 'STDOUT.sync=true; 1000.times { print "o"*1000; STDERR.print "e"*1000 }')
|
||||
assert_equal("o"*1000000, o)
|
||||
assert_equal("e"*1000000, e)
|
||||
assert(s.success?)
|
||||
end
|
||||
|
||||
def test_poutput2
|
||||
o, s = Open3.poutput2(RUBY, '-e', 'i=STDIN.read; print i+"o"', :stdin_data=>"i")
|
||||
assert_equal("io", o)
|
||||
assert(s.success?)
|
||||
end
|
||||
|
||||
def test_poutput2e
|
||||
oe, s = Open3.poutput2e(RUBY, '-e', 'i=STDIN.read; print i+"o"; STDOUT.flush; STDERR.print i+"e"', :stdin_data=>"i")
|
||||
assert_equal("ioie", oe)
|
||||
assert(s.success?)
|
||||
end
|
||||
|
||||
def test_pipeline_rw
|
||||
Open3.pipeline_rw([RUBY, '-e', 'print STDIN.read + "1"'],
|
||||
[RUBY, '-e', 'print STDIN.read + "2"']) {|i,o,ts|
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue