Class: Hackle::ExperimentRequest

Inherits:
EvaluatorRequest show all
Defined in:
lib/hackle/internal/evaluation/evaluator/experiment/experiment_evaluator.rb

Instance Attribute Summary collapse

Attributes inherited from EvaluatorRequest

#key, #user, #workspace

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from EvaluatorRequest

#==

Constructor Details

#initialize(key:, workspace:, user:, experiment:, default_variation_key:) ⇒ ExperimentRequest

Returns a new instance of ExperimentRequest.

Parameters:



45
46
47
48
49
# File 'lib/hackle/internal/evaluation/evaluator/experiment/experiment_evaluator.rb', line 45

def initialize(key:, workspace:, user:, experiment:, default_variation_key:)
  super(key: key, workspace: workspace, user: user)
  @experiment = experiment
  @default_variation_key = default_variation_key
end

Instance Attribute Details

#default_variation_keyString (readonly)

Returns:

  • (String)


38
39
40
# File 'lib/hackle/internal/evaluation/evaluator/experiment/experiment_evaluator.rb', line 38

def default_variation_key
  @default_variation_key
end

#experimentExperiment (readonly)

Returns:



35
36
37
# File 'lib/hackle/internal/evaluation/evaluator/experiment/experiment_evaluator.rb', line 35

def experiment
  @experiment
end

Class Method Details

.create(workspace, user, experiment, default_variation_key) ⇒ Hackle::ExperimentRequest

Parameters:

Returns:



56
57
58
59
60
61
62
63
64
# File 'lib/hackle/internal/evaluation/evaluator/experiment/experiment_evaluator.rb', line 56

def self.create(workspace, user, experiment, default_variation_key)
  ExperimentRequest.new(
    key: EvaluatorKey.new(type: 'EXPERIMENT', id: experiment.id),
    workspace: workspace,
    user: user,
    experiment: experiment,
    default_variation_key: default_variation_key
  )
end

.create_by(request, experiment) ⇒ Hackle::ExperimentRequest

Parameters:

Returns:



69
70
71
72
73
74
75
76
77
# File 'lib/hackle/internal/evaluation/evaluator/experiment/experiment_evaluator.rb', line 69

def self.create_by(request, experiment)
  ExperimentRequest.new(
    key: EvaluatorKey.new(type: 'EXPERIMENT', id: experiment.id),
    workspace: request.workspace,
    user: request.user,
    experiment: experiment,
    default_variation_key: 'A'
  )
end