Class: Qualspec::Suite::Runner
- Inherits:
-
Object
- Object
- Qualspec::Suite::Runner
- Defined in:
- lib/qualspec/suite/runner.rb
Instance Attribute Summary collapse
-
#definition ⇒ Object
readonly
Returns the value of attribute definition.
-
#results ⇒ Object
readonly
Returns the value of attribute results.
Instance Method Summary collapse
-
#initialize(definition) ⇒ Runner
constructor
A new instance of Runner.
- #run(progress: true) ⇒ Object
Constructor Details
#initialize(definition) ⇒ Runner
Returns a new instance of Runner.
10 11 12 13 14 15 16 17 18 |
# File 'lib/qualspec/suite/runner.rb', line 10 def initialize(definition) @definition = definition.is_a?(String) ? Suite.find(definition) : definition @results = Results.new(@definition.name) @judge = Qualspec.judge @definition.candidates_list.each do |c| @results.candidate_models[c.name] = c.model end end |
Instance Attribute Details
#definition ⇒ Object (readonly)
Returns the value of attribute definition.
8 9 10 |
# File 'lib/qualspec/suite/runner.rb', line 8 def definition @definition end |
#results ⇒ Object (readonly)
Returns the value of attribute results.
8 9 10 |
# File 'lib/qualspec/suite/runner.rb', line 8 def results @results end |
Instance Method Details
#run(progress: true) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/qualspec/suite/runner.rb', line 20 def run(progress: true) variants = build_variants temperatures = @definition.temperature_list total_iterations = @definition.scenarios_list.size * variants.size * temperatures.size current = 0 @definition.scenarios_list.each do |scenario| variants.each do |variant| temperatures.each do |temperature| current += 1 log_iteration_progress(current, total_iterations, scenario, variant, temperature) if progress run_scenario_with_variant(scenario, variant, temperature, progress: progress) yield(@results) if block_given? end end end @results.finish! $stderr.puts if progress # Clear progress line @results end |