Class: Scale

Inherits:
Object show all
Defined in:
lib/mobiusloop/scale.rb

Overview

Superclass for all scales of measure Designed to be extended with the measure method implemented by the specific

Direct Known Subclasses

PageResponseScale

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeScale

creates internal array to store measurements if sub-classes need their own initialize logic call super first



12
13
14
# File 'lib/mobiusloop/scale.rb', line 12

def initialize
  @measurements = Array.new
end

Instance Attribute Details

#measurementsObject (readonly)

Returns the value of attribute measurements.



7
8
9
# File 'lib/mobiusloop/scale.rb', line 7

def measurements
  @measurements
end

Instance Method Details

#add(measure) ⇒ Object

adds a new measure to end of array



28
29
30
# File 'lib/mobiusloop/scale.rb', line 28

def add(measure)
  @measurements.push(measure)
end

#measureObject

method to perform a measurement, should return an instance of Measure



23
24
25
# File 'lib/mobiusloop/scale.rb', line 23

def measure()
  raise "Someone forgot to override Scale.measure with their unique logic"
end

#record_measurementObject

performs measurement and adds to internal array



17
18
19
20
# File 'lib/mobiusloop/scale.rb', line 17

def record_measurement()
  new_measure = measure
  add(new_measure)
end