Module: Koboldy::Io

Defined in:
lib/koboldy/io.rb

Class Method Summary collapse

Class Method Details

.capture(cmd, in_file_path) ⇒ Object



24
25
26
27
28
29
30
31
# File 'lib/koboldy/io.rb', line 24

def capture(cmd, in_file_path)
  File.open(in_file_path, "w") do |file|
    Open3.popen2e(cmd) do |s_in, s_out, status|
      s_in.close
      s_out.each { |line| file.puts(line) }
    end
  end
end

.capture_stderrObject



15
16
17
18
19
20
21
22
# File 'lib/koboldy/io.rb', line 15

def capture_stderr
  out = StringIO.new
  $stderr = out
  yield
  out.string
ensure
  $stderr = STDOUT
end

.capture_stdoutObject



6
7
8
9
10
11
12
13
# File 'lib/koboldy/io.rb', line 6

def capture_stdout
  out = StringIO.new
  $stdout = out
  yield
  out.string
ensure
  $stdout = STDOUT
end