class Crucible::Tests::TestResult

Attributes

code[RW]
data[RW]
description[RW]
id[RW]
key[RW]
message[RW]
requires[RW]
status[RW]
validates[RW]
warnings[RW]

Public Class Methods

new(key, description, status, message, data) click to toggle source
# File lib/test_result.rb, line 17
def initialize(key, description, status, message, data)
  @key = key
  @status = status
  @description = description
  @message = message
  @data = data
end

Public Instance Methods

failed?() click to toggle source
# File lib/test_result.rb, line 36
def failed?
  !self.passed?
end
passed?() click to toggle source
# File lib/test_result.rb, line 32
def passed?
  return ( (@status==true) or (@status=='passed') )
end
to_hash() click to toggle source
# File lib/test_result.rb, line 40
def to_hash
  hash = {}
  hash['key'] = @key
  hash['id'] = @id || @key
  hash['description'] = force_encoding(@description)
  hash['status'] = force_encoding(@status)
  if @message.class == Array
    hash['message'] = @message.map { |m| force_encoding(m) }
  else
    hash['message'] = force_encoding(@message)
  end
  hash['data'] = force_encoding(@data) unless hash['status'] == 'pass'
  hash['warnings'] = warnings if warnings
  hash['requires'] = requires if requires
  hash['validates'] = validates if validates
  hash['links'] = links if links
  hash['code'] = @code
  hash
end
update(status, message, data) click to toggle source
# File lib/test_result.rb, line 25
def update(status, message, data)
  @status = status
  @message = message
  @data = data
  self
end

Private Instance Methods

force_encoding(value) click to toggle source
# File lib/test_result.rb, line 62
def force_encoding(value)
  return nil if value.blank?
  value.force_encoding("UTF-8")
end