Class: ProbeDockProbe::TestResult
- Inherits:
-
Object
- Object
- ProbeDockProbe::TestResult
- Defined in:
- lib/probe_dock_ruby/test_result.rb
Instance Attribute Summary collapse
-
#category ⇒ Object
readonly
Returns the value of attribute category.
-
#data ⇒ Object
readonly
Returns the value of attribute data.
-
#duration ⇒ Object
readonly
Returns the value of attribute duration.
-
#fingerprint ⇒ Object
readonly
Returns the value of attribute fingerprint.
-
#key ⇒ Object
readonly
Returns the value of attribute key.
-
#message ⇒ Object
readonly
Returns the value of attribute message.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#tags ⇒ Object
readonly
Returns the value of attribute tags.
-
#tickets ⇒ Object
readonly
Returns the value of attribute tickets.
Instance Method Summary collapse
-
#initialize(project, options = {}) ⇒ TestResult
constructor
A new instance of TestResult.
- #passed? ⇒ Boolean
- #to_h(options = {}) ⇒ Object
- #wrap(a) ⇒ Object
Constructor Details
#initialize(project, options = {}) ⇒ TestResult
Returns a new instance of TestResult.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/probe_dock_ruby/test_result.rb', line 5 def initialize project, = {} if ![:fingerprint] raise Error, "The :fingerprint option is required (unique identifier for the test)" elsif ![:name] raise Error, "The :name option is required (human-friendly identifier for the test, not necessarily unique)" elsif !.key?(:passed) raise Error, "The :passed option is required (indicates whether the test passed or not)" elsif ![:duration] raise Error, "The :duration options is required (indicates how long it took to run the test)" end @key = [:key] @fingerprint = [:fingerprint] @name = [:name].to_s @category = [:category] || project.category = (wrap([:tags]) + wrap(project.)).compact.collect(&:to_s).uniq @tickets = (wrap([:tickets]) + wrap(project.tickets)).compact.collect(&:to_s).uniq @passed = !![:passed] @duration = [:duration] = [:message] @data = [:data] || {} @data = @data.deep_stringify_keys if @data.respond_to? :deep_stringify_keys end |
Instance Attribute Details
#category ⇒ Object (readonly)
Returns the value of attribute category.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def category @category end |
#data ⇒ Object (readonly)
Returns the value of attribute data.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def data @data end |
#duration ⇒ Object (readonly)
Returns the value of attribute duration.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def duration @duration end |
#fingerprint ⇒ Object (readonly)
Returns the value of attribute fingerprint.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def fingerprint @fingerprint end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def key @key end |
#message ⇒ Object (readonly)
Returns the value of attribute message.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def name @name end |
#tags ⇒ Object (readonly)
Returns the value of attribute tags.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def end |
#tickets ⇒ Object (readonly)
Returns the value of attribute tickets.
3 4 5 |
# File 'lib/probe_dock_ruby/test_result.rb', line 3 def tickets @tickets end |
Instance Method Details
#passed? ⇒ Boolean
33 34 35 |
# File 'lib/probe_dock_ruby/test_result.rb', line 33 def passed? @passed end |
#to_h(options = {}) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/probe_dock_ruby/test_result.rb', line 37 def to_h = {} { 'f' => @fingerprint, 'p' => @passed, 'd' => @duration }.tap do |h| h['k'] = @key if @key h['m'] = if h['n'] = @name.length > 255 ? "#{@name[0, 252]}..." : @name h['c'] = @category h['g'] = h['t'] = @tickets h['a'] = @data end end |
#wrap(a) ⇒ Object
53 54 55 |
# File 'lib/probe_dock_ruby/test_result.rb', line 53 def wrap a a.kind_of?(Array) ? a : [ a ] end |