Class: TrailGuide::ExperimentsController

Inherits:
ApplicationController
  • Object
show all
Defined in:
app/controllers/trail_guide/experiments_controller.rb

Instance Method Summary collapse

Instance Method Details

#chooseObject



12
13
14
15
16
17
18
19
20
21
# File 'app/controllers/trail_guide/experiments_controller.rb', line 12

def choose
  variant = trailguide.choose!(experiment.experiment_name, metadata: )
  render json: {
    experiment: experiment.experiment_name,
    variant: variant.name,
    metadata: variant..merge()
  }
rescue => e
  render json: { error: e.message }, status: 500
end

#convertObject



23
24
25
26
27
28
29
30
31
32
33
34
# File 'app/controllers/trail_guide/experiments_controller.rb', line 23

def convert
  # we use the param here because convert can trigger multiple experiements
  # based on the passed key via shared groups
  trailguide.convert!(params[:experiment_name], checkpoint, metadata: )
  render json: {
    experiment: experiment.experiment_name,
    checkpoint: checkpoint,
    metadata: 
  }
rescue => e
  render json: { error: e.message }, status: 500
end

#indexObject



5
6
7
8
9
10
# File 'app/controllers/trail_guide/experiments_controller.rb', line 5

def index
  participant = trailguide.participant
  render json: {
    experiments: participant.active_experiments
  }
end