tns_payments 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md ADDED
@@ -0,0 +1,10 @@
1
+ # CHANGELOG
2
+
3
+ ## 0.0.2 / 2012-03-05
4
+
5
+ * `Connection#purchase` and `Connection#refund` takes an object instead of many arguments.
6
+ * Allow passing in currency.
7
+
8
+ ## 0.0.1 / 2012-02-24
9
+
10
+ * Initial release.
@@ -21,21 +21,26 @@ module TNSPayments
21
21
  "https://secure.ap.tnspayments.com/form/#{session_token}"
22
22
  end
23
23
 
24
- def purchase amount, token, options = {}
25
- if token =~ CREDIT_CARD_TOKEN_FORMAT
26
- purchase_with_credit_card_token amount, token, options
27
- else
28
- purchase_with_session_token amount, token, options
29
- end
24
+ def purchase transaction, token
25
+ order_id = transaction.order_id
26
+ transaction_id = transaction.transaction_id
27
+ params = {
28
+ 'apiOperation' => 'PAY',
29
+ 'order' => {'reference' => transaction.reference},
30
+ 'cardDetails' => {purchase_token_key(token) => token},
31
+ 'transaction' => {'amount' => transaction.amount.to_s, 'currency' => transaction.currency, 'reference' => transaction_id.to_s}
32
+ }
33
+
34
+ request :put, "/merchant/#{@merchant_id}/order/#{order_id}/transaction/#{transaction_id}", params
30
35
  end
31
36
 
32
- def refund amount, options = {}
33
- order_id = create_order_id options[:order_id]
34
- transaction_id = options[:transaction_id]
37
+ def refund transaction
38
+ order_id = transaction.order_id
39
+ transaction_id = transaction.transaction_id
35
40
  params = {
36
41
  'apiOperation' => 'REFUND',
37
- 'order' => {'reference' => options[:order_reference]},
38
- 'transaction' => {'amount' => amount.to_s, 'currency' => 'AUD', 'reference' => transaction_id.to_s}
42
+ 'order' => {'reference' => transaction.reference},
43
+ 'transaction' => {'amount' => transaction.amount.to_s, 'currency' => transaction.currency, 'reference' => transaction_id.to_s}
39
44
  }
40
45
 
41
46
  request :put, "/merchant/#{@merchant_id}/order/#{order_id}/transaction/#{transaction_id}", params
@@ -49,16 +54,9 @@ module TNSPayments
49
54
  request :delete, "/merchant/#{@merchant_id}/token/#{token}"
50
55
  end
51
56
 
52
- def session_token?
53
- !@session_token.nil?
54
- end
55
-
56
- def session_token reload = false
57
- if @session_token.nil? or reload
58
- response = request :post, "/merchant/#{@merchant_id}/session"
59
- @session_token = response.success?? response.response['session'] : nil
60
- end
61
- @session_token
57
+ def session_token
58
+ response = request :post, "/merchant/#{@merchant_id}/session"
59
+ response.success?? response.response['session'] : raise(response.response.inspect)
62
60
  end
63
61
 
64
62
  private
@@ -67,39 +65,13 @@ module TNSPayments
67
65
  'https://secure.ap.tnspayments.com/api/rest/version/4'
68
66
  end
69
67
 
70
- def create_order_id id
71
- 10000000000 + id.to_i
72
- end
73
-
74
68
  def encode_credentials
75
69
  credentials = ['', @api_key].join(':')
76
70
  'Basic ' << Base64.encode64(credentials)
77
71
  end
78
72
 
79
- def purchase_with_credit_card_token amount, token, options = {}
80
- order_id = create_order_id options[:order_id]
81
- transaction_id = options[:transaction_id]
82
- params = {
83
- 'apiOperation' => 'PAY',
84
- 'order' => {'reference' => options[:order_reference]},
85
- 'cardDetails' => {'cardToken' => token},
86
- 'transaction' => {'amount' => amount.to_s, 'currency' => 'AUD', 'reference' => transaction_id.to_s}
87
- }
88
-
89
- request :put, "/merchant/#{@merchant_id}/order/#{order_id}/transaction/#{transaction_id}", params
90
- end
91
-
92
- def purchase_with_session_token amount, token, options = {}
93
- order_id = create_order_id options[:order_id]
94
- transaction_id = options[:transaction_id]
95
- params = {
96
- 'apiOperation' => 'PAY',
97
- 'order' => {'reference' => options[:order_reference]},
98
- 'cardDetails' => {'session' => token},
99
- 'transaction' => {'amount' => amount.to_s, 'currency' => 'AUD', 'reference' => transaction_id.to_s}
100
- }
101
-
102
- request :put, "/merchant/#{@merchant_id}/order/#{order_id}/transaction/#{transaction_id}", params
73
+ def purchase_token_key token
74
+ token =~ CREDIT_CARD_TOKEN_FORMAT ? 'cardToken' : 'session'
103
75
  end
104
76
 
105
77
  def request method, path, options = {}
@@ -1,3 +1,3 @@
1
1
  module TNSPayments
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -9,71 +9,58 @@ class TNSPayments::ConnectionTest < MiniTest::Unit::TestCase
9
9
  end
10
10
 
11
11
  def test_available_is_true_when_tns_gateway_is_operating
12
- stub_availability_request.
13
- to_return(:status => 200, :body => '{"status":"OPERATING"}', :headers => {})
12
+ stub_availability_request.to_return(:status => 200, :body => '{"status":"OPERATING"}', :headers => {})
14
13
  assert @gateway.available?
15
14
  end
16
15
 
17
16
  def test_available_is_false_when_tns_gateway_is_not_operating
18
- stub_availability_request.
19
- to_return(:status => 200, :body => '{"status":"EPIC_FAIL"}', :headers => {})
17
+ stub_availability_request.to_return(:status => 200, :body => '{"status":"EPIC_FAIL"}', :headers => {})
20
18
  refute @gateway.available?
21
19
  end
22
20
 
23
21
  def test_purchase_with_session_token_makes_a_successful_purchase
24
- stub_successful_session_token_purchase_request :amount => 100, :token => 'SESSIONTOKEN', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
25
- response = @gateway.purchase 100, 'SESSIONTOKEN', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
26
- assert response.success?
22
+ stub_successful_session_token_purchase_request mock_transaction, 'SESSIONTOKEN'
23
+ assert @gateway.purchase(mock_transaction, 'SESSIONTOKEN').success?
27
24
  end
28
25
 
29
26
  def test_purchase_with_session_token_makes_an_unsuccessful_purchase
30
- stub_unsuccessful_session_token_purchase_request :amount => 100, :token => 'SESSIONTOKEN', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
31
- response = @gateway.purchase 100, 'SESSIONTOKEN', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
32
- refute response.success?
27
+ stub_unsuccessful_session_token_purchase_request mock_transaction, 'SESSIONTOKEN'
28
+ refute @gateway.purchase(mock_transaction, 'SESSIONTOKEN').success?
33
29
  end
34
30
 
35
31
  def test_purchase_with_session_token_can_deal_with_timeout_errors
36
- stub_session_token_purchase_request(:amount => 100, :token => 'SESSIONTOKEN', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123').
37
- to_timeout
38
- response = @gateway.purchase 100, 'SESSIONTOKEN', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
39
- refute response.success?
32
+ stub_session_token_purchase_request(mock_transaction, 'SESSIONTOKEN').to_timeout
33
+ refute @gateway.purchase(mock_transaction, 'SESSIONTOKEN').success?
40
34
  end
41
35
 
42
36
  def test_purchase_with_credit_card_token_makes_a_successful_purchase
43
- stub_successful_credit_card_token_purchase_request(:amount => 100, :token => '9111111111111111', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123')
44
- assert @gateway.purchase(100, '9111111111111111', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123').success?
37
+ stub_successful_credit_card_token_purchase_request(mock_transaction, '9111111111111111')
38
+ assert @gateway.purchase(mock_transaction, '9111111111111111').success?
45
39
  end
46
40
 
47
41
  def test_purchase_with_credit_card_token_makes_an_unsuccessful_purchase
48
- stub_unsuccessful_credit_card_token_purchase_request :amount => 100, :token => '9111111111111111', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
49
- response = @gateway.purchase 100, '9111111111111111', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
50
- refute response.success?
42
+ stub_unsuccessful_credit_card_token_purchase_request mock_transaction, '9111111111111111'
43
+ refute @gateway.purchase(mock_transaction, '9111111111111111').success?
51
44
  end
52
45
 
53
46
  def test_purchase_with_credit_card_token_can_deal_with_timeout_errors
54
- stub_credit_card_token_purchase_request(:amount => 100, :token => '9111111111111111', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123').
55
- to_timeout
56
- response = @gateway.purchase 100, '9111111111111111', :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
57
- refute response.success?
47
+ stub_credit_card_token_purchase_request(mock_transaction, '9111111111111111').to_timeout
48
+ refute @gateway.purchase(mock_transaction, '9111111111111111').success?
58
49
  end
59
50
 
60
51
  def test_refund_makes_successful_refund
61
- stub_successful_refund_request :amount => 100, :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
62
- response = @gateway.refund 100, :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
63
- assert response.success?
52
+ stub_successful_refund_request mock_transaction
53
+ assert @gateway.refund(mock_transaction).success?
64
54
  end
65
55
 
66
56
  def test_refund_makes_unsuccessful_refund
67
- stub_unsuccessful_refund_request :amount => 100, :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
68
- response = @gateway.refund 100, :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
69
- refute response.success?
57
+ stub_unsuccessful_refund_request mock_transaction
58
+ refute @gateway.refund(mock_transaction).success?
70
59
  end
71
60
 
72
61
  def test_refund_can_deal_with_timeout_errors
73
- stub_refund_request(:amount => 100, :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123').
74
- to_timeout
75
- response = @gateway.refund 100, :order_id => 1, :transaction_id => 1, :order_reference => 'AUD123'
76
- refute response.success?
62
+ stub_refund_request(mock_transaction).to_timeout
63
+ refute @gateway.refund(mock_transaction).success?
77
64
  end
78
65
 
79
66
  def test_create_credit_card_token_successfully_stores_creditcard
@@ -103,6 +90,11 @@ class TNSPayments::ConnectionTest < MiniTest::Unit::TestCase
103
90
  refute @gateway.delete_credit_card_token('9123456781234567').success?
104
91
  end
105
92
 
93
+ def test_session_token_returns_token
94
+ stub_successful_session_token_request
95
+ assert_equal 'SESSIONTOKEN', @gateway.session_token
96
+ end
97
+
106
98
  private
107
99
 
108
100
  def stub_availability_request
@@ -110,38 +102,38 @@ private
110
102
  with(:headers => {'Accept'=>'*/*', 'Content-Type'=>'Application/json;charset=UTF-8'})
111
103
  end
112
104
 
113
- def stub_successful_refund_request options = {}
114
- stub_refund_request(options).
105
+ def stub_successful_refund_request transaction
106
+ stub_refund_request(transaction).
115
107
  to_return :status => 200, :headers => {}, :body => <<-EOS
116
- {"merchant":"#{@merchant_id}","order":{"id":#{@gateway.send(:create_order_id, options[:order_id])},"totalAuthorizedAmount":0.00,"totalCapturedAmount":0.00,"totalRefundedAmount":0.00},
108
+ {"merchant":"#{@merchant_id}","order":{"id":#{transaction.order_id},"totalAuthorizedAmount":0.00,"totalCapturedAmount":0.00,"totalRefundedAmount":0.00},
117
109
  "response":{"acquirerCode":"00","gatewayCode":"APPROVED"},"result":"SUCCESS","transaction":{"acquirer":{"id":"STGEORGE"},
118
- "amount":#{options[:amount]},"authorizationCode":"000582","batch":20110707,"currency":"AUD","id":"#{options[:transaction_id]}",
110
+ "amount":#{transaction.amount},"authorizationCode":"000582","batch":20110707,"currency":"AUD","id":"#{transaction.transaction_id}",
119
111
  "receipt":"110707000582","source":"INTERNET","terminal":"08845778","type":"REFUND"}}
120
112
  EOS
121
113
  end
122
114
 
123
- def stub_unsuccessful_refund_request options = {}
124
- stub_refund_request(options).
115
+ def stub_unsuccessful_refund_request transaction
116
+ stub_refund_request(transaction).
125
117
  to_return(:status => 200, :body => '{"result":"FAILURE"}', :headers => {})
126
118
  end
127
119
 
128
- def stub_successful_credit_card_token_purchase_request options = {}
129
- stub_credit_card_token_purchase_request(options).
130
- to_return(:status => 200, :body => %[{"card":{"expiry":{"month":"5","year":"13"},"number":"xxxxxxxxxxxxxxxx","scheme":"MASTERCARD"},"merchant":"","order":{"id":"#{@gateway.send(:create_order_id, options[:order_id])}","totalAuthorizedAmount":0.00,"totalCapturedAmount":0.00,"totalRefundedAmount":0.00},"response":{"acquirerCode":"00","gatewayCode":"APPROVED"},"result":"SUCCESS","transaction":{"acquirer":{"id":"STGEORGE"},"amount":"#{options[:amount]}","authorizationCode":"000576","batch":20110707,"currency":"AUD","frequency":"SINGLE","id":"72637779534c67696c54b26f220dc4d3","receipt":"110707000576","source":"INTERNET","terminal":"08845778","type":"PAYMENT"}}], :headers => {})
120
+ def stub_successful_credit_card_token_purchase_request transaction, token
121
+ stub_credit_card_token_purchase_request(transaction, token).
122
+ to_return(:status => 200, :body => %[{"card":{"expiry":{"month":"5","year":"13"},"number":"xxxxxxxxxxxxxxxx","scheme":"MASTERCARD"},"merchant":"","order":{"id":"#{transaction.order_id}","totalAuthorizedAmount":0.00,"totalCapturedAmount":0.00,"totalRefundedAmount":0.00},"response":{"acquirerCode":"00","gatewayCode":"APPROVED"},"result":"SUCCESS","transaction":{"acquirer":{"id":"STGEORGE"},"amount":"#{transaction.amount}","authorizationCode":"000576","batch":20110707,"currency":"AUD","frequency":"SINGLE","id":"72637779534c67696c54b26f220dc4d3","receipt":"110707000576","source":"INTERNET","terminal":"08845778","type":"PAYMENT"}}], :headers => {})
131
123
  end
132
124
 
133
- def stub_unsuccessful_credit_card_token_purchase_request options = {}
134
- stub_credit_card_token_purchase_request(options).
125
+ def stub_unsuccessful_credit_card_token_purchase_request transaction, token
126
+ stub_credit_card_token_purchase_request(transaction, token).
135
127
  to_return(:status => 200, :body => '{"result":"FAILURE"}', :headers => {})
136
128
  end
137
129
 
138
- def stub_successful_session_token_purchase_request options = {}
139
- stub_session_token_purchase_request(options).
140
- to_return(:status => 200, :body => %[{"card":{"expiry":{"month":"5","year":"13"},"number":"xxxxxxxxxxxxxxxx","scheme":"MASTERCARD"},"merchant":"","order":{"id":"#{@gateway.send(:create_order_id, options[:order_id])}","totalAuthorizedAmount":0.00,"totalCapturedAmount":0.00,"totalRefundedAmount":0.00},"response":{"acquirerCode":"00","gatewayCode":"APPROVED"},"result":"SUCCESS","transaction":{"acquirer":{"id":"STGEORGE"},"amount":"#{options[:amount]}","authorizationCode":"000576","batch":20110707,"currency":"AUD","frequency":"SINGLE","id":"72637779534c67696c54b26f220dc4d3","receipt":"110707000576","source":"INTERNET","terminal":"08845778","type":"PAYMENT"}}], :headers => {})
130
+ def stub_successful_session_token_purchase_request transaction, token
131
+ stub_session_token_purchase_request(transaction, token).
132
+ to_return(:status => 200, :body => %[{"card":{"expiry":{"month":"5","year":"13"},"number":"xxxxxxxxxxxxxxxx","scheme":"MASTERCARD"},"merchant":"","order":{"id":"#{transaction.order_id}","totalAuthorizedAmount":0.00,"totalCapturedAmount":0.00,"totalRefundedAmount":0.00},"response":{"acquirerCode":"00","gatewayCode":"APPROVED"},"result":"SUCCESS","transaction":{"acquirer":{"id":"STGEORGE"},"amount":"#{transaction.amount}","authorizationCode":"000576","batch":20110707,"currency":"AUD","frequency":"SINGLE","id":"72637779534c67696c54b26f220dc4d3","receipt":"110707000576","source":"INTERNET","terminal":"08845778","type":"PAYMENT"}}], :headers => {})
141
133
  end
142
134
 
143
- def stub_unsuccessful_session_token_purchase_request options = {}
144
- stub_session_token_purchase_request(options).
135
+ def stub_unsuccessful_session_token_purchase_request transaction, token
136
+ stub_session_token_purchase_request(transaction, token).
145
137
  to_return(:status => 200, :body => '{"result":"FAILURE"}', :headers => {})
146
138
  end
147
139
 
@@ -165,13 +157,28 @@ private
165
157
  to_return(:status => 200, :body => '{"result":"FAILURE"}', :headers => {})
166
158
  end
167
159
 
168
- def stub_session_token_purchase_request options = {}
169
- stub_request(:put, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/order\/#{@gateway.send(:create_order_id, options[:order_id])}\/transaction\/#{options[:transaction_id]}/).
160
+ def stub_successful_session_token_request
161
+ stub_session_token_request.
162
+ to_return(:status => 200, :body => '{"result":"SUCCESS","session":"SESSIONTOKEN"}', :headers => {})
163
+ end
164
+
165
+ def stub_session_token_request
166
+ stub_request(:post, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/session/).
167
+ with :headers => {
168
+ 'Accept' => '*/*',
169
+ 'Accept-Encoding' => 'gzip, deflate',
170
+ 'Content-Length' => '2',
171
+ 'Content-Type' => 'Application/json;charset=UTF-8'
172
+ }
173
+ end
174
+
175
+ def stub_session_token_purchase_request transaction, token
176
+ stub_request(:put, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/order\/#{transaction.order_id}\/transaction\/#{transaction.transaction_id}/).
170
177
  with :body => JSON.generate({
171
178
  'apiOperation' => 'PAY',
172
- 'order' => {'reference' => options[:order_reference].to_s},
173
- 'cardDetails' => {'session' => options[:token].to_s},
174
- 'transaction' => {'amount' => options[:amount].to_s, 'currency' => 'AUD', 'reference' => options[:transaction_id].to_s}
179
+ 'order' => {'reference' => transaction.reference.to_s},
180
+ 'cardDetails' => {'session' => token.to_s},
181
+ 'transaction' => {'amount' => transaction.amount.to_s, 'currency' => transaction.currency, 'reference' => transaction.transaction_id.to_s}
175
182
  }),
176
183
  :headers => {
177
184
  'Accept' => '*/*',
@@ -181,13 +188,13 @@ private
181
188
  }
182
189
  end
183
190
 
184
- def stub_credit_card_token_purchase_request options = {}
185
- stub_request(:put, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/order\/#{@gateway.send(:create_order_id, options[:order_id])}\/transaction\/#{options[:transaction_id]}/).
191
+ def stub_credit_card_token_purchase_request transaction, token
192
+ stub_request(:put, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/order\/#{transaction.order_id}\/transaction\/#{transaction.transaction_id}/).
186
193
  with :body => JSON.generate({
187
194
  'apiOperation' => 'PAY',
188
- 'order' => {'reference' => options[:order_reference].to_s},
189
- 'cardDetails' => {'cardToken' => options[:token].to_s},
190
- 'transaction' => {'amount' => options[:amount].to_s, 'currency' => 'AUD', 'reference' => options[:transaction_id].to_s}
195
+ 'order' => {'reference' => transaction.reference.to_s},
196
+ 'cardDetails' => {'cardToken' => token.to_s},
197
+ 'transaction' => {'amount' => transaction.amount.to_s, 'currency' => transaction.currency, 'reference' => transaction.transaction_id.to_s}
191
198
  }),
192
199
  :headers => {
193
200
  'Accept' => '*/*',
@@ -197,12 +204,12 @@ private
197
204
  }
198
205
  end
199
206
 
200
- def stub_refund_request options = {}
201
- stub_request(:put, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/order\/#{@gateway.send(:create_order_id, options[:order_id])}\/transaction\/#{options[:transaction_id]}/).
207
+ def stub_refund_request transaction
208
+ stub_request(:put, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/order\/#{transaction.order_id}\/transaction\/#{transaction.transaction_id}/).
202
209
  with :body => JSON.generate({
203
210
  'apiOperation' => 'REFUND',
204
- 'order' => {'reference' => options[:order_reference].to_s},
205
- 'transaction' => {'amount' => options[:amount].to_s, 'currency' => 'AUD', 'reference' => options[:transaction_id].to_s}
211
+ 'order' => {'reference' => transaction.reference.to_s},
212
+ 'transaction' => {'amount' => transaction.amount.to_s, 'currency' => transaction.currency, 'reference' => transaction.transaction_id.to_s}
206
213
  }),
207
214
  :headers => {
208
215
  'Accept' => '*/*',
@@ -221,4 +228,14 @@ private
221
228
  stub_request(:delete, /https:\/\/:#{@api_key}@secure\.ap\.tnspayments\.com\/api\/rest\/version\/4\/merchant\/#{@merchant_id}\/token\/\d{16}/).
222
229
  with(:headers => {'Accept'=>'*/*', 'Content-Type'=>'Application/json;charset=UTF-8'}, :body => {})
223
230
  end
231
+
232
+ def mock_transaction
233
+ mock = MiniTest::Mock.new
234
+ mock.expect :amount, 100
235
+ mock.expect :currency, 'AUD'
236
+ mock.expect :order_id, 10000000001
237
+ mock.expect :transaction_id, 1
238
+ mock.expect :reference, 'AUD123'
239
+ mock
240
+ end
224
241
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tns_payments
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
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-02-24 00:00:00.000000000 Z
12
+ date: 2012-03-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
16
- requirement: &70141552320780 !ruby/object:Gem::Requirement
16
+ requirement: &70340031250080 !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: *70141552320780
24
+ version_requirements: *70340031250080
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rest-client
27
- requirement: &70141552319900 !ruby/object:Gem::Requirement
27
+ requirement: &70340031249380 !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: :runtime
34
34
  prerelease: false
35
- version_requirements: *70141552319900
35
+ version_requirements: *70340031249380
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: minitest
38
- requirement: &70141552335720 !ruby/object:Gem::Requirement
38
+ requirement: &70340031248300 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70141552335720
46
+ version_requirements: *70340031248300
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &70141552335100 !ruby/object:Gem::Requirement
49
+ requirement: &70340031247520 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70141552335100
57
+ version_requirements: *70340031247520
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: webmock
60
- requirement: &70141552333420 !ruby/object:Gem::Requirement
60
+ requirement: &70340031246220 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70141552333420
68
+ version_requirements: *70340031246220
69
69
  description: Integration with TNS Payments Gateway
70
70
  email:
71
71
  - coop@latrobest.com
@@ -74,6 +74,7 @@ extensions: []
74
74
  extra_rdoc_files: []
75
75
  files:
76
76
  - .gitignore
77
+ - CHANGELOG.md
77
78
  - Gemfile
78
79
  - Rakefile
79
80
  - lib/tns_payments.rb
@@ -99,7 +100,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
99
100
  version: '0'
100
101
  segments:
101
102
  - 0
102
- hash: -1671981607314652405
103
+ hash: 4524899234055894427
103
104
  required_rubygems_version: !ruby/object:Gem::Requirement
104
105
  none: false
105
106
  requirements:
@@ -108,10 +109,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
109
  version: '0'
109
110
  segments:
110
111
  - 0
111
- hash: -1671981607314652405
112
+ hash: 4524899234055894427
112
113
  requirements: []
113
114
  rubyforge_project:
114
- rubygems_version: 1.8.10
115
+ rubygems_version: 1.8.11
115
116
  signing_key:
116
117
  specification_version: 3
117
118
  summary: Integration with TNS Payments Gateway