module Ritsudo::Result::Uncompletable
Public Instance Methods
add(request)
click to toggle source
# File lib/ritsudo/result/uncompletable.rb, line 6 def add(request) @requests ||= [] @uncompleted ||= Hash.new @requests << request.url @uncompleted[request.url] ||= 0 if request.time @completed[request.url] << request.time else @uncompleted[request.url] += 1 end end
name()
click to toggle source
# File lib/ritsudo/result/uncompletable.rb, line 18 def name raise NotImplementedError end
report(outliters_stdev_multiple: nil)
click to toggle source
# File lib/ritsudo/result/uncompletable.rb, line 22 def report(outliters_stdev_multiple: nil) puts "[#{name}]" table_data = [] (@requests || []).uniq.each do |url| if @completed[url] && !@completed[url].empty? all_request_times = @completed[url] use_remove_outliters = outliters_stdev_multiple && all_request_times.size > 1 if use_remove_outliters request_times = Ritsudo::Result::Helper.remove_outliters(all_request_times, outliters_stdev_multiple) else request_times = all_request_times end avg = (request_times.sum(0.0) / request_times.length)&.round(2) max = request_times.max&.round(2) min = request_times.min&.round(2) count = request_times.size else avg = max = min = count = "-" end result = { url: url[0..100], avg: avg, max: max, min: min, count: count, uncompleted: @uncompleted[url], outliters: all_request_times.size - request_times.size } table_data << result end Formatador.display_table(table_data, [:url, :avg, :max, :min, :count, :uncompleted, :outliters]) end