class WebMinion::History

Histories are used to log the events as the bot performs its flows, steps, and actions

Constants

VALID_STATUSES

Attributes

end_time[R]
runtime[R]
start_time[R]
status[R]

Public Class Methods

new(start_time = nil) click to toggle source
# File lib/web_minion/histories/history.rb, line 11
def initialize(start_time = nil)
  @start_time = start_time || Time.now
  @status = nil
end

Public Instance Methods

end_time=(end_time) click to toggle source
# File lib/web_minion/histories/history.rb, line 20
def end_time=(end_time)
  @end_time = end_time
  @runtime = @end_time - @start_time if @start_time && @end_time
end
status=(status) click to toggle source
# File lib/web_minion/histories/history.rb, line 16
def status=(status)
  @status = parse_status(status)
end

Private Instance Methods

parse_status(status) click to toggle source
# File lib/web_minion/histories/history.rb, line 27
def parse_status(status)
  if [TrueClass, FalseClass].include? status.class
    status ? "Successful" : "Unsuccessful"
  elsif [String, Symbol].include? status.class
    unless VALID_STATUSES.include? status.capitalize
      raise(InvalidStatus, "#{status} is not a valid!")
    end
    status.to_s.capitalize
  else
    raise(InvalidStatus, "#{status} must be a boolean, string, or symbol.")
  end
end