Class: Konacha::Reporter::Metadata

Inherits:
Object
  • Object
show all
Defined in:
lib/konacha/reporter/metadata.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ Metadata

Returns a new instance of Metadata.



14
15
16
# File 'lib/konacha/reporter/metadata.rb', line 14

def initialize(data)
  @data = data
end

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



12
13
14
# File 'lib/konacha/reporter/metadata.rb', line 12

def data
  @data
end

Instance Method Details

#[](key) ⇒ Object



18
19
20
# File 'lib/konacha/reporter/metadata.rb', line 18

def [](key)
  respond_to?(key) ? send(key) : data[key]
end

#described_classObject



62
63
64
65
# File 'lib/konacha/reporter/metadata.rb', line 62

def described_class
  STDERR.puts "described_class not implemented" if Konacha.config.verbose
  nil
end

#descriptionObject



71
72
73
# File 'lib/konacha/reporter/metadata.rb', line 71

def description
  data['title']
end

#exceptionObject



47
48
49
50
51
52
53
54
55
# File 'lib/konacha/reporter/metadata.rb', line 47

def exception
  return unless data['status'] == "failed"

  @exception ||= begin
    e = Reporter::SpecException.new("#{data['error']['name']}: #{data['error']['message']}")
    e.set_backtrace([])
    e
  end
end

#execution_resultObject



37
38
39
40
41
42
43
44
45
# File 'lib/konacha/reporter/metadata.rb', line 37

def execution_result
  @execution_result ||= {
    :status      => data['status'],
    :started_at  => nil,
    :finished_at => nil,
    :run_time    => data['duration'],
    :exception   => exception
  }
end

#file_pathObject Also known as: location



26
27
28
# File 'lib/konacha/reporter/metadata.rb', line 26

def file_path
  data['path']
end

#full_descriptionObject



75
76
77
# File 'lib/konacha/reporter/metadata.rb', line 75

def full_description
  data['fullTitle']
end

#line_numberObject



32
33
34
35
# File 'lib/konacha/reporter/metadata.rb', line 32

def line_number
  STDERR.puts "line_number not implemented" if Konacha.config.verbose
  nil
end

#pendingObject



67
68
69
# File 'lib/konacha/reporter/metadata.rb', line 67

def pending
  data['status'] == "pending"
end

#pending_messageObject



57
58
59
60
# File 'lib/konacha/reporter/metadata.rb', line 57

def pending_message
  STDERR.puts "pending_message not implemented" if Konacha.config.verbose
  nil
end

#update(data) ⇒ Object



22
23
24
# File 'lib/konacha/reporter/metadata.rb', line 22

def update(data)
  @data.merge!(data)
end