ActiveMerchant-FatZebra 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@ $:.push File.expand_path("../lib", __FILE__)
|
|
3
3
|
|
4
4
|
Gem::Specification.new do |s|
|
5
5
|
s.name = "ActiveMerchant-FatZebra"
|
6
|
-
s.version = "1.0.
|
6
|
+
s.version = "1.0.1"
|
7
7
|
s.authors = ["Matthew Savage"]
|
8
8
|
s.email = ["matthew.savage@fatzebra.com.au"]
|
9
9
|
s.homepage = "https://www.fatzebra.com.au"
|
@@ -116,8 +116,7 @@ module ActiveMerchant #:nodoc:
|
|
116
116
|
message,
|
117
117
|
response,
|
118
118
|
:test => response.has_key?("test") ? response["test"] : false,
|
119
|
-
:authorization => response["response"]["
|
120
|
-
:id => response["response"]["id"])
|
119
|
+
:authorization => response["response"]["id"] || response["response"]["token"])
|
121
120
|
end
|
122
121
|
|
123
122
|
# Parse the returned JSON, if parse errors are raised then return a detailed error.
|
@@ -144,7 +143,7 @@ module ActiveMerchant #:nodoc:
|
|
144
143
|
# Builds the auth and U-A headers for the request
|
145
144
|
def headers
|
146
145
|
{
|
147
|
-
"Authorization" => "Basic " + Base64.
|
146
|
+
"Authorization" => "Basic " + Base64.strict_encode64(@username.to_s + ":" + @token.to_s).strip,
|
148
147
|
"User-Agent" => "Fat Zebra v1.0/ActiveMerchant #{ActiveMerchant::VERSION}"
|
149
148
|
}
|
150
149
|
end
|
@@ -38,7 +38,7 @@ class RemoteFatZebraTest < Test::Unit::TestCase
|
|
38
38
|
def test_refund
|
39
39
|
purchase = @gateway.purchase(@amount, @credit_card, @options)
|
40
40
|
|
41
|
-
assert response = @gateway.refund(@amount, purchase.
|
41
|
+
assert response = @gateway.refund(@amount, purchase.authorization, rand(1000000).to_s)
|
42
42
|
assert_success response
|
43
43
|
assert_match /Approved/, response.message
|
44
44
|
end
|
@@ -23,8 +23,7 @@ class FatZebraTest < Test::Unit::TestCase
|
|
23
23
|
assert response = @gateway.purchase(@amount, @credit_card, @options)
|
24
24
|
assert_success response
|
25
25
|
|
26
|
-
|
27
|
-
assert_equal '55355', response.authorization
|
26
|
+
assert_equal '001-P-12345AA', response.authorization
|
28
27
|
assert response.test?
|
29
28
|
end
|
30
29
|
|
@@ -75,6 +74,23 @@ class FatZebraTest < Test::Unit::TestCase
|
|
75
74
|
assert_failure response
|
76
75
|
end
|
77
76
|
|
77
|
+
def test_successful_refund
|
78
|
+
@gateway.expects(:ssl_request).returns(successful_refund_response)
|
79
|
+
|
80
|
+
assert response = @gateway.refund(100, "TEST", "Test refund")
|
81
|
+
assert_success response
|
82
|
+
assert_equal '003-R-7MNIUMY6', response.authorization
|
83
|
+
assert response.test?
|
84
|
+
end
|
85
|
+
|
86
|
+
def test_unsuccessful_refund
|
87
|
+
@gateway.expects(:ssl_request).returns(unsuccessful_refund_response)
|
88
|
+
|
89
|
+
assert response = @gateway.refund(100, "TEST", "Test refund")
|
90
|
+
assert_failure response
|
91
|
+
assert response.test?
|
92
|
+
end
|
93
|
+
|
78
94
|
private
|
79
95
|
|
80
96
|
# Place raw successful response from gateway here
|
@@ -117,6 +133,52 @@ class FatZebraTest < Test::Unit::TestCase
|
|
117
133
|
}.to_json
|
118
134
|
end
|
119
135
|
|
136
|
+
def successful_refund_response
|
137
|
+
{
|
138
|
+
:successful => true,
|
139
|
+
:response => {
|
140
|
+
:authorization => "1339973263",
|
141
|
+
:id => "003-R-7MNIUMY6",
|
142
|
+
:amount => -10,
|
143
|
+
:refunded => "Approved",
|
144
|
+
:message => "08 Approved",
|
145
|
+
:card_holder => "Harry Smith",
|
146
|
+
:card_number => "XXXXXXXXXXXX4444",
|
147
|
+
:card_expiry => "2013-05-31",
|
148
|
+
:card_type => "MasterCard",
|
149
|
+
:transaction_id => "003-R-7MNIUMY6",
|
150
|
+
:successful => true
|
151
|
+
},
|
152
|
+
:errors => [
|
153
|
+
|
154
|
+
],
|
155
|
+
:test => true
|
156
|
+
}.to_json
|
157
|
+
end
|
158
|
+
|
159
|
+
def unsuccessful_refund_response
|
160
|
+
{
|
161
|
+
:successful => false,
|
162
|
+
:response => {
|
163
|
+
:authorization => nil,
|
164
|
+
:id => nil,
|
165
|
+
:amount => nil,
|
166
|
+
:refunded => nil,
|
167
|
+
:message => nil,
|
168
|
+
:card_holder => "Matthew Savage",
|
169
|
+
:card_number => "XXXXXXXXXXXX4444",
|
170
|
+
:card_expiry => "2013-05-31",
|
171
|
+
:card_type => "MasterCard",
|
172
|
+
:transaction_id => nil,
|
173
|
+
:successful => false
|
174
|
+
},
|
175
|
+
:errors => [
|
176
|
+
"Reference can't be blank"
|
177
|
+
],
|
178
|
+
:test => true
|
179
|
+
}.to_json
|
180
|
+
end
|
181
|
+
|
120
182
|
def successful_tokenize_response
|
121
183
|
{
|
122
184
|
:successful => true,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ActiveMerchant-FatZebra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-06-
|
12
|
+
date: 2012-06-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activemerchant
|
16
|
-
requirement: &
|
16
|
+
requirement: &70156374511060 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70156374511060
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rake
|
27
|
-
requirement: &
|
27
|
+
requirement: &70156374510460 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70156374510460
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mocha
|
38
|
-
requirement: &
|
38
|
+
requirement: &70156374509640 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 0.11.3
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70156374509640
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rails
|
49
|
-
requirement: &
|
49
|
+
requirement: &70156374508320 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,7 +54,7 @@ dependencies:
|
|
54
54
|
version: 2.3.11
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70156374508320
|
58
58
|
description: Fat Zebra support for Active Merchant - temporary gem until support is
|
59
59
|
combined into active_merchant core.
|
60
60
|
email:
|
@@ -89,7 +89,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
89
89
|
version: '0'
|
90
90
|
segments:
|
91
91
|
- 0
|
92
|
-
hash:
|
92
|
+
hash: 4098293208701406375
|
93
93
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
@@ -98,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
98
98
|
version: '0'
|
99
99
|
segments:
|
100
100
|
- 0
|
101
|
-
hash:
|
101
|
+
hash: 4098293208701406375
|
102
102
|
requirements: []
|
103
103
|
rubyforge_project: ActiveMerchant-FatZebra
|
104
104
|
rubygems_version: 1.8.10
|