gds-api-adapters 57.0.0 → 57.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
  SHA256:
3
- metadata.gz: f36c0d0a2843439216308fc49f375f43c5032a1d9e09a3284d5cc42a5a898325
4
- data.tar.gz: 86c0b7345ad52da99d8ae24470e1e0e7740986b2c8c445039933fc98517df246
3
+ metadata.gz: f5b774a41ffa2ba2ebf1192733d6b6fb6ee5e7cc321ce5b8f40d91656b3dc802
4
+ data.tar.gz: a421fa1606c3965dd757fd34145f10ed49ca966e497a91994b3ea386256b2e83
5
5
  SHA512:
6
- metadata.gz: 4e7277dcd24bcb07c3a247c7ae1ab52061770f5b595187a2af83341a7a3de63f66a6fc0983a5a064685043173a5ea6c4b000cab6e26d76c2b1487a4d145da72d
7
- data.tar.gz: d9742ba90208ef268123dced1cabd54daf4aecea228b4571d765a7b14dfc245b63a8684b6fa570f4476b476d30815deeb7b48b5fb264fcdc9cf7f0df89f51ae4
6
+ metadata.gz: f61caafa9f196b62616ff46e3596eea89b96581c37da97a8e709181939f1fe581aa25a6b75f8be306deca21a2627cc43d66c7a58728564a2f023941fba54a793
7
+ data.tar.gz: 51c7fec99a993745e797c5cc1bffb31a14eb40cd8541bf3b56e1d483ea235763346264de9199966f89c2e73911c059c45155e853a049bcc63fa06b34958f9a54
@@ -3,6 +3,24 @@ module GdsApi
3
3
  module AssetManager
4
4
  ASSET_MANAGER_ENDPOINT = Plek.current.find('asset-manager')
5
5
 
6
+ def stub_any_asset_manager_call
7
+ stub_request(:any, %r{\A#{ASSET_MANAGER_ENDPOINT}}).to_return(status: 200)
8
+ end
9
+
10
+ def asset_manager_is_down
11
+ stub_request(:any, %r{\A#{ASSET_MANAGER_ENDPOINT}}).to_return(status: 503)
12
+ end
13
+
14
+ def asset_manager_updates_any_asset(body = {})
15
+ stub_request(:put, %r{\A#{ASSET_MANAGER_ENDPOINT}/assets})
16
+ .to_return(body: body.to_json, status: 200)
17
+ end
18
+
19
+ def asset_manager_deletes_any_asset(body = {})
20
+ stub_request(:delete, %r{\A#{ASSET_MANAGER_ENDPOINT}/assets})
21
+ .to_return(body: body.to_json, status: 200)
22
+ end
23
+
6
24
  def asset_manager_has_an_asset(id, atts)
7
25
  response = atts.merge("_response_info" => { "status" => "ok" })
8
26
 
@@ -35,8 +53,31 @@ module GdsApi
35
53
  .to_return(body: response.to_json, status: 404)
36
54
  end
37
55
 
38
- def asset_manager_receives_an_asset(response_url)
39
- stub_request(:post, "#{ASSET_MANAGER_ENDPOINT}/assets").to_return(body: { file_url: response_url }.to_json, status: 200)
56
+ # This can take a string of an exact url or a hash of options
57
+ #
58
+ # with a string:
59
+ # `asset_manager_receives_an_asset("https://asset-manager/media/619ce797-b415-42e5-b2b1-2ffa0df52302/file.jpg")`
60
+ #
61
+ # with a hash:
62
+ # `asset_manager_receives_an_asset(id: "20d04259-e3ae-4f71-8157-e6c843096e96", filename: "file.jpg")`
63
+ # which would return a file url of "https://asset-manager/media/20d04259-e3ae-4f71-8157-e6c843096e96/file.jpg"
64
+ #
65
+ # with no argument
66
+ #
67
+ # `asset_manager_receives_an_asset`
68
+ # which would return a file url of "https://asset-manager/media/0053adbf-0737-4923-9d8a-8180f2c723af/0d19136c4a94f07"
69
+ def asset_manager_receives_an_asset(response_url = {})
70
+ stub_request(:post, "#{ASSET_MANAGER_ENDPOINT}/assets").to_return do
71
+ unless response_url.is_a?(String)
72
+ options = {
73
+ id: SecureRandom.uuid,
74
+ filename: SecureRandom.hex(8)
75
+ }.merge(response_url)
76
+
77
+ response_url = "#{ASSET_MANAGER_ENDPOINT}/media/#{options[:id]}/#{options[:filename]}"
78
+ end
79
+ { body: { file_url: response_url }.to_json, status: 200 }
80
+ end
40
81
  end
41
82
 
42
83
  def asset_manager_upload_failure
@@ -1,3 +1,3 @@
1
1
  module GdsApi
2
- VERSION = '57.0.0'.freeze
2
+ VERSION = '57.1.0'.freeze
3
3
  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: 57.0.0
4
+ version: 57.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GOV.UK Dev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-07 00:00:00.000000000 Z
11
+ date: 2019-01-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable