gds-api-adapters 24.7.0 → 24.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/gds_api/test_helpers/publishing_api.rb +43 -0
- data/lib/gds_api/version.rb +1 -1
- 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: a073f86ca24d44d7389466bda9ee3c259029df9d
|
4
|
+
data.tar.gz: 609242e328b2e2fb8ec3fbd8c01ea9a399a8aaa8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d2229ed8f4e1a8ab1a66b8ba34e7ce124b2d3e6ec9154749637b712957c01500a395ac59c8192761bbd441164e2745bb9a281145334ef724f6046efc5c6517c2
|
7
|
+
data.tar.gz: 07af7d58f6d87bad27265de4402be76aab7e208e7c5b8f07556254040e2b7dc32c10194bdfca70fc606c1c97a05465a44dad8e1436b5add0cc213b0e89488acd
|
@@ -90,6 +90,39 @@ module GdsApi
|
|
90
90
|
stub_request(:any, /#{PUBLISHING_API_ENDPOINT}\/.*/).to_return(:status => 503)
|
91
91
|
end
|
92
92
|
|
93
|
+
def stub_default_publishing_api_path_reservation
|
94
|
+
stub_request(:put, %r[\A#{PUBLISHING_API_ENDPOINT}/paths/]).to_return { |request|
|
95
|
+
base_path = request.uri.path.sub(%r{\A/paths/}, "")
|
96
|
+
{ :status => 200, :headers => {:content_type => "application/json"},
|
97
|
+
:body => publishing_api_path_data_for(base_path).to_json }
|
98
|
+
}
|
99
|
+
end
|
100
|
+
|
101
|
+
def publishing_api_has_path_reservation_for(path, publishing_app)
|
102
|
+
data = publishing_api_path_data_for(path, "publishing_app" => publishing_app)
|
103
|
+
error_data = data.merge({
|
104
|
+
"errors" => {"path" => ["is already reserved by the #{publishing_app} application"]},
|
105
|
+
})
|
106
|
+
|
107
|
+
stub_request(:put, "#{PUBLISHING_API_ENDPOINT}/paths#{path}").
|
108
|
+
to_return(:status => 422, :body => error_data.to_json,
|
109
|
+
:headers => {:content_type => "application/json"})
|
110
|
+
|
111
|
+
stub_request(:put, "#{PUBLISHING_API_ENDPOINT}/paths#{path}").
|
112
|
+
with(:body => {"publishing_app" => publishing_app}).
|
113
|
+
to_return(:status => 200,
|
114
|
+
:headers => {:content_type => "application/json"},
|
115
|
+
:body => data.to_json)
|
116
|
+
end
|
117
|
+
|
118
|
+
def publishing_api_returns_path_reservation_validation_error_for(path, error_details = nil)
|
119
|
+
error_details ||= {"base" => ["computer says no"]}
|
120
|
+
error_data = publishing_api_path_data_for(path).merge("errors" => error_details)
|
121
|
+
|
122
|
+
stub_request(:put, "#{PUBLISHING_API_ENDPOINT}/paths#{path}").
|
123
|
+
to_return(:status => 422, :body => error_data.to_json, :headers => {:content_type => "application/json"})
|
124
|
+
end
|
125
|
+
|
93
126
|
private
|
94
127
|
def values_match_recursively(expected_value, actual_value)
|
95
128
|
case expected_value
|
@@ -117,6 +150,16 @@ module GdsApi
|
|
117
150
|
def intent_for_publishing_api(base_path, publishing_app="publisher")
|
118
151
|
intent_for_base_path(base_path).merge("publishing_app" => publishing_app)
|
119
152
|
end
|
153
|
+
|
154
|
+
def publishing_api_path_data_for(path, override_attributes = {})
|
155
|
+
now = Time.zone.now.utc.iso8601
|
156
|
+
{
|
157
|
+
"path" => path,
|
158
|
+
"publishing_app" => "foo-publisher",
|
159
|
+
"created_at" => now,
|
160
|
+
"updated_at" => now,
|
161
|
+
}.merge(override_attributes)
|
162
|
+
end
|
120
163
|
end
|
121
164
|
end
|
122
165
|
end
|
data/lib/gds_api/version.rb
CHANGED
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: 24.
|
4
|
+
version: 24.8.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-10-
|
11
|
+
date: 2015-10-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: plek
|