class Aruba::InProcess

Public Class Methods

main_class=(main_class) click to toggle source
# File lib/aruba/in_process.rb, line 20
def self.main_class=(main_class)
  @@main_class = main_class
end
new(cmd, exit_timeout, io_wait) click to toggle source
# File lib/aruba/in_process.rb, line 24
def initialize(cmd, exit_timeout, io_wait)
  args = shellwords(cmd)
  @argv = args[1..-1]
  @stdin = StringIO.new
  @stdout = StringIO.new
  @stderr = StringIO.new
  @kernel = FakeKernel.new
end

Public Instance Methods

run!() { |self| ... } click to toggle source
# File lib/aruba/in_process.rb, line 33
def run!
  raise "You need to call Aruba::InProcess.main_class = YourMainClass" unless @@main_class
  @@main_class.new(@argv, @stdin, @stdout, @stderr, @kernel).execute!
  yield self if block_given?
end
stderr() click to toggle source
# File lib/aruba/in_process.rb, line 47
def stderr
  @stderr.string
end
stdout() click to toggle source
# File lib/aruba/in_process.rb, line 43
def stdout
  @stdout.string
end
stop(reader) click to toggle source
# File lib/aruba/in_process.rb, line 39
def stop(reader)
  @kernel.exitstatus
end