gds-api-adapters 9.1.0 → 9.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/gds_api/need_api.rb +4 -0
- data/lib/gds_api/support.rb +10 -10
- data/lib/gds_api/test_helpers/need_api.rb +6 -0
- data/lib/gds_api/version.rb +1 -1
- data/test/need_api_test.rb +18 -0
- data/test/support_api_test.rb +0 -40
- metadata +4 -4
data/lib/gds_api/need_api.rb
CHANGED
data/lib/gds_api/support.rb
CHANGED
@@ -1,24 +1,24 @@
|
|
1
1
|
require_relative 'base'
|
2
2
|
|
3
3
|
class GdsApi::Support < GdsApi::Base
|
4
|
-
def create_foi_request(request_details
|
5
|
-
post_json!("#{base_url}/foi_requests", { :foi_request => request_details }
|
4
|
+
def create_foi_request(request_details)
|
5
|
+
post_json!("#{base_url}/foi_requests", { :foi_request => request_details })
|
6
6
|
end
|
7
7
|
|
8
|
-
def create_problem_report(request_details
|
9
|
-
post_json!("#{base_url}/anonymous_feedback/problem_reports", { :problem_report => request_details }
|
8
|
+
def create_problem_report(request_details)
|
9
|
+
post_json!("#{base_url}/anonymous_feedback/problem_reports", { :problem_report => request_details })
|
10
10
|
end
|
11
11
|
|
12
|
-
def create_named_contact(request_details
|
13
|
-
post_json!("#{base_url}/named_contacts", { :named_contact => request_details }
|
12
|
+
def create_named_contact(request_details)
|
13
|
+
post_json!("#{base_url}/named_contacts", { :named_contact => request_details })
|
14
14
|
end
|
15
15
|
|
16
|
-
def create_anonymous_long_form_contact(request_details
|
17
|
-
post_json!("#{base_url}/anonymous_feedback/long_form_contacts", { :long_form_contact => request_details }
|
16
|
+
def create_anonymous_long_form_contact(request_details)
|
17
|
+
post_json!("#{base_url}/anonymous_feedback/long_form_contacts", { :long_form_contact => request_details })
|
18
18
|
end
|
19
19
|
|
20
|
-
def create_service_feedback(request_details
|
21
|
-
post_json!("#{base_url}/anonymous_feedback/service_feedback", { :service_feedback => request_details }
|
20
|
+
def create_service_feedback(request_details)
|
21
|
+
post_json!("#{base_url}/anonymous_feedback/service_feedback", { :service_feedback => request_details })
|
22
22
|
end
|
23
23
|
|
24
24
|
def feedback_url(slug)
|
@@ -77,6 +77,12 @@ module GdsApi
|
|
77
77
|
headers: {}
|
78
78
|
)
|
79
79
|
end
|
80
|
+
|
81
|
+
def stub_create_note(note_details = nil)
|
82
|
+
post_stub = stub_request(:post, NEED_API_ENDPOINT + "/notes")
|
83
|
+
post_stub.with(:body => note_details.to_json) unless note_details.nil?
|
84
|
+
post_stub.to_return(:status => 201)
|
85
|
+
end
|
80
86
|
end
|
81
87
|
end
|
82
88
|
end
|
data/lib/gds_api/version.rb
CHANGED
data/test/need_api_test.rb
CHANGED
@@ -238,4 +238,22 @@ describe GdsApi::NeedApi do
|
|
238
238
|
assert_requested reopen_stub
|
239
239
|
end
|
240
240
|
end
|
241
|
+
|
242
|
+
describe "creating notes" do
|
243
|
+
it "should send a post request" do
|
244
|
+
fields = {
|
245
|
+
"text" => "test",
|
246
|
+
"need_id" => "100001",
|
247
|
+
"author" => {
|
248
|
+
"name" => "Winston Smith-Churchill",
|
249
|
+
"email" => "winston@alphagov.co.uk"
|
250
|
+
}
|
251
|
+
}
|
252
|
+
request_stub = stub_create_note(fields)
|
253
|
+
|
254
|
+
@api.create_note(fields)
|
255
|
+
|
256
|
+
assert_requested(request_stub)
|
257
|
+
end
|
258
|
+
end
|
241
259
|
end
|
data/test/support_api_test.rb
CHANGED
@@ -22,16 +22,6 @@ describe GdsApi::Support do
|
|
22
22
|
assert_requested(stub_post)
|
23
23
|
end
|
24
24
|
|
25
|
-
it "can add a custom header onto the FOI request to the support app" do
|
26
|
-
stub_request(:post, "#{@base_api_url}/foi_requests")
|
27
|
-
|
28
|
-
@api.create_foi_request({}, headers: { "X-Varnish" => "12345"})
|
29
|
-
|
30
|
-
assert_requested(:post, %r{/foi_requests}) do |request|
|
31
|
-
request.headers["X-Varnish"] == "12345"
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
25
|
it "throws an exception when the support app isn't available" do
|
36
26
|
support_isnt_available
|
37
27
|
|
@@ -62,16 +52,6 @@ describe GdsApi::Support do
|
|
62
52
|
assert_requested(stub_post)
|
63
53
|
end
|
64
54
|
|
65
|
-
it "can add a custom header onto the problem_report request to the support app" do
|
66
|
-
stub_request(:post, "#{@base_api_url}/anonymous_feedback/problem_reports")
|
67
|
-
|
68
|
-
@api.create_problem_report({}, headers: { "X-Varnish" => "12345"})
|
69
|
-
|
70
|
-
assert_requested(:post, %r{/problem_reports}) do |request|
|
71
|
-
request.headers["X-Varnish"] == "12345"
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
55
|
it "can create a named contact" do
|
76
56
|
request_details = {certain: "details"}
|
77
57
|
|
@@ -84,16 +64,6 @@ describe GdsApi::Support do
|
|
84
64
|
assert_requested(stub_post)
|
85
65
|
end
|
86
66
|
|
87
|
-
it "can add a custom header onto the named_contact request to the support app" do
|
88
|
-
stub_request(:post, "#{@base_api_url}/named_contacts")
|
89
|
-
|
90
|
-
@api.create_named_contact({}, headers: { "X-Varnish" => "12345"})
|
91
|
-
|
92
|
-
assert_requested(:post, %r{/named_contacts}) do |request|
|
93
|
-
request.headers["X-Varnish"] == "12345"
|
94
|
-
end
|
95
|
-
end
|
96
|
-
|
97
67
|
it "throws an exception when the support app isn't available" do
|
98
68
|
support_isnt_available
|
99
69
|
|
@@ -112,16 +82,6 @@ describe GdsApi::Support do
|
|
112
82
|
assert_requested(stub_post)
|
113
83
|
end
|
114
84
|
|
115
|
-
it "can add a custom header onto the service feedback to the support app" do
|
116
|
-
stub_request(:post, "#{@base_api_url}/anonymous_feedback/service_feedback")
|
117
|
-
|
118
|
-
@api.create_service_feedback({}, headers: { "X-Varnish" => "12345"})
|
119
|
-
|
120
|
-
assert_requested(:post, %r{/service_feedback}) do |request|
|
121
|
-
request.headers["X-Varnish"] == "12345"
|
122
|
-
end
|
123
|
-
end
|
124
|
-
|
125
85
|
it "throws an exception when the support app isn't available" do
|
126
86
|
support_isnt_available
|
127
87
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gds-api-adapters
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.
|
4
|
+
version: 9.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-02-
|
12
|
+
date: 2014-02-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: plek
|
@@ -367,7 +367,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
367
367
|
version: '0'
|
368
368
|
segments:
|
369
369
|
- 0
|
370
|
-
hash:
|
370
|
+
hash: 3249051588083426737
|
371
371
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
372
372
|
none: false
|
373
373
|
requirements:
|
@@ -376,7 +376,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
376
376
|
version: '0'
|
377
377
|
segments:
|
378
378
|
- 0
|
379
|
-
hash:
|
379
|
+
hash: 3249051588083426737
|
380
380
|
requirements: []
|
381
381
|
rubyforge_project:
|
382
382
|
rubygems_version: 1.8.23
|