method

capture_subprocess_io

Importance_1
Ruby latest stable (v2_5_5) - 0 notes - Class: Assertions
  • 1_8_6_287
  • 1_8_7_72
  • 1_8_7_330
  • 1_9_1_378
  • 1_9_2_180
  • 1_9_3_125
  • 1_9_3_392
  • 2_1_10 (0)
  • 2_2_9
  • 2_4_6
  • 2_5_5
  • 2_6_3
  • What's this?

Method deprecated or moved

This method is deprecated or moved on the latest stable version. The last existing version (v2_1_10) is shown here.

capture_subprocess_io() public

Captures $stdout and $stderr into strings, using Tempfile to ensure that subprocess IO is captured as well.

out, err = capture_subprocess_io do
  system "echo Some info"
  system "echo You did a bad thing 1>&2"
end

assert_match %r%info%, out
assert_match %r%bad%, err

NOTE: This method is approximately 10x slower than #capture_io so only use it when you need to test the output of a subprocess.

Show source
Register or log in to add new notes.