killbill-client 2.4.0 → 3.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +24 -118
- data/.github/CONTRIBUTING.md +20 -0
- data/.github/FUNDING.yml +3 -0
- data/.github/workflows/ci.yml +145 -0
- data/.github/workflows/release.yml +46 -0
- data/README.md +2 -1
- data/bin/retry +21 -0
- data/docker/docker-compose.ci.mysql.yml +21 -0
- data/docker/docker-compose.ci.postgresql.yml +21 -0
- data/killbill_client.gemspec +2 -1
- data/lib/killbill_client.rb +2 -0
- data/lib/killbill_client/api/api.rb +1 -1
- data/lib/killbill_client/api/net_http_adapter.rb +30 -16
- data/lib/killbill_client/models/account.rb +12 -24
- data/lib/killbill_client/models/admin.rb +131 -0
- data/lib/killbill_client/models/bundle.rb +2 -0
- data/lib/killbill_client/models/credit.rb +5 -5
- data/lib/killbill_client/models/custom_field.rb +17 -0
- data/lib/killbill_client/models/gen/account_attributes.rb +0 -1
- data/lib/killbill_client/models/gen/{block_price_override_attributes.rb → block_price_attributes.rb} +1 -1
- data/lib/killbill_client/models/gen/invoice_attributes.rb +1 -0
- data/lib/killbill_client/models/gen/invoice_item_attributes.rb +1 -0
- data/lib/killbill_client/models/gen/overdue_state_attributes.rb +0 -1
- data/lib/killbill_client/models/gen/{phase_price_override_attributes.rb → phase_price_attributes.rb} +2 -2
- data/lib/killbill_client/models/gen/require_gen.rb +52 -53
- data/lib/killbill_client/models/gen/subscription_attributes.rb +2 -0
- data/lib/killbill_client/models/gen/{tier_price_override_attributes.rb → tier_price_attributes.rb} +2 -2
- data/lib/killbill_client/models/gen/{usage_price_override_attributes.rb → usage_price_attributes.rb} +2 -2
- data/lib/killbill_client/models/helpers/custom_field_helper.rb +1 -1
- data/lib/killbill_client/models/invoice.rb +7 -7
- data/lib/killbill_client/models/invoice_item.rb +4 -1
- data/lib/killbill_client/models/invoice_payment.rb +3 -0
- data/lib/killbill_client/models/models.rb +1 -0
- data/lib/killbill_client/models/resource.rb +1 -1
- data/lib/killbill_client/models/subscription.rb +23 -1
- data/lib/killbill_client/version.rb +1 -16
- data/spec/killbill_client/http_adapter_spec.rb +38 -0
- data/spec/killbill_client/remote/model_spec.rb +15 -12
- metadata +30 -9
- data/lib/killbill_client/models/gen/credit_attributes.rb +0 -43
- data/lib/killbill_client/models/gen/invoice_email_attributes.rb +0 -35
@@ -30,7 +30,6 @@ module KillBillClient
|
|
30
30
|
class OverdueStateAttributes < Resource
|
31
31
|
attribute :name
|
32
32
|
attribute :external_message
|
33
|
-
attribute :days_between_payment_retries
|
34
33
|
attribute :is_disable_entitlement_and_changes_blocked
|
35
34
|
attribute :is_block_changes
|
36
35
|
attribute :is_clear_state
|
data/lib/killbill_client/models/gen/{phase_price_override_attributes.rb → phase_price_attributes.rb}
RENAMED
@@ -27,13 +27,13 @@
|
|
27
27
|
|
28
28
|
module KillBillClient
|
29
29
|
module Model
|
30
|
-
class
|
30
|
+
class PhasePriceAttributes < Resource
|
31
31
|
attribute :plan_name
|
32
32
|
attribute :phase_name
|
33
33
|
attribute :phase_type
|
34
34
|
attribute :fixed_price
|
35
35
|
attribute :recurring_price
|
36
|
-
attribute :
|
36
|
+
attribute :usage_prices
|
37
37
|
end
|
38
38
|
end
|
39
39
|
end
|
@@ -24,7 +24,27 @@
|
|
24
24
|
# File automatically generated by killbill-java-parser (git@github.com:killbill/killbill-java-parser.git)
|
25
25
|
#
|
26
26
|
|
27
|
-
|
27
|
+
|
28
|
+
require 'killbill_client/models/gen/invoice_item_attributes'
|
29
|
+
require 'killbill_client/models/gen/combo_hosted_payment_page_attributes'
|
30
|
+
require 'killbill_client/models/gen/simple_plan_attributes'
|
31
|
+
require 'killbill_client/models/gen/bundle_timeline_attributes'
|
32
|
+
require 'killbill_client/models/gen/payment_transaction_attributes'
|
33
|
+
require 'killbill_client/models/gen/unit_usage_record_attributes'
|
34
|
+
require 'killbill_client/models/gen/usage_record_attributes'
|
35
|
+
require 'killbill_client/models/gen/subscription_usage_record_attributes'
|
36
|
+
require 'killbill_client/models/gen/rolled_up_unit_attributes'
|
37
|
+
require 'killbill_client/models/gen/rolled_up_usage_attributes'
|
38
|
+
require 'killbill_client/models/gen/role_definition_attributes'
|
39
|
+
require 'killbill_client/models/gen/usage_price_attributes'
|
40
|
+
require 'killbill_client/models/gen/combo_payment_transaction_attributes'
|
41
|
+
require 'killbill_client/models/gen/hosted_payment_page_fields_attributes'
|
42
|
+
require 'killbill_client/models/gen/plan_detail_attributes'
|
43
|
+
require 'killbill_client/models/gen/invoice_payment_transaction_attributes'
|
44
|
+
require 'killbill_client/models/gen/overdue_attributes'
|
45
|
+
require 'killbill_client/models/gen/tier_price_attributes'
|
46
|
+
require 'killbill_client/models/gen/tag_definition_attributes'
|
47
|
+
require 'killbill_client/models/gen/hosted_payment_page_billing_address_attributes'
|
28
48
|
require 'killbill_client/models/gen/unit_attributes'
|
29
49
|
require 'killbill_client/models/gen/product_attributes'
|
30
50
|
require 'killbill_client/models/gen/plan_attributes'
|
@@ -37,67 +57,46 @@ require 'killbill_client/models/gen/price_attributes'
|
|
37
57
|
require 'killbill_client/models/gen/price_list_attributes'
|
38
58
|
require 'killbill_client/models/gen/duration_attributes'
|
39
59
|
require 'killbill_client/models/gen/catalog_attributes'
|
60
|
+
require 'killbill_client/models/gen/custom_field_attributes'
|
61
|
+
require 'killbill_client/models/gen/overdue_state_attributes'
|
62
|
+
require 'killbill_client/models/gen/overdue_condition_attributes'
|
63
|
+
require 'killbill_client/models/gen/bundle_attributes'
|
64
|
+
require 'killbill_client/models/gen/invoice_attributes'
|
40
65
|
require 'killbill_client/models/gen/payment_attributes'
|
41
|
-
require 'killbill_client/models/gen/tag_definition_attributes'
|
42
|
-
require 'killbill_client/models/gen/payment_transaction_attributes'
|
43
|
-
require 'killbill_client/models/gen/bulk_subscriptions_bundle_attributes'
|
44
|
-
require 'killbill_client/models/gen/simple_plan_attributes'
|
45
66
|
require 'killbill_client/models/gen/node_command_attributes'
|
46
|
-
require 'killbill_client/models/gen/
|
47
|
-
require 'killbill_client/models/gen/
|
48
|
-
require 'killbill_client/models/gen/
|
49
|
-
require 'killbill_client/models/gen/stack_trace_element_attributes'
|
50
|
-
require 'killbill_client/models/gen/billing_exception_attributes'
|
51
|
-
require 'killbill_client/models/gen/usage_price_override_attributes'
|
67
|
+
require 'killbill_client/models/gen/payment_method_plugin_detail_attributes'
|
68
|
+
require 'killbill_client/models/gen/payment_method_attributes'
|
69
|
+
require 'killbill_client/models/gen/node_command_property_attributes'
|
52
70
|
require 'killbill_client/models/gen/tenant_key_value_attributes'
|
53
|
-
require 'killbill_client/models/gen/
|
54
|
-
require 'killbill_client/models/gen/
|
55
|
-
require 'killbill_client/models/gen/
|
71
|
+
require 'killbill_client/models/gen/phase_price_attributes'
|
72
|
+
require 'killbill_client/models/gen/overdue_state_config_attributes'
|
73
|
+
require 'killbill_client/models/gen/invoice_payment_attributes'
|
74
|
+
require 'killbill_client/models/gen/blocking_state_attributes'
|
75
|
+
require 'killbill_client/models/gen/audit_log_attributes'
|
56
76
|
require 'killbill_client/models/gen/payment_attempt_attributes'
|
77
|
+
require 'killbill_client/models/gen/node_info_attributes'
|
57
78
|
require 'killbill_client/models/gen/notification_attributes'
|
58
|
-
require 'killbill_client/models/gen/overdue_state_attributes'
|
59
|
-
require 'killbill_client/models/gen/custom_field_attributes'
|
60
|
-
require 'killbill_client/models/gen/role_definition_attributes'
|
61
|
-
require 'killbill_client/models/gen/tier_price_override_attributes'
|
62
|
-
require 'killbill_client/models/gen/invoice_item_attributes'
|
63
|
-
require 'killbill_client/models/gen/plugin_property_attributes'
|
64
|
-
require 'killbill_client/models/gen/admin_payment_attributes'
|
65
79
|
require 'killbill_client/models/gen/event_subscription_attributes'
|
66
80
|
require 'killbill_client/models/gen/subscription_attributes'
|
81
|
+
require 'killbill_client/models/gen/account_timeline_attributes'
|
82
|
+
require 'killbill_client/models/gen/plugin_service_info_attributes'
|
83
|
+
require 'killbill_client/models/gen/plugin_info_attributes'
|
67
84
|
require 'killbill_client/models/gen/tenant_attributes'
|
68
|
-
require 'killbill_client/models/gen/
|
69
|
-
require 'killbill_client/models/gen/
|
70
|
-
require 'killbill_client/models/gen/subscription_usage_record_attributes'
|
71
|
-
require 'killbill_client/models/gen/gateway_notification_attributes'
|
72
|
-
require 'killbill_client/models/gen/audit_log_attributes'
|
73
|
-
require 'killbill_client/models/gen/invoice_payment_transaction_attributes'
|
74
|
-
require 'killbill_client/models/gen/account_attributes'
|
75
|
-
require 'killbill_client/models/gen/invoice_attributes'
|
76
|
-
require 'killbill_client/models/gen/block_price_override_attributes'
|
85
|
+
require 'killbill_client/models/gen/plugin_property_attributes'
|
86
|
+
require 'killbill_client/models/gen/user_roles_attributes'
|
77
87
|
require 'killbill_client/models/gen/profiling_data_attributes_item'
|
78
88
|
require 'killbill_client/models/gen/profiling_data_attributes'
|
79
|
-
require 'killbill_client/models/gen/
|
80
|
-
require 'killbill_client/models/gen/
|
81
|
-
require 'killbill_client/models/gen/bundle_attributes'
|
82
|
-
require 'killbill_client/models/gen/combo_hosted_payment_page_attributes'
|
83
|
-
require 'killbill_client/models/gen/plan_detail_attributes'
|
84
|
-
require 'killbill_client/models/gen/overdue_attributes'
|
85
|
-
require 'killbill_client/models/gen/user_roles_attributes'
|
86
|
-
require 'killbill_client/models/gen/bundle_timeline_attributes'
|
87
|
-
require 'killbill_client/models/gen/plugin_service_info_attributes'
|
88
|
-
require 'killbill_client/models/gen/plugin_info_attributes'
|
89
|
-
require 'killbill_client/models/gen/phase_price_override_attributes'
|
89
|
+
require 'killbill_client/models/gen/admin_payment_attributes'
|
90
|
+
require 'killbill_client/models/gen/account_email_attributes'
|
90
91
|
require 'killbill_client/models/gen/hosted_payment_page_form_descriptor_attributes'
|
91
|
-
require 'killbill_client/models/gen/
|
92
|
-
require 'killbill_client/models/gen/
|
93
|
-
require 'killbill_client/models/gen/
|
94
|
-
require 'killbill_client/models/gen/
|
95
|
-
require 'killbill_client/models/gen/
|
96
|
-
require 'killbill_client/models/gen/
|
97
|
-
require 'killbill_client/models/gen/
|
92
|
+
require 'killbill_client/models/gen/bulk_subscriptions_bundle_attributes'
|
93
|
+
require 'killbill_client/models/gen/subject_attributes'
|
94
|
+
require 'killbill_client/models/gen/stack_trace_element_attributes'
|
95
|
+
require 'killbill_client/models/gen/billing_exception_attributes'
|
96
|
+
require 'killbill_client/models/gen/hosted_payment_page_customer_attributes'
|
97
|
+
require 'killbill_client/models/gen/gateway_notification_attributes'
|
98
|
+
require 'killbill_client/models/gen/account_attributes'
|
99
|
+
require 'killbill_client/models/gen/invoice_dry_run_attributes'
|
98
100
|
require 'killbill_client/models/gen/session_attributes'
|
99
|
-
require 'killbill_client/models/gen/
|
100
|
-
require 'killbill_client/models/gen/
|
101
|
-
require 'killbill_client/models/gen/payment_method_plugin_detail_attributes'
|
102
|
-
require 'killbill_client/models/gen/payment_method_attributes'
|
103
|
-
require 'killbill_client/models/gen/subject_attributes'
|
101
|
+
require 'killbill_client/models/gen/block_price_attributes'
|
102
|
+
require 'killbill_client/models/gen/tag_attributes'
|
@@ -30,6 +30,7 @@ module KillBillClient
|
|
30
30
|
class SubscriptionAttributes < Resource
|
31
31
|
attribute :account_id
|
32
32
|
attribute :bundle_id
|
33
|
+
attribute :bundle_external_key
|
33
34
|
attribute :subscription_id
|
34
35
|
attribute :external_key
|
35
36
|
attribute :start_date
|
@@ -48,6 +49,7 @@ module KillBillClient
|
|
48
49
|
attribute :bill_cycle_day_local
|
49
50
|
attribute :events
|
50
51
|
attribute :price_overrides
|
52
|
+
attribute :prices
|
51
53
|
attribute :audit_logs
|
52
54
|
end
|
53
55
|
end
|
data/lib/killbill_client/models/gen/{usage_price_override_attributes.rb → usage_price_attributes.rb}
RENAMED
@@ -27,12 +27,12 @@
|
|
27
27
|
|
28
28
|
module KillBillClient
|
29
29
|
module Model
|
30
|
-
class
|
30
|
+
class UsagePriceAttributes < Resource
|
31
31
|
attribute :usage_name
|
32
32
|
attribute :usage_type
|
33
33
|
attribute :billing_mode
|
34
34
|
attribute :tier_block_policy
|
35
|
-
attribute :
|
35
|
+
attribute :tier_prices
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
@@ -4,41 +4,41 @@ module KillBillClient
|
|
4
4
|
|
5
5
|
include KillBillClient::Model::CustomFieldHelper
|
6
6
|
include KillBillClient::Model::TagHelper
|
7
|
+
include KillBillClient::Model::AuditLogWithHistoryHelper
|
7
8
|
|
8
9
|
KILLBILL_API_INVOICES_PREFIX = "#{KILLBILL_API_PREFIX}/invoices"
|
9
10
|
KILLBILL_API_DRY_RUN_INVOICES_PREFIX = "#{KILLBILL_API_INVOICES_PREFIX}/dryRun"
|
10
11
|
|
11
12
|
has_many :audit_logs, KillBillClient::Model::AuditLog
|
12
13
|
has_many :items, KillBillClient::Model::InvoiceItem
|
13
|
-
has_many :credits, KillBillClient::Model::
|
14
|
+
has_many :credits, KillBillClient::Model::InvoiceItem
|
14
15
|
|
15
16
|
has_custom_fields KILLBILL_API_INVOICES_PREFIX, :invoice_id
|
16
17
|
has_tags KILLBILL_API_INVOICES_PREFIX, :invoice_id
|
18
|
+
has_audit_logs_with_history KILLBILL_API_INVOICES_PREFIX, :invoice_id
|
19
|
+
|
17
20
|
|
18
21
|
class << self
|
19
|
-
def find_by_id(invoice_id,
|
22
|
+
def find_by_id(invoice_id, audit = "NONE", options = {})
|
20
23
|
get "#{KILLBILL_API_INVOICES_PREFIX}/#{invoice_id}",
|
21
24
|
{
|
22
|
-
:withItems => with_items,
|
23
25
|
:audit => audit
|
24
26
|
},
|
25
27
|
options
|
26
28
|
end
|
27
29
|
|
28
|
-
def find_by_number(number,
|
30
|
+
def find_by_number(number, audit = "NONE", options = {})
|
29
31
|
get "#{KILLBILL_API_INVOICES_PREFIX}/byNumber/#{number}",
|
30
32
|
{
|
31
|
-
:withItems => with_items,
|
32
33
|
:audit => audit
|
33
34
|
},
|
34
35
|
options
|
35
36
|
end
|
36
37
|
|
37
|
-
def find_by_invoice_item_id(invoice_item_id,
|
38
|
+
def find_by_invoice_item_id(invoice_item_id, with_children_items = false, audit = "NONE", options = {})
|
38
39
|
get "#{KILLBILL_API_INVOICES_PREFIX}/byItemId/#{invoice_item_id}",
|
39
40
|
{
|
40
41
|
:withChildrenItems => with_children_items,
|
41
|
-
:withItems => with_items,
|
42
42
|
:audit => audit
|
43
43
|
},
|
44
44
|
options
|
@@ -6,12 +6,15 @@ module KillBillClient
|
|
6
6
|
|
7
7
|
include KillBillClient::Model::TagHelper
|
8
8
|
include KillBillClient::Model::CustomFieldHelper
|
9
|
+
include KillBillClient::Model::AuditLogWithHistoryHelper
|
9
10
|
|
10
11
|
has_custom_fields KILLBILL_API_INVOICE_ITEMS_PREFIX, :invoice_item_id
|
11
12
|
has_tags KILLBILL_API_INVOICE_ITEMS_PREFIX, :invoice_item_id
|
12
|
-
|
13
13
|
has_many :audit_logs, KillBillClient::Model::AuditLog
|
14
14
|
|
15
|
+
has_audit_logs_with_history KILLBILL_API_INVOICE_ITEMS_PREFIX, :invoice_item_id
|
16
|
+
|
17
|
+
|
15
18
|
# DO NOT DELETE THIS METHOD
|
16
19
|
def tags(included_deleted = false, audit = 'NONE', options = {})
|
17
20
|
params = {}
|
@@ -4,6 +4,7 @@ module KillBillClient
|
|
4
4
|
|
5
5
|
include KillBillClient::Model::CustomFieldHelper
|
6
6
|
include KillBillClient::Model::TagHelper
|
7
|
+
include KillBillClient::Model::AuditLogWithHistoryHelper
|
7
8
|
|
8
9
|
KILLBILL_API_INVOICE_PAYMENTS_PREFIX = "#{KILLBILL_API_PREFIX}/invoicePayments"
|
9
10
|
|
@@ -14,6 +15,8 @@ module KillBillClient
|
|
14
15
|
has_custom_fields KILLBILL_API_INVOICE_PAYMENTS_PREFIX, :payment_id
|
15
16
|
has_tags KILLBILL_API_INVOICE_PAYMENTS_PREFIX, :payment_id
|
16
17
|
|
18
|
+
has_audit_logs_with_history KILLBILL_API_INVOICE_PAYMENTS_PREFIX, :payment_id
|
19
|
+
|
17
20
|
class << self
|
18
21
|
def find_by_id(payment_id, with_plugin_info = false, with_attempts = false, options = {})
|
19
22
|
get "#{KILLBILL_API_INVOICE_PAYMENTS_PREFIX}/#{payment_id}",
|
@@ -42,6 +42,7 @@ require 'killbill_client/models/usage_record'
|
|
42
42
|
require 'killbill_client/models/rolled_up_usage'
|
43
43
|
require 'killbill_client/models/account_timeline'
|
44
44
|
require 'killbill_client/models/nodes_info'
|
45
|
+
require 'killbill_client/models/admin'
|
45
46
|
|
46
47
|
require 'killbill_client/models/export'
|
47
48
|
|
@@ -4,21 +4,42 @@ module KillBillClient
|
|
4
4
|
|
5
5
|
include KillBillClient::Model::TagHelper
|
6
6
|
include KillBillClient::Model::CustomFieldHelper
|
7
|
+
include KillBillClient::Model::AuditLogWithHistoryHelper
|
7
8
|
|
8
9
|
KILLBILL_API_ENTITLEMENT_PREFIX = "#{KILLBILL_API_PREFIX}/subscriptions"
|
9
10
|
|
10
11
|
has_many :events, KillBillClient::Model::EventSubscription
|
11
|
-
has_many :price_overrides, KillBillClient::Model::
|
12
|
+
has_many :price_overrides, KillBillClient::Model::PhasePriceAttributes
|
12
13
|
|
13
14
|
has_custom_fields KILLBILL_API_ENTITLEMENT_PREFIX, :subscription_id
|
14
15
|
has_tags KILLBILL_API_ENTITLEMENT_PREFIX, :subscription_id
|
15
16
|
|
17
|
+
has_audit_logs_with_history KILLBILL_API_ENTITLEMENT_PREFIX, :subscription_id
|
18
|
+
|
16
19
|
class << self
|
17
20
|
def find_by_id(subscription_id, options = {})
|
18
21
|
get "#{KILLBILL_API_ENTITLEMENT_PREFIX}/#{subscription_id}",
|
19
22
|
{},
|
20
23
|
options
|
21
24
|
end
|
25
|
+
|
26
|
+
def find_by_external_key(external_key, options = {})
|
27
|
+
params = {}
|
28
|
+
params[:externalKey] = external_key
|
29
|
+
|
30
|
+
get "#{KILLBILL_API_ENTITLEMENT_PREFIX}",
|
31
|
+
params,
|
32
|
+
options
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
def event_audit_logs_with_history(event_id, options = {})
|
37
|
+
get "#{KILLBILL_API_ENTITLEMENT_PREFIX}/events/#{event_id}/auditLogsWithHistory",
|
38
|
+
{},
|
39
|
+
options,
|
40
|
+
AuditLog
|
41
|
+
end
|
42
|
+
|
22
43
|
end
|
23
44
|
#
|
24
45
|
# Create a new entitlement
|
@@ -196,6 +217,7 @@ module KillBillClient
|
|
196
217
|
:comment => comment,
|
197
218
|
}.merge(options)
|
198
219
|
end
|
220
|
+
|
199
221
|
end
|
200
222
|
end
|
201
223
|
end
|
@@ -1,18 +1,3 @@
|
|
1
1
|
module KillBillClient
|
2
|
-
|
3
|
-
MAJOR = 2
|
4
|
-
MINOR = 4
|
5
|
-
PATCH = 0
|
6
|
-
PRE = nil
|
7
|
-
|
8
|
-
VERSION = [MAJOR, MINOR, PATCH, PRE].compact.join('.').freeze
|
9
|
-
|
10
|
-
class << self
|
11
|
-
def inspect
|
12
|
-
VERSION.dup
|
13
|
-
end
|
14
|
-
|
15
|
-
alias to_s inspect
|
16
|
-
end
|
17
|
-
end
|
2
|
+
VERSION = '3.3.0'
|
18
3
|
end
|
@@ -1,6 +1,14 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe KillBillClient::API do
|
4
|
+
|
5
|
+
before do
|
6
|
+
KillBillClient.url = nil
|
7
|
+
KillBillClient.disable_ssl_verification = nil
|
8
|
+
KillBillClient.read_timeout = nil
|
9
|
+
KillBillClient.connection_timeout = nil
|
10
|
+
end
|
11
|
+
|
4
12
|
let(:expected_query_params) {
|
5
13
|
[
|
6
14
|
'controlPluginName=killbill-example-plugin',
|
@@ -55,11 +63,33 @@ describe KillBillClient::API do
|
|
55
63
|
http_adapter = DummyForHTTPAdapter.new
|
56
64
|
http_client = http_adapter.send(:create_http_client, uri)
|
57
65
|
expect(http_client.read_timeout).to eq(60)
|
66
|
+
# The default value has changed from nil to 60 in 2.4
|
67
|
+
#expect(http_client.open_timeout).to eq(60)
|
58
68
|
expect(http_client.use_ssl?).to be false
|
59
69
|
expect(http_client.verify_mode).to be_nil
|
60
70
|
end
|
61
71
|
|
72
|
+
it 'should set the global parameters for http client' do
|
73
|
+
KillBillClient.url = 'https://example.com'
|
74
|
+
KillBillClient.read_timeout = 123000
|
75
|
+
KillBillClient.connection_timeout = 456000
|
76
|
+
KillBillClient.disable_ssl_verification = true
|
77
|
+
|
78
|
+
http_adapter = DummyForHTTPAdapter.new
|
79
|
+
http_client = http_adapter.send(:create_http_client, ssl_uri, {})
|
80
|
+
expect(http_client.read_timeout).to eq(123)
|
81
|
+
expect(http_client.open_timeout).to eq(456)
|
82
|
+
expect(http_client.use_ssl?).to be true
|
83
|
+
expect(http_client.verify_mode).to eq(OpenSSL::SSL::VERIFY_NONE)
|
84
|
+
end
|
85
|
+
|
62
86
|
it 'should set the correct parameters for http client' do
|
87
|
+
# These don't matter (overridden by options)
|
88
|
+
KillBillClient.url = 'https://example.com'
|
89
|
+
KillBillClient.read_timeout = 123000
|
90
|
+
KillBillClient.connection_timeout = 456000
|
91
|
+
KillBillClient.disable_ssl_verification = false
|
92
|
+
|
63
93
|
http_adapter = DummyForHTTPAdapter.new
|
64
94
|
http_client = http_adapter.send(:create_http_client, ssl_uri, options)
|
65
95
|
expect(http_client.read_timeout).to eq(options[:read_timeout] / 1000)
|
@@ -68,6 +98,14 @@ describe KillBillClient::API do
|
|
68
98
|
expect(http_client.verify_mode).to eq(OpenSSL::SSL::VERIFY_NONE)
|
69
99
|
end
|
70
100
|
|
101
|
+
# See https://github.com/killbill/killbill-client-ruby/issues/69
|
102
|
+
it 'should construct URIs' do
|
103
|
+
KillBillClient.url = 'http://example.com:8080'
|
104
|
+
|
105
|
+
http_adapter = DummyForHTTPAdapter.new
|
106
|
+
uri = http_adapter.send(:build_uri, KillBillClient::Model::Account::KILLBILL_API_ACCOUNTS_PREFIX, options)
|
107
|
+
expect(uri).to eq(URI.parse("#{KillBillClient::API.base_uri.to_s}/1.0/kb/accounts"))
|
108
|
+
end
|
71
109
|
end
|
72
110
|
|
73
111
|
class DummyForHTTPAdapter
|