Connect to the service only when remote census endpoint is defined
Also return an invalid response when the endpoint is not defined. This will allow to test remote web services on development environments.
This commit is contained in:
committed by
Javi Martín
parent
ac6260a2ef
commit
265f8dbf01
@@ -73,7 +73,7 @@ class RemoteCensusApi
|
||||
private
|
||||
|
||||
def get_response_body(document_type, document_number, date_of_birth, postal_code)
|
||||
if end_point_available?
|
||||
if end_point_defined?
|
||||
request = request(document_type, document_number, date_of_birth, postal_code)
|
||||
client.call(Setting["remote_census.request.method_name"].to_sym, message: request).body
|
||||
else
|
||||
@@ -118,8 +118,8 @@ class RemoteCensusApi
|
||||
to_set[final_key] = value
|
||||
end
|
||||
|
||||
def end_point_available?
|
||||
!Rails.env.development?
|
||||
def end_point_defined?
|
||||
Setting["remote_census.general.endpoint"].present?
|
||||
end
|
||||
|
||||
def stubbed_invalid_response
|
||||
|
||||
@@ -90,5 +90,13 @@ describe RemoteCensusApi do
|
||||
api.call("1", "12345678Z", Date.parse("31/12/1980"), "28013")
|
||||
end
|
||||
end
|
||||
|
||||
it "returns an invalid response when endpoint is not defined" do
|
||||
allow_any_instance_of(RemoteCensusApi).to receive(:end_point_defined?).and_return(false)
|
||||
|
||||
response = api.call("1", "12345678Z", Date.parse("01/01/1983"), "28013")
|
||||
|
||||
expect(response).not_to be_valid
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -106,6 +106,7 @@ RSpec.configure do |config|
|
||||
end
|
||||
|
||||
config.before(:each, :remote_census) do |example|
|
||||
allow_any_instance_of(RemoteCensusApi).to receive(:end_point_defined?).and_return(true)
|
||||
Setting["feature.remote_census"] = true
|
||||
Setting["remote_census.request.method_name"] = "verify_residence"
|
||||
Setting["remote_census.request.structure"] = '{ "request":
|
||||
|
||||
Reference in New Issue
Block a user