class Ablab::Experiment

Attributes

control[R]
groups[R]
name[R]

Public Class Methods

new(name, &block) click to toggle source
# File lib/ablab.rb, line 51
def initialize(name, &block)
  @name    = name.to_sym
  @control = Group.new(:control, 'control group')
  @groups  = [@control]
  instance_exec(&block)
end

Public Instance Methods

description(desc = nil) click to toggle source
# File lib/ablab.rb, line 58
def description(desc = nil)
  @description = desc if desc
  @description
end
goal(goal = nil) click to toggle source
# File lib/ablab.rb, line 63
def goal(goal = nil)
  @goal = goal if goal
  @goal
end
group(name, options = {}) click to toggle source
# File lib/ablab.rb, line 73
def group(name, options = {})
  group = Group.new(name, options[:description])
  @groups << group
end
percentage_of_visitors(percentage = nil) click to toggle source
# File lib/ablab.rb, line 68
def percentage_of_visitors(percentage = nil)
  @percentage_of_visitors = percentage if percentage
  @percentage_of_visitors || 100
end
results() click to toggle source
# File lib/ablab.rb, line 78
def results
  @result ||= Result.new(self)
  @result.data
end
run(session_id) click to toggle source
# File lib/ablab.rb, line 83
def run(session_id)
  Run.new(self, session_id)
end