lib/split/experiment.rb in split-4.0.2 vs lib/split/experiment.rb in split-4.0.3

- old
+ new

@@ -268,10 +268,19 @@ } set_alternatives_and_options(options) end + def can_calculate_winning_alternatives? + self.alternatives.all? do |alternative| + alternative.participant_count >= 0 && + (alternative.participant_count >= alternative.completed_count) + end + end + def calc_winning_alternatives + return unless can_calculate_winning_alternatives? + # Cache the winning alternatives so we recalculate them once per the specified interval. intervals_since_epoch = Time.now.utc.to_i / Split.configuration.winning_alternative_recalculation_interval if self.calc_time != intervals_since_epoch