gds-api-adapters 18.0.0 → 18.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: e5572c84c14ef2a674d49ea2764082151e0b9a1f
4
- data.tar.gz: 58d04feea3ce45b03967e1d26650965ae16ea0d0
3
+ metadata.gz: 0c36046446ee39e17c823e8510b18fe17bb59cce
4
+ data.tar.gz: 785c3f5f1cf99551977adf8aaaee82091c503052
5
5
  SHA512:
6
- metadata.gz: be6a135928bd903ef4db52a918e7a4368956fc792166e2dd7a9b07a9a5fa95ee9e7f0d693d2a21de8168d655dc451e37eb653b88f6f2f8d95769d645a3ec9542
7
- data.tar.gz: 0885ee5a74170251ec8309ec84247b0ba40e2715cfff6cb02651fd9c1e40656670aae1f99c31eee007de614fd23bad73d1ebf9f2bb24c3669af2724254d1d634
6
+ metadata.gz: 2d208699abf50d3f8a4113eef50c38d59afe78dc1dff4345681d4744547294d4f47a6615b5ea2cbfd6da8f6d94d4c9558b2b564af2dc7c6a9c6cdbc04293f7e4
7
+ data.tar.gz: 54b4dc9f7747abaa2f15c63e28506c38b1288cb14288f8a253e456193981ad6e10092289464d03fa360171fbe94ee99174cda30918a1946d0c9241e57b5c863b
@@ -3,13 +3,21 @@ require_relative 'exceptions'
3
3
 
4
4
  class GdsApi::ContentRegister < GdsApi::Base
5
5
 
6
+ def put_entry(content_id, entry)
7
+ put_json!(entry_url(content_id), entry)
8
+ end
9
+
6
10
  def entries(format)
7
11
  get_json!(entries_url(format))
8
12
  end
9
13
 
10
- private
14
+ private
11
15
 
12
16
  def entries_url(format)
13
17
  "#{endpoint}/entries?format=#{format}"
14
18
  end
19
+
20
+ def entry_url(content_id)
21
+ "#{endpoint}/entry/#{content_id}"
22
+ end
15
23
  end
@@ -0,0 +1,33 @@
1
+ require 'gds_api/test_helpers/json_client_helper'
2
+ require 'json'
3
+
4
+ module GdsApi
5
+ module TestHelpers
6
+ module ContentRegister
7
+ CONTENT_REGISTER_ENDPOINT = Plek.find('content-register')
8
+
9
+ def stub_content_register_put_entry(content_id, entry)
10
+ response_body = entry.merge(content_id: content_id).to_json
11
+
12
+ stub_request(:put, content_register_entry_url_for(content_id)).
13
+ with(body: entry).
14
+ to_return(status: 201, body: response_body)
15
+ end
16
+
17
+ def stub_content_register_entries(format, entries)
18
+ stub_request(:get, content_register_entries_url(format)).
19
+ to_return(body: entries.to_json, status: 200)
20
+ end
21
+
22
+ private
23
+
24
+ def content_register_entry_url_for(content_id)
25
+ CONTENT_REGISTER_ENDPOINT + "/entry/" + content_id
26
+ end
27
+
28
+ def content_register_entries_url(format)
29
+ CONTENT_REGISTER_ENDPOINT + "/entries?format=#{format}"
30
+ end
31
+ end
32
+ end
33
+ end
@@ -1,3 +1,3 @@
1
1
  module GdsApi
2
- VERSION = '18.0.0'
2
+ VERSION = '18.1.0'
3
3
  end
@@ -0,0 +1,27 @@
1
+ require 'test_helper'
2
+ require 'gds_api/content_register'
3
+ require 'gds_api/test_helpers/content_register'
4
+
5
+ describe GdsApi::ContentRegister do
6
+ include GdsApi::TestHelpers::ContentRegister
7
+
8
+ before do
9
+ @api_adapter = GdsApi::ContentRegister.new(Plek.find("content-register"))
10
+ end
11
+
12
+ describe "#put_entry method" do
13
+ it "creates an entry in the content register" do
14
+ content_id = SecureRandom.uuid
15
+ entry = {
16
+ "format" => 'organisation',
17
+ "title" => 'Organisation',
18
+ "base_path" => "/government/organisations/organisation"
19
+ }
20
+
21
+ stub_content_register_put_entry(content_id, entry)
22
+
23
+ response = @api_adapter.put_entry(content_id, entry)
24
+ assert_equal 201, response.code
25
+ end
26
+ end
27
+ 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: 18.0.0
4
+ version: 18.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-03-06 00:00:00.000000000 Z
11
+ date: 2015-03-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: plek
@@ -320,6 +320,7 @@ files:
320
320
  - lib/gds_api/test_helpers/content_api.rb
321
321
  - lib/gds_api/test_helpers/content_api/artefact_stub.rb
322
322
  - lib/gds_api/test_helpers/content_item_helpers.rb
323
+ - lib/gds_api/test_helpers/content_register.rb
323
324
  - lib/gds_api/test_helpers/content_store.rb
324
325
  - lib/gds_api/test_helpers/email_alert_api.rb
325
326
  - lib/gds_api/test_helpers/fact_cave.rb
@@ -349,6 +350,7 @@ files:
349
350
  - test/business_support_api_test.rb
350
351
  - test/collections_api_test.rb
351
352
  - test/content_api_test.rb
353
+ - test/content_register_test.rb
352
354
  - test/content_store_test.rb
353
355
  - test/email_alert_api_test.rb
354
356
  - test/external_link_tracker_test.rb
@@ -421,6 +423,7 @@ test_files:
421
423
  - test/publisher_api_test.rb
422
424
  - test/rummager_helpers_test.rb
423
425
  - test/support_test.rb
426
+ - test/content_register_test.rb
424
427
  - test/fact_cave_test.rb
425
428
  - test/test_helpers/panopticon_test.rb
426
429
  - test/finder_api_test.rb