class ActiveRecord::DataIntegrity::Collector
collects result info for rendering
Public Class Methods
log(cop, message)
click to toggle source
# File lib/active_record/data_integrity/collector.rb, line 8 def log(cop, message) data.push(cop: cop, message: message) end
progress(_cop, char)
click to toggle source
# File lib/active_record/data_integrity/collector.rb, line 12 def progress(_cop, char) print char end
render()
click to toggle source
# File lib/active_record/data_integrity/collector.rb, line 16 def render group_data_by_cop_name.each do |cop_name, items| items.each do |item| puts "#{Rainbow(cop_name).red}:"\ " #{Rainbow(item[:cop].model.name).yellow}"\ " #{item[:message]}" end end end
Private Class Methods
data()
click to toggle source
# File lib/active_record/data_integrity/collector.rb, line 28 def data @data ||= [] end
group_data_by_cop_name()
click to toggle source
# File lib/active_record/data_integrity/collector.rb, line 32 def group_data_by_cop_name data.each_with_object({}) do |item, hash| hash[item[:cop].class.cop_name] ||= [] hash[item[:cop].class.cop_name] << item end end