Class: DbValidator::Reporter
- Inherits:
-
Object
- Object
- DbValidator::Reporter
- Defined in:
- lib/db_validator/reporter.rb
Instance Method Summary collapse
- #add_invalid_record(record) ⇒ Object
- #generate_report ⇒ Object
-
#initialize ⇒ Reporter
constructor
A new instance of Reporter.
Constructor Details
#initialize ⇒ Reporter
Returns a new instance of Reporter.
8 9 10 |
# File 'lib/db_validator/reporter.rb', line 8 def initialize @invalid_records = [] end |
Instance Method Details
#add_invalid_record(record) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/db_validator/reporter.rb', line 12 def add_invalid_record(record) enhanced_errors = record.errors.map do |error| field_value = record.send(error.attribute) = error. if error.[:in].present? "#{error.attribute} #{message} (allowed values: #{error.options[:in].join(', ')}, actual value: #{field_value.inspect})" else "#{error.attribute} #{message} (actual value: #{format_value(field_value)})" end end @invalid_records << { model: record.class.name, id: record.id, errors: enhanced_errors } end |
#generate_report ⇒ Object
31 32 33 34 35 36 37 38 |
# File 'lib/db_validator/reporter.rb', line 31 def generate_report case DbValidator.configuration.report_format when :json generate_json_report else generate_text_report end end |