rest-client-wrapper 3.0.2 → 3.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 850533c6b1b1da4dafb1059762820eb8085d43544d934b3a6db1e925228017e8
|
4
|
+
data.tar.gz: 8cafb6e965ae858ba748d970438faabdc3e92ec7a31c2c76f316f37d018caa4f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2201ea8ebc813d0437933446da66d4f735493bb9c2cfb71cfe92c2cb6d4581db4d7ae1f6e4c8f6d31a219f40d06433db4803e1a3dc8b48be297a93e2e9d1115d
|
7
|
+
data.tar.gz: 971a6eb73f52120ecf6cf194b73e58a690e1449012bd50d450cc9b26952fd2037b2e10a66d2d886a695c57c8ff39ae60ae308f67c05f319649dae6975e8e0968
|
@@ -31,10 +31,10 @@ module RestClientWrapper
|
|
31
31
|
def initialize(http_method:, uri:, segment_params: {}, payload: {}, query_params: {}, headers: {}) # rubocop:disable Metrics/ParameterLists
|
32
32
|
@uri = uri
|
33
33
|
self.headers = headers
|
34
|
+
self.http_method = http_method
|
34
35
|
self.segment_params = segment_params
|
35
36
|
self.payload = payload
|
36
37
|
self.query_params = query_params
|
37
|
-
self.http_method = http_method
|
38
38
|
end
|
39
39
|
|
40
40
|
def http_method=(http_method)
|
@@ -47,7 +47,7 @@ module RestClientWrapper
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def payload=(payload)
|
50
|
-
raise TypeError, "Request payload parameters is not a hash"
|
50
|
+
raise TypeError, "Request payload parameters is not a hash" if !payload.is_a?(Hash) && self.headers[:content_type] == :json
|
51
51
|
|
52
52
|
@payload = payload
|
53
53
|
end
|
@@ -66,7 +66,7 @@ module RestClientWrapper
|
|
66
66
|
response_code = nil
|
67
67
|
|
68
68
|
begin
|
69
|
-
payload = Request::HTTP_METHOD_FOR_JSON.include?(request.http_method) ? request.payload.to_json : request.payload
|
69
|
+
payload = Request::HTTP_METHOD_FOR_JSON.include?(request.http_method) && request.headers[:content_type] == :json ? request.payload.to_json : request.payload
|
70
70
|
request.headers[:params] = request.query_params
|
71
71
|
response = ::RestClient::Request.execute({ method: request.http_method, url: url, payload: payload, headers: request.headers })
|
72
72
|
response_code = response&.code
|
data/spec/request_spec.rb
CHANGED
@@ -142,7 +142,7 @@ module RestClientWrapper # rubocop:disable Metrics/ModuleLength
|
|
142
142
|
context "when payload is not a hash" do
|
143
143
|
|
144
144
|
it "will raise TypeError" do
|
145
|
-
expect { Request.new({ http_method: :
|
145
|
+
expect { Request.new({ http_method: :put, uri: @api_uri, segment_params: @param_hash, payload: @non_hash_value }) }.to raise_error(TypeError)
|
146
146
|
end
|
147
147
|
|
148
148
|
end
|