Class: ActiveMerchant::Billing::BogusGateway
- Inherits:
-
Gateway
- Object
- Gateway
- ActiveMerchant::Billing::BogusGateway
show all
- Defined in:
- lib/active_merchant/billing/gateways/bogus.rb
Overview
Constant Summary
collapse
- AUTHORIZATION =
'53433'
- SUCCESS_MESSAGE =
"Bogus Gateway: Forced success"
- FAILURE_MESSAGE =
"Bogus Gateway: Forced failure"
- ERROR_MESSAGE =
"Bogus Gateway: Use CreditCard number 1 for success, 2 for exception and anything else for error"
- CREDIT_ERROR_MESSAGE =
"Bogus Gateway: Use trans_id 1 for success, 2 for exception and anything else for error"
- UNSTORE_ERROR_MESSAGE =
"Bogus Gateway: Use trans_id 1 for success, 2 for exception and anything else for error"
- CAPTURE_ERROR_MESSAGE =
"Bogus Gateway: Use authorization number 1 for exception, 2 for error and anything else for success"
- VOID_ERROR_MESSAGE =
"Bogus Gateway: Use authorization number 1 for exception, 2 for error and anything else for success"
Constants inherited
from Gateway
Gateway::DEBIT_CARDS
Instance Attribute Summary
Attributes inherited from Gateway
#options
Instance Method Summary
collapse
-
#authorize(money, creditcard, options = {}) ⇒ Object
-
#capture(money, ident, options = {}) ⇒ Object
-
#credit(money, ident, options = {}) ⇒ Object
-
#purchase(money, creditcard, options = {}) ⇒ Object
-
#store(creditcard, options = {}) ⇒ Object
-
#unstore(identification, options = {}) ⇒ Object
-
#void(ident, options = {}) ⇒ Object
Methods inherited from Gateway
#card_brand, card_brand, inherited, #initialize, supports?, #test?
Methods included from Utils
generate_unique_id
#format
#requires!
Methods included from PostsData
included, #ssl_get, #ssl_post
Instance Method Details
#authorize(money, creditcard, options = {}) ⇒ Object
20
21
22
23
24
25
26
27
28
|
# File 'lib/active_merchant/billing/gateways/bogus.rb', line 20
def authorize(money, creditcard, options = {})
if card_should_be_successful?(creditcard)
Response.new(true, SUCCESS_MESSAGE, {:authorized_amount => money.to_s}, :test => true, :authorization => AUTHORIZATION )
elsif creditcard.number == '2'
Response.new(false, FAILURE_MESSAGE, {:authorized_amount => money.to_s, :error => FAILURE_MESSAGE }, :test => true)
else
raise Error, ERROR_MESSAGE
end
end
|
#capture(money, ident, options = {}) ⇒ Object
51
52
53
54
55
56
57
58
59
60
|
# File 'lib/active_merchant/billing/gateways/bogus.rb', line 51
def capture(money, ident, options = {})
case ident
when '1'
raise Error, CAPTURE_ERROR_MESSAGE
when '2'
Response.new(false, FAILURE_MESSAGE, {:paid_amount => money.to_s, :error => FAILURE_MESSAGE }, :test => true)
else
Response.new(true, SUCCESS_MESSAGE, {:paid_amount => money.to_s}, :test => true)
end
end
|
#credit(money, ident, options = {}) ⇒ Object
40
41
42
43
44
45
46
47
48
49
|
# File 'lib/active_merchant/billing/gateways/bogus.rb', line 40
def credit(money, ident, options = {})
case ident
when '1'
raise Error, CREDIT_ERROR_MESSAGE
when '2'
Response.new(false, FAILURE_MESSAGE, {:paid_amount => money.to_s, :error => FAILURE_MESSAGE }, :test => true)
else
Response.new(true, SUCCESS_MESSAGE, {:paid_amount => money.to_s}, :test => true)
end
end
|
#purchase(money, creditcard, options = {}) ⇒ Object
30
31
32
33
34
35
36
37
38
|
# File 'lib/active_merchant/billing/gateways/bogus.rb', line 30
def purchase(money, creditcard, options = {})
if card_should_be_successful?(creditcard)
Response.new(true, SUCCESS_MESSAGE, {:paid_amount => money.to_s}, :test => true)
elsif creditcard.number == '2'
Response.new(false, FAILURE_MESSAGE, {:paid_amount => money.to_s, :error => FAILURE_MESSAGE },:test => true)
else
raise Error, ERROR_MESSAGE
end
end
|
#store(creditcard, options = {}) ⇒ Object
73
74
75
76
77
78
79
80
81
82
|
# File 'lib/active_merchant/billing/gateways/bogus.rb', line 73
def store(creditcard, options = {})
case creditcard.number
when '1'
Response.new(true, SUCCESS_MESSAGE, {:billingid => '1'}, :test => true, :authorization => AUTHORIZATION )
when '2'
Response.new(false, FAILURE_MESSAGE, {:billingid => nil, :error => FAILURE_MESSAGE }, :test => true)
else
raise Error, ERROR_MESSAGE
end
end
|
#unstore(identification, options = {}) ⇒ Object
#void(ident, options = {}) ⇒ Object
62
63
64
65
66
67
68
69
70
71
|
# File 'lib/active_merchant/billing/gateways/bogus.rb', line 62
def void(ident, options = {})
case ident
when '1'
raise Error, VOID_ERROR_MESSAGE
when '2'
Response.new(false, FAILURE_MESSAGE, {:authorization => ident, :error => FAILURE_MESSAGE }, :test => true)
else
Response.new(true, SUCCESS_MESSAGE, {:authorization => ident}, :test => true)
end
end
|