class ParallelRspecProgress::Controller
Public Class Methods
new()
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 7 def initialize @failed = [] @passed = [] @pending = [] @total = 0 end
Public Instance Methods
add(key:, item:)
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 29 def add(key:, item:) case key when :failed @failed << item when :passed @passed << item when :pending @pending << item end @progressbar.title = compose_title @progressbar.increment end
put_total(val)
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 19 def put_total(val) if @progressbar @total += val @progressbar.total = @total else @total = val create_progressbar end end
stop()
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 14 def stop DRb.stop_service process_results end
Private Instance Methods
compose_title()
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 55 def compose_title "passed: #{Rainbow(@passed.count).green} failed: #{Rainbow(@failed.count).red} pending: #{Rainbow(@pending.count).yellow}" end
create_progressbar()
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 45 def create_progressbar @progressbar = ProgressBar.create( format: "%a %e %P% Processed: %c from %C %b\u{15E7}%i %p%% %t", progress_mark: ' ', remainder_mark: "\u{FF65}", starting_at: 0, total: @total ) end
process_results()
click to toggle source
# File lib/parallel_rspec_progress/controller.rb, line 59 def process_results if @failed.any? puts @failed.map {|x| "#{Rainbow(x).red}" } else puts Rainbow("Everything is OK!").green end end