Class: Diogenes::Evaluation::DecisionRecord::RenderContext

Inherits:
Object
  • Object
show all
Defined in:
lib/diogenes/evaluation/decision_record.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(feature_name:, evaluator:, verdict:, results:, alternative:, conditions:, notes:) ⇒ RenderContext

: (feature_name: String, evaluator: String, verdict: String, results: Array, alternative: String, conditions: String, notes: String) -> void



81
82
83
84
85
86
87
88
89
# File 'lib/diogenes/evaluation/decision_record.rb', line 81

def initialize(feature_name:, evaluator:, verdict:, results:, alternative:, conditions:, notes:)
  @feature_name = feature_name
  @evaluator = evaluator
  @verdict = verdict
  @results = results
  @alternative = alternative
  @conditions = conditions
  @notes = notes
end

Instance Attribute Details

#alternativeObject (readonly)

Returns the value of attribute alternative.



95
96
97
# File 'lib/diogenes/evaluation/decision_record.rb', line 95

def alternative
  @alternative
end

#conditionsObject (readonly)

Returns the value of attribute conditions.



96
97
98
# File 'lib/diogenes/evaluation/decision_record.rb', line 96

def conditions
  @conditions
end

#evaluatorObject (readonly)

Returns the value of attribute evaluator.



93
94
95
# File 'lib/diogenes/evaluation/decision_record.rb', line 93

def evaluator
  @evaluator
end

#feature_nameObject (readonly)

Returns the value of attribute feature_name.



91
92
93
# File 'lib/diogenes/evaluation/decision_record.rb', line 91

def feature_name
  @feature_name
end

#notesObject (readonly)

Returns the value of attribute notes.



97
98
99
# File 'lib/diogenes/evaluation/decision_record.rb', line 97

def notes
  @notes
end

#verdictObject (readonly)

Returns the value of attribute verdict.



94
95
96
# File 'lib/diogenes/evaluation/decision_record.rb', line 94

def verdict
  @verdict
end

Instance Method Details

#feature_slugObject



92
# File 'lib/diogenes/evaluation/decision_record.rb', line 92

def feature_slug = @feature_name.strip.downcase.gsub(/[^a-z0-9]+/, "_").gsub(/\A_+|_+\z/, "")

#gate_reason(key) ⇒ Object

: (Symbol) -> String



107
108
109
110
111
# File 'lib/diogenes/evaluation/decision_record.rb', line 107

def gate_reason(key)
  r = @results.find { |res| res.gate.key == key }
  return "not evaluated" unless r
  r.passed? ? "Confirmed" : "Not confirmed"
end

#gate_result(key) ⇒ Object

: (Symbol) -> String



100
101
102
103
104
# File 'lib/diogenes/evaluation/decision_record.rb', line 100

def gate_result(key)
  r = @results.find { |res| res.gate.key == key }
  return "not evaluated" unless r
  r.passed? ? "PASS" : "FAIL"
end

#get_bindingObject



113
# File 'lib/diogenes/evaluation/decision_record.rb', line 113

def get_binding = binding