Class: Verdict::Segmenters::RandomPercentageSegmenter
- Inherits:
-
FixedPercentageSegmenter
- Object
- BaseSegmenter
- FixedPercentageSegmenter
- Verdict::Segmenters::RandomPercentageSegmenter
- Defined in:
- lib/verdict/segmenters/random_percentage_segmenter.rb
Instance Attribute Summary collapse
-
#random ⇒ Object
Returns the value of attribute random.
Attributes inherited from BaseSegmenter
Instance Method Summary collapse
- #assign(identifier, subject, context) ⇒ Object
-
#initialize(*args) ⇒ RandomPercentageSegmenter
constructor
A new instance of RandomPercentageSegmenter.
Methods inherited from FixedPercentageSegmenter
Methods inherited from BaseSegmenter
#conversion_feedback, #group, #register_group, #verify!
Constructor Details
#initialize(*args) ⇒ RandomPercentageSegmenter
Returns a new instance of RandomPercentageSegmenter.
7 8 9 10 |
# File 'lib/verdict/segmenters/random_percentage_segmenter.rb', line 7 def initialize(*args) super @random = Random.new end |
Instance Attribute Details
#random ⇒ Object
Returns the value of attribute random.
5 6 7 |
# File 'lib/verdict/segmenters/random_percentage_segmenter.rb', line 5 def random @random end |
Instance Method Details
#assign(identifier, subject, context) ⇒ Object
12 13 14 15 |
# File 'lib/verdict/segmenters/random_percentage_segmenter.rb', line 12 def assign(identifier, subject, context) percentile = @random.rand(100) groups.values.find { |group| group.percentile_range.include?(percentile) } end |