class Totalizer::Step
Attributes
end_ids[RW]
start_ids[RW]
Public Class Methods
new(start_ids, end_ids)
click to toggle source
# File lib/totalizer/step.rb, line 5 def initialize start_ids, end_ids self.start_ids = start_ids self.end_ids = end_ids validate! end
Public Instance Methods
finish()
click to toggle source
# File lib/totalizer/step.rb, line 23 def finish ids.size end
ids()
click to toggle source
# File lib/totalizer/step.rb, line 15 def ids @ids ||= calculate end
rate()
click to toggle source
# File lib/totalizer/step.rb, line 11 def rate (finish.to_f/(start.to_f.nonzero? || 1)).round(2) end
start()
click to toggle source
# File lib/totalizer/step.rb, line 19 def start start_ids.size end
Private Instance Methods
calculate()
click to toggle source
# File lib/totalizer/step.rb, line 33 def calculate start_ids & end_ids end
validate!()
click to toggle source
# File lib/totalizer/step.rb, line 29 def validate! raise Errors::InvalidData unless start_ids.kind_of?(Array) && end_ids.kind_of?(Array) end