killbill-stripe 0.1.0 → 0.2.0

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.
@@ -2,34 +2,36 @@ require 'spec_helper'
2
2
 
3
3
  ActiveMerchant::Billing::Base.mode = :test
4
4
 
5
- class FakeJavaUserAccountApi
6
- attr_accessor :accounts
7
-
8
- def initialize
9
- @accounts = []
10
- end
11
-
12
- def get_account_by_id(id, context)
13
- @accounts.find { |account| account.id == id.to_s }
14
- end
5
+ describe Killbill::Stripe::PaymentPlugin do
15
6
 
16
- def get_account_by_key(external_key, context)
17
- @accounts.find { |account| account.external_key == external_key.to_s }
18
- end
19
- end
7
+ include ::Killbill::Plugin::ActiveMerchant::RSpec
20
8
 
21
- describe Killbill::Stripe::PaymentPlugin do
22
9
  before(:each) do
23
10
  @plugin = Killbill::Stripe::PaymentPlugin.new
24
11
 
25
- @account_api = FakeJavaUserAccountApi.new
26
- svcs = {:account_user_api => @account_api}
12
+ @account_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaUserAccountApi.new
13
+ @payment_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaPaymentApi.new
14
+ svcs = {:account_user_api => @account_api, :payment_api => @payment_api}
27
15
  @plugin.kb_apis = Killbill::Plugin::KillbillApi.new('stripe', svcs)
28
16
 
29
- @plugin.logger = Logger.new(STDOUT)
17
+ @call_context = Killbill::Plugin::Model::CallContext.new
18
+ @call_context.tenant_id = '00000011-0022-0033-0044-000000000055'
19
+ @call_context = @call_context.to_ruby(@call_context)
20
+
21
+ @plugin.logger = Logger.new(STDOUT)
30
22
  @plugin.logger.level = Logger::INFO
31
- @plugin.conf_dir = File.expand_path(File.dirname(__FILE__) + '../../../../')
23
+ @plugin.conf_dir = File.expand_path(File.dirname(__FILE__) + '../../../../')
32
24
  @plugin.start_plugin
25
+
26
+ @properties = []
27
+ @pm = create_payment_method(::Killbill::Stripe::StripePaymentMethod, nil, @call_context.tenant_id, @properties)
28
+ @amount = BigDecimal.new('100')
29
+ @currency = 'USD'
30
+
31
+ kb_payment_id = SecureRandom.uuid
32
+ 1.upto(6) do
33
+ @kb_payment = @payment_api.add_payment(kb_payment_id)
34
+ end
33
35
  end
34
36
 
35
37
  after(:each) do
@@ -37,172 +39,123 @@ describe Killbill::Stripe::PaymentPlugin do
37
39
  end
38
40
 
39
41
  it 'should be able to create and retrieve payment methods' do
40
- pm = create_payment_method
42
+ pm = create_payment_method(::Killbill::Stripe::StripePaymentMethod, nil, @call_context.tenant_id)
41
43
 
42
- pms = @plugin.get_payment_methods(pm.kb_account_id)
44
+ pms = @plugin.get_payment_methods(pm.kb_account_id, false, [], @call_context)
43
45
  pms.size.should == 1
44
- pms[0].external_payment_method_id.should == pm.stripe_card_id_or_token
46
+ pms.first.external_payment_method_id.should == pm.token
45
47
 
46
- pm_details = @plugin.get_payment_method_detail(pm.kb_account_id, pm.kb_payment_method_id)
47
- pm_details.external_payment_method_id.should == pm.stripe_card_id_or_token
48
+ pm_details = @plugin.get_payment_method_detail(pm.kb_account_id, pm.kb_payment_method_id, [], @call_context)
49
+ pm_details.external_payment_method_id.should == pm.token
48
50
 
49
- pms_found = @plugin.search_payment_methods pm.cc_last_4
51
+ pms_found = @plugin.search_payment_methods pm.cc_last_4, 0, 10, [], @call_context
50
52
  pms_found = pms_found.iterator.to_a
51
- pms_found.size.should == 1
52
- pms_found.first.external_payment_method_id.should == pm_details.external_payment_method_id
53
+ pms_found.size.should == 2
54
+ pms_found[1].external_payment_method_id.should == pm_details.external_payment_method_id
53
55
 
54
- @plugin.delete_payment_method(pm.kb_account_id, pm.kb_payment_method_id)
56
+ @plugin.delete_payment_method(pm.kb_account_id, pm.kb_payment_method_id, [], @call_context)
55
57
 
56
- @plugin.get_payment_methods(pm.kb_account_id).size.should == 0
57
- lambda { @plugin.get_payment_method_detail(pm.kb_account_id, pm.kb_payment_method_id) }.should raise_error RuntimeError
58
+ @plugin.get_payment_methods(pm.kb_account_id, false, [], @call_context).size.should == 0
59
+ lambda { @plugin.get_payment_method_detail(pm.kb_account_id, pm.kb_payment_method_id, [], @call_context) }.should raise_error RuntimeError
58
60
 
59
61
  # Verify we can add multiple payment methods
60
- pm1 = create_payment_method(pm.kb_account_id)
61
- pm2 = create_payment_method(pm.kb_account_id)
62
+ pm1 = create_payment_method(::Killbill::Stripe::StripePaymentMethod, pm.kb_account_id, @call_context.tenant_id)
63
+ pm2 = create_payment_method(::Killbill::Stripe::StripePaymentMethod, pm.kb_account_id, @call_context.tenant_id)
62
64
 
63
- pms = @plugin.get_payment_methods(pm.kb_account_id)
65
+ pms = @plugin.get_payment_methods(pm.kb_account_id, false, [], @call_context)
64
66
  pms.size.should == 2
65
- pms[0].external_payment_method_id.should == pm1.stripe_card_id_or_token
66
- pms[1].external_payment_method_id.should == pm2.stripe_card_id_or_token
67
+ pms[0].external_payment_method_id.should == pm1.token
68
+ pms[1].external_payment_method_id.should == pm2.token
67
69
  end
68
70
 
69
- it 'should be able to charge and refund' do
70
- pm = create_payment_method
71
- amount = BigDecimal.new("100")
72
- currency = 'USD'
73
- kb_payment_id = SecureRandom.uuid
74
-
75
- payment_response = @plugin.process_payment pm.kb_account_id, kb_payment_id, pm.kb_payment_method_id, amount, currency
76
- payment_response.amount.should == amount
77
- payment_response.status.should == :PROCESSED
78
-
79
- # Verify our table directly
80
- response = Killbill::Stripe::StripeResponse.find_by_api_call_and_kb_payment_id :charge, kb_payment_id
81
- response.test.should be_true
82
- response.success.should be_true
83
- response.message.should == 'Transaction approved'
84
-
85
- payment_response = @plugin.get_payment_info pm.kb_account_id, kb_payment_id
86
- payment_response.amount.should == amount
87
- payment_response.status.should == :PROCESSED
88
-
89
- # Check we cannot refund an amount greater than the original charge
90
- lambda { @plugin.process_refund pm.kb_account_id, kb_payment_id, amount + 1, currency }.should raise_error RuntimeError
91
-
92
- refund_response = @plugin.process_refund pm.kb_account_id, kb_payment_id, amount, currency
93
- refund_response.amount.should == amount
94
- refund_response.status.should == :PROCESSED
95
-
96
- # Verify our table directly
97
- response = Killbill::Stripe::StripeResponse.find_by_api_call_and_kb_payment_id :refund, kb_payment_id
98
- response.test.should be_true
99
- response.success.should be_true
100
-
101
- # Check we can retrieve the refund
102
- refund_responses = @plugin.get_refund_info pm.kb_account_id, kb_payment_id
103
- refund_responses.size.should == 1
104
- # Apparently, Stripe returns positive amounts for refunds
105
- refund_responses[0].amount.should == amount
106
- refund_responses[0].status.should == :PROCESSED
107
-
108
- # Make sure we can charge again the same payment method
109
- second_amount = BigDecimal.new("294.71")
110
- second_kb_payment_id = SecureRandom.uuid
111
-
112
- payment_response = @plugin.process_payment pm.kb_account_id, second_kb_payment_id, pm.kb_payment_method_id, second_amount, currency
113
- payment_response.amount.should == second_amount
114
- payment_response.status.should == :PROCESSED
71
+ it 'should be able to charge a Credit Card directly' do
72
+ properties = build_pm_properties
73
+
74
+ # We created the payment methods, hence the rows
75
+ max_response_id = Killbill::Stripe::StripeResponse.all.last.id
76
+ Killbill::Stripe::StripeTransaction.all.size.should == 0
77
+
78
+ payment_response = @plugin.purchase_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, properties, @call_context)
79
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
80
+ payment_response.amount.should == @amount
81
+ payment_response.transaction_type.should == :PURCHASE
82
+
83
+ responses = Killbill::Stripe::StripeResponse.all
84
+ responses.size.should == max_response_id + 1
85
+ responses[max_response_id].api_call.should == 'purchase'
86
+ responses[max_response_id].message.should == 'Transaction approved'
87
+ transactions = Killbill::Stripe::StripeTransaction.all
88
+ transactions.size.should == 1
89
+ transactions[0].api_call.should == 'purchase'
115
90
  end
116
91
 
117
- private
118
-
119
- def create_payment_method(kb_account_id=nil)
120
- kb_payment_method_id = SecureRandom.uuid
121
-
122
- if kb_account_id.nil?
123
- kb_account_id = SecureRandom.uuid
124
-
125
- # Create a new account
126
- create_kb_account kb_account_id
127
- end
128
-
129
- # Generate a token in Stripe
130
- cc_number = '4242424242424242'
131
- cc_first_name = 'John'
132
- cc_last_name = 'Doe'
133
- cc_type = 'Visa'
134
- cc_exp_month = 12
135
- cc_exp_year = 2015
136
- cc_last_4 = 4242
137
- address1 = '5, oakriu road'
138
- address2 = 'apt. 298'
139
- city = 'Gdio Foia'
140
- state = 'FL'
141
- zip = 49302
142
- country = 'IFP'
143
- cc_verification_value = 1234
144
-
145
- properties = []
146
- properties << create_pm_kv_info('ccNumber', cc_number)
147
- properties << create_pm_kv_info('ccFirstName', cc_first_name)
148
- properties << create_pm_kv_info('ccLastName', cc_last_name)
149
- properties << create_pm_kv_info('ccType', cc_type)
150
- properties << create_pm_kv_info('ccExpirationMonth', cc_exp_month)
151
- properties << create_pm_kv_info('ccExpirationYear', cc_exp_year)
152
- properties << create_pm_kv_info('ccLast4', cc_last_4)
153
- properties << create_pm_kv_info('address1', address1)
154
- properties << create_pm_kv_info('address2', address2)
155
- properties << create_pm_kv_info('city', city)
156
- properties << create_pm_kv_info('state', state)
157
- properties << create_pm_kv_info('zip', zip)
158
- properties << create_pm_kv_info('country', country)
159
- properties << create_pm_kv_info('ccVerificationValue', cc_verification_value)
160
-
161
- info = Killbill::Plugin::Model::PaymentMethodPlugin.new
162
- info.properties = properties
163
- payment_method = @plugin.add_payment_method(kb_account_id, kb_payment_method_id, info, true)
164
-
165
- pm = Killbill::Stripe::StripePaymentMethod.from_kb_payment_method_id kb_payment_method_id
166
- pm.should == payment_method
167
- pm.kb_account_id.should == kb_account_id
168
- pm.kb_payment_method_id.should == kb_payment_method_id
169
- pm.stripe_card_id_or_token.should_not be_nil
170
- pm.cc_first_name.should == cc_first_name + ' ' + cc_last_name
171
- pm.cc_last_name.should be_nil
172
- pm.cc_type.should == cc_type
173
- pm.cc_exp_month.should == cc_exp_month
174
- pm.cc_exp_year.should == cc_exp_year
175
- pm.cc_last_4.should == cc_last_4
176
- pm.address1.should == address1
177
- pm.address2.should == address2
178
- pm.city.should == city
179
- pm.state.should == state
180
- pm.zip.should == zip.to_s
181
- pm.country.should == country
182
-
183
- pm
92
+ it 'should be able to charge and refund' do
93
+ payment_response = @plugin.purchase_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
94
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
95
+ payment_response.amount.should == @amount
96
+ payment_response.transaction_type.should == :PURCHASE
97
+
98
+ # Try a full refund
99
+ refund_response = @plugin.refund_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
100
+ refund_response.status.should eq(:PROCESSED), refund_response.gateway_error
101
+ refund_response.amount.should == @amount
102
+ refund_response.transaction_type.should == :REFUND
184
103
  end
185
104
 
186
- def create_kb_account(kb_account_id)
187
- external_key = Time.now.to_i.to_s + '-test'
188
- email = external_key + '@tester.com'
189
-
190
- account = Killbill::Plugin::Model::Account.new
191
- account.id = kb_account_id
192
- account.external_key = external_key
193
- account.email = email
194
- account.name = 'Integration spec'
195
- account.currency = :USD
196
-
197
- @account_api.accounts << account
198
-
199
- return external_key, kb_account_id
105
+ # It doesn't look like Stripe supports multiple partial captures
106
+ #it 'should be able to auth, capture and refund' do
107
+ # payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
108
+ # payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
109
+ # payment_response.amount.should == @amount
110
+ # payment_response.transaction_type.should == :AUTHORIZE
111
+ #
112
+ # # Try multiple partial captures
113
+ # partial_capture_amount = BigDecimal.new('10')
114
+ # 1.upto(3) do |i|
115
+ # payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[i].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
116
+ # payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
117
+ # payment_response.amount.should == partial_capture_amount
118
+ # payment_response.transaction_type.should == :CAPTURE
119
+ # end
120
+ #
121
+ # # Try a partial refund
122
+ # refund_response = @plugin.refund_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[4].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
123
+ # refund_response.status.should eq(:PROCESSED), refund_response.gateway_error
124
+ # refund_response.amount.should == partial_capture_amount
125
+ # refund_response.transaction_type.should == :REFUND
126
+ #
127
+ # # Try to capture again
128
+ # payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[5].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
129
+ # payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
130
+ # payment_response.amount.should == partial_capture_amount
131
+ # payment_response.transaction_type.should == :CAPTURE
132
+ #end
133
+
134
+ it 'should be able to auth and void' do
135
+ payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
136
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
137
+ payment_response.amount.should == @amount
138
+ payment_response.transaction_type.should == :AUTHORIZE
139
+
140
+ payment_response = @plugin.void_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, @properties, @call_context)
141
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
142
+ payment_response.transaction_type.should == :VOID
200
143
  end
201
144
 
202
- def create_pm_kv_info(key, value)
203
- prop = Killbill::Plugin::Model::PaymentMethodKVInfo.new
204
- prop.key = key
205
- prop.value = value
206
- prop
145
+ it 'should be able to auth, partial capture and void' do
146
+ payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
147
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
148
+ payment_response.amount.should == @amount
149
+ payment_response.transaction_type.should == :AUTHORIZE
150
+
151
+ partial_capture_amount = BigDecimal.new('10')
152
+ payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
153
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
154
+ payment_response.amount.should == partial_capture_amount
155
+ payment_response.transaction_type.should == :CAPTURE
156
+
157
+ payment_response = @plugin.void_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[2].id, @pm.kb_payment_method_id, @properties, @call_context)
158
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
159
+ payment_response.transaction_type.should == :VOID
207
160
  end
208
161
  end
data/stripe.yml ADDED
@@ -0,0 +1,21 @@
1
+ :stripe:
2
+ :api_secret_key: ''
3
+ :api_publishable_key: ''
4
+ :log_file: '/var/tmp/stripe.log'
5
+ :test: true
6
+
7
+ :database:
8
+ :adapter: sqlite3
9
+ :database: test.db
10
+ # For MySQL
11
+ # :adapter: 'jdbcmysql'
12
+ # :username: 'killbill'
13
+ # :password: 'killbill'
14
+ # :driver: 'com.mysql.jdbc.Driver'
15
+ # :url: 'jdbc:mysql://127.0.0.1:3306/killbill'
16
+ # In Kill Bill
17
+ # :adapter: 'jdbcmysql'
18
+ # :jndi: 'killbill/osgi/jdbc'
19
+ # :driver: 'com.mysql.jdbc.Driver'
20
+ # :connection_alive_sql: 'select 1'
21
+ # :pool: 250
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: killbill-stripe
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kill Bill core team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-13 00:00:00.000000000 Z
11
+ date: 2014-11-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: killbill
@@ -16,12 +16,12 @@ dependencies:
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.0
19
+ version: 3.1.12
20
20
  requirement: !ruby/object:Gem::Requirement
21
21
  requirements:
22
22
  - - ~>
23
23
  - !ruby/object:Gem::Version
24
- version: 3.0.0
24
+ version: 3.1.12
25
25
  prerelease: false
26
26
  type: :runtime
27
27
  - !ruby/object:Gem::Dependency
@@ -30,12 +30,26 @@ dependencies:
30
30
  requirements:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: 1.42.3
33
+ version: 1.44.1
34
34
  requirement: !ruby/object:Gem::Requirement
35
35
  requirements:
36
36
  - - ~>
37
37
  - !ruby/object:Gem::Version
38
- version: 1.42.3
38
+ version: 1.44.1
39
+ prerelease: false
40
+ type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: offsite_payments
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 2.0.1
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - ~>
51
+ - !ruby/object:Gem::Version
52
+ version: 2.0.1
39
53
  prerelease: false
40
54
  type: :runtime
41
55
  - !ruby/object:Gem::Dependency
@@ -44,12 +58,54 @@ dependencies:
44
58
  requirements:
45
59
  - - ~>
46
60
  - !ruby/object:Gem::Version
47
- version: 3.2.1
61
+ version: 4.1.0
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ~>
65
+ - !ruby/object:Gem::Version
66
+ version: 4.1.0
67
+ prerelease: false
68
+ type: :runtime
69
+ - !ruby/object:Gem::Dependency
70
+ name: actionpack
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: 4.1.0
76
+ requirement: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ~>
79
+ - !ruby/object:Gem::Version
80
+ version: 4.1.0
81
+ prerelease: false
82
+ type: :runtime
83
+ - !ruby/object:Gem::Dependency
84
+ name: actionview
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 4.1.0
48
90
  requirement: !ruby/object:Gem::Requirement
49
91
  requirements:
50
92
  - - ~>
51
93
  - !ruby/object:Gem::Version
52
- version: 3.2.1
94
+ version: 4.1.0
95
+ prerelease: false
96
+ type: :runtime
97
+ - !ruby/object:Gem::Dependency
98
+ name: activesupport
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 4.1.0
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ~>
107
+ - !ruby/object:Gem::Version
108
+ version: 4.1.0
53
109
  prerelease: false
54
110
  type: :runtime
55
111
  - !ruby/object:Gem::Dependency
@@ -58,12 +114,26 @@ dependencies:
58
114
  requirements:
59
115
  - - ~>
60
116
  - !ruby/object:Gem::Version
61
- version: 6.0.0
117
+ version: 6.1.1
62
118
  requirement: !ruby/object:Gem::Requirement
63
119
  requirements:
64
120
  - - ~>
65
121
  - !ruby/object:Gem::Version
66
- version: 6.0.0
122
+ version: 6.1.1
123
+ prerelease: false
124
+ type: :runtime
125
+ - !ruby/object:Gem::Dependency
126
+ name: monetize
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 0.3.0
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ~>
135
+ - !ruby/object:Gem::Version
136
+ version: 0.3.0
67
137
  prerelease: false
68
138
  type: :runtime
69
139
  - !ruby/object:Gem::Dependency
@@ -86,12 +156,26 @@ dependencies:
86
156
  requirements:
87
157
  - - ~>
88
158
  - !ruby/object:Gem::Version
89
- version: 1.2.9
159
+ version: 1.3.7
160
+ requirement: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - ~>
163
+ - !ruby/object:Gem::Version
164
+ version: 1.3.7
165
+ prerelease: false
166
+ type: :runtime
167
+ - !ruby/object:Gem::Dependency
168
+ name: jruby-openssl
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: 0.9.4
90
174
  requirement: !ruby/object:Gem::Requirement
91
175
  requirements:
92
176
  - - ~>
93
177
  - !ruby/object:Gem::Version
94
- version: 1.2.9
178
+ version: 0.9.4
95
179
  prerelease: false
96
180
  type: :runtime
97
181
  - !ruby/object:Gem::Dependency
@@ -142,12 +226,12 @@ dependencies:
142
226
  requirements:
143
227
  - - ~>
144
228
  - !ruby/object:Gem::Version
145
- version: 1.2.6
229
+ version: 1.3.7
146
230
  requirement: !ruby/object:Gem::Requirement
147
231
  requirements:
148
232
  - - ~>
149
233
  - !ruby/object:Gem::Version
150
- version: 1.2.6
234
+ version: 1.3.7
151
235
  prerelease: false
152
236
  type: :development
153
237
  description: Kill Bill payment plugin for Stripe.
@@ -160,6 +244,7 @@ files:
160
244
  - .travis.yml
161
245
  - Gemfile
162
246
  - Jarfile
247
+ - LICENSE
163
248
  - NEWS
164
249
  - README.md
165
250
  - Rakefile
@@ -171,23 +256,18 @@ files:
171
256
  - killbill.properties
172
257
  - lib/stripe.rb
173
258
  - lib/stripe/api.rb
174
- - lib/stripe/config/application.rb
175
- - lib/stripe/config/configuration.rb
176
- - lib/stripe/config/properties.rb
177
- - lib/stripe/models/stripe_payment_method.rb
178
- - lib/stripe/models/stripe_response.rb
179
- - lib/stripe/models/stripe_transaction.rb
259
+ - lib/stripe/application.rb
260
+ - lib/stripe/models/payment_method.rb
261
+ - lib/stripe/models/response.rb
262
+ - lib/stripe/models/transaction.rb
180
263
  - lib/stripe/private_api.rb
181
- - lib/stripe/stripe/gateway.rb
182
- - lib/stripe/stripe_utils.rb
183
264
  - lib/stripe/views/stripejs.erb
184
265
  - pom.xml
185
266
  - release.sh
186
267
  - spec/spec_helper.rb
187
268
  - spec/stripe/base_plugin_spec.rb
188
269
  - spec/stripe/remote/integration_spec.rb
189
- - spec/stripe/stripe_payment_method_spec.rb
190
- - spec/stripe/stripe_response_spec.rb
270
+ - stripe.yml
191
271
  homepage: http://kill-bill.org
192
272
  licenses:
193
273
  - Apache License (2.0)
@@ -218,5 +298,3 @@ test_files:
218
298
  - spec/spec_helper.rb
219
299
  - spec/stripe/base_plugin_spec.rb
220
300
  - spec/stripe/remote/integration_spec.rb
221
- - spec/stripe/stripe_payment_method_spec.rb
222
- - spec/stripe/stripe_response_spec.rb