finapps 6.4.3 → 6.7.0

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.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.github/release-drafter.yml +1 -1
  3. data/.github/workflows/ci.yaml +1 -1
  4. data/.github/workflows/release.yml +1 -1
  5. data/.github/workflows/verify-pr-labeled.yml +1 -1
  6. data/.rubocop.yml +3 -0
  7. data/finapps.gemspec +1 -1
  8. data/lib/finapps/rest/actors.rb +13 -0
  9. data/lib/finapps/rest/client.rb +3 -1
  10. data/lib/finapps/rest/operators.rb +23 -12
  11. data/lib/finapps/rest/screening_metadatas.rb +32 -0
  12. data/lib/finapps/rest/screenings.rb +1 -1
  13. data/lib/finapps/version.rb +1 -1
  14. data/lib/finapps.rb +2 -0
  15. data/spec/rest/actors_spec.rb +39 -0
  16. data/spec/rest/documents_orders_spec.rb +1 -1
  17. data/spec/rest/documents_upload_types_spec.rb +1 -1
  18. data/spec/rest/documents_uploads_spec.rb +1 -1
  19. data/spec/rest/esign_templates_spec.rb +1 -1
  20. data/spec/rest/operators_spec.rb +164 -170
  21. data/spec/rest/plaid/plaid_account_permissions_spec.rb +1 -1
  22. data/spec/rest/plaid/plaid_accounts_spec.rb +1 -1
  23. data/spec/rest/plaid/plaid_consumer_institutions_spec.rb +1 -1
  24. data/spec/rest/plaid/plaid_institution_logos_spec.rb +1 -1
  25. data/spec/rest/plaid/plaid_webhooks_spec.rb +1 -1
  26. data/spec/rest/screening_metadatas_spec.rb +131 -0
  27. data/spec/rest/screenings_spec.rb +8 -12
  28. data/spec/rest/signed_documents_downloads_spec.rb +1 -1
  29. data/spec/rest/verix/verix_documents_spec.rb +1 -1
  30. data/spec/rest/verix/verix_metadata_spec.rb +1 -1
  31. data/spec/rest/verix/verix_pdf_documents_spec.rb +1 -1
  32. data/spec/rest/verix/verix_records_spec.rb +1 -1
  33. data/spec/{rest → spec_helpers}/api_request.rb +11 -8
  34. data/spec/support/fake_api.rb +8 -7
  35. data/spec/support/fixtures/actors/details.json +19 -0
  36. data/spec/support/fixtures/screening_metadatas/not_found.json +3 -0
  37. data/spec/support/fixtures/screening_metadatas/show.json +4 -0
  38. data/spec/support/routes/actors.rb +14 -0
  39. data/spec/support/routes/screening_metadatas.rb +45 -0
  40. metadata +57 -44
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'spec_helpers/client'
4
- require 'rest/api_request'
4
+ require 'spec_helpers/api_request'
5
5
 
6
6
  RSpec.describe FinApps::REST::VerixDocuments do
7
7
  include SpecHelpers::Client
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'spec_helpers/client'
4
- require 'rest/api_request'
4
+ require 'spec_helpers/api_request'
5
5
 
6
6
  RSpec.describe FinApps::REST::VerixMetadata do
7
7
  include SpecHelpers::Client
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'spec_helpers/client'
4
- require 'rest/api_request'
4
+ require 'spec_helpers/api_request'
5
5
 
6
6
  RSpec.describe FinApps::REST::VerixPdfDocuments do
7
7
  include SpecHelpers::Client
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'spec_helpers/client'
4
- require 'rest/api_request'
4
+ require 'spec_helpers/api_request'
5
5
 
6
6
  RSpec.describe FinApps::REST::VerixRecords do
7
7
  include SpecHelpers::Client
@@ -1,12 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  RSpec.shared_examples 'an API request' do |_parameter|
4
- it do
5
- expect do
6
- # noinspection RubyBlockToMethodReference
7
- subject
8
- end.not_to raise_error
9
- end
4
+ it { expect { subject }.not_to raise_error }
10
5
 
11
6
  it('returns an array') { expect(subject).to be_a(Array) }
12
7
  end
@@ -17,10 +12,18 @@ RSpec.shared_examples 'a successful request' do |_parameter|
17
12
  end
18
13
  end
19
14
 
20
- RSpec.shared_examples 'a request that raises an error' do |_parameter|
15
+ RSpec.shared_examples 'a request that raises an error' do |parameter|
21
16
  it do
22
17
  expect { subject }.to raise_error(
23
- FinAppsCore::MissingArgumentsError
18
+ parameter || FinAppsCore::MissingArgumentsError
24
19
  )
25
20
  end
26
21
  end
22
+
23
+ RSpec.shared_examples 'a GET index request' do
24
+ it { expect(results).to have_key(:records) }
25
+
26
+ it('returns an array of records') do
27
+ expect(results[:records]).to be_a(Array)
28
+ end
29
+ end
@@ -3,6 +3,8 @@
3
3
  require 'sinatra/base'
4
4
  require_relative 'documents_uploads_routes'
5
5
  require_relative 'screenings_routes'
6
+ require_relative 'routes/actors'
7
+ require_relative 'routes/screening_metadatas'
6
8
 
7
9
  module Fake
8
10
  # the FakeApi class is used to mock API requests while testing.
@@ -18,6 +20,11 @@ module Fake
18
20
  put("/#{version}/resources") { json_response 201, 'resource.json' }
19
21
  delete("/#{version}/resources/:id") { status 202 }
20
22
 
23
+ include ActorsRoutes
24
+ include DocumentsUploadsRoutes
25
+ include ScreeningsRoutes
26
+ include ScreeningMetadatasRoutes
27
+
21
28
  # verix_metadata
22
29
  get("/#{version}/v/metadata") do
23
30
  json_response 200, 'verix/metadata.json'
@@ -257,9 +264,6 @@ module Fake
257
264
  json_response 404, 'invalid_signature_id.json'
258
265
  end
259
266
 
260
- # documents_uploads
261
- include DocumentsUploadsRoutes
262
-
263
267
  # documents orders notifications
264
268
  post("/#{version}/documents/orders/valid_id/notify") { status 204 }
265
269
  post("/#{version}/documents/orders/invalid_id/notify") do
@@ -277,9 +281,6 @@ module Fake
277
281
  # document_upload_types
278
282
  get("/#{version}/documents/upload_types") { json_response 200, 'upload_types.json' }
279
283
 
280
- # screenings
281
- include ScreeningsRoutes
282
-
283
284
  # consumers
284
285
  get("/#{version}/consumers") do
285
286
  json_response 200, 'users.json'
@@ -554,7 +555,7 @@ module Fake
554
555
  def http_response(content_type, response_code, file_name)
555
556
  content_type content_type
556
557
  status response_code
557
- File.open("#{File.dirname(__FILE__)}/fixtures/#{file_name}").read
558
+ File.read("#{File.dirname(__FILE__)}/fixtures/#{file_name}")
558
559
  end
559
560
  end
560
561
  end
@@ -0,0 +1,19 @@
1
+ {
2
+ "auth0_id": "string",
3
+ "date_created": "2021-10-27T02:36:01Z",
4
+ "date_modified": "2021-10-27T02:36:01Z",
5
+ "email": "string",
6
+ "external_id": "string",
7
+ "first_name": "string",
8
+ "language": "string",
9
+ "last_name": "string",
10
+ "locked": true,
11
+ "memo": "string",
12
+ "phone": "string",
13
+ "phone_country_code": "string",
14
+ "public_id": "string",
15
+ "role": 0,
16
+ "status": 0,
17
+ "tenant_id": "string",
18
+ "token": "string"
19
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "messages": [ "The screening ID was not found" ]
3
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "key": "le-key",
3
+ "value": "le-value"
4
+ }
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Fake
4
+ module ActorsRoutes
5
+ class << self
6
+ def included(base)
7
+ base.get("/#{base.version}/actor/details") do
8
+ json_response 200, 'actors/details.json'
9
+ end
10
+ super
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Fake
4
+ module ScreeningMetadatasRoutes
5
+ class << self
6
+ def included(base)
7
+ get_routes base
8
+ post_routes base
9
+ destroy_routes base
10
+
11
+ super
12
+ end
13
+
14
+ def post_routes(base)
15
+ base.post("/#{base.version}/screenings/:session_id/meta") do
16
+ if params[:session_id] == 'session_id'
17
+ status 204
18
+ else
19
+ json_response 404, 'screening_metadatas/not_found.json'
20
+ end
21
+ end
22
+ end
23
+
24
+ def destroy_routes(base)
25
+ base.delete("/#{base.version}/screenings/:session_id/meta/:key") do
26
+ if params[:session_id] == 'session_id'
27
+ status 204
28
+ else
29
+ json_response 404, 'screening_metadatas/not_found.json'
30
+ end
31
+ end
32
+ end
33
+
34
+ def get_routes(base)
35
+ base.get("/#{base.version}/screenings/:session_id/meta/:key") do
36
+ if params[:session_id] == 'session_id'
37
+ json_response 200, 'screening_metadatas/show.json'
38
+ else
39
+ json_response 404, 'screening_metadatas/not_found.json'
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ 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: 6.4.3
4
+ version: 6.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erich Quintero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-23 00:00:00.000000000 Z
11
+ date: 2022-01-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: finapps_core
@@ -136,20 +136,20 @@ dependencies:
136
136
  requirements:
137
137
  - - "~>"
138
138
  - !ruby/object:Gem::Version
139
- version: '2.4'
139
+ version: '2.5'
140
140
  - - ">="
141
141
  - !ruby/object:Gem::Version
142
- version: 2.4.0
142
+ version: 2.5.0
143
143
  type: :development
144
144
  prerelease: false
145
145
  version_requirements: !ruby/object:Gem::Requirement
146
146
  requirements:
147
147
  - - "~>"
148
148
  - !ruby/object:Gem::Version
149
- version: '2.4'
149
+ version: '2.5'
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: 2.4.0
152
+ version: 2.5.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: simplecov
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -258,6 +258,7 @@ files:
258
258
  - Rakefile
259
259
  - finapps.gemspec
260
260
  - lib/finapps.rb
261
+ - lib/finapps/rest/actors.rb
261
262
  - lib/finapps/rest/alert_definitions.rb
262
263
  - lib/finapps/rest/alert_occurrences.rb
263
264
  - lib/finapps/rest/client.rb
@@ -293,6 +294,7 @@ files:
293
294
  - lib/finapps/rest/portfolios_available_consumers.rb
294
295
  - lib/finapps/rest/portfolios_consumers.rb
295
296
  - lib/finapps/rest/products.rb
297
+ - lib/finapps/rest/screening_metadatas.rb
296
298
  - lib/finapps/rest/screenings.rb
297
299
  - lib/finapps/rest/sessions.rb
298
300
  - lib/finapps/rest/signed_documents_downloads.rb
@@ -305,9 +307,9 @@ files:
305
307
  - lib/finapps/rest/version.rb
306
308
  - lib/finapps/utils/query_builder.rb
307
309
  - lib/finapps/version.rb
310
+ - spec/rest/actors_spec.rb
308
311
  - spec/rest/alert_definitions_spec.rb
309
312
  - spec/rest/alert_occurrences_spec.rb
310
- - spec/rest/api_request.rb
311
313
  - spec/rest/client_spec.rb
312
314
  - spec/rest/consumer_login_tokens_spec.rb
313
315
  - spec/rest/consumers_portfolios_spec.rb
@@ -340,6 +342,7 @@ files:
340
342
  - spec/rest/portfolios_consumers_spec.rb
341
343
  - spec/rest/portfolios_spec.rb
342
344
  - spec/rest/products_spec.rb
345
+ - spec/rest/screening_metadatas_spec.rb
343
346
  - spec/rest/screenings_spec.rb
344
347
  - spec/rest/sessions_spec.rb
345
348
  - spec/rest/signed_documents_downloads_spec.rb
@@ -351,9 +354,11 @@ files:
351
354
  - spec/rest/verix/verix_records_spec.rb
352
355
  - spec/rest/version_spec.rb
353
356
  - spec/spec_helper.rb
357
+ - spec/spec_helpers/api_request.rb
354
358
  - spec/spec_helpers/client.rb
355
359
  - spec/support/documents_uploads_routes.rb
356
360
  - spec/support/fake_api.rb
361
+ - spec/support/fixtures/actors/details.json
357
362
  - spec/support/fixtures/alert_definition.json
358
363
  - spec/support/fixtures/alert_definitions.json
359
364
  - spec/support/fixtures/alert_occurrences.json
@@ -407,6 +412,8 @@ files:
407
412
  - spec/support/fixtures/screening.json
408
413
  - spec/support/fixtures/screening_invalid_update.json
409
414
  - spec/support/fixtures/screening_list.json
415
+ - spec/support/fixtures/screening_metadatas/not_found.json
416
+ - spec/support/fixtures/screening_metadatas/show.json
410
417
  - spec/support/fixtures/screenings/last_session.json
411
418
  - spec/support/fixtures/screenings/session_not_found_with_id.json
412
419
  - spec/support/fixtures/screenings/tenant_schemas.json
@@ -426,6 +433,8 @@ files:
426
433
  - spec/support/fixtures/verix/metadata.json
427
434
  - spec/support/fixtures/verix/record/create.json
428
435
  - spec/support/fixtures/verix/record/list.json
436
+ - spec/support/routes/actors.rb
437
+ - spec/support/routes/screening_metadatas.rb
429
438
  - spec/support/screenings_routes.rb
430
439
  - spec/utils/query_builder_spec.rb
431
440
  - tags
@@ -459,54 +468,58 @@ signing_key:
459
468
  specification_version: 4
460
469
  summary: FinApps REST API ruby client.
461
470
  test_files:
471
+ - spec/support/routes/actors.rb
472
+ - spec/support/routes/screening_metadatas.rb
462
473
  - spec/support/screenings_routes.rb
463
- - spec/support/fake_api.rb
464
474
  - spec/support/documents_uploads_routes.rb
465
- - spec/spec_helper.rb
466
- - spec/spec_helpers/client.rb
467
- - spec/rest/portfolios_alerts_spec.rb
468
- - spec/rest/products_spec.rb
475
+ - spec/support/fake_api.rb
476
+ - spec/rest/operators_login_tokens_spec.rb
477
+ - spec/rest/screening_metadatas_spec.rb
478
+ - spec/rest/documents_upload_types_spec.rb
479
+ - spec/rest/orders_spec.rb
480
+ - spec/rest/tenant_app_settings_spec.rb
481
+ - spec/rest/version_spec.rb
482
+ - spec/rest/screenings_spec.rb
469
483
  - spec/rest/documents_orders_spec.rb
484
+ - spec/rest/documents_uploads_spec.rb
485
+ - spec/rest/alert_definitions_spec.rb
470
486
  - spec/rest/password_resets_spec.rb
487
+ - spec/rest/order_reports_spec.rb
488
+ - spec/rest/alert_occurrences_spec.rb
489
+ - spec/rest/portfolios_available_consumers_spec.rb
490
+ - spec/rest/consumer_login_tokens_spec.rb
491
+ - spec/rest/tenant_settings_spec.rb
471
492
  - spec/rest/order_statuses_spec.rb
493
+ - spec/rest/products_spec.rb
472
494
  - spec/rest/operators_spec.rb
473
- - spec/rest/operator_change_password_email_spec.rb
474
- - spec/rest/esign_templates_spec.rb
475
- - spec/rest/order_tokens_spec.rb
476
- - spec/rest/order_reports_spec.rb
477
- - spec/rest/documents_upload_types_spec.rb
495
+ - spec/rest/sessions_spec.rb
496
+ - spec/rest/order_notifications_spec.rb
497
+ - spec/rest/signed_documents_downloads_spec.rb
498
+ - spec/rest/portfolio_reports_spec.rb
499
+ - spec/rest/portfolios_spec.rb
478
500
  - spec/rest/consumers_portfolios_spec.rb
479
- - spec/rest/portfolios_consumers_spec.rb
480
- - spec/rest/verix/verix_metadata_spec.rb
481
501
  - spec/rest/verix/verix_documents_spec.rb
482
- - spec/rest/verix/verix_records_spec.rb
483
502
  - spec/rest/verix/verix_pdf_documents_spec.rb
484
- - spec/rest/api_request.rb
485
- - spec/rest/tenant_settings_spec.rb
486
- - spec/rest/consumers_spec.rb
487
- - spec/rest/client_spec.rb
488
- - spec/rest/portfolios_available_consumers_spec.rb
489
- - spec/rest/alert_definitions_spec.rb
490
- - spec/rest/order_notifications_spec.rb
491
- - spec/rest/operators_password_resets_spec.rb
492
- - spec/rest/version_spec.rb
493
- - spec/rest/portfolios_spec.rb
494
- - spec/rest/sessions_spec.rb
495
- - spec/rest/documents_orders_notifications_spec.rb
496
- - spec/rest/tenant_app_settings_spec.rb
497
- - spec/rest/documents_uploads_spec.rb
498
- - spec/rest/screenings_spec.rb
499
- - spec/rest/signed_documents_downloads_spec.rb
503
+ - spec/rest/verix/verix_metadata_spec.rb
504
+ - spec/rest/verix/verix_records_spec.rb
505
+ - spec/rest/order_refreshes_spec.rb
500
506
  - spec/rest/plaid/plaid_account_permissions_spec.rb
507
+ - spec/rest/plaid/plaid_consumer_institutions_spec.rb
508
+ - spec/rest/plaid/plaid_institution_logos_spec.rb
501
509
  - spec/rest/plaid/plaid_webhooks_spec.rb
502
510
  - spec/rest/plaid/plaid_accounts_spec.rb
503
- - spec/rest/plaid/plaid_institution_logos_spec.rb
504
- - spec/rest/plaid/plaid_consumer_institutions_spec.rb
511
+ - spec/rest/client_spec.rb
512
+ - spec/rest/portfolios_alerts_spec.rb
513
+ - spec/rest/consumers_spec.rb
505
514
  - spec/rest/order_assignments_spec.rb
506
- - spec/rest/consumer_login_tokens_spec.rb
507
- - spec/rest/alert_occurrences_spec.rb
508
- - spec/rest/operators_login_tokens_spec.rb
509
- - spec/rest/order_refreshes_spec.rb
510
- - spec/rest/portfolio_reports_spec.rb
511
- - spec/rest/orders_spec.rb
515
+ - spec/rest/operator_change_password_email_spec.rb
516
+ - spec/rest/documents_orders_notifications_spec.rb
517
+ - spec/rest/operators_password_resets_spec.rb
518
+ - spec/rest/esign_templates_spec.rb
519
+ - spec/rest/order_tokens_spec.rb
520
+ - spec/rest/portfolios_consumers_spec.rb
521
+ - spec/rest/actors_spec.rb
522
+ - spec/spec_helpers/api_request.rb
523
+ - spec/spec_helpers/client.rb
512
524
  - spec/utils/query_builder_spec.rb
525
+ - spec/spec_helper.rb