hal-client 3.9.0 → 3.10.0
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 +4 -4
- data/lib/hal_client.rb +21 -0
- data/lib/hal_client/version.rb +1 -1
- data/spec/hal_client_spec.rb +19 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0ae5d25221a96b30a338a59db96e20dda13801c4
|
4
|
+
data.tar.gz: 61bbcf0772a06648adab94ed80c8d743fb8740ee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b57da54ab9f5f92c82853ca005da8752a9a997141e59b6bfc197ae6639fee3bc4397f9c6ddb1f0d7a986e3e7ac5a445bb8fbd517092d77048eef7fcf9cf959fd
|
7
|
+
data.tar.gz: c0adb4d346eba70b5dc2bede3a8937964c00858476eb89052257795e7e907d795bb490ffd54932b5b25ecd3718cda3d52aab85b0282ca3ede627ed1f7eeaaf27
|
data/lib/hal_client.rb
CHANGED
@@ -122,6 +122,27 @@ class HalClient
|
|
122
122
|
# headers - custom header fields to use for this request
|
123
123
|
def_unsafe_request :patch
|
124
124
|
|
125
|
+
# Delete a `Representation` or `String` to the resource identified at `url`.
|
126
|
+
#
|
127
|
+
# url - The URL of the resource of interest.
|
128
|
+
# headers - custom header fields to use for this request
|
129
|
+
def delete(url, headers={})
|
130
|
+
headers = auth_headers(url).merge(headers)
|
131
|
+
|
132
|
+
begin
|
133
|
+
interpret_response client_for_post(override_headers: headers)
|
134
|
+
.request(:delete, url)
|
135
|
+
rescue HttpError => e
|
136
|
+
fail e.class.new("#{method.to_s.upcase} <#{url}> failed with code #{e.response.status}", e.response)
|
137
|
+
end
|
138
|
+
end
|
139
|
+
|
140
|
+
class << self
|
141
|
+
def delete(url, headers={})
|
142
|
+
new.delete(url, headers)
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
125
146
|
protected
|
126
147
|
|
127
148
|
attr_reader :headers, :auth_helper
|
data/lib/hal_client/version.rb
CHANGED
data/spec/hal_client_spec.rb
CHANGED
@@ -240,6 +240,22 @@ describe HalClient do
|
|
240
240
|
end
|
241
241
|
end
|
242
242
|
|
243
|
+
describe ".delete(<url>)" do
|
244
|
+
subject { HalClient.delete "http://example.com/foo" }
|
245
|
+
|
246
|
+
it "returns a HalClient::Representation" do
|
247
|
+
expect(subject).to be_kind_of HalClient::Representation
|
248
|
+
end
|
249
|
+
end
|
250
|
+
|
251
|
+
describe "#delete(<url>)" do
|
252
|
+
subject { HalClient.new.delete "http://example.com/foo" }
|
253
|
+
|
254
|
+
it "returns a HalClient::Representation" do
|
255
|
+
expect(subject).to be_kind_of HalClient::Representation
|
256
|
+
end
|
257
|
+
end
|
258
|
+
|
243
259
|
context "get request redirection" do
|
244
260
|
let!(:request) { stub_request(:get, "http://example.com/foo").
|
245
261
|
to_return(status: 301, headers: { 'Location' => "http://example.com/bar" } ) }
|
@@ -265,6 +281,9 @@ describe HalClient do
|
|
265
281
|
with(:body => post_data).
|
266
282
|
to_return body: "{}" }
|
267
283
|
|
284
|
+
let!(:delete_request) { stub_request(:delete, "http://example.com/foo").
|
285
|
+
to_return body: "{}" }
|
286
|
+
|
268
287
|
let!(:request) { stub_request(:get, "http://example.com/foo").
|
269
288
|
to_return body: "{}" }
|
270
289
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hal-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-06-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: http
|