Sha256: 4a641cc777f522d55532acd4d7422e1747a11311a408fc1f2f7a926e5ae2043e
Contents?: true
Size: 1.46 KB
Versions: 13
Compression:
Stored size: 1.46 KB
Contents
# frozen_string_literal: true module Uffizzi module ResponseHelper class << self def created?(response) response[:code] == Net::HTTPCreated end def unprocessable_entity?(response) response[:code] == Net::HTTPUnprocessableEntity end def not_found?(response) response[:code] == Net::HTTPNotFound end def forbidden?(response) response[:code] == Net::HTTPForbidden end def no_content?(response) response[:code] == Net::HTTPNoContent end def ok?(response) response[:code] == Net::HTTPOK end def handle_failed_response(response) prepared_errors = prepare_errors(response[:body][:errors]) raise Uffizzi::Error.new(prepared_errors) end def handle_invalid_compose_response(response) prepared_errors = prepare_errors(response[:body][:compose_file][:payload][:errors]) raise Uffizzi::Error.new(prepared_errors) end private def prepare_errors(errors) errors.values.reduce('') do |acc, error_messages| if error_messages.is_a?(Array) error_messages.each { |error_message| acc = "#{acc}#{prepare_error_message(error_message)}\n" } else acc = "#{acc}#{prepare_error_message(error_message)}\n" end acc end end def prepare_error_message(error_message) error_message.split('::').last end end end end
Version data entries
13 entries across 13 versions & 1 rubygems