lib/canary_labs.rb in canary_labs-0.2.0 vs lib/canary_labs.rb in canary_labs-0.3.0

- old
+ new

@@ -1,26 +1,52 @@ module CanaryLabs + mattr_accessor :default_participation + + def self.setup default_participation: true + @@experiments = {} + @@default_participation = default_participation + end + + def self.participating? feat_name, id + experiment = @@experiments[feat_name] + + return @@default_participation if experiment.nil? + + experiment.participating? id + end + + def self.add name, desc, resolver + @@experiments[name] = Feature.new name, desc, resolver + end + + def self.find name + @@experiments[name] + end + + def self.all + @@experiments.values + end end