lib/soapy_cake/error.rb in soapy_cake-2.2.1 vs lib/soapy_cake/error.rb in soapy_cake-2.2.3
- old
+ new
@@ -1,7 +1,18 @@
# frozen_string_literal: true
module SoapyCake
class Error < RuntimeError; end
- class RequestFailed < Error; end
+
+ class RequestFailed < Error
+ attr_reader :request_path, :request_body, :response_body
+
+ def initialize(message, request_path: nil, request_body: nil, response_body: nil)
+ @request_path = request_path
+ @request_body = request_body&.sub(ENV.fetch('CAKE_API_KEY'), '[redacted]')
+ @response_body = response_body
+ super(message)
+ end
+ end
+
class RateLimitError < RequestFailed; end
end