Skip to content

Commit 0da9c95

Browse files
committed
Return full JSON exception from USPS rate parser
Let's match the USPS timings parser by returning the full JSON parsing exception on failure instead of the error message by itself.
1 parent 298c03e commit 0da9c95

File tree

3 files changed

+2
-3
lines changed

3 files changed

+2
-3
lines changed

lib/friendly_shipping/services/usps_ship/parse_rate_estimates_response.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def call(request:, response:)
3535

3636
success(rates, request, response)
3737
rescue JSON::ParserError, KeyError => e
38-
failure(e.message, request, response)
38+
failure(e, request, response)
3939
end
4040

4141
private

spec/friendly_shipping/services/usps_ship/parse_rate_estimates_response_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
it "returns failure" do
4848
failure = call.failure
4949
expect(failure).to be_a(FriendlyShipping::ApiResult)
50-
expect(failure.data).to eq("unexpected token at 'malformed json'")
50+
expect(failure.data).to be_a(JSON::ParserError)
5151
expect(failure.original_request).to eq(request)
5252
expect(failure.original_response).to eq(response)
5353
end

spec/friendly_shipping/services/usps_ship/parse_timings_response_spec.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@
6464
failure = call.failure
6565
expect(failure).to be_a(FriendlyShipping::ApiResult)
6666
expect(failure.data).to be_a(JSON::ParserError)
67-
expect(failure.data.message).to eq("unexpected token at 'malformed json'")
6867
expect(failure.original_request).to eq(request)
6968
expect(failure.original_response).to eq(response)
7069
end

0 commit comments

Comments
 (0)