diff --git a/lib/neography/connection.rb b/lib/neography/connection.rb index a609891..5dbb14f 100644 --- a/lib/neography/connection.rb +++ b/lib/neography/connection.rb @@ -98,13 +98,13 @@ def evaluate_response(response) when 204 @logger.debug "OK, no content returned" if @log_enabled nil - when 400...500 - handle_4xx_response(code, body) + when 400..500 + handle_4xx_500_response(code, body) nil end end - def handle_4xx_response(code, body) + def handle_4xx_500_response(code, body) parsed_body = JSON.parse(body) message = parsed_body["message"] stacktrace = parsed_body["stacktrace"] diff --git a/spec/unit/connection_spec.rb b/spec/unit/connection_spec.rb index 330d10c..a4bdcad 100644 --- a/spec/unit/connection_spec.rb +++ b/spec/unit/connection_spec.rb @@ -196,8 +196,15 @@ module Neography }.to raise_error NeographyError end - end + it "raises BadInputException" do + response = error_response(code: 500, message: "a message", exception: "JsonParseException") + HTTParty.stub(:get).and_return(response) + expect { + connection.get("/foo/bar") + }.to raise_error NeographyError + end + end end end end