killbill 9.4.0 → 9.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/NEWS +4 -0
- data/lib/killbill/gen/api/account.rb +2 -2
- data/lib/killbill/gen/api/account_data.rb +1 -1
- data/lib/killbill/gen/api/immutable_account_data.rb +2 -2
- data/lib/killbill/gen/api/mutable_account_data.rb +1 -1
- data/lib/killbill/helpers/active_merchant/active_record/models/response.rb +5 -1
- data/lib/killbill/version.rb +1 -1
- data/spec/killbill/gen_conversions_spec.rb +45 -0
- data/spec/killbill/helpers/payment_plugin_spec.rb +8 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b2ed9bf17849149d7c821a00f0b72a71944bf65e
|
4
|
+
data.tar.gz: 00e2b87c71e9840ffea55aaf5b1c81bec35d6459
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6c4bbbea7c699ab7a6bb98bbd8942a6fdb0c29eeaca8e18707029eede4bbd650b36ac1bff3a90bcf2220a65904a73c13c9fbeb299d1f4cb04a4ed7ee827b1358
|
7
|
+
data.tar.gz: b5837953b7f37a6cdd46ebf4feaa35113fd510012d319fbe8bbc710f1c8aef0a0744796e7cd5b03ca54e74d54ef3e58ef84a04a76f37a68352fcc7595270ff68
|
data/Gemfile.lock
CHANGED
data/NEWS
CHANGED
@@ -164,13 +164,13 @@ module Killbill
|
|
164
164
|
# conversion for time_zone [type = org.joda.time.DateTimeZone]
|
165
165
|
@time_zone = j_obj.time_zone
|
166
166
|
if !@time_zone.nil?
|
167
|
-
@time_zone = TZInfo::Timezone.get(@time_zone.get_id)
|
167
|
+
@time_zone = TZInfo::Timezone.get(@time_zone.get_id) rescue @time_zone.get_id
|
168
168
|
end
|
169
169
|
|
170
170
|
# conversion for fixed_offset_time_zone [type = org.joda.time.DateTimeZone]
|
171
171
|
@fixed_offset_time_zone = j_obj.fixed_offset_time_zone
|
172
172
|
if !@fixed_offset_time_zone.nil?
|
173
|
-
@fixed_offset_time_zone = TZInfo::Timezone.get(@fixed_offset_time_zone.get_id)
|
173
|
+
@fixed_offset_time_zone = TZInfo::Timezone.get(@fixed_offset_time_zone.get_id) rescue @fixed_offset_time_zone.get_id
|
174
174
|
end
|
175
175
|
|
176
176
|
# conversion for reference_time [type = org.joda.time.DateTime]
|
@@ -148,7 +148,7 @@ module Killbill
|
|
148
148
|
# conversion for time_zone [type = org.joda.time.DateTimeZone]
|
149
149
|
@time_zone = j_obj.time_zone
|
150
150
|
if !@time_zone.nil?
|
151
|
-
@time_zone = TZInfo::Timezone.get(@time_zone.get_id)
|
151
|
+
@time_zone = TZInfo::Timezone.get(@time_zone.get_id) rescue @time_zone.get_id
|
152
152
|
end
|
153
153
|
|
154
154
|
# conversion for locale [type = java.lang.String]
|
@@ -82,13 +82,13 @@ module Killbill
|
|
82
82
|
# conversion for time_zone [type = org.joda.time.DateTimeZone]
|
83
83
|
@time_zone = j_obj.time_zone
|
84
84
|
if !@time_zone.nil?
|
85
|
-
@time_zone = TZInfo::Timezone.get(@time_zone.get_id)
|
85
|
+
@time_zone = TZInfo::Timezone.get(@time_zone.get_id) rescue @time_zone.get_id
|
86
86
|
end
|
87
87
|
|
88
88
|
# conversion for fixed_offset_time_zone [type = org.joda.time.DateTimeZone]
|
89
89
|
@fixed_offset_time_zone = j_obj.fixed_offset_time_zone
|
90
90
|
if !@fixed_offset_time_zone.nil?
|
91
|
-
@fixed_offset_time_zone = TZInfo::Timezone.get(@fixed_offset_time_zone.get_id)
|
91
|
+
@fixed_offset_time_zone = TZInfo::Timezone.get(@fixed_offset_time_zone.get_id) rescue @fixed_offset_time_zone.get_id
|
92
92
|
end
|
93
93
|
|
94
94
|
# conversion for reference_time [type = org.joda.time.DateTime]
|
@@ -148,7 +148,7 @@ module Killbill
|
|
148
148
|
# conversion for time_zone [type = org.joda.time.DateTimeZone]
|
149
149
|
@time_zone = j_obj.time_zone
|
150
150
|
if !@time_zone.nil?
|
151
|
-
@time_zone = TZInfo::Timezone.get(@time_zone.get_id)
|
151
|
+
@time_zone = TZInfo::Timezone.get(@time_zone.get_id) rescue @time_zone.get_id
|
152
152
|
end
|
153
153
|
|
154
154
|
# conversion for locale [type = java.lang.String]
|
@@ -198,7 +198,7 @@ module Killbill
|
|
198
198
|
pagination = ::Killbill::Plugin::Model::Pagination.new
|
199
199
|
pagination.current_offset = offset
|
200
200
|
pagination.total_nb_records = self.count_by_sql(self.search_query(search_key, kb_tenant_id))
|
201
|
-
pagination.max_nb_records = self.
|
201
|
+
pagination.max_nb_records = self.max_nb_records
|
202
202
|
pagination.next_offset = (!pagination.total_nb_records.nil? && offset + limit >= pagination.total_nb_records) ? nil : offset + limit
|
203
203
|
# Reduce the limit if the specified value is larger than the number of records
|
204
204
|
actual_limit = [pagination.max_nb_records, limit].min
|
@@ -218,6 +218,10 @@ module Killbill
|
|
218
218
|
[]
|
219
219
|
end
|
220
220
|
|
221
|
+
def self.max_nb_records
|
222
|
+
self.where(:success => true).count
|
223
|
+
end
|
224
|
+
|
221
225
|
# Override in your plugin if needed
|
222
226
|
def txn_id
|
223
227
|
authorization
|
data/lib/killbill/version.rb
CHANGED
@@ -53,6 +53,51 @@ describe Killbill::Plugin do
|
|
53
53
|
check_notification(jgw_notification2)
|
54
54
|
end
|
55
55
|
|
56
|
+
it 'should be able to handle UTC as the fixed offset timezone' do
|
57
|
+
jaccount = ::Killbill::Plugin::Model::Account.new
|
58
|
+
jaccount.id = java.util.UUID.fromString('cf5a597a-cf15-45d3-8f02-95371be7f927')
|
59
|
+
jaccount.time_zone = org.joda.time.DateTimeZone.forID('Etc/UTC')
|
60
|
+
jaccount.reference_time = org.joda.time.DateTime.new('2015-09-01T08:01:01.000Z')
|
61
|
+
jaccount.fixed_offset_time_zone = org.killbill.billing.util.account.AccountDateTimeUtils.getFixedOffsetTimeZone(jaccount)
|
62
|
+
|
63
|
+
raccount = Killbill::Plugin::Model::Account.new.to_ruby(jaccount)
|
64
|
+
raccount.id.should == 'cf5a597a-cf15-45d3-8f02-95371be7f927'
|
65
|
+
raccount.time_zone.should be_an_instance_of TZInfo::DataTimezone
|
66
|
+
raccount.time_zone.to_s.should == 'Etc - UTC'
|
67
|
+
raccount.reference_time.should == '2015-09-01T08:01:01.000Z'
|
68
|
+
raccount.fixed_offset_time_zone.should be_an_instance_of TZInfo::DataTimezone
|
69
|
+
raccount.fixed_offset_time_zone.to_s.should == 'UTC'
|
70
|
+
|
71
|
+
jaccount2 = raccount.to_java
|
72
|
+
jaccount2.id.should == jaccount.id
|
73
|
+
jaccount2.time_zone.should == jaccount.time_zone
|
74
|
+
jaccount2.reference_time.to_s.should == '2015-09-01T08:01:01.000Z'
|
75
|
+
jaccount2.fixed_offset_time_zone.should == jaccount.fixed_offset_time_zone
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'should be able to handle a non-UTC fixed offset timezone' do
|
79
|
+
jaccount = ::Killbill::Plugin::Model::Account.new
|
80
|
+
jaccount.id = java.util.UUID.fromString('cf5a597a-cf15-45d3-8f02-95371be7f927')
|
81
|
+
# Alaska Standard Time
|
82
|
+
jaccount.time_zone = org.joda.time.DateTimeZone.forID('America/Juneau')
|
83
|
+
# Time zone is AKDT (UTC-8h) between March and November
|
84
|
+
jaccount.reference_time = org.joda.time.DateTime.new('2015-09-01T08:01:01.000Z')
|
85
|
+
jaccount.fixed_offset_time_zone = org.killbill.billing.util.account.AccountDateTimeUtils.getFixedOffsetTimeZone(jaccount)
|
86
|
+
|
87
|
+
raccount = Killbill::Plugin::Model::Account.new.to_ruby(jaccount)
|
88
|
+
raccount.id.should == 'cf5a597a-cf15-45d3-8f02-95371be7f927'
|
89
|
+
raccount.time_zone.should be_an_instance_of TZInfo::DataTimezone
|
90
|
+
raccount.time_zone.to_s.should == 'America - Juneau'
|
91
|
+
raccount.reference_time.should == '2015-09-01T08:01:01.000Z'
|
92
|
+
raccount.fixed_offset_time_zone.should == '-08:00'
|
93
|
+
|
94
|
+
jaccount2 = raccount.to_java
|
95
|
+
jaccount2.id.should == jaccount.id
|
96
|
+
jaccount2.time_zone.should == jaccount.time_zone
|
97
|
+
jaccount2.reference_time.to_s.should == '2015-09-01T08:01:01.000Z'
|
98
|
+
jaccount2.fixed_offset_time_zone.should == jaccount.fixed_offset_time_zone
|
99
|
+
end
|
100
|
+
|
56
101
|
private
|
57
102
|
|
58
103
|
def check_notification(notification)
|
@@ -367,6 +367,14 @@ describe Killbill::Plugin::ActiveMerchant::PaymentPlugin do
|
|
367
367
|
results.count.should == 1
|
368
368
|
results.last.kb_payment_id.to_s.should == response.kb_payment_id
|
369
369
|
end
|
370
|
+
|
371
|
+
it "supports decimal currencies" do
|
372
|
+
plugin.to_cents(BigDecimal.new('100'), 'USD').should == 10000
|
373
|
+
end
|
374
|
+
|
375
|
+
it "supports non-decimal currencies" do
|
376
|
+
plugin.to_cents(BigDecimal.new('100'), 'JPY').should == 100
|
377
|
+
end
|
370
378
|
end
|
371
379
|
|
372
380
|
context 'with a dummy gateway' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: killbill
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.4.
|
4
|
+
version: 9.4.1
|
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:
|
11
|
+
date: 2019-01-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|