gds-api-adapters 36.4.1 → 37.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -72,10 +72,12 @@ EOS
72
72
  assert_nil api.details_for_licence(nil)
73
73
  end
74
74
 
75
- def test_should_return_nil_if_licence_is_unrecognised
75
+ def test_should_raise_if_licence_is_unrecognised
76
76
  licence_does_not_exist('bloop')
77
77
 
78
- assert_nil api.details_for_licence("bloop")
78
+ assert_raises(GdsApi::HTTPNotFound) do
79
+ api.details_for_licence("bloop")
80
+ end
79
81
  end
80
82
 
81
83
  def test_should_provide_full_licence_details_for_canonical_id
@@ -90,16 +92,20 @@ EOS
90
92
  assert_equal expected, api.details_for_licence("590001").to_hash
91
93
  end
92
94
 
93
- def test_should_return_nil_for_bad_snac_code_entry
95
+ def test_should_raise_for_bad_snac_code_entry
94
96
  licence_does_not_exist('590001/bleep')
95
97
 
96
- assert_nil api.details_for_licence("590001", "bleep")
98
+ assert_raises(GdsApi::HTTPNotFound) do
99
+ api.details_for_licence("590001", "bleep")
100
+ end
97
101
  end
98
102
 
99
- def test_should_return_nil_for_bad_licence_id_and_snac_code
103
+ def test_should_raise_for_bad_licence_id_and_snac_code
100
104
  licence_does_not_exist('bloop/bleep')
101
105
 
102
- assert_nil api.details_for_licence("bloop", "bleep")
106
+ assert_raises(GdsApi::HTTPNotFound) do
107
+ api.details_for_licence("bloop", "bleep")
108
+ end
103
109
  end
104
110
 
105
111
  def test_should_return_error_message_to_pick_a_relevant_snac_code_for_the_provided_licence_id
@@ -108,7 +114,9 @@ EOS
108
114
  to_return(status: 404,
109
115
  body: "{\"error\": \"No authorities found for the licence 590001 and for the snacCode sw10\"}")
110
116
 
111
- assert_nil api.details_for_licence("590001", "sw10")
117
+ assert_raises(GdsApi::HTTPNotFound) do
118
+ api.details_for_licence("590001", "sw10")
119
+ end
112
120
  end
113
121
 
114
122
  def test_should_return_full_licence_details_with_location_specific_information
@@ -80,12 +80,27 @@ describe GdsApi::ListResponse do
80
80
  ]
81
81
  }
82
82
  }
83
- @p1_response = stub(:body => page_1.to_json, :status => 200,
84
- :headers => {:link => '<http://www.example.com/1>; rel="self", <http://www.example.com/2>; rel="next"'})
85
- @p2_response = stub(:body => page_2.to_json, :status => 200,
86
- :headers => {:link => '<http://www.example.com/2>; rel="self", <http://www.example.com/3>; rel="next", <http://www.example.com/1>; rel="previous"'})
87
- @p3_response = stub(:body => page_3.to_json, :status => 200,
88
- :headers => {:link => '<http://www.example.com/3>; rel="self", <http://www.example.com/1>; rel="previous"'})
83
+ @p1_response = stub(
84
+ body: page_1.to_json,
85
+ status: 200,
86
+ headers: {
87
+ link: '<http://www.example.com/1>; rel="self", <http://www.example.com/2>; rel="next"'
88
+ }
89
+ )
90
+ @p2_response = stub(
91
+ body: page_2.to_json,
92
+ status: 200,
93
+ headers: {
94
+ link: '<http://www.example.com/2>; rel="self", <http://www.example.com/3>; rel="next", <http://www.example.com/1>; rel="previous"'
95
+ }
96
+ )
97
+ @p3_response = stub(
98
+ body: page_3.to_json,
99
+ status: 200,
100
+ headers: {
101
+ link: '<http://www.example.com/3>; rel="self", <http://www.example.com/1>; rel="previous"'
102
+ }
103
+ )
89
104
 
90
105
  @client = stub()
91
106
  @client.stubs(:get_list!).with("http://www.example.com/1").returns(GdsApi::ListResponse.new(@p1_response, @client))
@@ -97,7 +112,7 @@ describe GdsApi::ListResponse do
97
112
  it "should allow accessing the next page" do
98
113
  resp = GdsApi::ListResponse.new(@p1_response, @client)
99
114
  assert resp.has_next_page?
100
- assert_equal %w(foo2 bar2), resp.next_page.results
115
+ assert_equal %w(foo2 bar2), resp.next_page['results']
101
116
  end
102
117
 
103
118
  it "should return nil with no next page" do
@@ -121,7 +136,7 @@ describe GdsApi::ListResponse do
121
136
  it "should allow accessing the previous page" do
122
137
  resp = GdsApi::ListResponse.new(@p2_response, @client)
123
138
  assert resp.has_previous_page?
124
- assert_equal %w(foo1 bar1), resp.previous_page.results
139
+ assert_equal %w(foo1 bar1), resp.previous_page['results']
125
140
  end
126
141
 
127
142
  it "should return nil with no previous page" do
@@ -145,25 +145,28 @@ describe GdsApi::LocalLinksManager do
145
145
  end
146
146
 
147
147
  describe "when making request with invalid required parameters" do
148
- it "returns nil when authority_slug is invalid" do
148
+ it "raises when authority_slug is invalid" do
149
149
  local_links_manager_does_not_have_required_objects("hogwarts", 2)
150
150
 
151
- response = @api.local_link("hogwarts", 2)
152
- assert_equal nil, response
151
+ assert_raises(GdsApi::HTTPNotFound) do
152
+ @api.local_link("hogwarts", 2)
153
+ end
153
154
  end
154
155
 
155
- it "returns nil when LGSL is invalid" do
156
+ it "raises when LGSL is invalid" do
156
157
  local_links_manager_does_not_have_required_objects("blackburn", 999)
157
158
 
158
- response = @api.local_link("blackburn", 999)
159
- assert_equal nil, response
159
+ assert_raises(GdsApi::HTTPNotFound) do
160
+ @api.local_link("blackburn", 999)
161
+ end
160
162
  end
161
163
 
162
- it "returns nil when the LGSL and LGIL combination is invalid" do
164
+ it "raises when the LGSL and LGIL combination is invalid" do
163
165
  local_links_manager_does_not_have_required_objects("blackburn", 2, 9)
164
166
 
165
- response = @api.local_link("blackburn", 2, 9)
166
- assert_equal nil, response
167
+ assert_raises(GdsApi::HTTPNotFound) do
168
+ @api.local_link("blackburn", 2, 9)
169
+ end
167
170
  end
168
171
  end
169
172
  end
@@ -223,11 +226,10 @@ describe GdsApi::LocalLinksManager do
223
226
  end
224
227
 
225
228
  describe 'when making a request with invalid required parameters' do
226
- it "returns nil when authority_slug is invalid" do
229
+ it "raises when authority_slug is invalid" do
227
230
  local_links_manager_does_not_have_an_authority("hogwarts")
228
231
 
229
- response = @api.local_authority("hogwarts")
230
- assert_equal nil, response
232
+ assert_raises(GdsApi::HTTPNotFound) { @api.local_authority("hogwarts") }
231
233
  end
232
234
  end
233
235
  end
data/test/mapit_test.rb CHANGED
@@ -45,10 +45,12 @@ describe GdsApi::Mapit do
45
45
  assert_equal "30UN", response.areas.last.codes['ons']
46
46
  end
47
47
 
48
- it "should return nil if a postcode doesn't exist" do
48
+ it "should raise if a postcode doesn't exist" do
49
49
  mapit_does_not_have_a_postcode("SW1A 1AA")
50
50
 
51
- assert_nil @api.location_for_postcode("SW1A 1AA")
51
+ assert_raises(GdsApi::HTTPNotFound) do
52
+ @api.location_for_postcode("SW1A 1AA")
53
+ end
52
54
  end
53
55
 
54
56
  it "should return 400 for an invalid postcode" do
@@ -83,7 +85,7 @@ describe GdsApi::Mapit do
83
85
  it "should return and empty result for an unknown area type" do
84
86
  response = @api.areas_for_type('FOO')
85
87
 
86
- assert_empty response
88
+ assert_empty response.parsed_content
87
89
  end
88
90
  end
89
91
 
@@ -109,7 +111,9 @@ describe GdsApi::Mapit do
109
111
  end
110
112
 
111
113
  it "should return 404 for a missing area of a certain code type" do
112
- assert_nil @api.area_for_code('govuk_slug', 'neverland')
114
+ assert_raises(GdsApi::HTTPNotFound) do
115
+ @api.area_for_code('govuk_slug', 'neverland')
116
+ end
113
117
  end
114
118
  end
115
119
  end
@@ -38,24 +38,24 @@ describe GdsApi::NeedApi do
38
38
  needs = @api.needs_by_id(1,2,3)
39
39
 
40
40
  assert_equal 3, needs.count
41
- assert_equal %w(1 2 3), needs.map(&:id)
42
- assert_equal "apply for a primary school place", needs.results[0].goal
43
- assert_equal "find out about becoming a British citizen", needs.results[1].goal
44
- assert_equal "find out about unemployment benefits", needs.results[2].goal
41
+ assert_equal %w(1 2 3), needs.map { |need| need['id'] }
42
+ assert_equal "apply for a primary school place", needs['results'][0]['goal']
43
+ assert_equal "find out about becoming a British citizen", needs['results'][1]['goal']
44
+ assert_equal "find out about unemployment benefits", needs['results'][2]['goal']
45
45
  end
46
46
 
47
47
  it "makes the same request regardless of the order of the IDs" do
48
48
  needs = @api.needs_by_id(2,1,3)
49
49
 
50
50
  assert_equal 3, needs.count
51
- assert_equal %w(1 2 3), needs.map(&:id)
51
+ assert_equal %w(1 2 3), needs.map { |need| need['id'] }
52
52
  end
53
53
 
54
54
  it "correctly sorts IDs requested as strings" do
55
55
  needs = @api.needs_by_id(%w(02 3 1))
56
56
 
57
57
  assert_equal 3, needs.count
58
- assert_equal %w(1 2 3), needs.map(&:id)
58
+ assert_equal %w(1 2 3), needs.map { |need| need['id'] }
59
59
  end
60
60
  end
61
61
 
@@ -109,12 +109,30 @@ describe GdsApi::NeedApi do
109
109
  assert_requested(req)
110
110
  assert_equal 2, needs.count
111
111
 
112
- assert_equal ["parent", "user"], needs.map(&:role)
113
- assert_equal ["apply for a primary school place", "find out about becoming a British citizen"], needs.map(&:goal)
114
- assert_equal ["my child can start school", "i can take the correct steps to apply for citizenship"], needs.map(&:benefit)
112
+ assert_equal %w(parent user), needs.map { |need| need['role'] }
113
+ assert_equal(
114
+ [
115
+ "apply for a primary school place",
116
+ "find out about becoming a British citizen"
117
+ ],
118
+ needs.map { |need| need['goal'] }
119
+ )
120
+ assert_equal(
121
+ [
122
+ "my child can start school",
123
+ "i can take the correct steps to apply for citizenship"
124
+ ],
125
+ needs.map { |need| need['benefit'] }
126
+ )
115
127
 
116
- assert_equal "department-for-education", needs.first.organisations.first.id
117
- assert_equal "Department for Education", needs.first.organisations.first.name
128
+ assert_equal(
129
+ "department-for-education",
130
+ needs.first['organisations'].first['id']
131
+ )
132
+ assert_equal(
133
+ "Department for Education",
134
+ needs.first['organisations'].first['name']
135
+ )
118
136
  end
119
137
  end
120
138
 
@@ -189,12 +207,15 @@ describe GdsApi::NeedApi do
189
207
  need_api_has_need(need)
190
208
 
191
209
  need_response = @api.need(100500)
192
- assert_equal "good things", need_response.benefit
210
+ assert_equal "good things", need_response['benefit']
193
211
  end
194
212
 
195
- it "should return nil for a missing need" do
213
+ it "should raise for a missing need" do
196
214
  need_api_has_no_need(100600)
197
- assert_nil @api.need(100600)
215
+
216
+ assert_raises(GdsApi::HTTPNotFound) do
217
+ @api.need(100600)
218
+ end
198
219
  end
199
220
  end
200
221
 
@@ -16,8 +16,8 @@ describe GdsApi::Organisations do
16
16
  organisations_api_has_organisations(organisation_slugs)
17
17
 
18
18
  response = @api.organisations
19
- assert_equal organisation_slugs, response.map {|r| r.details.slug }
20
- assert_equal "Tea Agency", response.results[1].title
19
+ assert_equal organisation_slugs, response.map { |r| r['details']['slug'] }
20
+ assert_equal "Tea Agency", response['results'][1]['title']
21
21
  end
22
22
 
23
23
  it "should handle the pagination" do
@@ -25,7 +25,10 @@ describe GdsApi::Organisations do
25
25
  organisations_api_has_organisations(organisation_slugs)
26
26
 
27
27
  response = @api.organisations
28
- assert_equal organisation_slugs, response.with_subsequent_pages.map {|r| r.details.slug }
28
+ assert_equal(
29
+ organisation_slugs,
30
+ response.with_subsequent_pages.map { |r| r['details']['slug'] }
31
+ )
29
32
  end
30
33
 
31
34
  it "should raise error if endpoint 404s" do
@@ -41,13 +44,15 @@ describe GdsApi::Organisations do
41
44
  organisations_api_has_organisation('ministry-of-fun')
42
45
 
43
46
  response = @api.organisation('ministry-of-fun')
44
- assert_equal 'Ministry Of Fun', response.title
47
+ assert_equal 'Ministry Of Fun', response['title']
45
48
  end
46
49
 
47
- it "should return nil for a non-existent organisation" do
50
+ it "should raise for a non-existent organisation" do
48
51
  organisations_api_does_not_have_organisation('non-existent')
49
52
 
50
- assert_nil @api.organisation('non-existent')
53
+ assert_raises(GdsApi::HTTPNotFound) do
54
+ @api.organisation('non-existent')
55
+ end
51
56
  end
52
57
  end
53
58
  end
@@ -39,7 +39,7 @@ describe GdsApi::Panopticon do
39
39
  panopticon_has_metadata(basic_artefact)
40
40
 
41
41
  artefact = api.artefact_for_slug(basic_artefact[:slug])
42
- assert_equal 'An artefact', artefact.name
42
+ assert_equal 'An artefact', artefact['name']
43
43
  end
44
44
 
45
45
  it 'fetches an artefact as a hash given a slug' do
@@ -55,11 +55,13 @@ describe GdsApi::Panopticon do
55
55
  assert_equal 1, api.get_json(url)['a']
56
56
  end
57
57
 
58
- it 'returns nil if the endpoint returns 404' do
58
+ it 'raises if the endpoint returns 404' do
59
59
  url = "#{base_api_endpoint}/some.json"
60
60
  stub_request(:get, url).to_return(status: Rack::Utils.status_code(:not_found))
61
61
 
62
- assert_nil api.get_json(url)
62
+ assert_raises(GdsApi::HTTPNotFound) do
63
+ api.get_json(url)
64
+ end
63
65
  end
64
66
 
65
67
  it 'constructs the correct URL for a slug' do
@@ -70,8 +72,14 @@ describe GdsApi::Panopticon do
70
72
  panopticon_has_metadata(artefact_with_contact)
71
73
 
72
74
  artefact = api.artefact_for_slug(artefact_with_contact[:slug])
73
- assert_equal 'Department for Environment, Food and Rural Affairs (Defra)', artefact.contact.name
74
- assert_equal 'helpline@defra.gsi.gov.uk', artefact.contact.email_address
75
+ assert_equal(
76
+ 'Department for Environment, Food and Rural Affairs (Defra)',
77
+ artefact['contact']['name']
78
+ )
79
+ assert_equal(
80
+ 'helpline@defra.gsi.gov.uk',
81
+ artefact['contact']['email_address']
82
+ )
75
83
  end
76
84
 
77
85
  it 'creates a new artefact' do
@@ -59,7 +59,7 @@ describe GdsApi::Publisher do
59
59
  publication_exists(basic_answer)
60
60
  pub = api.publication_for_slug(basic_answer['slug'])
61
61
 
62
- assert_equal "Something", pub.body
62
+ assert_equal "Something", pub['body']
63
63
  end
64
64
 
65
65
  it "should optionally accept an edition id" do
@@ -84,8 +84,8 @@ describe GdsApi::Publisher do
84
84
  it "should deserialise parts into whole objects" do
85
85
  publication_exists(publication_with_parts)
86
86
  pub = api.publication_for_slug(publication_with_parts['slug'])
87
- assert_equal 3, pub.parts.size
88
- assert_equal "introduction", pub.parts.first.slug
87
+ assert_equal 3, pub['parts'].size
88
+ assert_equal "introduction", pub['parts'].first['slug']
89
89
  end
90
90
 
91
91
  it "should have part specific methods for a publication with parts" do
@@ -97,7 +97,7 @@ describe GdsApi::Publisher do
97
97
  it "should deserialise updated at as a time" do
98
98
  publication_exists(publication_with_parts)
99
99
  pub = api.publication_for_slug(publication_with_parts['slug'])
100
- assert_equal Time, pub.updated_at.class
100
+ assert_equal Time, pub['updated_at'].class
101
101
  end
102
102
 
103
103
  it "should be able to retrieve local transaction details" do
@@ -77,9 +77,9 @@ describe GdsApi::PublishingApiV2 do
77
77
  status: 404
78
78
  )
79
79
 
80
- response = @api_client.get_expanded_links(@content_id)
81
-
82
- assert_nil response
80
+ assert_raises(GdsApi::HTTPNotFound) do
81
+ @api_client.get_expanded_links(@content_id)
82
+ end
83
83
  end
84
84
  end
85
85
  end
@@ -33,7 +33,10 @@ describe GdsApi::PublishingApiV2 do
33
33
  it "responds with the links" do
34
34
  response = @api_client.get_links(@content_id)
35
35
  assert_equal 200, response.code
36
- assert_equal ["20583132-1619-4c68-af24-77583172c070"], response.links.organisations
36
+ assert_equal(
37
+ ["20583132-1619-4c68-af24-77583172c070"],
38
+ response['links']['organisations']
39
+ )
37
40
  end
38
41
  end
39
42
 
@@ -58,7 +61,7 @@ describe GdsApi::PublishingApiV2 do
58
61
  it "responds with the empty link set" do
59
62
  response = @api_client.get_links(@content_id)
60
63
  assert_equal 200, response.code
61
- assert_equal OpenStruct.new({}), response.links
64
+ assert_equal({}, response['links'])
62
65
  end
63
66
  end
64
67
 
@@ -77,8 +80,9 @@ describe GdsApi::PublishingApiV2 do
77
80
  end
78
81
 
79
82
  it "responds with 404" do
80
- response = @api_client.get_links(@content_id)
81
- assert_nil response
83
+ assert_raises(GdsApi::HTTPNotFound) do
84
+ @api_client.get_links(@content_id)
85
+ end
82
86
  end
83
87
  end
84
88
  end
@@ -493,7 +493,9 @@ describe GdsApi::PublishingApiV2 do
493
493
  end
494
494
 
495
495
  it "responds with 404" do
496
- assert_nil @api_client.get_content(@content_id)
496
+ assert_raises(GdsApi::HTTPNotFound) do
497
+ @api_client.get_content(@content_id)
498
+ end
497
499
  end
498
500
  end
499
501
  end
@@ -951,7 +953,10 @@ describe GdsApi::PublishingApiV2 do
951
953
  organisations: ["591436ab-c2ae-416f-a3c5-1901d633fbfb"],
952
954
  })
953
955
  assert_equal 200, response.code
954
- assert_equal ["591436ab-c2ae-416f-a3c5-1901d633fbfb"], response.links.organisations
956
+ assert_equal(
957
+ ["591436ab-c2ae-416f-a3c5-1901d633fbfb"],
958
+ response['links']['organisations']
959
+ )
955
960
  end
956
961
  end
957
962
 
@@ -989,10 +994,13 @@ describe GdsApi::PublishingApiV2 do
989
994
  })
990
995
 
991
996
  assert_equal 200, response.code
992
- assert_equal(OpenStruct.new(
993
- topics: ["225df4a8-2945-4e9b-8799-df7424a90b69"],
994
- organisations: ["20583132-1619-4c68-af24-77583172c070"],
995
- ), response.links)
997
+ assert_equal(
998
+ {
999
+ 'topics' => ["225df4a8-2945-4e9b-8799-df7424a90b69"],
1000
+ 'organisations' => ["20583132-1619-4c68-af24-77583172c070"],
1001
+ },
1002
+ response['links']
1003
+ )
996
1004
  end
997
1005
  end
998
1006
 
@@ -1027,7 +1035,7 @@ describe GdsApi::PublishingApiV2 do
1027
1035
  })
1028
1036
 
1029
1037
  assert_equal 200, response.code
1030
- assert_equal OpenStruct.new({}), response.links
1038
+ assert_equal({}, response['links'])
1031
1039
  end
1032
1040
  end
1033
1041
 
@@ -1064,9 +1072,12 @@ describe GdsApi::PublishingApiV2 do
1064
1072
  })
1065
1073
 
1066
1074
  assert_equal 200, response.code
1067
- assert_equal(OpenStruct.new(
1068
- organisations: ["591436ab-c2ae-416f-a3c5-1901d633fbfb"],
1069
- ), response.links)
1075
+ assert_equal(
1076
+ {
1077
+ 'organisations' => ["591436ab-c2ae-416f-a3c5-1901d633fbfb"],
1078
+ },
1079
+ response['links']
1080
+ )
1070
1081
  end
1071
1082
  end
1072
1083
 
@@ -1214,7 +1225,7 @@ describe GdsApi::PublishingApiV2 do
1214
1225
  .with(
1215
1226
  method: :get,
1216
1227
  path: "/v2/content",
1217
- query: "content_format=topic&fields%5B%5D=title&fields%5B%5D=base_path",
1228
+ query: "document_type=topic&fields%5B%5D=title&fields%5B%5D=base_path",
1218
1229
  headers: GdsApi::JsonClient.default_request_headers.merge(
1219
1230
  "Authorization" => "Bearer #{@bearer_token}"
1220
1231
  ),
@@ -1226,7 +1237,7 @@ describe GdsApi::PublishingApiV2 do
1226
1237
  pages: 1,
1227
1238
  current_page: 1,
1228
1239
  links: [{
1229
- href: "http://example.org/v2/content?content_format=topic&fields[]=title&fields[]=base_path&page=1",
1240
+ href: "http://example.org/v2/content?document_type=topic&fields[]=title&fields[]=base_path&page=1",
1230
1241
  rel: "self"
1231
1242
  }],
1232
1243
  results: [
@@ -1237,7 +1248,7 @@ describe GdsApi::PublishingApiV2 do
1237
1248
  )
1238
1249
 
1239
1250
  response = @api_client.get_content_items(
1240
- content_format: 'topic',
1251
+ document_type: 'topic',
1241
1252
  fields: [:title, :base_path],
1242
1253
  )
1243
1254
 
@@ -1247,7 +1258,7 @@ describe GdsApi::PublishingApiV2 do
1247
1258
  ["total", 2],
1248
1259
  ["pages", 1],
1249
1260
  ["current_page", 1],
1250
- ["links", [{"href"=>"http://example.org/v2/content?content_format=topic&fields[]=title&fields[]=base_path&page=1", "rel"=>"self"}]],
1261
+ ["links", [{"href"=>"http://example.org/v2/content?document_type=topic&fields[]=title&fields[]=base_path&page=1", "rel"=>"self"}]],
1251
1262
  ["results", [{"title"=>"Content Item A", "base_path"=>"/a-base-path"}, {"title"=>"Content Item B", "base_path"=>"/another-base-path"}]]
1252
1263
  ], response.to_a
1253
1264
 
@@ -1260,7 +1271,7 @@ describe GdsApi::PublishingApiV2 do
1260
1271
  .with(
1261
1272
  method: :get,
1262
1273
  path: "/v2/content",
1263
- query: "content_format=topic&fields%5B%5D=content_id&fields%5B%5D=locale",
1274
+ query: "document_type=topic&fields%5B%5D=content_id&fields%5B%5D=locale",
1264
1275
  headers: GdsApi::JsonClient.default_request_headers.merge(
1265
1276
  "Authorization" => "Bearer #{@bearer_token}"
1266
1277
  ),
@@ -1272,7 +1283,7 @@ describe GdsApi::PublishingApiV2 do
1272
1283
  pages: 1,
1273
1284
  current_page: 1,
1274
1285
  links: [{
1275
- href: "http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=locale&page=1",
1286
+ href: "http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=locale&page=1",
1276
1287
  rel: "self"
1277
1288
  }],
1278
1289
  results: [
@@ -1282,7 +1293,7 @@ describe GdsApi::PublishingApiV2 do
1282
1293
  )
1283
1294
 
1284
1295
  response = @api_client.get_content_items(
1285
- content_format: 'topic',
1296
+ document_type: 'topic',
1286
1297
  fields: [:content_id, :locale],
1287
1298
  )
1288
1299
 
@@ -1292,7 +1303,7 @@ describe GdsApi::PublishingApiV2 do
1292
1303
  ["total", 1],
1293
1304
  ["pages", 1],
1294
1305
  ["current_page", 1],
1295
- ["links", [{"href"=>"http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=locale&page=1", "rel"=>"self"}]],
1306
+ ["links", [{"href"=>"http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=locale&page=1", "rel"=>"self"}]],
1296
1307
  ["results", [{"content_id"=>"bed722e6-db68-43e5-9079-063f623335a7", "locale"=>"en"}]]
1297
1308
  ], response.to_a
1298
1309
  end
@@ -1304,7 +1315,7 @@ describe GdsApi::PublishingApiV2 do
1304
1315
  .with(
1305
1316
  method: :get,
1306
1317
  path: "/v2/content",
1307
- query: "content_format=topic&fields%5B%5D=content_id&fields%5B%5D=locale&locale=fr",
1318
+ query: "document_type=topic&fields%5B%5D=content_id&fields%5B%5D=locale&locale=fr",
1308
1319
  headers: GdsApi::JsonClient.default_request_headers.merge(
1309
1320
  "Authorization" => "Bearer #{@bearer_token}"
1310
1321
  ),
@@ -1316,7 +1327,7 @@ describe GdsApi::PublishingApiV2 do
1316
1327
  pages: 1,
1317
1328
  current_page: 1,
1318
1329
  links: [{
1319
- href: "http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=locale&locale=fr&page=1",
1330
+ href: "http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=locale&locale=fr&page=1",
1320
1331
  rel: "self"
1321
1332
  }],
1322
1333
  results: [
@@ -1326,7 +1337,7 @@ describe GdsApi::PublishingApiV2 do
1326
1337
  )
1327
1338
 
1328
1339
  response = @api_client.get_content_items(
1329
- content_format: 'topic',
1340
+ document_type: 'topic',
1330
1341
  fields: [:content_id, :locale],
1331
1342
  locale: 'fr',
1332
1343
  )
@@ -1336,7 +1347,7 @@ describe GdsApi::PublishingApiV2 do
1336
1347
  ["total", 1],
1337
1348
  ["pages", 1],
1338
1349
  ["current_page", 1],
1339
- ["links", [{"href"=>"http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=locale&locale=fr&page=1", "rel"=>"self"}]],
1350
+ ["links", [{"href"=>"http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=locale&locale=fr&page=1", "rel"=>"self"}]],
1340
1351
  ["results", [{"content_id"=>"bed722e6-db68-43e5-9079-063f623335a7", "locale"=>"fr"}]]
1341
1352
  ], response.to_a
1342
1353
  end
@@ -1348,7 +1359,7 @@ describe GdsApi::PublishingApiV2 do
1348
1359
  .with(
1349
1360
  method: :get,
1350
1361
  path: "/v2/content",
1351
- query: "content_format=topic&fields%5B%5D=content_id&fields%5B%5D=locale&locale=all",
1362
+ query: "document_type=topic&fields%5B%5D=content_id&fields%5B%5D=locale&locale=all",
1352
1363
  headers: GdsApi::JsonClient.default_request_headers.merge(
1353
1364
  "Authorization" => "Bearer #{@bearer_token}"
1354
1365
  ),
@@ -1360,7 +1371,7 @@ describe GdsApi::PublishingApiV2 do
1360
1371
  pages: 1,
1361
1372
  current_page: 1,
1362
1373
  links: [{
1363
- href: "http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=locale&locale=all&page=1",
1374
+ href: "http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=locale&locale=all&page=1",
1364
1375
  rel: "self"
1365
1376
  }],
1366
1377
  results: [
@@ -1372,7 +1383,7 @@ describe GdsApi::PublishingApiV2 do
1372
1383
  )
1373
1384
 
1374
1385
  response = @api_client.get_content_items(
1375
- content_format: 'topic',
1386
+ document_type: 'topic',
1376
1387
  fields: [:content_id, :locale],
1377
1388
  locale: 'all',
1378
1389
  )
@@ -1382,7 +1393,7 @@ describe GdsApi::PublishingApiV2 do
1382
1393
  ["total", 3],
1383
1394
  ["pages", 1], ["current_page", 1],
1384
1395
  ["links",
1385
- [{"href"=>"http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=locale&locale=all&page=1", "rel"=>"self"}]],
1396
+ [{"href"=>"http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=locale&locale=all&page=1", "rel"=>"self"}]],
1386
1397
  ["results",
1387
1398
  [{"content_id"=>"bed722e6-db68-43e5-9079-063f623335a7", "locale"=>"en"},
1388
1399
  {"content_id"=>"bed722e6-db68-43e5-9079-063f623335a7", "locale"=>"fr"},
@@ -1397,7 +1408,7 @@ describe GdsApi::PublishingApiV2 do
1397
1408
  .with(
1398
1409
  method: :get,
1399
1410
  path: "/v2/content",
1400
- query: "content_format=topic&fields%5B%5D=content_id&fields%5B%5D=details",
1411
+ query: "document_type=topic&fields%5B%5D=content_id&fields%5B%5D=details",
1401
1412
  headers: GdsApi::JsonClient.default_request_headers.merge(
1402
1413
  "Authorization" => "Bearer #{@bearer_token}"
1403
1414
  ),
@@ -1409,7 +1420,7 @@ describe GdsApi::PublishingApiV2 do
1409
1420
  pages: 1,
1410
1421
  current_page: 1,
1411
1422
  links: [{
1412
- href: "http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=details&page=1",
1423
+ href: "http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=details&page=1",
1413
1424
  rel: "self"
1414
1425
  }],
1415
1426
  results: [
@@ -1419,7 +1430,7 @@ describe GdsApi::PublishingApiV2 do
1419
1430
  )
1420
1431
 
1421
1432
  response = @api_client.get_content_items(
1422
- content_format: 'topic',
1433
+ document_type: 'topic',
1423
1434
  fields: [:content_id, :details],
1424
1435
  )
1425
1436
 
@@ -1429,7 +1440,7 @@ describe GdsApi::PublishingApiV2 do
1429
1440
  ["total", 1],
1430
1441
  ["pages", 1],
1431
1442
  ["current_page", 1],
1432
- ["links", [{"href"=>"http://example.org/v2/content?content_format=topic&fields[]=content_id&fields[]=details&page=1", "rel"=>"self"}]],
1443
+ ["links", [{"href"=>"http://example.org/v2/content?document_type=topic&fields[]=content_id&fields[]=details&page=1", "rel"=>"self"}]],
1433
1444
  ["results", [{"content_id"=>"bed722e6-db68-43e5-9079-063f623335a7", "details"=>{"foo"=>"bar"}}]]
1434
1445
  ], response.to_a
1435
1446
  end
@@ -1542,14 +1553,13 @@ describe GdsApi::PublishingApiV2 do
1542
1553
  end
1543
1554
 
1544
1555
  it "404s" do
1545
- response = @api_client.get_linked_items(
1546
- @content_id,
1547
- {
1556
+ assert_raises(GdsApi::HTTPNotFound) do
1557
+ @api_client.get_linked_items(
1558
+ @content_id,
1548
1559
  link_type: "topic",
1549
- fields: ["content_id", "base_path"],
1550
- }
1551
- )
1552
- assert_nil response
1560
+ fields: %w(content_id base_path),
1561
+ )
1562
+ end
1553
1563
  end
1554
1564
  end
1555
1565