Module: Adyen::API::PaymentService::TestHelpers

Included in:
Adyen::API::PaymentService
Defined in:
lib/adyen/api/test_helpers.rb

Overview

A collection of test helpers that create and assign stubbed response instances for a subsequent remote call.

This module extends the Adyen::API::PaymentService class and thus these methods are callable on it.

Constant Summary collapse

AUTHORISE_RESPONSE =
SimpleSOAPClient::ENVELOPE % "  <ns1:authoriseResponse xmlns:ns1=\"http://payment.services.adyen.com\">\n    <ns1:paymentResult>\n      <additionalData xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <authCode xmlns=\"http://payment.services.adyen.com\">1234</authCode>\n      <dccAmount xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <dccSignature xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <fraudResult xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <issuerUrl xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <md xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <paRequest xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <pspReference xmlns=\"http://payment.services.adyen.com\">9876543210987654</pspReference>\n      <refusalReason xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <resultCode xmlns=\"http://payment.services.adyen.com\">Authorised</resultCode>\n    </ns1:paymentResult>\n  </ns1:authoriseResponse>\n"
AUTHORISATION_REFUSED_RESPONSE =
SimpleSOAPClient::ENVELOPE % "  <ns1:authoriseResponse xmlns:ns1=\"http://payment.services.adyen.com\">\n    <ns1:paymentResult>\n      <additionalData xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <authCode xmlns=\"http://payment.services.adyen.com\">1234</authCode>\n      <dccAmount xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <dccSignature xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <fraudResult xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <issuerUrl xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <md xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <paRequest xmlns=\"http://payment.services.adyen.com\" xsi:nil=\"true\"/>\n      <pspReference xmlns=\"http://payment.services.adyen.com\">9876543210987654</pspReference>\n      <refusalReason xmlns=\"http://payment.services.adyen.com\">You need to actually own money.</refusalReason>\n      <resultCode xmlns=\"http://payment.services.adyen.com\">Refused</resultCode>\n    </ns1:paymentResult>\n  </ns1:authoriseResponse>\n"
AUTHORISATION_REQUEST_INVALID_RESPONSE =
SimpleSOAPClient::ENVELOPE % "  <soap:Fault>\n    <faultcode>soap:Server</faultcode>\n    <faultstring>validation 101 Invalid card number</faultstring>\n  </soap:Fault>\n"

Instance Method Summary collapse

Instance Method Details

#invalid_stubAuthorisationResponse

Returns An ‘invalid request’ response instance.

Returns:



69
70
71
72
73
# File 'lib/adyen/api/test_helpers.rb', line 69

def invalid_stub
  http_response = Net::HTTPOK.new('1.1', '200', 'OK')
  def http_response.body; AUTHORISATION_REQUEST_INVALID_RESPONSE; end
  PaymentService::AuthorisationResponse.new(http_response)
end

#refused_stubAuthorisationResponse

Returns An authorisation refused response instance.

Returns:



62
63
64
65
66
# File 'lib/adyen/api/test_helpers.rb', line 62

def refused_stub
  http_response = Net::HTTPOK.new('1.1', '200', 'OK')
  def http_response.body; AUTHORISATION_REFUSED_RESPONSE; end
  PaymentService::AuthorisationResponse.new(http_response)
end

#stub_invalid!AuthorisationResponse

Assigns a #invalid_stub, meaning the subsequent authoristaion request will be refused, because the request was invalid.

Returns:



93
94
95
# File 'lib/adyen/api/test_helpers.rb', line 93

def stub_invalid!
  @stubbed_response = invalid_stub
end

#stub_refused!AuthorisationResponse

Assigns a #refused_stub, meaning the subsequent authoristaion request will be refused.

Returns:



85
86
87
# File 'lib/adyen/api/test_helpers.rb', line 85

def stub_refused!
  @stubbed_response = refused_stub
end

#stub_success!AuthorisationResponse

Assigns a #success_stub, meaning the subsequent authoristaion request will be authorised.

Returns:



78
79
80
# File 'lib/adyen/api/test_helpers.rb', line 78

def stub_success!
  @stubbed_response = success_stub
end

#success_stubAuthorisationResponse

Returns A authorisation succeeded response instance.

Returns:



55
56
57
58
59
# File 'lib/adyen/api/test_helpers.rb', line 55

def success_stub
  http_response = Net::HTTPOK.new('1.1', '200', 'OK')
  def http_response.body; AUTHORISE_RESPONSE; end
  PaymentService::AuthorisationResponse.new(http_response)
end