Class: BDDSM::Result

Inherits:
Object
  • Object
show all
Defined in:
lib/bddsm/result.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeResult

Returns a new instance of Result.



5
6
7
8
9
# File 'lib/bddsm/result.rb', line 5

def initialize
  @successes = 0
  @failures = []
  @listeners = []
end

Instance Attribute Details

#failuresObject (readonly)

Returns the value of attribute failures.



3
4
5
# File 'lib/bddsm/result.rb', line 3

def failures
  @failures
end

#successesObject (readonly)

Returns the value of attribute successes.



3
4
5
# File 'lib/bddsm/result.rb', line 3

def successes
  @successes
end

Instance Method Details

#failures_countObject



11
# File 'lib/bddsm/result.rb', line 11

def failures_count = @failures.size

#register_failure(error, location:) ⇒ Object



19
20
21
22
23
# File 'lib/bddsm/result.rb', line 19

def register_failure(error, location:)
  @failures << Failure.new(error, location:)

  @listeners.each(&:failure)
end

#register_successObject



13
14
15
16
17
# File 'lib/bddsm/result.rb', line 13

def register_success
  @successes += 1

  @listeners.each(&:success)
end

#subscribe(listener) ⇒ Object



25
26
27
# File 'lib/bddsm/result.rb', line 25

def subscribe(listener)
  @listeners << listener
end

#success?Boolean

Returns:

  • (Boolean)


29
# File 'lib/bddsm/result.rb', line 29

def success? = @failures.empty?