class CrossSpec::SpecWaiting
Public Class Methods
new(tasks)
click to toggle source
# File lib/cross_spec/spec.rb, line 3 def initialize(tasks) @positive_matches = 0 @data = [] @tasks = Array(tasks) end
Public Instance Methods
data()
click to toggle source
# File lib/cross_spec/spec.rb, line 31 def data @data end
done?()
click to toggle source
# File lib/cross_spec/spec.rb, line 27 def done? @positive_matches === @tasks.length end
process(message) { |data, biomarkers| ... }
click to toggle source
# File lib/cross_spec/spec.rb, line 9 def process(message, &block) return unless message.is_a?(TaskMessage) return unless @tasks.include?(message.task) positive_match = if block yield message.data, message.biomarkers elsif DistributedTracing.get.any? (message.biomarkers & DistributedTracing.get).any? else false end if positive_match increment_matches store_data(message) end end
Private Instance Methods
increment_matches()
click to toggle source
# File lib/cross_spec/spec.rb, line 37 def increment_matches @positive_matches += 1 end
store_data(message)
click to toggle source
# File lib/cross_spec/spec.rb, line 41 def store_data(message) i = @tasks.index(message.task) @data[i] = message.data end