class ASAConsole::Test::Script

Parent class for {ASAConsole} test scripts.

Public Class Methods

new(terminal_opts, enable_password = nil) click to toggle source

@private

# File lib/asa_console/test/script.rb, line 9
def initialize(terminal_opts, enable_password = nil)
  @asa = ASAConsole.ssh(terminal_opts)
  @asa.enable_password = enable_password if enable_password
  @asa.terminal.on_output do |prompt, input, output|
    print Test.colorize(prompt, :prompt) if prompt
    print Test.colorize(input, :input) if input
    print Test.colorize(output, :output) if output
  end
end

Public Instance Methods

log(text) click to toggle source

Call from within a {script} block to output status messages.

@see script @param text [String]

# File lib/asa_console/test/script.rb, line 43
def log(text)
  puts Test.colorize(text, :log)
end
run() click to toggle source

@api private

# File lib/asa_console/test/script.rb, line 20
def run
  test! @asa
rescue Exception => e
  puts
  puts Test.colorize('Received Exception:', :info)
  puts '  ' + e.class.name
  puts Test.colorize('Message:', :info)
  puts '  ' + e.message
  puts Test.colorize('Stack Trace:', :info)
  puts e.backtrace.join("\n").gsub(/^/, '  ')
end
show_session_log() click to toggle source

@api private

# File lib/asa_console/test/script.rb, line 33
def show_session_log
  puts Test.colorize('Session Log:', :info)
  puts @asa.terminal.session_log.gsub(/^/, '  ').chomp
  puts
end