Class: Megatest::Failure

Inherits:
Object
  • Object
show all
Defined in:
lib/megatest/state.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(exception) ⇒ Failure

Returns a new instance of Failure.



541
542
543
544
545
546
# File 'lib/megatest/state.rb', line 541

def initialize(exception)
  @name = exception.class.name
  @message = exception.detailed_message.sub(" (#{@name})", "")
  @backtrace = exception.backtrace
  @cause = exception.cause ? Failure.new(exception.cause) : nil
end

Instance Attribute Details

#backtraceObject (readonly)

Returns the value of attribute backtrace.



532
533
534
# File 'lib/megatest/state.rb', line 532

def backtrace
  @backtrace
end

#causeObject (readonly)

Returns the value of attribute cause.



532
533
534
# File 'lib/megatest/state.rb', line 532

def cause
  @cause
end

#messageObject (readonly)

Returns the value of attribute message.



532
533
534
# File 'lib/megatest/state.rb', line 532

def message
  @message
end

#nameObject (readonly)

Returns the value of attribute name.



532
533
534
# File 'lib/megatest/state.rb', line 532

def name
  @name
end

Class Method Details

.load(members) ⇒ Object



535
536
537
# File 'lib/megatest/state.rb', line 535

def load(members)
  allocate._load(members)
end

Instance Method Details

#_load(members) ⇒ Object



556
557
558
559
560
561
562
# File 'lib/megatest/state.rb', line 556

def _load(members)
  @name = members[0]
  @message = members[1]
  @backtrace = members[2]
  @cause = members[3] && Failure.load(members[3])
  self
end

#dumpObject



564
565
566
# File 'lib/megatest/state.rb', line 564

def dump
  [@name, @message, @backtrace, @cause&.dump].compact
end