gds-api-adapters 26.0.0 → 26.1.0
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 73b0b78f10cd055ff72a24be044a44f7c5001df4
|
4
|
+
data.tar.gz: 2b1498057649a161321089c2f8ddbabfb0282a50
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54b851820f3b41ba2a7414c750960d22b00e8217f29c51727b57c8d7864fe9f1bcfc1bd6de9a0b18c8f6bfc243eab88ddf72bbefb83be57419a449c64a39a2d4
|
7
|
+
data.tar.gz: 234a3533b03f9cbf799d16067a6d733734b6a40fb912948b5ce5744e21a9b016149a4c88195f9c2558f36c98d786aa6a9b52090d724f895981e7674d812cb008
|
@@ -1,7 +1,6 @@
|
|
1
1
|
require_relative 'base'
|
2
2
|
|
3
3
|
class GdsApi::PublishingApiV2 < GdsApi::Base
|
4
|
-
|
5
4
|
def put_content(content_id, payload)
|
6
5
|
put_json!(content_url(content_id), payload)
|
7
6
|
end
|
@@ -47,6 +46,10 @@ class GdsApi::PublishingApiV2 < GdsApi::Base
|
|
47
46
|
get_json("#{endpoint}/v2/content#{query}")
|
48
47
|
end
|
49
48
|
|
49
|
+
def discard_draft(content_id)
|
50
|
+
post_json!(discard_url(content_id), {})
|
51
|
+
end
|
52
|
+
|
50
53
|
private
|
51
54
|
|
52
55
|
def content_url(content_id, params = {})
|
@@ -62,6 +65,10 @@ private
|
|
62
65
|
"#{endpoint}/v2/content/#{content_id}/publish"
|
63
66
|
end
|
64
67
|
|
68
|
+
def discard_url(content_id)
|
69
|
+
"#{endpoint}/v2/content/#{content_id}/discard-draft"
|
70
|
+
end
|
71
|
+
|
65
72
|
def merge_optional_keys(params, options, optional_keys)
|
66
73
|
optional_keys.each_with_object(params) do |optional_key, hash|
|
67
74
|
hash.merge!(optional_key => options[optional_key]) if options[optional_key]
|
@@ -23,6 +23,11 @@ module GdsApi
|
|
23
23
|
stub_request(:post, url).with(body: body).to_return(status: 200, body: '{}', headers: {"Content-Type" => "application/json; charset=utf-8"})
|
24
24
|
end
|
25
25
|
|
26
|
+
def stub_publishing_api_discard_draft(content_id)
|
27
|
+
url = PUBLISHING_API_V2_ENDPOINT + "/content/#{content_id}/discard-draft"
|
28
|
+
stub_request(:post, url).to_return(status: 200, headers: {"Content-Type" => "application/json; charset=utf-8"})
|
29
|
+
end
|
30
|
+
|
26
31
|
def stub_publishing_api_put_content_links_and_publish(body, content_id = nil, publish_options = nil)
|
27
32
|
content_id ||= body[:content_id]
|
28
33
|
publish_options ||= { update_type: { update_type: body[:update_type], locale: body[:locale] } }
|
data/lib/gds_api/version.rb
CHANGED
@@ -926,4 +926,59 @@ describe GdsApi::PublishingApiV2 do
|
|
926
926
|
], response.to_a
|
927
927
|
end
|
928
928
|
end
|
929
|
+
|
930
|
+
describe "#discard_draft(content_id)" do
|
931
|
+
describe "when the content item exists" do
|
932
|
+
before do
|
933
|
+
@content_item = content_item_for_content_id(@content_id)
|
934
|
+
|
935
|
+
publishing_api
|
936
|
+
.given("a content item exists with content_id: #{@content_id}")
|
937
|
+
.upon_receiving("a request to discard draft content")
|
938
|
+
.with(
|
939
|
+
method: :post,
|
940
|
+
path: "/v2/content/#{@content_id}/discard-draft",
|
941
|
+
body: {},
|
942
|
+
headers: {
|
943
|
+
"Content-Type" => "application/json",
|
944
|
+
},
|
945
|
+
)
|
946
|
+
.will_respond_with(
|
947
|
+
status: 200,
|
948
|
+
)
|
949
|
+
end
|
950
|
+
|
951
|
+
it "responds with 200" do
|
952
|
+
response = @api_client.discard_draft(@content_id)
|
953
|
+
assert_equal 200, response.code
|
954
|
+
end
|
955
|
+
end
|
956
|
+
|
957
|
+
describe "when there is no content with that content_id" do
|
958
|
+
before do
|
959
|
+
publishing_api
|
960
|
+
.given("no content exists")
|
961
|
+
.upon_receiving("a request to discard draft content")
|
962
|
+
.with(
|
963
|
+
method: :post,
|
964
|
+
path: "/v2/content/#{@content_id}/discard-draft",
|
965
|
+
body: {},
|
966
|
+
headers: {
|
967
|
+
"Content-Type" => "application/json",
|
968
|
+
},
|
969
|
+
)
|
970
|
+
.will_respond_with(
|
971
|
+
status: 404,
|
972
|
+
)
|
973
|
+
end
|
974
|
+
|
975
|
+
it "responds with a 404" do
|
976
|
+
error = assert_raises GdsApi::HTTPClientError do
|
977
|
+
@api_client.discard_draft(@content_id)
|
978
|
+
end
|
979
|
+
|
980
|
+
assert_equal 404, error.code
|
981
|
+
end
|
982
|
+
end
|
983
|
+
end
|
929
984
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gds-api-adapters
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 26.
|
4
|
+
version: 26.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Stewart
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-11-
|
11
|
+
date: 2015-11-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: plek
|