module Expectr::Interface

Public Instance Methods

interact_thread() click to toggle source

Public: Return a Thread which does nothing, representing an interface with no functional interact environment available.

Returns a Thread.

# File lib/expectr/interface.rb, line 7
def interact_thread
  Thread.new { }
end
prepare_interact_interface() click to toggle source

Public: Return an empty Hash representing a case where no action needed to be taken in order to prepare the environment for interact mode.

Returns an empty Hash.

# File lib/expectr/interface.rb, line 15
def prepare_interact_interface
  {}
end

Private Instance Methods

restore_environment(env) click to toggle source

Internal: Restore environment (TTY parameters, signal handlers) after leaving interact mode.

Returns nothing.

# File lib/expectr/interface.rb, line 25
def restore_environment(env)
  env[:sig].each do |signal, handler|
    trap signal, handler
  end
  unless env[:tty].nil?
    `stty #{env[:tty]}`
  end
  @interact = false
end