class Ritsudo::Result::Misc

Public Class Methods

new() click to toggle source
# File lib/ritsudo/result/misc.rb, line 4
def initialize
  @misc = {}
end

Public Instance Methods

add(group, name, value) click to toggle source
# File lib/ritsudo/result/misc.rb, line 8
def add(group, name, value)
  @misc[group] ||= {}
  @misc[group][name] ||= []
  @misc[group][name] << value
end
report(outliters_stdev_multiple: nil) click to toggle source
# File lib/ritsudo/result/misc.rb, line 14
def report(outliters_stdev_multiple: nil)
  table_data = []
  @misc.each do |group, name_and_values|
    puts "[#{group}]"

    name_and_values.each do |name, all_values|
      use_remove_outsiders = outliters_stdev_multiple && all_values.size > 1
      if use_remove_outsiders
        values = Ritsudo::Result::Helper.remove_outliters(all_values, outliters_stdev_multiple)
      else
        values = all_values
      end

      result = {
        name: name,
        avg: (values.sum(0.0) / values.length)&.round(2),
        max: values.max&.round(2),
        min: values.min&.round(2),
        count: values.size,
        outliters: all_values.size - values.size
      }


      table_data << result
    end
    Formatador.display_table(table_data, [:name, :avg, :max, :min, :count, :outliters])
  end
end