Class: PactBroker::Api::Decorators::ValidationErrorsProblemJsonDecorator

Inherits:
Object
  • Object
show all
Defined in:
lib/pact_broker/api/decorators/validation_errors_problem_json_decorator.rb

Instance Method Summary collapse

Constructor Details

#initialize(errors) ⇒ ValidationErrorsProblemJsonDecorator

Returns a new instance of ValidationErrorsProblemJsonDecorator.

Parameters:

  • errors (Hash)


12
13
14
# File 'lib/pact_broker/api/decorators/validation_errors_problem_json_decorator.rb', line 12

def initialize(errors)
  @errors = errors
end

Instance Method Details

#to_hash(user_options:) ⇒ Hash

Returns:

  • (Hash)


17
18
19
20
21
22
23
24
25
26
27
# File 'lib/pact_broker/api/decorators/validation_errors_problem_json_decorator.rb', line 17

def to_hash(user_options:, **)
  error_list = []
  walk_errors(errors, error_list, "", user_options[:base_url])
  {
    "title" => "Validation errors",
    "type" => "#{user_options[:base_url]}/problems/validation-error",
    "status" => 400,
    "instance" => "/",
    "errors" => error_list
  }
end

#to_json(*args, **kwargs) ⇒ String

Returns JSON.

Returns:

  • (String)

    JSON



30
31
32
# File 'lib/pact_broker/api/decorators/validation_errors_problem_json_decorator.rb', line 30

def to_json(*args, **kwargs)
  to_hash(*args, **kwargs).to_json
end