finapps 5.0.33 → 5.0.41

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/.github/release-drafter.yml +49 -0
  3. data/.github/workflows/main.yaml +38 -0
  4. data/.github/workflows/release-drafter.yml +15 -0
  5. data/.github/workflows/release.yml +43 -0
  6. data/.github/workflows/verify-pr-labeled.yml +14 -0
  7. data/.rubocop.yml +5 -12
  8. data/.rubocop_todo.yml +4 -95
  9. data/README.md +1 -0
  10. data/RELEASES.md +20 -0
  11. data/finapps.gemspec +1 -2
  12. data/lib/finapps.rb +2 -0
  13. data/lib/finapps/rest/client.rb +8 -5
  14. data/lib/finapps/rest/documents_orders.rb +1 -1
  15. data/lib/finapps/rest/documents_upload_types.rb +11 -0
  16. data/lib/finapps/rest/documents_uploads.rb +23 -0
  17. data/lib/finapps/rest/orders.rb +26 -15
  18. data/lib/finapps/rest/sessions.rb +10 -8
  19. data/lib/finapps/utils/query_builder.rb +13 -4
  20. data/lib/finapps/version.rb +1 -1
  21. data/spec/rest/alert_definitions_spec.rb +2 -6
  22. data/spec/rest/client_spec.rb +32 -40
  23. data/spec/rest/consumers_spec.rb +221 -220
  24. data/spec/rest/documents_orders_notifications_spec.rb +1 -1
  25. data/spec/rest/documents_orders_spec.rb +1 -1
  26. data/spec/rest/documents_upload_types_spec.rb +21 -0
  27. data/spec/rest/documents_uploads_spec.rb +104 -0
  28. data/spec/rest/operators_password_resets_spec.rb +49 -56
  29. data/spec/rest/operators_spec.rb +167 -178
  30. data/spec/rest/order_notifications_spec.rb +1 -1
  31. data/spec/rest/order_refreshes_spec.rb +2 -5
  32. data/spec/rest/order_reports_spec.rb +14 -14
  33. data/spec/rest/order_statuses_spec.rb +10 -10
  34. data/spec/rest/order_tokens_spec.rb +33 -32
  35. data/spec/rest/orders_spec.rb +78 -64
  36. data/spec/rest/password_resets_spec.rb +28 -28
  37. data/spec/rest/plaid/plaid_consumer_institutions_spec.rb +1 -1
  38. data/spec/rest/portfolios_alerts_spec.rb +3 -3
  39. data/spec/rest/portfolios_consumers_spec.rb +2 -2
  40. data/spec/rest/portfolios_spec.rb +6 -18
  41. data/spec/rest/products_spec.rb +16 -15
  42. data/spec/rest/sessions_spec.rb +61 -60
  43. data/spec/rest/signed_documents_downloads_spec.rb +8 -4
  44. data/spec/rest/verix/verix_documents_spec.rb +2 -2
  45. data/spec/rest/version_spec.rb +4 -4
  46. data/spec/support/fake_api.rb +16 -1
  47. data/spec/support/fixtures/upload_types.json +9 -0
  48. metadata +70 -79
  49. data/lib/tasks/releaser.rake +0 -12
@@ -3,14 +3,14 @@
3
3
  RSpec.describe FinApps::REST::Version do
4
4
  include SpecHelpers::Client
5
5
 
6
- subject { described_class.new(client) }
6
+ subject(:version) { described_class.new(client) }
7
7
 
8
8
  describe '#show' do
9
- it { expect { subject.show }.not_to raise_error }
10
- 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
11
 
12
12
  it('starts with the words "Version =>"') do
13
- expect(subject.show[0]).to start_with('Version =>')
13
+ expect(version.show[0]).to start_with('Version =>')
14
14
  end
15
15
  end
16
16
  end
@@ -251,6 +251,18 @@ class FakeApi < Sinatra::Base
251
251
  json_response 404, 'invalid_signature_id.json'
252
252
  end
253
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
+
254
266
  # documents orders notifications
255
267
  post("/#{version}/documents/orders/valid_id/notify") { status 204 }
256
268
  post("/#{version}/documents/orders/invalid_id/notify") do
@@ -265,6 +277,9 @@ class FakeApi < Sinatra::Base
265
277
  # esign_templates
266
278
  get("/#{version}/esign_templates") { json_response 200, 'esign_templates.json' }
267
279
 
280
+ # document_upload_types
281
+ get("/#{version}/documents/upload_types") { json_response 200, 'upload_types.json' }
282
+
268
283
  # consumers
269
284
  get("/#{version}/consumers") do
270
285
  json_response 200, 'users.json'
@@ -502,6 +517,6 @@ class FakeApi < Sinatra::Base
502
517
  def http_response(content_type, response_code, file_name)
503
518
  content_type content_type
504
519
  status response_code
505
- File.open(File.dirname(__FILE__) + '/fixtures/' + file_name, 'rb').read
520
+ File.open("#{File.dirname(__FILE__)}/fixtures/#{file_name}").read
506
521
  end
507
522
  end
@@ -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
+ ]
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.33
4
+ version: 5.0.41
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-24 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
@@ -70,26 +70,6 @@ dependencies:
70
70
  - - ">="
71
71
  - !ruby/object:Gem::Version
72
72
  version: 1.0.9
73
- - !ruby/object:Gem::Dependency
74
- name: gem-release
75
- requirement: !ruby/object:Gem::Requirement
76
- requirements:
77
- - - "~>"
78
- - !ruby/object:Gem::Version
79
- version: '2.1'
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: 2.1.1
83
- type: :development
84
- prerelease: false
85
- version_requirements: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '2.1'
90
- - - ">="
91
- - !ruby/object:Gem::Version
92
- version: 2.1.1
93
73
  - !ruby/object:Gem::Dependency
94
74
  name: guard
95
75
  requirement: !ruby/object:Gem::Requirement
@@ -154,42 +134,42 @@ dependencies:
154
134
  name: rspec
155
135
  requirement: !ruby/object:Gem::Requirement
156
136
  requirements:
157
- - - "~>"
158
- - !ruby/object:Gem::Version
159
- version: '3.9'
160
137
  - - ">="
161
138
  - !ruby/object:Gem::Version
162
139
  version: 3.9.0
140
+ - - "~>"
141
+ - !ruby/object:Gem::Version
142
+ version: '3.9'
163
143
  type: :development
164
144
  prerelease: false
165
145
  version_requirements: !ruby/object:Gem::Requirement
166
146
  requirements:
167
- - - "~>"
168
- - !ruby/object:Gem::Version
169
- version: '3.9'
170
147
  - - ">="
171
148
  - !ruby/object:Gem::Version
172
149
  version: 3.9.0
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '3.9'
173
153
  - !ruby/object:Gem::Dependency
174
154
  name: rubocop
175
155
  requirement: !ruby/object:Gem::Requirement
176
156
  requirements:
177
- - - "~>"
178
- - !ruby/object:Gem::Version
179
- version: '0.86'
180
157
  - - ">="
181
158
  - !ruby/object:Gem::Version
182
159
  version: 0.86.0
160
+ - - "~>"
161
+ - !ruby/object:Gem::Version
162
+ version: '0.86'
183
163
  type: :development
184
164
  prerelease: false
185
165
  version_requirements: !ruby/object:Gem::Requirement
186
166
  requirements:
187
- - - "~>"
188
- - !ruby/object:Gem::Version
189
- version: '0.86'
190
167
  - - ">="
191
168
  - !ruby/object:Gem::Version
192
169
  version: 0.86.0
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: '0.86'
193
173
  - !ruby/object:Gem::Dependency
194
174
  name: rubocop-performance
195
175
  requirement: !ruby/object:Gem::Requirement
@@ -214,22 +194,22 @@ dependencies:
214
194
  name: rubocop-rspec
215
195
  requirement: !ruby/object:Gem::Requirement
216
196
  requirements:
217
- - - "~>"
218
- - !ruby/object:Gem::Version
219
- version: '1.40'
220
197
  - - ">="
221
198
  - !ruby/object:Gem::Version
222
199
  version: 1.40.0
200
+ - - "~>"
201
+ - !ruby/object:Gem::Version
202
+ version: '1.40'
223
203
  type: :development
224
204
  prerelease: false
225
205
  version_requirements: !ruby/object:Gem::Requirement
226
206
  requirements:
227
- - - "~>"
228
- - !ruby/object:Gem::Version
229
- version: '1.40'
230
207
  - - ">="
231
208
  - !ruby/object:Gem::Version
232
209
  version: 1.40.0
210
+ - - "~>"
211
+ - !ruby/object:Gem::Version
212
+ version: '1.40'
233
213
  - !ruby/object:Gem::Dependency
234
214
  name: sinatra
235
215
  requirement: !ruby/object:Gem::Requirement
@@ -254,22 +234,22 @@ dependencies:
254
234
  name: webmock
255
235
  requirement: !ruby/object:Gem::Requirement
256
236
  requirements:
257
- - - "~>"
258
- - !ruby/object:Gem::Version
259
- version: '3.8'
260
237
  - - ">="
261
238
  - !ruby/object:Gem::Version
262
239
  version: 3.8.0
240
+ - - "~>"
241
+ - !ruby/object:Gem::Version
242
+ version: '3.8'
263
243
  type: :development
264
244
  prerelease: false
265
245
  version_requirements: !ruby/object:Gem::Requirement
266
246
  requirements:
267
- - - "~>"
268
- - !ruby/object:Gem::Version
269
- version: '3.8'
270
247
  - - ">="
271
248
  - !ruby/object:Gem::Version
272
249
  version: 3.8.0
250
+ - - "~>"
251
+ - !ruby/object:Gem::Version
252
+ version: '3.8'
273
253
  description: A simple library for communicating with the FinApps REST API.
274
254
  email:
275
255
  - erich@financialapps.com
@@ -280,6 +260,11 @@ extra_rdoc_files:
280
260
  - LICENSE.txt
281
261
  files:
282
262
  - ".codeclimate.yml"
263
+ - ".github/release-drafter.yml"
264
+ - ".github/workflows/main.yaml"
265
+ - ".github/workflows/release-drafter.yml"
266
+ - ".github/workflows/release.yml"
267
+ - ".github/workflows/verify-pr-labeled.yml"
283
268
  - ".gitignore"
284
269
  - ".gitlab-ci.yml"
285
270
  - ".hound.yml"
@@ -305,6 +290,8 @@ files:
305
290
  - lib/finapps/rest/consumers_portfolios.rb
306
291
  - lib/finapps/rest/documents_orders.rb
307
292
  - lib/finapps/rest/documents_orders_notifications.rb
293
+ - lib/finapps/rest/documents_upload_types.rb
294
+ - lib/finapps/rest/documents_uploads.rb
308
295
  - lib/finapps/rest/esign_templates.rb
309
296
  - lib/finapps/rest/operators.rb
310
297
  - lib/finapps/rest/operators_password_resets.rb
@@ -339,7 +326,6 @@ files:
339
326
  - lib/finapps/rest/version.rb
340
327
  - lib/finapps/utils/query_builder.rb
341
328
  - lib/finapps/version.rb
342
- - lib/tasks/releaser.rake
343
329
  - spec/rest/alert_definitions_spec.rb
344
330
  - spec/rest/alert_occurrences_spec.rb
345
331
  - spec/rest/api_request.rb
@@ -348,6 +334,8 @@ files:
348
334
  - spec/rest/consumers_spec.rb
349
335
  - spec/rest/documents_orders_notifications_spec.rb
350
336
  - spec/rest/documents_orders_spec.rb
337
+ - spec/rest/documents_upload_types_spec.rb
338
+ - spec/rest/documents_uploads_spec.rb
351
339
  - spec/rest/esign_templates_spec.rb
352
340
  - spec/rest/operators_password_resets_spec.rb
353
341
  - spec/rest/operators_spec.rb
@@ -435,6 +423,7 @@ files:
435
423
  - spec/support/fixtures/tenant_app_settings.json
436
424
  - spec/support/fixtures/tenant_settings.json
437
425
  - spec/support/fixtures/unauthorized.json
426
+ - spec/support/fixtures/upload_types.json
438
427
  - spec/support/fixtures/user.json
439
428
  - spec/support/fixtures/users.json
440
429
  - spec/support/fixtures/verix/document/document.pdf
@@ -470,51 +459,53 @@ required_rubygems_version: !ruby/object:Gem::Requirement
470
459
  - !ruby/object:Gem::Version
471
460
  version: '0'
472
461
  requirements: []
473
- rubygems_version: 3.1.3
462
+ rubygems_version: 3.0.3
474
463
  signing_key:
475
464
  specification_version: 4
476
465
  summary: FinApps REST API ruby client.
477
466
  test_files:
478
467
  - spec/spec_helper.rb
479
- - spec/spec_helpers/client.rb
480
- - spec/utils/query_builder_spec.rb
481
468
  - spec/support/fake_api.rb
482
- - spec/rest/tenant_app_settings_spec.rb
483
- - spec/rest/order_reports_spec.rb
469
+ - spec/utils/query_builder_spec.rb
484
470
  - spec/rest/client_spec.rb
485
- - spec/rest/consumers_spec.rb
486
- - spec/rest/portfolios_spec.rb
487
- - spec/rest/order_statuses_spec.rb
488
- - spec/rest/order_notifications_spec.rb
489
- - spec/rest/documents_orders_notifications_spec.rb
490
- - spec/rest/operators_password_resets_spec.rb
471
+ - spec/rest/documents_uploads_spec.rb
491
472
  - spec/rest/esign_templates_spec.rb
492
- - spec/rest/portfolios_consumers_spec.rb
493
- - spec/rest/operators_spec.rb
494
- - spec/rest/version_spec.rb
473
+ - spec/rest/order_reports_spec.rb
495
474
  - spec/rest/order_assignments_spec.rb
496
475
  - spec/rest/api_request.rb
497
- - spec/rest/order_refreshes_spec.rb
498
- - spec/rest/alert_definitions_spec.rb
499
- - spec/rest/order_tokens_spec.rb
500
- - spec/rest/products_spec.rb
501
- - spec/rest/sessions_spec.rb
502
- - spec/rest/portfolios_available_consumers_spec.rb
476
+ - spec/rest/documents_orders_spec.rb
503
477
  - spec/rest/portfolios_alerts_spec.rb
504
- - spec/rest/verix/verix_metadata_spec.rb
478
+ - spec/rest/tenant_app_settings_spec.rb
479
+ - spec/rest/documents_upload_types_spec.rb
480
+ - spec/rest/products_spec.rb
481
+ - spec/rest/order_notifications_spec.rb
482
+ - spec/rest/order_tokens_spec.rb
483
+ - spec/rest/portfolios_spec.rb
484
+ - spec/rest/alert_definitions_spec.rb
505
485
  - spec/rest/verix/verix_records_spec.rb
506
486
  - spec/rest/verix/verix_documents_spec.rb
487
+ - spec/rest/verix/verix_metadata_spec.rb
507
488
  - spec/rest/verix/verix_pdf_documents_spec.rb
489
+ - spec/rest/order_statuses_spec.rb
490
+ - spec/rest/consumers_spec.rb
491
+ - spec/rest/consumers_portfolios_spec.rb
508
492
  - spec/rest/signed_documents_downloads_spec.rb
509
- - spec/rest/password_resets_spec.rb
493
+ - spec/rest/documents_orders_notifications_spec.rb
494
+ - spec/rest/operators_password_resets_spec.rb
510
495
  - spec/rest/portfolio_reports_spec.rb
511
- - spec/rest/plaid/plaid_webhooks_spec.rb
496
+ - spec/rest/order_refreshes_spec.rb
497
+ - spec/rest/operators_spec.rb
498
+ - spec/rest/portfolios_available_consumers_spec.rb
499
+ - spec/rest/password_resets_spec.rb
500
+ - spec/rest/orders_spec.rb
501
+ - spec/rest/tenant_settings_spec.rb
502
+ - spec/rest/version_spec.rb
503
+ - spec/rest/portfolios_consumers_spec.rb
504
+ - spec/rest/sessions_spec.rb
505
+ - spec/rest/alert_occurrences_spec.rb
506
+ - spec/rest/plaid/plaid_account_permissions_spec.rb
512
507
  - spec/rest/plaid/plaid_institution_logos_spec.rb
513
- - spec/rest/plaid/plaid_consumer_institutions_spec.rb
514
508
  - spec/rest/plaid/plaid_accounts_spec.rb
515
- - spec/rest/plaid/plaid_account_permissions_spec.rb
516
- - spec/rest/consumers_portfolios_spec.rb
517
- - spec/rest/documents_orders_spec.rb
518
- - spec/rest/alert_occurrences_spec.rb
519
- - spec/rest/tenant_settings_spec.rb
520
- - spec/rest/orders_spec.rb
509
+ - spec/rest/plaid/plaid_webhooks_spec.rb
510
+ - spec/rest/plaid/plaid_consumer_institutions_spec.rb
511
+ - spec/spec_helpers/client.rb
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- desc 'Bumps the version to the next patch level, tags and pushes the code to
4
- origin repository'
5
- task :bump do
6
- system 'gem bump --tag --push --skip-ci'
7
- end
8
-
9
- desc 'Releases the gem and pushes any tags to the origin repository'
10
- task :release do
11
- system 'gem release --push'
12
- end