Class: RichValidationMessage

Inherits:
Object
  • Object
show all
Defined in:
lib/au_ps_inferno/utils/rich_validation_message.rb

Overview

A class to represent a rich validation message for the better and informative output

Instance Method Summary collapse

Constructor Details

#initialize(rich_messages) ⇒ RichValidationMessage

Returns a new instance of RichValidationMessage.



5
6
7
8
9
10
11
12
# File 'lib/au_ps_inferno/utils/rich_validation_message.rb', line 5

def initialize(rich_messages)
  @rich_messages = rich_messages
  @title = calculate_title(rich_messages.first)
  @indexes = uniq_attribute_values(rich_messages, :idx)
  @entry_references = uniq_attribute_values(rich_messages, :ref)
  @resource_ids = uniq_attribute_values(rich_messages, :resource_id)
  @message = rich_messages.first.message
end

Instance Method Details

#to_sObject



14
15
16
17
18
19
20
21
22
# File 'lib/au_ps_inferno/utils/rich_validation_message.rb', line 14

def to_s
  [
    [nil, @title],
    ['Indexes', @indexes.join(', ')],
    ['Entry References', @entry_references.join(', ')],
    ['Resource IDs', @resource_ids.join(', ')],
    [nil, @message]
  ].map { |part| msg_line(title: part[0], value: part[1]) }.compact.join("\n\n")
end