Exception: ContractValueObject::DefinitionError

Inherits:
ArgumentError
  • Object
show all
Includes:
Contracts
Defined in:
lib/contract_value_object/definition_error.rb

Defined Under Namespace

Classes: ErrorMessage

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(error_messages) ⇒ DefinitionError

Returns a new instance of DefinitionError.



9
10
11
12
13
14
15
16
17
# File 'lib/contract_value_object/definition_error.rb', line 9

def initialize(error_messages)
  @error_messages = error_messages
  message_components = error_messages.each_with_index.map do |error, index|
    "#{index + 1}. `#{error.attribute}`: #{error.message}"
  end

  message = ['', *message_components].join("\n")
  super message
end

Instance Attribute Details

#error_messagesObject (readonly)

Returns the value of attribute error_messages.



6
7
8
# File 'lib/contract_value_object/definition_error.rb', line 6

def error_messages
  @error_messages
end