class Hackle::Experiment::Running
Attributes
bucket[R]
@!attribute [r] bucket
@return [Bucket]
Public Class Methods
new(id:, key:, bucket:, variations:, overrides:)
click to toggle source
@param id [Integer] @param key [Integer] @param bucket [Bucket] @param variations [Hash{String => Variation}] @param overrides [Hash{String => Integer}]
Calls superclass method
Hackle::Experiment::new
# File lib/hackle/models/experiment.rb, line 28 def initialize(id:, key:, bucket:, variations:, overrides:) super(id: id, key: key) @bucket = bucket # @type [Hash{String => Variation}] @variations = variations # @type [Hash{String => Integer}] @overrides = overrides end
Public Instance Methods
get_overridden_variation(user:)
click to toggle source
@param user [User] @return [Variation, nil]
# File lib/hackle/models/experiment.rb, line 47 def get_overridden_variation(user:) overridden_variation_id = @overrides[user.id] return nil if overridden_variation_id.nil? get_variation(variation_id: overridden_variation_id) end
get_variation(variation_id:)
click to toggle source
@param variation_id [Integer] @return [Variation, nil]
# File lib/hackle/models/experiment.rb, line 41 def get_variation(variation_id:) @variations[variation_id] end