Module: GdsApi::TestHelpers::SupportApi
- Defined in:
- lib/gds_api/test_helpers/support_api.rb
Constant Summary collapse
- SUPPORT_API_ENDPOINT =
Plek.current.find('support-api')
Instance Method Summary collapse
- #stub_anonymous_feedback(params, response_body = {}) ⇒ Object
- #stub_anonymous_feedback_organisation_summary(slug, ordering = nil, response_body = {}) ⇒ Object
- #stub_organisation(slug = "cabinet-office", response_body = nil) ⇒ Object
- #stub_organisations_list(response_body = nil) ⇒ Object
- #stub_problem_report_daily_totals_for(date, expected_results = nil) ⇒ Object
- #stub_support_api_problem_report_creation(request_details = nil) ⇒ Object
- #stub_support_api_service_feedback_creation(feedback_details = nil) ⇒ Object
- #stub_support_feedback_export_request(id, response_body = nil) ⇒ Object
- #stub_support_feedback_export_request_creation(request_details = nil) ⇒ Object
- #stub_support_long_form_anonymous_contact_creation(request_details = nil) ⇒ Object
- #support_api_isnt_available ⇒ Object
Instance Method Details
#stub_anonymous_feedback(params, response_body = {}) ⇒ Object
45 46 47 48 49 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 45 def stub_anonymous_feedback(params, response_body = {}) stub_http_request(:get, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback"). with(query: params). to_return(status: 200, body: response_body.to_json) end |
#stub_anonymous_feedback_organisation_summary(slug, ordering = nil, response_body = {}) ⇒ Object
51 52 53 54 55 56 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 51 def stub_anonymous_feedback_organisation_summary(slug, ordering = nil, response_body = {}) uri = "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/organisations/#{slug}" uri << "?ordering=#{ordering}" if ordering stub_http_request(:get, uri). to_return(status: 200, body: response_body.to_json) end |
#stub_organisation(slug = "cabinet-office", response_body = nil) ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 71 def stub_organisation(slug = "cabinet-office", response_body = nil) response_body ||= { slug: slug, web_url: "https://www.gov.uk/government/organisations/#{slug}", title: "Cabinet Office", acronym: "CO", govuk_status: "live" } stub_http_request(:get, "#{SUPPORT_API_ENDPOINT}/organisations/#{slug}"). to_return(status: 200, body: response_body.to_json) end |
#stub_organisations_list(response_body = nil) ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 58 def stub_organisations_list(response_body = nil) response_body ||= [{ slug: "cabinet-office", web_url: "https://www.gov.uk/government/organisations/cabinet-office", title: "Cabinet Office", acronym: "CO", govuk_status: "live" }] stub_http_request(:get, "#{SUPPORT_API_ENDPOINT}/organisations"). to_return(status: 200, body: response_body.to_json) end |
#stub_problem_report_daily_totals_for(date, expected_results = nil) ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 33 def stub_problem_report_daily_totals_for(date, expected_results = nil) date_string = date.strftime("%Y-%m-%d") get_stub = stub_http_request(:get, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/problem-reports/#{date_string}/totals") response = { status: 200 } response[:body] = expected_results if expected_results get_stub.to_return(response) end |
#stub_support_api_problem_report_creation(request_details = nil) ⇒ Object
9 10 11 12 13 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 9 def stub_support_api_problem_report_creation(request_details = nil) post_stub = stub_http_request(:post, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/problem-reports") post_stub.with(:body => { problem_report: request_details }) unless request_details.nil? post_stub.to_return(:status => 202) end |
#stub_support_api_service_feedback_creation(feedback_details = nil) ⇒ Object
15 16 17 18 19 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 15 def stub_support_api_service_feedback_creation(feedback_details = nil) post_stub = stub_http_request(:post, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/service-feedback") post_stub.with(:body => { service_feedback: feedback_details }) unless feedback_details.nil? post_stub.to_return(:status => 201) end |
#stub_support_feedback_export_request(id, response_body = nil) ⇒ Object
84 85 86 87 88 89 90 91 92 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 84 def stub_support_feedback_export_request(id, response_body = nil) response_body ||= { filename: "feedex_0000-00-00_2015-01-01.csv", ready: true } stub_http_request(:get, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/export-requests/#{id}"). to_return(status: 200, body: response_body.to_json) end |
#stub_support_feedback_export_request_creation(request_details = nil) ⇒ Object
27 28 29 30 31 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 27 def stub_support_feedback_export_request_creation(request_details = nil) post_stub = stub_http_request(:post, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/export-requests") post_stub.with(:body => { export_request: request_details }) unless request_details.nil? post_stub.to_return(:status => 202) end |
#stub_support_long_form_anonymous_contact_creation(request_details = nil) ⇒ Object
21 22 23 24 25 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 21 def stub_support_long_form_anonymous_contact_creation(request_details = nil) post_stub = stub_http_request(:post, "#{SUPPORT_API_ENDPOINT}/anonymous-feedback/long-form-contacts") post_stub.with(:body => { long_form_contact: request_details }) unless request_details.nil? post_stub.to_return(:status => 202) end |
#support_api_isnt_available ⇒ Object
41 42 43 |
# File 'lib/gds_api/test_helpers/support_api.rb', line 41 def support_api_isnt_available stub_request(:post, /#{SUPPORT_API_ENDPOINT}\/.*/).to_return(:status => 503) end |