Class: WhinyValidation::LogSubscriber

Inherits:
ActiveSupport::LogSubscriber
  • Object
show all
Defined in:
lib/whiny_validation.rb

Instance Method Summary collapse

Instance Method Details

#color_mode_optionsObject



21
22
23
24
25
26
27
# File 'lib/whiny_validation.rb', line 21

def color_mode_options
  if ActiveSupport.gem_version < Gem::Version.new("7.1.0")
    true
  else
    { bold: true }
  end
end

#validation_failed(event) ⇒ Object



29
30
31
32
33
34
35
36
37
# File 'lib/whiny_validation.rb', line 29

def validation_failed(event)
  send(WhinyValidation.configuration.log_level) do
    name = color("Validation failed", YELLOW, color_mode_options)
    object = event.payload[:object]
    error_messages = color(event.payload[:error_messages].map{|message|"    => #{message}"}.join("\n"), YELLOW)

    "  #{name}  #{object.inspect}\n#{error_messages}"
  end
end