killbill 9.4.0 → 9.4.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.
- 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
|