lib/gds_api/test_helpers/licence_application.rb
require 'gds_api/test_helpers/json_client_helper' module GdsApi module TestHelpers module LicenceApplication # Generally true. If you are initializing the client differently, # you could redefine/override the constant or stub directly. LICENCE_APPLICATION_ENDPOINT = Plek.current.find("licensify") def licence_exists(identifier, licence) licence = licence.to_json unless licence.is_a?(String) stub_request(:get, "#{LICENCE_APPLICATION_ENDPOINT}/api/licence/#{identifier}"). with(headers: GdsApi::JsonClient.default_request_headers). to_return(status: 200, body: licence) end def licence_does_not_exist(identifier) stub_request(:get, "#{LICENCE_APPLICATION_ENDPOINT}/api/licence/#{identifier}"). with(headers: GdsApi::JsonClient.default_request_headers). to_return(status: 404, body: "{\"error\": [\"Unrecognised Licence Id: #{identifier}\"]}") end def licence_times_out(identifier) stub_request(:get, "#{LICENCE_APPLICATION_ENDPOINT}/api/licence/#{identifier}").to_timeout end def licence_returns_error(identifier) stub_request(:get, "#{LICENCE_APPLICATION_ENDPOINT}/api/licence/#{identifier}").to_return(status: 500) end end end end