hydrogen-proton-api 1.9.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 +7 -0
- data/Gemfile +7 -0
- data/README.md +82 -0
- data/Rakefile +8 -0
- data/git_push.sh +55 -0
- data/lib/proton_api.rb +141 -0
- data/lib/proton_api/api/annuities_api.rb +347 -0
- data/lib/proton_api/api/business_financial_management_api.rb +293 -0
- data/lib/proton_api/api/cards_api.rb +185 -0
- data/lib/proton_api/api/financial_health_api.rb +239 -0
- data/lib/proton_api/api/financial_planning_api.rb +671 -0
- data/lib/proton_api/api/goals_api.rb +347 -0
- data/lib/proton_api/api/life_insurance_api.rb +77 -0
- data/lib/proton_api/api/personal_financial_management_api.rb +347 -0
- data/lib/proton_api/api/portfolio_construction_api.rb +77 -0
- data/lib/proton_api/api/portfolio_management_api.rb +77 -0
- data/lib/proton_api/api/risk_scoring_api.rb +185 -0
- data/lib/proton_api/api/simulations_api.rb +401 -0
- data/lib/proton_api/api/util_api.rb +185 -0
- data/lib/proton_api/api_client.rb +391 -0
- data/lib/proton_api/api_error.rb +38 -0
- data/lib/proton_api/auth_configuration.rb +181 -0
- data/lib/proton_api/configuration.rb +209 -0
- data/lib/proton_api/environment.rb +36 -0
- data/lib/proton_api/models/accumulation_goal_deposit_config.rb +338 -0
- data/lib/proton_api/models/annuity_calculator_accumulation_horizon_request.rb +459 -0
- data/lib/proton_api/models/annuity_calculator_annuity_amount_request.rb +461 -0
- data/lib/proton_api/models/annuity_calculator_decumulation_horizon_request.rb +459 -0
- data/lib/proton_api/models/annuity_calculator_deposit_amount_request.rb +468 -0
- data/lib/proton_api/models/annuity_calculator_initial_balance_request.rb +468 -0
- data/lib/proton_api/models/annuity_deposit_schedule.rb +254 -0
- data/lib/proton_api/models/answer.rb +186 -0
- data/lib/proton_api/models/backtest_request.rb +295 -0
- data/lib/proton_api/models/beneficiary_bequest_config.rb +257 -0
- data/lib/proton_api/models/budget_aggregation_account.rb +186 -0
- data/lib/proton_api/models/budget_calculator_request.rb +334 -0
- data/lib/proton_api/models/budget_component.rb +228 -0
- data/lib/proton_api/models/budget_details.rb +337 -0
- data/lib/proton_api/models/business_financial_health_check_request.rb +484 -0
- data/lib/proton_api/models/business_invoice_analysis_request.rb +361 -0
- data/lib/proton_api/models/calculator_deposit_schedule.rb +228 -0
- data/lib/proton_api/models/calculator_deposit_schedule1.rb +254 -0
- data/lib/proton_api/models/card_analysis_request.rb +372 -0
- data/lib/proton_api/models/card_limit_check_request.rb +231 -0
- data/lib/proton_api/models/card_transaction_authorization_request.rb +422 -0
- data/lib/proton_api/models/cash_analysis_request.rb +340 -0
- data/lib/proton_api/models/cash_flow_analysis_request.rb +366 -0
- data/lib/proton_api/models/children_education_config.rb +221 -0
- data/lib/proton_api/models/customer_analysis_request.rb +292 -0
- data/lib/proton_api/models/decision_tree_result_request.rb +236 -0
- data/lib/proton_api/models/decumulation_goal_deposit_config.rb +335 -0
- data/lib/proton_api/models/dimensional_risk_score_request.rb +282 -0
- data/lib/proton_api/models/diversification_score_request.rb +324 -0
- data/lib/proton_api/models/education_calculator_annual_cost_request.rb +450 -0
- data/lib/proton_api/models/education_calculator_deposit_amount_request.rb +483 -0
- data/lib/proton_api/models/education_calculator_percent_covered_request.rb +448 -0
- data/lib/proton_api/models/education_config.rb +271 -0
- data/lib/proton_api/models/emergency_fund_calculator_request.rb +561 -0
- data/lib/proton_api/models/event_study_request.rb +317 -0
- data/lib/proton_api/models/fee_analysis_request.rb +239 -0
- data/lib/proton_api/models/financial_health_check_request.rb +384 -0
- data/lib/proton_api/models/financial_picture_request.rb +270 -0
- data/lib/proton_api/models/financial_statement_analysis_request.rb +461 -0
- data/lib/proton_api/models/goal_accumulation_allocation_request.rb +729 -0
- data/lib/proton_api/models/goal_accumulation_recommendation_request.rb +622 -0
- data/lib/proton_api/models/goal_accumulation_status_request.rb +622 -0
- data/lib/proton_api/models/goal_config.rb +222 -0
- data/lib/proton_api/models/goal_decumulation_allocation_request.rb +764 -0
- data/lib/proton_api/models/goal_decumulation_recommendation_request.rb +657 -0
- data/lib/proton_api/models/goal_decumulation_status_request.rb +657 -0
- data/lib/proton_api/models/goal_withdrawal_config.rb +335 -0
- data/lib/proton_api/models/guaranteed_rate_benefit.rb +272 -0
- data/lib/proton_api/models/income_config.rb +266 -0
- data/lib/proton_api/models/life_insurance_needs_calculator_request.rb +515 -0
- data/lib/proton_api/models/location.rb +183 -0
- data/lib/proton_api/models/monte_carlo_request.rb +504 -0
- data/lib/proton_api/models/mortgage_calculator_down_payment_request.rb +299 -0
- data/lib/proton_api/models/mortgage_calculator_home_price_request.rb +299 -0
- data/lib/proton_api/models/mortgage_calculator_periodic_payment_request.rb +299 -0
- data/lib/proton_api/models/mvo_request.rb +366 -0
- data/lib/proton_api/models/opt_config.rb +300 -0
- data/lib/proton_api/models/opt_config1.rb +260 -0
- data/lib/proton_api/models/order_rebalance_request.rb +398 -0
- data/lib/proton_api/models/performance_calculator_request.rb +687 -0
- data/lib/proton_api/models/periods.rb +220 -0
- data/lib/proton_api/models/portfolio_optimization_score_request.rb +356 -0
- data/lib/proton_api/models/portfolio_what_if_request.rb +351 -0
- data/lib/proton_api/models/purchase_calculator_amount_request.rb +401 -0
- data/lib/proton_api/models/purchase_calculator_deposit_amount_request.rb +434 -0
- data/lib/proton_api/models/purchase_calculator_horizon_request.rb +356 -0
- data/lib/proton_api/models/ratio_targets.rb +328 -0
- data/lib/proton_api/models/ratio_targets1.rb +328 -0
- data/lib/proton_api/models/rebalancing_signal_request.rb +238 -0
- data/lib/proton_api/models/recommendation_config.rb +357 -0
- data/lib/proton_api/models/recommendation_config1.rb +346 -0
- data/lib/proton_api/models/recurring_transaction_analysis_request.rb +400 -0
- data/lib/proton_api/models/retirement_calculator_deposit_amount_request.rb +509 -0
- data/lib/proton_api/models/retirement_calculator_expenses_request.rb +476 -0
- data/lib/proton_api/models/retirement_calculator_percent_covered_request.rb +474 -0
- data/lib/proton_api/models/risk_allocation_request.rb +316 -0
- data/lib/proton_api/models/risk_score_request.rb +239 -0
- data/lib/proton_api/models/savings_calculator_request.rb +395 -0
- data/lib/proton_api/models/savings_deposit_schedule.rb +276 -0
- data/lib/proton_api/models/scenario_analysis_request.rb +401 -0
- data/lib/proton_api/models/sensitivity_analysis_request.rb +399 -0
- data/lib/proton_api/models/sensitivity_factor.rb +278 -0
- data/lib/proton_api/models/settings.rb +287 -0
- data/lib/proton_api/models/spending_analysis_request.rb +505 -0
- data/lib/proton_api/models/variable_annuity_request.rb +700 -0
- data/lib/proton_api/models/w_config.rb +382 -0
- data/lib/proton_api/models/w_config1.rb +347 -0
- data/lib/proton_api/version.rb +15 -0
- data/proton_api.gemspec +46 -0
- data/spec/api/annuities_api_spec.rb +107 -0
- data/spec/api/business_financial_management_api_spec.rb +95 -0
- data/spec/api/cards_api_spec.rb +71 -0
- data/spec/api/financial_health_api_spec.rb +83 -0
- data/spec/api/financial_planning_api_spec.rb +179 -0
- data/spec/api/goals_api_spec.rb +107 -0
- data/spec/api/life_insurance_api_spec.rb +47 -0
- data/spec/api/personal_financial_management_api_spec.rb +107 -0
- data/spec/api/portfolio_construction_api_spec.rb +47 -0
- data/spec/api/portfolio_management_api_spec.rb +47 -0
- data/spec/api/risk_scoring_api_spec.rb +71 -0
- data/spec/api/simulations_api_spec.rb +119 -0
- data/spec/api/util_api_spec.rb +71 -0
- data/spec/api_client_spec.rb +243 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/accumulation_goal_deposit_config_spec.rb +89 -0
- data/spec/models/annuity_calculator_accumulation_horizon_request_spec.rb +111 -0
- data/spec/models/annuity_calculator_annuity_amount_request_spec.rb +111 -0
- data/spec/models/annuity_calculator_decumulation_horizon_request_spec.rb +111 -0
- data/spec/models/annuity_calculator_deposit_amount_request_spec.rb +111 -0
- data/spec/models/annuity_calculator_initial_balance_request_spec.rb +111 -0
- data/spec/models/annuity_deposit_schedule_spec.rb +57 -0
- data/spec/models/answer_spec.rb +41 -0
- data/spec/models/backtest_request_spec.rb +95 -0
- data/spec/models/beneficiary_bequest_config_spec.rb +53 -0
- data/spec/models/budget_aggregation_account_spec.rb +41 -0
- data/spec/models/budget_calculator_request_spec.rb +105 -0
- data/spec/models/budget_component_spec.rb +53 -0
- data/spec/models/budget_details_spec.rb +99 -0
- data/spec/models/business_financial_health_check_request_spec.rb +143 -0
- data/spec/models/business_invoice_analysis_request_spec.rb +123 -0
- data/spec/models/calculator_deposit_schedule1_spec.rb +57 -0
- data/spec/models/calculator_deposit_schedule_spec.rb +51 -0
- data/spec/models/card_analysis_request_spec.rb +129 -0
- data/spec/models/card_limit_check_request_spec.rb +65 -0
- data/spec/models/card_transaction_authorization_request_spec.rb +157 -0
- data/spec/models/cash_analysis_request_spec.rb +115 -0
- data/spec/models/cash_flow_analysis_request_spec.rb +135 -0
- data/spec/models/children_education_config_spec.rb +47 -0
- data/spec/models/customer_analysis_request_spec.rb +101 -0
- data/spec/models/decision_tree_result_request_spec.rb +51 -0
- data/spec/models/decumulation_goal_deposit_config_spec.rb +89 -0
- data/spec/models/dimensional_risk_score_request_spec.rb +89 -0
- data/spec/models/diversification_score_request_spec.rb +111 -0
- data/spec/models/education_calculator_annual_cost_request_spec.rb +101 -0
- data/spec/models/education_calculator_deposit_amount_request_spec.rb +107 -0
- data/spec/models/education_calculator_percent_covered_request_spec.rb +101 -0
- data/spec/models/education_config_spec.rb +53 -0
- data/spec/models/emergency_fund_calculator_request_spec.rb +141 -0
- data/spec/models/event_study_request_spec.rb +109 -0
- data/spec/models/fee_analysis_request_spec.rb +77 -0
- data/spec/models/financial_health_check_request_spec.rb +95 -0
- data/spec/models/financial_picture_request_spec.rb +95 -0
- data/spec/models/financial_statement_analysis_request_spec.rb +155 -0
- data/spec/models/goal_accumulation_allocation_request_spec.rb +215 -0
- data/spec/models/goal_accumulation_recommendation_request_spec.rb +173 -0
- data/spec/models/goal_accumulation_status_request_spec.rb +173 -0
- data/spec/models/goal_config_spec.rb +47 -0
- data/spec/models/goal_decumulation_allocation_request_spec.rb +221 -0
- data/spec/models/goal_decumulation_recommendation_request_spec.rb +179 -0
- data/spec/models/goal_decumulation_status_request_spec.rb +179 -0
- data/spec/models/goal_withdrawal_config_spec.rb +89 -0
- data/spec/models/guaranteed_rate_benefit_spec.rb +59 -0
- data/spec/models/income_config_spec.rb +53 -0
- data/spec/models/life_insurance_needs_calculator_request_spec.rb +125 -0
- data/spec/models/location_spec.rb +41 -0
- data/spec/models/monte_carlo_request_spec.rb +179 -0
- data/spec/models/mortgage_calculator_down_payment_request_spec.rb +59 -0
- data/spec/models/mortgage_calculator_home_price_request_spec.rb +59 -0
- data/spec/models/mortgage_calculator_periodic_payment_request_spec.rb +59 -0
- data/spec/models/mvo_request_spec.rb +113 -0
- data/spec/models/opt_config1_spec.rb +69 -0
- data/spec/models/opt_config_spec.rb +81 -0
- data/spec/models/order_rebalance_request_spec.rb +123 -0
- data/spec/models/performance_calculator_request_spec.rb +233 -0
- data/spec/models/periods_spec.rb +47 -0
- data/spec/models/portfolio_optimization_score_request_spec.rb +127 -0
- data/spec/models/portfolio_what_if_request_spec.rb +123 -0
- data/spec/models/purchase_calculator_amount_request_spec.rb +93 -0
- data/spec/models/purchase_calculator_deposit_amount_request_spec.rb +99 -0
- data/spec/models/purchase_calculator_horizon_request_spec.rb +83 -0
- data/spec/models/ratio_targets1_spec.rb +71 -0
- data/spec/models/ratio_targets_spec.rb +71 -0
- data/spec/models/rebalancing_signal_request_spec.rb +71 -0
- data/spec/models/recommendation_config1_spec.rb +77 -0
- data/spec/models/recommendation_config_spec.rb +83 -0
- data/spec/models/recurring_transaction_analysis_request_spec.rb +129 -0
- data/spec/models/retirement_calculator_deposit_amount_request_spec.rb +113 -0
- data/spec/models/retirement_calculator_expenses_request_spec.rb +107 -0
- data/spec/models/retirement_calculator_percent_covered_request_spec.rb +107 -0
- data/spec/models/risk_allocation_request_spec.rb +85 -0
- data/spec/models/risk_score_request_spec.rb +71 -0
- data/spec/models/savings_calculator_request_spec.rb +99 -0
- data/spec/models/savings_deposit_schedule_spec.rb +63 -0
- data/spec/models/scenario_analysis_request_spec.rb +133 -0
- data/spec/models/sensitivity_analysis_request_spec.rb +133 -0
- data/spec/models/sensitivity_factor_spec.rb +59 -0
- data/spec/models/settings_spec.rb +79 -0
- data/spec/models/spending_analysis_request_spec.rb +187 -0
- data/spec/models/variable_annuity_request_spec.rb +209 -0
- data/spec/models/w_config1_spec.rb +65 -0
- data/spec/models/w_config_spec.rb +65 -0
- data/spec/spec_helper.rb +111 -0
- metadata +561 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Hydrogen Proton API
|
|
3
|
+
|
|
4
|
+
#Financial engineering module of Hydrogen Atom
|
|
5
|
+
|
|
6
|
+
OpenAPI spec version: 1.9.1
|
|
7
|
+
Contact: info@hydrogenplatform.com
|
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
|
+
Swagger Codegen version: 2.4.19
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
|
|
16
|
+
# Unit tests for ProtonApi::UtilApi
|
|
17
|
+
# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen)
|
|
18
|
+
# Please update as you see appropriate
|
|
19
|
+
describe 'UtilApi' do
|
|
20
|
+
before do
|
|
21
|
+
# run before each test
|
|
22
|
+
@instance = ProtonApi::UtilApi.new
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
after do
|
|
26
|
+
# run after each test
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe 'test an instance of UtilApi' do
|
|
30
|
+
it 'should create an instance of UtilApi' do
|
|
31
|
+
expect(@instance).to be_instance_of(ProtonApi::UtilApi)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# unit tests for decision_tree_result
|
|
36
|
+
# Decision Tree Result
|
|
37
|
+
# Traverse a decision tree and find the resulting leaf node
|
|
38
|
+
# @param decision_tree_result_request Request payload for Decision Tree Result
|
|
39
|
+
# @param [Hash] opts the optional parameters
|
|
40
|
+
# @return [Hash<String, Object>]
|
|
41
|
+
describe 'decision_tree_result test' do
|
|
42
|
+
it 'should work' do
|
|
43
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# unit tests for order_rebalance
|
|
48
|
+
# Order Rebalance
|
|
49
|
+
# Create orders to rebalance client accounts or portfolios
|
|
50
|
+
# @param order_rebalance_request Request payload for Order Rebalance
|
|
51
|
+
# @param [Hash] opts the optional parameters
|
|
52
|
+
# @return [Hash<String, Object>]
|
|
53
|
+
describe 'order_rebalance test' do
|
|
54
|
+
it 'should work' do
|
|
55
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# unit tests for performance_calculator
|
|
60
|
+
# Performance Calculator
|
|
61
|
+
# Calculate performance/risk metrics for a Nucleus entity
|
|
62
|
+
# @param performance_calculator_request Request payload for Performance Calculator
|
|
63
|
+
# @param [Hash] opts the optional parameters
|
|
64
|
+
# @return [Hash<String, Object>]
|
|
65
|
+
describe 'performance_calculator test' do
|
|
66
|
+
it 'should work' do
|
|
67
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
end
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Hydrogen Proton API
|
|
3
|
+
|
|
4
|
+
#Financial engineering module of Hydrogen Atom
|
|
5
|
+
|
|
6
|
+
OpenAPI spec version: 1.9.1
|
|
7
|
+
Contact: info@hydrogenplatform.com
|
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
|
+
Swagger Codegen version: 2.4.19
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
|
|
15
|
+
describe ProtonApi::ApiClient do
|
|
16
|
+
context 'initialization' do
|
|
17
|
+
context 'URL stuff' do
|
|
18
|
+
context 'host' do
|
|
19
|
+
it 'removes http from host' do
|
|
20
|
+
ProtonApi.configure { |c| c.host = 'http://example.com' }
|
|
21
|
+
expect(ProtonApi::Configuration.default.host).to eq('example.com')
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
it 'removes https from host' do
|
|
25
|
+
ProtonApi.configure { |c| c.host = 'https://wookiee.com' }
|
|
26
|
+
expect(ProtonApi::ApiClient.default.config.host).to eq('wookiee.com')
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
it 'removes trailing path from host' do
|
|
30
|
+
ProtonApi.configure { |c| c.host = 'hobo.com/v4' }
|
|
31
|
+
expect(ProtonApi::Configuration.default.host).to eq('hobo.com')
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
context 'base_path' do
|
|
36
|
+
it "prepends a slash to base_path" do
|
|
37
|
+
ProtonApi.configure { |c| c.base_path = 'v4/dog' }
|
|
38
|
+
expect(ProtonApi::Configuration.default.base_path).to eq('/v4/dog')
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
it "doesn't prepend a slash if one is already there" do
|
|
42
|
+
ProtonApi.configure { |c| c.base_path = '/v4/dog' }
|
|
43
|
+
expect(ProtonApi::Configuration.default.base_path).to eq('/v4/dog')
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
it "ends up as a blank string if nil" do
|
|
47
|
+
ProtonApi.configure { |c| c.base_path = nil }
|
|
48
|
+
expect(ProtonApi::Configuration.default.base_path).to eq('')
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
describe 'params_encoding in #build_request' do
|
|
55
|
+
let(:config) { ProtonApi::Configuration.new }
|
|
56
|
+
let(:api_client) { ProtonApi::ApiClient.new(config) }
|
|
57
|
+
|
|
58
|
+
it 'defaults to nil' do
|
|
59
|
+
expect(ProtonApi::Configuration.default.params_encoding).to eq(nil)
|
|
60
|
+
expect(config.params_encoding).to eq(nil)
|
|
61
|
+
|
|
62
|
+
request = api_client.build_request(:get, '/test')
|
|
63
|
+
expect(request.options[:params_encoding]).to eq(nil)
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
it 'can be customized' do
|
|
67
|
+
config.params_encoding = :multi
|
|
68
|
+
request = api_client.build_request(:get, '/test')
|
|
69
|
+
expect(request.options[:params_encoding]).to eq(:multi)
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
describe 'timeout in #build_request' do
|
|
74
|
+
let(:config) { ProtonApi::Configuration.new }
|
|
75
|
+
let(:api_client) { ProtonApi::ApiClient.new(config) }
|
|
76
|
+
|
|
77
|
+
it 'defaults to 0' do
|
|
78
|
+
expect(ProtonApi::Configuration.default.timeout).to eq(0)
|
|
79
|
+
expect(config.timeout).to eq(0)
|
|
80
|
+
|
|
81
|
+
request = api_client.build_request(:get, '/test')
|
|
82
|
+
expect(request.options[:timeout]).to eq(0)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
it 'can be customized' do
|
|
86
|
+
config.timeout = 100
|
|
87
|
+
request = api_client.build_request(:get, '/test')
|
|
88
|
+
expect(request.options[:timeout]).to eq(100)
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
describe '#build_request' do
|
|
93
|
+
let(:config) { ProtonApi::Configuration.new }
|
|
94
|
+
let(:api_client) { ProtonApi::ApiClient.new(config) }
|
|
95
|
+
|
|
96
|
+
it 'does not send multipart to request' do
|
|
97
|
+
expect(Typhoeus::Request).to receive(:new).with(anything, hash_not_including(:multipart))
|
|
98
|
+
api_client.build_request(:get, '/test')
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
context 'when the content type is multipart' do
|
|
102
|
+
it 'sends multipart to request' do
|
|
103
|
+
expect(Typhoeus::Request).to receive(:new).with(anything, hash_including(multipart: true))
|
|
104
|
+
api_client.build_request(:get, '/test', {header_params: { 'Content-Type' => 'multipart/form-data'}})
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
describe '#deserialize' do
|
|
110
|
+
it "handles Array<Integer>" do
|
|
111
|
+
api_client = ProtonApi::ApiClient.new
|
|
112
|
+
headers = { 'Content-Type' => 'application/json' }
|
|
113
|
+
response = double('response', headers: headers, body: '[12, 34]')
|
|
114
|
+
data = api_client.deserialize(response, 'Array<Integer>')
|
|
115
|
+
expect(data).to be_instance_of(Array)
|
|
116
|
+
expect(data).to eq([12, 34])
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
it 'handles Array<Array<Integer>>' do
|
|
120
|
+
api_client = ProtonApi::ApiClient.new
|
|
121
|
+
headers = { 'Content-Type' => 'application/json' }
|
|
122
|
+
response = double('response', headers: headers, body: '[[12, 34], [56]]')
|
|
123
|
+
data = api_client.deserialize(response, 'Array<Array<Integer>>')
|
|
124
|
+
expect(data).to be_instance_of(Array)
|
|
125
|
+
expect(data).to eq([[12, 34], [56]])
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
it 'handles Hash<String, String>' do
|
|
129
|
+
api_client = ProtonApi::ApiClient.new
|
|
130
|
+
headers = { 'Content-Type' => 'application/json' }
|
|
131
|
+
response = double('response', headers: headers, body: '{"message": "Hello"}')
|
|
132
|
+
data = api_client.deserialize(response, 'Hash<String, String>')
|
|
133
|
+
expect(data).to be_instance_of(Hash)
|
|
134
|
+
expect(data).to eq(:message => 'Hello')
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
describe "#object_to_hash" do
|
|
139
|
+
it 'ignores nils and includes empty arrays' do
|
|
140
|
+
# uncomment below to test object_to_hash for model
|
|
141
|
+
# api_client = ProtonApi::ApiClient.new
|
|
142
|
+
# _model = ProtonApi::ModelName.new
|
|
143
|
+
# update the model attribute below
|
|
144
|
+
# _model.id = 1
|
|
145
|
+
# update the expected value (hash) below
|
|
146
|
+
# expected = {id: 1, name: '', tags: []}
|
|
147
|
+
# expect(api_client.object_to_hash(_model)).to eq(expected)
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
describe '#build_collection_param' do
|
|
152
|
+
let(:param) { ['aa', 'bb', 'cc'] }
|
|
153
|
+
let(:api_client) { ProtonApi::ApiClient.new }
|
|
154
|
+
|
|
155
|
+
it 'works for csv' do
|
|
156
|
+
expect(api_client.build_collection_param(param, :csv)).to eq('aa,bb,cc')
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
it 'works for ssv' do
|
|
160
|
+
expect(api_client.build_collection_param(param, :ssv)).to eq('aa bb cc')
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
it 'works for tsv' do
|
|
164
|
+
expect(api_client.build_collection_param(param, :tsv)).to eq("aa\tbb\tcc")
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
it 'works for pipes' do
|
|
168
|
+
expect(api_client.build_collection_param(param, :pipes)).to eq('aa|bb|cc')
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
it 'works for multi' do
|
|
172
|
+
expect(api_client.build_collection_param(param, :multi)).to eq(['aa', 'bb', 'cc'])
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
it 'fails for invalid collection format' do
|
|
176
|
+
expect(proc { api_client.build_collection_param(param, :INVALID) }).to raise_error(RuntimeError, 'unknown collection format: :INVALID')
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
describe '#json_mime?' do
|
|
181
|
+
let(:api_client) { ProtonApi::ApiClient.new }
|
|
182
|
+
|
|
183
|
+
it 'works' do
|
|
184
|
+
expect(api_client.json_mime?(nil)).to eq false
|
|
185
|
+
expect(api_client.json_mime?('')).to eq false
|
|
186
|
+
|
|
187
|
+
expect(api_client.json_mime?('application/json')).to eq true
|
|
188
|
+
expect(api_client.json_mime?('application/json; charset=UTF8')).to eq true
|
|
189
|
+
expect(api_client.json_mime?('APPLICATION/JSON')).to eq true
|
|
190
|
+
|
|
191
|
+
expect(api_client.json_mime?('application/xml')).to eq false
|
|
192
|
+
expect(api_client.json_mime?('text/plain')).to eq false
|
|
193
|
+
expect(api_client.json_mime?('application/jsonp')).to eq false
|
|
194
|
+
end
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
describe '#select_header_accept' do
|
|
198
|
+
let(:api_client) { ProtonApi::ApiClient.new }
|
|
199
|
+
|
|
200
|
+
it 'works' do
|
|
201
|
+
expect(api_client.select_header_accept(nil)).to be_nil
|
|
202
|
+
expect(api_client.select_header_accept([])).to be_nil
|
|
203
|
+
|
|
204
|
+
expect(api_client.select_header_accept(['application/json'])).to eq('application/json')
|
|
205
|
+
expect(api_client.select_header_accept(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
|
|
206
|
+
expect(api_client.select_header_accept(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
|
|
207
|
+
|
|
208
|
+
expect(api_client.select_header_accept(['application/xml'])).to eq('application/xml')
|
|
209
|
+
expect(api_client.select_header_accept(['text/html', 'application/xml'])).to eq('text/html,application/xml')
|
|
210
|
+
end
|
|
211
|
+
end
|
|
212
|
+
|
|
213
|
+
describe '#select_header_content_type' do
|
|
214
|
+
let(:api_client) { ProtonApi::ApiClient.new }
|
|
215
|
+
|
|
216
|
+
it 'works' do
|
|
217
|
+
expect(api_client.select_header_content_type(nil)).to eq('application/json')
|
|
218
|
+
expect(api_client.select_header_content_type([])).to eq('application/json')
|
|
219
|
+
|
|
220
|
+
expect(api_client.select_header_content_type(['application/json'])).to eq('application/json')
|
|
221
|
+
expect(api_client.select_header_content_type(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
|
|
222
|
+
expect(api_client.select_header_content_type(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
|
|
223
|
+
expect(api_client.select_header_content_type(['application/xml'])).to eq('application/xml')
|
|
224
|
+
expect(api_client.select_header_content_type(['text/plain', 'application/xml'])).to eq('text/plain')
|
|
225
|
+
end
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
describe '#sanitize_filename' do
|
|
229
|
+
let(:api_client) { ProtonApi::ApiClient.new }
|
|
230
|
+
|
|
231
|
+
it 'works' do
|
|
232
|
+
expect(api_client.sanitize_filename('sun')).to eq('sun')
|
|
233
|
+
expect(api_client.sanitize_filename('sun.gif')).to eq('sun.gif')
|
|
234
|
+
expect(api_client.sanitize_filename('../sun.gif')).to eq('sun.gif')
|
|
235
|
+
expect(api_client.sanitize_filename('/var/tmp/sun.gif')).to eq('sun.gif')
|
|
236
|
+
expect(api_client.sanitize_filename('./sun.gif')).to eq('sun.gif')
|
|
237
|
+
expect(api_client.sanitize_filename('..\sun.gif')).to eq('sun.gif')
|
|
238
|
+
expect(api_client.sanitize_filename('\var\tmp\sun.gif')).to eq('sun.gif')
|
|
239
|
+
expect(api_client.sanitize_filename('c:\var\tmp\sun.gif')).to eq('sun.gif')
|
|
240
|
+
expect(api_client.sanitize_filename('.\sun.gif')).to eq('sun.gif')
|
|
241
|
+
end
|
|
242
|
+
end
|
|
243
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Hydrogen Proton API
|
|
3
|
+
|
|
4
|
+
#Financial engineering module of Hydrogen Atom
|
|
5
|
+
|
|
6
|
+
OpenAPI spec version: 1.9.1
|
|
7
|
+
Contact: info@hydrogenplatform.com
|
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
|
+
Swagger Codegen version: 2.4.19
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
|
|
15
|
+
describe ProtonApi::Configuration do
|
|
16
|
+
let(:config) { ProtonApi::Configuration.default }
|
|
17
|
+
|
|
18
|
+
before(:each) do
|
|
19
|
+
# uncomment below to setup host and base_path
|
|
20
|
+
# require 'URI'
|
|
21
|
+
# uri = URI.parse("https://api.hydrogenplatform.com/proton/v1")
|
|
22
|
+
# ProtonApi.configure do |c|
|
|
23
|
+
# c.host = uri.host
|
|
24
|
+
# c.base_path = uri.path
|
|
25
|
+
# end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
describe '#base_url' do
|
|
29
|
+
it 'should have the default value' do
|
|
30
|
+
# uncomment below to test default value of the base path
|
|
31
|
+
# expect(config.base_url).to eq("https://api.hydrogenplatform.com/proton/v1")
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
it 'should remove trailing slashes' do
|
|
35
|
+
[nil, '', '/', '//'].each do |base_path|
|
|
36
|
+
config.base_path = base_path
|
|
37
|
+
# uncomment below to test trailing slashes
|
|
38
|
+
# expect(config.base_url).to eq("https://api.hydrogenplatform.com/proton/v1")
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Hydrogen Proton API
|
|
3
|
+
|
|
4
|
+
#Financial engineering module of Hydrogen Atom
|
|
5
|
+
|
|
6
|
+
OpenAPI spec version: 1.9.1
|
|
7
|
+
Contact: info@hydrogenplatform.com
|
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
|
+
Swagger Codegen version: 2.4.19
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
require 'date'
|
|
16
|
+
|
|
17
|
+
# Unit tests for ProtonApi::AccumulationGoalDepositConfig
|
|
18
|
+
# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen)
|
|
19
|
+
# Please update as you see appropriate
|
|
20
|
+
describe 'AccumulationGoalDepositConfig' do
|
|
21
|
+
before do
|
|
22
|
+
# run before each test
|
|
23
|
+
@instance = ProtonApi::AccumulationGoalDepositConfig.new
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
after do
|
|
27
|
+
# run after each test
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
describe 'test an instance of AccumulationGoalDepositConfig' do
|
|
31
|
+
it 'should create an instance of AccumulationGoalDepositConfig' do
|
|
32
|
+
expect(@instance).to be_instance_of(ProtonApi::AccumulationGoalDepositConfig)
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
describe 'test attribute "dep_end_period"' do
|
|
36
|
+
it 'should work' do
|
|
37
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
describe 'test attribute "dep_amount"' do
|
|
42
|
+
it 'should work' do
|
|
43
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
describe 'test attribute "dep_end_reference"' do
|
|
48
|
+
it 'should work' do
|
|
49
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
50
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["a_start", "a_end"])
|
|
51
|
+
# validator.allowable_values.each do |value|
|
|
52
|
+
# expect { @instance.dep_end_reference = value }.not_to raise_error
|
|
53
|
+
# end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
describe 'test attribute "dep_start_period"' do
|
|
58
|
+
it 'should work' do
|
|
59
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
describe 'test attribute "dep_frequency"' do
|
|
64
|
+
it 'should work' do
|
|
65
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
66
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["year", "six_months", "quarter", "month", "two_weeks", "week", "day"])
|
|
67
|
+
# validator.allowable_values.each do |value|
|
|
68
|
+
# expect { @instance.dep_frequency = value }.not_to raise_error
|
|
69
|
+
# end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
describe 'test attribute "dep_inflation"' do
|
|
74
|
+
it 'should work' do
|
|
75
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
describe 'test attribute "dep_start_reference"' do
|
|
80
|
+
it 'should work' do
|
|
81
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
82
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["a_start", "a_end"])
|
|
83
|
+
# validator.allowable_values.each do |value|
|
|
84
|
+
# expect { @instance.dep_start_reference = value }.not_to raise_error
|
|
85
|
+
# end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
end
|