finapps 5.0.32 → 5.0.38

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/.github/release-drafter.yml +49 -0
  3. data/.github/workflows/main.yaml +37 -0
  4. data/.github/workflows/release-drafter.yml +14 -0
  5. data/.github/workflows/verify-pr-labeled.yml +14 -0
  6. data/.rubocop.yml +125 -59
  7. data/.rubocop_todo.yml +29 -0
  8. data/.tmuxinator.yml +1 -0
  9. data/.travis.yml +3 -1
  10. data/README.md +1 -0
  11. data/RELEASES.md +20 -0
  12. data/finapps.gemspec +4 -4
  13. data/lib/finapps.rb +2 -0
  14. data/lib/finapps/rest/alert_definitions.rb +1 -1
  15. data/lib/finapps/rest/alert_occurrences.rb +1 -1
  16. data/lib/finapps/rest/client.rb +8 -5
  17. data/lib/finapps/rest/consumers.rb +5 -5
  18. data/lib/finapps/rest/consumers_portfolios.rb +1 -1
  19. data/lib/finapps/rest/documents_orders.rb +26 -25
  20. data/lib/finapps/rest/documents_upload_types.rb +11 -0
  21. data/lib/finapps/rest/documents_uploads.rb +23 -0
  22. data/lib/finapps/rest/operators.rb +5 -5
  23. data/lib/finapps/rest/operators_password_resets.rb +1 -1
  24. data/lib/finapps/rest/order_assignments.rb +1 -1
  25. data/lib/finapps/rest/order_reports.rb +1 -1
  26. data/lib/finapps/rest/orders.rb +33 -22
  27. data/lib/finapps/rest/plaid/plaid_consumer_institutions.rb +1 -1
  28. data/lib/finapps/rest/portfolio_reports.rb +1 -1
  29. data/lib/finapps/rest/portfolios.rb +1 -1
  30. data/lib/finapps/rest/portfolios_available_consumers.rb +1 -1
  31. data/lib/finapps/rest/portfolios_consumers.rb +1 -1
  32. data/lib/finapps/rest/sessions.rb +11 -9
  33. data/lib/finapps/rest/signed_documents_downloads.rb +3 -1
  34. data/lib/finapps/utils/query_builder.rb +13 -4
  35. data/lib/finapps/version.rb +1 -1
  36. data/spec/rest/alert_definitions_spec.rb +10 -6
  37. data/spec/rest/alert_occurrences_spec.rb +6 -1
  38. data/spec/rest/api_request.rb +1 -0
  39. data/spec/rest/client_spec.rb +33 -41
  40. data/spec/rest/consumers_portfolios_spec.rb +7 -2
  41. data/spec/rest/consumers_spec.rb +236 -207
  42. data/spec/rest/documents_orders_notifications_spec.rb +4 -2
  43. data/spec/rest/documents_orders_spec.rb +85 -23
  44. data/spec/rest/documents_upload_types_spec.rb +21 -0
  45. data/spec/rest/documents_uploads_spec.rb +104 -0
  46. data/spec/rest/esign_templates_spec.rb +2 -1
  47. data/spec/rest/operators_password_resets_spec.rb +50 -52
  48. data/spec/rest/operators_spec.rb +181 -172
  49. data/spec/rest/order_assignments_spec.rb +6 -1
  50. data/spec/rest/order_notifications_spec.rb +4 -2
  51. data/spec/rest/order_refreshes_spec.rb +8 -5
  52. data/spec/rest/order_reports_spec.rb +21 -15
  53. data/spec/rest/order_statuses_spec.rb +14 -10
  54. data/spec/rest/order_tokens_spec.rb +37 -30
  55. data/spec/rest/orders_spec.rb +121 -73
  56. data/spec/rest/password_resets_spec.rb +46 -36
  57. data/spec/rest/plaid/plaid_account_permissions_spec.rb +5 -4
  58. data/spec/rest/plaid/plaid_accounts_spec.rb +9 -4
  59. data/spec/rest/plaid/plaid_consumer_institutions_spec.rb +11 -11
  60. data/spec/rest/plaid/plaid_institution_logos_spec.rb +1 -1
  61. data/spec/rest/plaid/plaid_webhooks_spec.rb +3 -1
  62. data/spec/rest/portfolio_reports_spec.rb +7 -2
  63. data/spec/rest/portfolios_alerts_spec.rb +9 -4
  64. data/spec/rest/portfolios_available_consumers_spec.rb +7 -2
  65. data/spec/rest/portfolios_consumers_spec.rb +15 -4
  66. data/spec/rest/portfolios_spec.rb +20 -17
  67. data/spec/rest/products_spec.rb +17 -14
  68. data/spec/rest/sessions_spec.rb +63 -58
  69. data/spec/rest/signed_documents_downloads_spec.rb +10 -6
  70. data/spec/rest/tenant_app_settings_spec.rb +9 -3
  71. data/spec/rest/tenant_settings_spec.rb +9 -3
  72. data/spec/rest/verix/verix_documents_spec.rb +15 -22
  73. data/spec/rest/verix/verix_metadata_spec.rb +1 -1
  74. data/spec/rest/verix/verix_pdf_documents_spec.rb +14 -19
  75. data/spec/rest/verix/verix_records_spec.rb +31 -10
  76. data/spec/rest/version_spec.rb +6 -4
  77. data/spec/spec_helper.rb +2 -2
  78. data/spec/support/fake_api.rb +25 -4
  79. data/spec/support/fixtures/documents_orders_none.json +6 -0
  80. data/spec/support/fixtures/upload_types.json +9 -0
  81. data/spec/utils/query_builder_spec.rb +40 -14
  82. metadata +83 -70
@@ -10,7 +10,7 @@ RSpec.describe FinApps::REST::VerixMetadata do
10
10
  let(:api_client) { client }
11
11
 
12
12
  describe '#show' do
13
- subject(:show) { FinApps::REST::VerixMetadata.new(api_client).show }
13
+ subject(:show) { described_class.new(api_client).show }
14
14
 
15
15
  it_behaves_like 'an API request'
16
16
  it_behaves_like 'a successful request'
@@ -7,29 +7,24 @@ RSpec.describe FinApps::REST::VerixPdfDocuments do
7
7
  include SpecHelpers::Client
8
8
 
9
9
  let(:api_client) { client }
10
- let(:document) { FinApps::REST::VerixPdfDocuments.new(api_client) }
10
+ let(:document) { described_class.new(api_client) }
11
11
 
12
12
  describe '#show' do
13
- context 'when missing parameters' do
14
- subject { document.show(nil, :provider_id) }
15
- it 'raises an error when missing record id' do
16
- expect { subject }.to raise_error(FinAppsCore::MissingArgumentsError)
17
- end
18
-
19
- subject { document.show(:record_id, nil) }
20
- it 'raises an error when missing provider id' do
21
- expect { subject }.to raise_error(FinAppsCore::MissingArgumentsError)
22
- end
23
- end
24
-
25
- subject(:show) do
26
- document.show(
27
- :record_id,
28
- :provider_id
29
- )
30
- end
13
+ subject { document.show(:record_id, :provider_id) }
31
14
 
32
15
  it_behaves_like 'an API request'
33
16
  it_behaves_like 'a successful request'
17
+
18
+ context 'when missing record_id' do
19
+ subject(:show) { document.show(nil, :provider_id) }
20
+
21
+ it { expect { show }.to raise_error(FinAppsCore::MissingArgumentsError) }
22
+ end
23
+
24
+ context 'when missing provider_id' do
25
+ subject(:show) { document.show(:record_id, nil) }
26
+
27
+ it { expect { show }.to raise_error(FinAppsCore::MissingArgumentsError) }
28
+ end
34
29
  end
35
30
  end
@@ -6,12 +6,11 @@ require 'rest/api_request'
6
6
  RSpec.describe FinApps::REST::VerixRecords do
7
7
  include SpecHelpers::Client
8
8
 
9
- # noinspection RubyBlockToMethodReference
10
9
  let(:api_client) { client }
11
10
 
12
11
  describe '#create' do
13
12
  subject(:create) do
14
- FinApps::REST::VerixRecords.new(api_client).create(
13
+ described_class.new(api_client).create(
15
14
  code: 'authcode'
16
15
  )
17
16
  end
@@ -19,24 +18,46 @@ RSpec.describe FinApps::REST::VerixRecords do
19
18
  it_behaves_like 'an API request'
20
19
  it_behaves_like 'a successful request'
21
20
  it('returns an id') { expect(create[RESULTS]).to have_key(:_id) }
22
- it('returns a consumer id') { expect(create[RESULTS]).to have_key(:consumer_id) }
21
+
22
+ it('returns a consumer id') {
23
+ expect(create[RESULTS]).to have_key(:consumer_id)
24
+ }
25
+
23
26
  it('returns a status') { expect(create[RESULTS]).to have_key(:status) }
24
27
  it('returns an error node') { expect(create[RESULTS]).to have_key(:error) }
25
- it('returns a list of documents') { expect(create[RESULTS]).to have_key(:documents) }
26
- it('returns a list of downloaded documents') { expect(create[RESULTS]).to have_key(:downloaded_documents) }
28
+
29
+ it('returns a list of documents') {
30
+ expect(create[RESULTS]).to have_key(:documents)
31
+ }
32
+
33
+ it('returns a list of downloaded documents') {
34
+ expect(create[RESULTS]).to have_key(:downloaded_documents)
35
+ }
27
36
  end
28
37
 
29
38
  describe '#list' do
30
- subject(:list) { FinApps::REST::VerixRecords.new(api_client).list }
39
+ subject(:list) { described_class.new(api_client).list }
31
40
 
32
41
  it_behaves_like 'an API request'
33
42
  it_behaves_like 'a successful request'
34
43
  it('returns an array') { expect(list[RESULTS]).to be_an_instance_of(Array) }
35
44
  it('returns an id') { expect(list[RESULTS].first).to have_key(:_id) }
36
45
  it('returns a status') { expect(list[RESULTS].first).to have_key(:status) }
37
- it('returns a consumer id') { expect(list[RESULTS].first).to have_key(:consumer_id) }
38
- it('returns an error node') { expect(list[RESULTS].first).to have_key(:error) }
39
- it('returns a list of documents') { expect(list[RESULTS].first).to have_key(:documents) }
40
- it('returns a list of downloaded documents') { expect(list[RESULTS].first).to have_key(:downloaded_documents) }
46
+
47
+ it('returns a consumer id') {
48
+ expect(list[RESULTS].first).to have_key(:consumer_id)
49
+ }
50
+
51
+ it('returns an error node') {
52
+ expect(list[RESULTS].first).to have_key(:error)
53
+ }
54
+
55
+ it('returns a list of documents') {
56
+ expect(list[RESULTS].first).to have_key(:documents)
57
+ }
58
+
59
+ it('returns a list of downloaded documents') {
60
+ expect(list[RESULTS].first).to have_key(:downloaded_documents)
61
+ }
41
62
  end
42
63
  end
@@ -3,12 +3,14 @@
3
3
  RSpec.describe FinApps::REST::Version do
4
4
  include SpecHelpers::Client
5
5
 
6
- subject { FinApps::REST::Version.new(client) }
6
+ subject(:version) { described_class.new(client) }
7
+
7
8
  describe '#show' do
8
- it { expect { subject.show }.not_to raise_error }
9
- it('returns a string') { expect(subject.show[0]).to be_a(String) }
9
+ it { expect { version.show }.not_to raise_error }
10
+ it('returns a string') { expect(version.show[0]).to be_a(String) }
11
+
10
12
  it('starts with the words "Version =>"') do
11
- expect(subject.show[0]).to start_with('Version =>')
13
+ expect(version.show[0]).to start_with('Version =>')
12
14
  end
13
15
  end
14
16
  end
@@ -21,7 +21,7 @@ RSpec.configure do |config|
21
21
  expectations.include_chain_clauses_in_custom_matcher_descriptions = true
22
22
  expectations.syntax = :expect
23
23
  end
24
- config.mock_with(:rspec) { |mocks| mocks.verify_partial_doubles = true }
24
+ config.mock_with(:rspec) {|mocks| mocks.verify_partial_doubles = true }
25
25
  # config.filter_run_including :focus => true
26
26
  config.default_formatter = 'doc' if config.files_to_run.one?
27
27
  config.order = :random
@@ -29,7 +29,7 @@ RSpec.configure do |config|
29
29
  config.warnings = true
30
30
  Kernel.srand config.seed
31
31
 
32
- config.before(:each) do
32
+ config.before do
33
33
  base_url =
34
34
  "#{FinAppsCore::REST::Defaults::DEFAULTS[:host]}/v#{FinAppsCore::REST::Defaults::API_VERSION}/"
35
35
  stub_request(:any, /#{base_url}/).to_rack(::FakeApi)
@@ -195,7 +195,7 @@ class FakeApi < Sinatra::Base
195
195
  post("/#{version}/orders") do
196
196
  request.body.rewind
197
197
  request_payload = JSON.parse request.body.read
198
- if %w[applicant institutions product].all? { |s| request_payload.key? s }
198
+ if %w[applicant institutions product].all? {|s| request_payload.key? s }
199
199
  json_response 200, 'order_token.json'
200
200
  else
201
201
  json_response 400, 'invalid_request_body.json'
@@ -203,7 +203,13 @@ class FakeApi < Sinatra::Base
203
203
  end
204
204
 
205
205
  # documents_orders
206
- get("/#{version}/documents/orders") { json_response 200, 'documents_orders.json' }
206
+ get("/#{version}/documents/orders") do
207
+ if params[:filter]&.include?('"status":2')
208
+ json_response 200, 'documents_orders_none.json'
209
+ else
210
+ json_response 200, 'documents_orders.json'
211
+ end
212
+ end
207
213
  get("/#{version}/documents/orders/valid_order_id") do
208
214
  json_response 200, 'documents_order.json'
209
215
  end
@@ -213,7 +219,7 @@ class FakeApi < Sinatra::Base
213
219
  post("/#{version}/documents/orders") do
214
220
  request.body.rewind
215
221
  request_payload = JSON.parse request.body.read
216
- if %w[applicant esign_documents tag].all? { |s| request_payload.key? s }
222
+ if %w[applicant esign_documents tag].all? {|s| request_payload.key? s }
217
223
  json_response 200, 'documents_order.json'
218
224
  else
219
225
  json_response 400, 'invalid_request_body.json'
@@ -245,6 +251,18 @@ class FakeApi < Sinatra::Base
245
251
  json_response 404, 'invalid_signature_id.json'
246
252
  end
247
253
 
254
+ # documents_uploads
255
+ get("/#{version}/consumers/:consumer_id/documents/:doc_id?thumbnail=false") do
256
+ pdf_response 'signed_document.pdf'
257
+ end
258
+ delete("/#{version}/documents/orders/valid_order_id/valid_doc_id") { status 204 }
259
+ delete("/#{version}/documents/orders/valid_order_id/invalid_doc_id") do
260
+ json_response 404, 'resource_not_found.json'
261
+ end
262
+ delete("/#{version}/documents/orders/invalid_order_id/valid_doc_id") do
263
+ json_response 404, 'resource_not_found.json'
264
+ end
265
+
248
266
  # documents orders notifications
249
267
  post("/#{version}/documents/orders/valid_id/notify") { status 204 }
250
268
  post("/#{version}/documents/orders/invalid_id/notify") do
@@ -259,6 +277,9 @@ class FakeApi < Sinatra::Base
259
277
  # esign_templates
260
278
  get("/#{version}/esign_templates") { json_response 200, 'esign_templates.json' }
261
279
 
280
+ # document_upload_types
281
+ get("/#{version}/documents/upload_types") { json_response 200, 'upload_types.json' }
282
+
262
283
  # consumers
263
284
  get("/#{version}/consumers") do
264
285
  json_response 200, 'users.json'
@@ -496,6 +517,6 @@ class FakeApi < Sinatra::Base
496
517
  def http_response(content_type, response_code, file_name)
497
518
  content_type content_type
498
519
  status response_code
499
- File.open(File.dirname(__FILE__) + '/fixtures/' + file_name, 'rb').read
520
+ File.open("#{File.dirname(__FILE__)}/fixtures/#{file_name}").read
500
521
  end
501
522
  end
@@ -0,0 +1,6 @@
1
+ {
2
+ "total_records": 0,
3
+ "page": 0,
4
+ "total_pages": 0,
5
+ "records": []
6
+ }
@@ -0,0 +1,9 @@
1
+ [
2
+ {
3
+ "acceptable_forms": "string",
4
+ "id": "string",
5
+ "name": "string",
6
+ "special_instructions": "string",
7
+ "type": 1
8
+ }
9
+ ]
@@ -1,38 +1,64 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'cgi'
4
+
3
5
  class FakeClass
4
6
  include FinApps::Utils::QueryBuilder
5
7
 
6
- def build_filter(param); end
8
+ def build_filter(params)
9
+ params&.key?(:role) ? {role: params[:role]} : {}
10
+ end
7
11
  end
8
12
 
9
13
  RSpec.describe FinApps::Utils::QueryBuilder do
10
- subject { FakeClass.new }
14
+ subject(:fake_class) { FakeClass.new }
11
15
 
12
16
  describe '#build_query_path' do
13
17
  let(:end_point) { 'orders' }
14
18
 
15
19
  context 'with full params' do
16
20
  let(:params) do
17
- { page: '1', requested: '20', sort: '-date', random: 'random' }
21
+ {
22
+ page: '1',
23
+ requested: '20',
24
+ sort: '-date',
25
+ random: 'random',
26
+ role: 2
27
+ }
28
+ end
29
+ let(:escaped_filter) { "filter=#{CGI.escape({role: 2}.to_json)}" }
30
+
31
+ it 'includes a page value in the query string' do
32
+ value = 'page=1'
33
+ expect(fake_class.build_query_path(end_point, params)).to include(value)
34
+ end
35
+
36
+ it 'includes a requested value in the query string' do
37
+ value = 'requested=20'
38
+ expect(fake_class.build_query_path(end_point, params)).to include(value)
18
39
  end
19
- it 'calls #build_filter and returns correct string' do
20
- allow(subject).to receive(:build_filter) { { role: 2 } }
21
- expect(subject).to receive(:build_filter).with(params)
22
- correct_string =
23
- 'orders?page=1&requested=20&sort=-date&filter=%7B%22role%22%3A2%7D'
24
- expect(subject.build_query_path(end_point, params)).to eq(
25
- correct_string
26
- )
40
+
41
+ it 'includes a sort value in the query string' do
42
+ value = 'sort=-date'
43
+ expect(fake_class.build_query_path(end_point, params)).to include(value)
44
+ end
45
+
46
+ it 'includes a filter value in the query string' do
47
+ value = escaped_filter
48
+ expect(fake_class.build_query_path(end_point, params)).to include(value)
49
+ end
50
+
51
+ it 'builds a properly formatted query string' do
52
+ expected = "orders?page=1&requested=20&sort=-date&#{escaped_filter}"
53
+ expect(fake_class.build_query_path(end_point, params)).to eq(expected)
27
54
  end
28
55
  end
29
56
 
30
57
  context 'with no params' do
31
58
  let(:params) { {} }
59
+
32
60
  it 'returns root' do
33
- allow(subject).to receive(:build_filter) { {} }
34
- expect(subject).to receive(:build_filter).with(params)
35
- expect(subject.build_query_path(end_point, params)).to eq(end_point)
61
+ expect(fake_class.build_query_path(end_point, params)).to eq(end_point)
36
62
  end
37
63
  end
38
64
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: finapps
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.32
4
+ version: 5.0.38
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erich Quintero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-11 00:00:00.000000000 Z
11
+ date: 2020-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: finapps_core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '5.0'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 5.0.7
22
+ version: 5.0.10
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '5.0'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 5.0.7
32
+ version: 5.0.10
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: bundler
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -154,82 +154,82 @@ dependencies:
154
154
  name: rspec
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - "~>"
158
- - !ruby/object:Gem::Version
159
- version: '3.9'
160
157
  - - ">="
161
158
  - !ruby/object:Gem::Version
162
159
  version: 3.9.0
160
+ - - "~>"
161
+ - !ruby/object:Gem::Version
162
+ version: '3.9'
163
163
  type: :development
164
164
  prerelease: false
165
165
  version_requirements: !ruby/object:Gem::Requirement
166
166
  requirements:
167
- - - "~>"
168
- - !ruby/object:Gem::Version
169
- version: '3.9'
170
167
  - - ">="
171
168
  - !ruby/object:Gem::Version
172
169
  version: 3.9.0
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: '3.9'
173
173
  - !ruby/object:Gem::Dependency
174
174
  name: rubocop
175
175
  requirement: !ruby/object:Gem::Requirement
176
176
  requirements:
177
- - - "~>"
178
- - !ruby/object:Gem::Version
179
- version: '0.79'
180
177
  - - ">="
181
178
  - !ruby/object:Gem::Version
182
- version: 0.79.0
179
+ version: 0.86.0
180
+ - - "~>"
181
+ - !ruby/object:Gem::Version
182
+ version: '0.86'
183
183
  type: :development
184
184
  prerelease: false
185
185
  version_requirements: !ruby/object:Gem::Requirement
186
186
  requirements:
187
- - - "~>"
188
- - !ruby/object:Gem::Version
189
- version: '0.79'
190
187
  - - ">="
191
188
  - !ruby/object:Gem::Version
192
- version: 0.79.0
189
+ version: 0.86.0
190
+ - - "~>"
191
+ - !ruby/object:Gem::Version
192
+ version: '0.86'
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: rubocop-performance
195
195
  requirement: !ruby/object:Gem::Requirement
196
196
  requirements:
197
197
  - - "~>"
198
198
  - !ruby/object:Gem::Version
199
- version: '1.5'
199
+ version: '1.6'
200
200
  - - ">="
201
201
  - !ruby/object:Gem::Version
202
- version: 1.5.2
202
+ version: 1.6.1
203
203
  type: :development
204
204
  prerelease: false
205
205
  version_requirements: !ruby/object:Gem::Requirement
206
206
  requirements:
207
207
  - - "~>"
208
208
  - !ruby/object:Gem::Version
209
- version: '1.5'
209
+ version: '1.6'
210
210
  - - ">="
211
211
  - !ruby/object:Gem::Version
212
- version: 1.5.2
212
+ version: 1.6.1
213
213
  - !ruby/object:Gem::Dependency
214
214
  name: rubocop-rspec
215
215
  requirement: !ruby/object:Gem::Requirement
216
216
  requirements:
217
- - - "~>"
218
- - !ruby/object:Gem::Version
219
- version: '1.37'
220
217
  - - ">="
221
218
  - !ruby/object:Gem::Version
222
- version: 1.37.1
219
+ version: 1.40.0
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: '1.40'
223
223
  type: :development
224
224
  prerelease: false
225
225
  version_requirements: !ruby/object:Gem::Requirement
226
226
  requirements:
227
- - - "~>"
228
- - !ruby/object:Gem::Version
229
- version: '1.37'
230
227
  - - ">="
231
228
  - !ruby/object:Gem::Version
232
- version: 1.37.1
229
+ version: 1.40.0
230
+ - - "~>"
231
+ - !ruby/object:Gem::Version
232
+ version: '1.40'
233
233
  - !ruby/object:Gem::Dependency
234
234
  name: sinatra
235
235
  requirement: !ruby/object:Gem::Requirement
@@ -254,22 +254,22 @@ dependencies:
254
254
  name: webmock
255
255
  requirement: !ruby/object:Gem::Requirement
256
256
  requirements:
257
- - - "~>"
258
- - !ruby/object:Gem::Version
259
- version: '3.8'
260
257
  - - ">="
261
258
  - !ruby/object:Gem::Version
262
259
  version: 3.8.0
260
+ - - "~>"
261
+ - !ruby/object:Gem::Version
262
+ version: '3.8'
263
263
  type: :development
264
264
  prerelease: false
265
265
  version_requirements: !ruby/object:Gem::Requirement
266
266
  requirements:
267
- - - "~>"
268
- - !ruby/object:Gem::Version
269
- version: '3.8'
270
267
  - - ">="
271
268
  - !ruby/object:Gem::Version
272
269
  version: 3.8.0
270
+ - - "~>"
271
+ - !ruby/object:Gem::Version
272
+ version: '3.8'
273
273
  description: A simple library for communicating with the FinApps REST API.
274
274
  email:
275
275
  - erich@financialapps.com
@@ -280,11 +280,16 @@ extra_rdoc_files:
280
280
  - LICENSE.txt
281
281
  files:
282
282
  - ".codeclimate.yml"
283
+ - ".github/release-drafter.yml"
284
+ - ".github/workflows/main.yaml"
285
+ - ".github/workflows/release-drafter.yml"
286
+ - ".github/workflows/verify-pr-labeled.yml"
283
287
  - ".gitignore"
284
288
  - ".gitlab-ci.yml"
285
289
  - ".hound.yml"
286
290
  - ".rspec"
287
291
  - ".rubocop.yml"
292
+ - ".rubocop_todo.yml"
288
293
  - ".ruby-gemset"
289
294
  - ".ruby-version"
290
295
  - ".tmuxinator.yml"
@@ -304,6 +309,8 @@ files:
304
309
  - lib/finapps/rest/consumers_portfolios.rb
305
310
  - lib/finapps/rest/documents_orders.rb
306
311
  - lib/finapps/rest/documents_orders_notifications.rb
312
+ - lib/finapps/rest/documents_upload_types.rb
313
+ - lib/finapps/rest/documents_uploads.rb
307
314
  - lib/finapps/rest/esign_templates.rb
308
315
  - lib/finapps/rest/operators.rb
309
316
  - lib/finapps/rest/operators_password_resets.rb
@@ -347,6 +354,8 @@ files:
347
354
  - spec/rest/consumers_spec.rb
348
355
  - spec/rest/documents_orders_notifications_spec.rb
349
356
  - spec/rest/documents_orders_spec.rb
357
+ - spec/rest/documents_upload_types_spec.rb
358
+ - spec/rest/documents_uploads_spec.rb
350
359
  - spec/rest/esign_templates_spec.rb
351
360
  - spec/rest/operators_password_resets_spec.rb
352
361
  - spec/rest/operators_spec.rb
@@ -386,6 +395,7 @@ files:
386
395
  - spec/support/fixtures/alert_occurrences.json
387
396
  - spec/support/fixtures/documents_order.json
388
397
  - spec/support/fixtures/documents_orders.json
398
+ - spec/support/fixtures/documents_orders_none.json
389
399
  - spec/support/fixtures/error.json
390
400
  - spec/support/fixtures/esign_templates.json
391
401
  - spec/support/fixtures/invalid_order_id.json
@@ -433,6 +443,7 @@ files:
433
443
  - spec/support/fixtures/tenant_app_settings.json
434
444
  - spec/support/fixtures/tenant_settings.json
435
445
  - spec/support/fixtures/unauthorized.json
446
+ - spec/support/fixtures/upload_types.json
436
447
  - spec/support/fixtures/user.json
437
448
  - spec/support/fixtures/users.json
438
449
  - spec/support/fixtures/verix/document/document.pdf
@@ -468,51 +479,53 @@ required_rubygems_version: !ruby/object:Gem::Requirement
468
479
  - !ruby/object:Gem::Version
469
480
  version: '0'
470
481
  requirements: []
471
- rubygems_version: 3.1.4
482
+ rubygems_version: 3.0.8
472
483
  signing_key:
473
484
  specification_version: 4
474
485
  summary: FinApps REST API ruby client.
475
486
  test_files:
476
- - spec/spec_helper.rb
477
- - spec/spec_helpers/client.rb
478
- - spec/utils/query_builder_spec.rb
479
- - spec/support/fake_api.rb
480
- - spec/rest/tenant_app_settings_spec.rb
481
- - spec/rest/order_reports_spec.rb
482
- - spec/rest/client_spec.rb
483
- - spec/rest/consumers_spec.rb
484
- - spec/rest/portfolios_spec.rb
485
- - spec/rest/order_statuses_spec.rb
486
- - spec/rest/order_notifications_spec.rb
487
- - spec/rest/documents_orders_notifications_spec.rb
488
- - spec/rest/operators_password_resets_spec.rb
489
- - spec/rest/esign_templates_spec.rb
490
- - spec/rest/portfolios_consumers_spec.rb
491
- - spec/rest/operators_spec.rb
492
- - spec/rest/version_spec.rb
493
- - spec/rest/order_assignments_spec.rb
494
- - spec/rest/api_request.rb
495
- - spec/rest/order_refreshes_spec.rb
487
+ - spec/rest/products_spec.rb
488
+ - spec/rest/tenant_settings_spec.rb
489
+ - spec/rest/alert_occurrences_spec.rb
496
490
  - spec/rest/alert_definitions_spec.rb
491
+ - spec/rest/operators_password_resets_spec.rb
492
+ - spec/rest/tenant_app_settings_spec.rb
493
+ - spec/rest/password_resets_spec.rb
494
+ - spec/rest/documents_orders_spec.rb
495
+ - spec/rest/orders_spec.rb
497
496
  - spec/rest/order_tokens_spec.rb
498
- - spec/rest/products_spec.rb
499
- - spec/rest/sessions_spec.rb
500
497
  - spec/rest/portfolios_available_consumers_spec.rb
498
+ - spec/rest/sessions_spec.rb
499
+ - spec/rest/client_spec.rb
500
+ - spec/rest/consumers_portfolios_spec.rb
501
+ - spec/rest/esign_templates_spec.rb
502
+ - spec/rest/portfolios_spec.rb
503
+ - spec/rest/documents_upload_types_spec.rb
501
504
  - spec/rest/portfolios_alerts_spec.rb
502
- - spec/rest/verix/verix_metadata_spec.rb
505
+ - spec/rest/portfolios_consumers_spec.rb
503
506
  - spec/rest/verix/verix_records_spec.rb
504
- - spec/rest/verix/verix_documents_spec.rb
505
507
  - spec/rest/verix/verix_pdf_documents_spec.rb
506
- - spec/rest/signed_documents_downloads_spec.rb
507
- - spec/rest/password_resets_spec.rb
508
+ - spec/rest/verix/verix_documents_spec.rb
509
+ - spec/rest/verix/verix_metadata_spec.rb
508
510
  - spec/rest/portfolio_reports_spec.rb
509
- - spec/rest/plaid/plaid_webhooks_spec.rb
511
+ - spec/rest/order_notifications_spec.rb
512
+ - spec/rest/order_refreshes_spec.rb
513
+ - spec/rest/order_assignments_spec.rb
510
514
  - spec/rest/plaid/plaid_institution_logos_spec.rb
511
- - spec/rest/plaid/plaid_consumer_institutions_spec.rb
512
515
  - spec/rest/plaid/plaid_accounts_spec.rb
516
+ - spec/rest/plaid/plaid_consumer_institutions_spec.rb
517
+ - spec/rest/plaid/plaid_webhooks_spec.rb
513
518
  - spec/rest/plaid/plaid_account_permissions_spec.rb
514
- - spec/rest/consumers_portfolios_spec.rb
515
- - spec/rest/documents_orders_spec.rb
516
- - spec/rest/alert_occurrences_spec.rb
517
- - spec/rest/tenant_settings_spec.rb
518
- - spec/rest/orders_spec.rb
519
+ - spec/rest/documents_uploads_spec.rb
520
+ - spec/rest/consumers_spec.rb
521
+ - spec/rest/order_statuses_spec.rb
522
+ - spec/rest/api_request.rb
523
+ - spec/rest/documents_orders_notifications_spec.rb
524
+ - spec/rest/operators_spec.rb
525
+ - spec/rest/signed_documents_downloads_spec.rb
526
+ - spec/rest/version_spec.rb
527
+ - spec/rest/order_reports_spec.rb
528
+ - spec/support/fake_api.rb
529
+ - spec/utils/query_builder_spec.rb
530
+ - spec/spec_helpers/client.rb
531
+ - spec/spec_helper.rb