module RPicSim::RSpec::SimDiagnostics
@api private
Public Class Methods
store_diagnostics(example, sim)
click to toggle source
# File lib/rpicsim/rspec/sim_diagnostics.rb, line 6 def self.store_diagnostics(example, sim) if sim.respond_to? :cycle_count example.metadata[:sim_cycle_count] = sim.cycle_count end if sim.respond_to? :stack_trace example.metadata[:sim_stack_trace] = sim.stack_trace end end
write_cycle_count(example, output, padding)
click to toggle source
# File lib/rpicsim/rspec/sim_diagnostics.rb, line 30 def self.write_cycle_count(example, output, padding) cycle_count = example.metadata[:sim_cycle_count] or return output.puts output.printf padding + "Simulation cycle count: %d\n", cycle_count end
write_diagnostics(example, output, padding)
click to toggle source
# File lib/rpicsim/rspec/sim_diagnostics.rb, line 15 def self.write_diagnostics(example, output, padding) write_cycle_count(example, output, padding) write_sim_stack_trace(example, output, padding) end
write_sim_stack_trace(example, output, padding)
click to toggle source
Looks inside the metadata for the given RSpec
example to see if a simulation stack trace was recorded. If so, it outputs it with the appropriate indentation.
# File lib/rpicsim/rspec/sim_diagnostics.rb, line 23 def self.write_sim_stack_trace(example, output, padding) sim_stack_trace = example.metadata[:sim_stack_trace] or return output.puts output.puts padding + 'Simulation stack trace:' sim_stack_trace.output(output, padding) end