From 0ef2fb5fd43f9473280c8a2f9d26e29cdbc3def6 Mon Sep 17 00:00:00 2001 From: Alexander Olofsson <alexander.olofsson@liu.se> Date: Wed, 20 Sep 2023 09:58:48 +0200 Subject: [PATCH] Return correct error data for 500 responses --- lib/liudesk_cmdb.rb | 2 ++ lib/liudesk_cmdb/client.rb | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/liudesk_cmdb.rb b/lib/liudesk_cmdb.rb index 3e0ad14..50e9935 100644 --- a/lib/liudesk_cmdb.rb +++ b/lib/liudesk_cmdb.rb @@ -41,6 +41,8 @@ module LiudeskCMDB NotAcceptableError.new body, code when "422" UnprocessableError.new body, code + when "500" + ServerError.new body, code else RequestError.new body, code end diff --git a/lib/liudesk_cmdb/client.rb b/lib/liudesk_cmdb/client.rb index 0ef52c3..7fe5203 100644 --- a/lib/liudesk_cmdb/client.rb +++ b/lib/liudesk_cmdb/client.rb @@ -80,14 +80,14 @@ module LiudeskCMDB response.body rescue Net::HTTPClientException, Net::HTTPFatalError begin - body = JSON.parse(response.body) unless response.body.empty? + resp = JSON.parse(response.body) unless response.body.empty? rescue StandardError => e logger.debug "Failed to parse error response - #{e.class}: #{e}" - body = response.body - body = response.message if body.nil? || body.empty? + resp = response.body + resp = response.message if resp.nil? || resp.empty? end - raise LiudeskCMDB::RequestError.create(body, response.code) + raise LiudeskCMDB::RequestError.create(resp, response.code) end def pretty_print_instance_variables -- GitLab