rest-client-wrapper 3.0.2 → 3.0.3
Sign up to get free protection for your applications and to get access to all the features.
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
|