finapps 6.1.0 → 6.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 287e012502599f7781e37f492a27d67c956fa2f4d94073163302f3c429da4d42
4
- data.tar.gz: f7da81b6008ac880f6d028c3dc209945e65641f979d5c9d3d98580ab3deb7713
3
+ metadata.gz: 8428ee4965080f78c083fc2e3d0de2fc66b59596bf5ea81bbbc17e2c11ad2b39
4
+ data.tar.gz: 0656c926f0b3c70929fb6fbe1b69282d766c56c777aa32ed377218ceac9a6824
5
5
  SHA512:
6
- metadata.gz: f87c89de3b7915c3ecc54300cc31060b3ce39da36c860e4a539832e302e1576a560c31247925351a0eb798e32563a65f2358d265760c3078940e1f4e7c2aa88d
7
- data.tar.gz: 6a8ac80500a6f696817efff46e1fd39a79feb6823ae4ab9693a2b588166bcf175ebcdede16d491b4410fd015d0e4519d45e81acc98e2f9f8b7adfbd85f63193f
6
+ metadata.gz: 4163eda4a00e4df6c1a34cd76733d11c53fc4774899aabea933bbfe304e5acbd92ea714ccbbd974f8bd496278e501d7fd0d8591ad503480356e9ca75f98198ee
7
+ data.tar.gz: 756edbc47cdb115e15efe6dc53be0aeea1610feb93470fed421105ce2a7a6b8fa59c04fc84c99c9c5d75a8914b21de5e68d69c29ff584ab810506f948daed233
data/finapps.gemspec CHANGED
@@ -20,18 +20,18 @@ Gem::Specification.new do |spec|
20
20
  spec.test_files = Dir['spec/**/*.rb']
21
21
  spec.require_paths = ['lib']
22
22
 
23
- spec.add_runtime_dependency 'finapps_core', '~> 6.0', '>= 6.0.0'
23
+ spec.add_runtime_dependency 'finapps_core', '~> 6.0', '>= 6.0.1'
24
24
 
25
25
  spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.16'
26
26
  spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
27
27
  spec.add_development_dependency 'rspec', '~> 3.10', '>= 3.10.0'
28
- spec.add_development_dependency 'rubocop-performance', '~> 1.9', '>= 1.9.2'
28
+ spec.add_development_dependency 'rubocop-performance', '~> 1.11', '>= 1.11.5'
29
29
  spec.add_development_dependency 'rubocop-rake', '~> 0.5', '>= 0.5.1'
30
30
  spec.add_development_dependency 'rubocop-rspec', '~> 2.4', '>= 2.4.0'
31
31
  spec.add_development_dependency 'simplecov', '~> 0.21', '>= 0.21.2'
32
32
  spec.add_development_dependency 'simplecov-console', '~> 0.9'
33
33
  spec.add_development_dependency 'sinatra', '~> 2.1', '>= 2.1.0'
34
- spec.add_development_dependency 'webmock', '~> 3.12', '>= 3.12.2'
34
+ spec.add_development_dependency 'webmock', '~> 3.14', '>= 3.14.0'
35
35
 
36
36
  spec.extra_rdoc_files = %w[README.md LICENSE.txt]
37
37
  spec.rdoc_options = %w[--line-numbers --inline-source --title finapps-ruby --main README.md]
@@ -10,6 +10,7 @@ module FinApps
10
10
  alert_definitions
11
11
  alert_occurrences
12
12
  consumers
13
+ consumer_login_tokens
13
14
  consumers_portfolios
14
15
  documents_orders
15
16
  documents_orders_notifications
@@ -26,6 +27,7 @@ module FinApps
26
27
  operators
27
28
  operator_login_tokens
28
29
  operators_password_resets
30
+ operator_change_password_email
29
31
  password_resets
30
32
  plaid_webhooks
31
33
  plaid_consumer_institutions
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinApps
4
+ module REST
5
+ class ConsumerLoginTokens < FinAppsCore::REST::Resources
6
+ def create(params)
7
+ not_blank(params, :params)
8
+ super params, 'login/token'
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinApps
4
+ module REST
5
+ class OperatorChangePasswordEmail < FinAppsCore::REST::Resources
6
+ def create(params)
7
+ not_blank(params, :params)
8
+ super params, 'login/change_password_email'
9
+ end
10
+ end
11
+ end
12
+ end
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'date'
3
4
  require_relative '../utils/query_builder'
4
5
 
5
6
  module FinApps
@@ -55,22 +56,71 @@ module FinApps
55
56
  private
56
57
 
57
58
  def build_filter(params)
58
- search_query(params[:searchTerm])
59
+ term_filter(params[:searchTerm])
60
+ .merge(date_range_filter(params[:fromDate], params[:toDate]))
61
+ .merge(progress_filter(params[:progress]))
59
62
  end
60
63
 
61
- def search_query(term)
64
+ def term_filter(term)
62
65
  return {} unless term
63
66
 
64
- query = search_query_object(term)
65
- {'$or': query}
67
+ {'$or': term_array(term) + split_term_array(term)}
66
68
  end
67
69
 
68
- def search_query_object(term)
70
+ def term_array(term)
69
71
  [
70
72
  {'consumer.public_id': term},
71
- {'consumer.email': term}
73
+ {'consumer.email': term},
74
+ {'consumer.first_name': term},
75
+ {'consumer.last_name': term},
76
+ {'consumer.external_id': term}
72
77
  ]
73
78
  end
79
+
80
+ def split_term_array(term)
81
+ return [] unless space?(term)
82
+
83
+ arr = []
84
+ term.split.each do |t|
85
+ arr.append('consumer.first_name': t)
86
+ arr.append('consumer.last_name': t)
87
+ end
88
+
89
+ arr
90
+ end
91
+
92
+ def date_range_filter(from_date, to_date)
93
+ return {} unless from_date || to_date
94
+
95
+ {'*date_created': from_filter(from_date).merge(to_filter(to_date))}
96
+ end
97
+
98
+ def from_filter(from_date)
99
+ return {} unless from_date
100
+
101
+ {'$gte': to_rfc_date(from_date.to_s)}
102
+ end
103
+
104
+ def to_filter(to_date)
105
+ return {} unless to_date
106
+
107
+ {'$lt': to_rfc_date(to_date.to_s)}
108
+ end
109
+
110
+ def to_rfc_date(str)
111
+ date = DateTime.parse(str)
112
+ date.rfc3339
113
+ end
114
+
115
+ def progress_filter(progress)
116
+ return {} unless progress
117
+
118
+ {progress: progress}
119
+ end
120
+
121
+ def space?(string)
122
+ /\s/.match?(string)
123
+ end
74
124
  end
75
125
  end
76
126
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FinApps
4
- VERSION = '6.1.0'
4
+ VERSION = '6.4.0'
5
5
  end
data/lib/finapps.rb CHANGED
@@ -6,6 +6,7 @@ require 'faraday_middleware'
6
6
  require 'finapps_core'
7
7
  require 'finapps/rest/version'
8
8
  require 'finapps/rest/consumers'
9
+ require 'finapps/rest/consumer_login_tokens'
9
10
  require 'finapps/rest/sessions'
10
11
  require 'finapps/rest/order_tokens'
11
12
  require 'finapps/rest/orders'
@@ -16,6 +17,7 @@ require 'finapps/rest/password_resets'
16
17
  require 'finapps/rest/operators'
17
18
  require 'finapps/rest/operator_login_tokens'
18
19
  require 'finapps/rest/operators_password_resets'
20
+ require 'finapps/rest/operator_change_password_email'
19
21
  require 'finapps/rest/products'
20
22
  require 'finapps/rest/order_assignments'
21
23
  require 'finapps/rest/client'
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helpers/client'
4
+
5
+ RSpec.describe FinApps::REST::ConsumerLoginTokens do
6
+ context 'when initialized with valid FinApps::Client object' do
7
+ include SpecHelpers::Client
8
+ subject(:consumer_login_tokens) { described_class.new(client) }
9
+
10
+ describe '#create' do
11
+ let(:results) { create[0] }
12
+ let(:error_messages) { create[1] }
13
+
14
+ context 'when missing params' do
15
+ let(:create) { consumer_login_tokens.create(nil) }
16
+
17
+ error = FinAppsCore::MissingArgumentsError
18
+ it { expect { create }.to raise_error(error) }
19
+ end
20
+
21
+ context 'when invalid params are provided' do
22
+ let(:create) { consumer_login_tokens.create(params: 'invalid') }
23
+
24
+ it { expect { create }.not_to raise_error }
25
+ it('results is nil') { expect(results).to be_nil }
26
+
27
+ it('error messages array is populated') do
28
+ expect(error_messages.first.downcase).to eq('invalid request body')
29
+ end
30
+ end
31
+
32
+ context 'when valid params are provided' do
33
+ let(:create) { consumer_login_tokens.create(params: 'valid') }
34
+
35
+ it { expect { create }.not_to raise_error }
36
+ it('returns an array') { expect(create).to be_a(Array) }
37
+ it { expect(results).to have_key(:public_id) }
38
+ it { expect(results).to have_key(:external_id) }
39
+ it { expect(results).to have_key(:tenant_id) }
40
+ it { expect(results).to have_key(:role) }
41
+ it { expect(results).to have_key(:memo) }
42
+ it { expect(results).to have_key(:token) }
43
+ it('returns no error messages') { expect(error_messages).to be_empty }
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helpers/client'
4
+
5
+ RSpec.describe FinApps::REST::OperatorChangePasswordEmail do
6
+ context 'when initialized with valid FinApps::Client object' do
7
+ include SpecHelpers::Client
8
+ subject(:operators_change_password_email) do
9
+ described_class.new(client)
10
+ end
11
+
12
+ describe '#create' do
13
+ let(:results) { create[0] }
14
+ let(:error_messages) { create[1] }
15
+
16
+ context 'when missing params' do
17
+ let(:create) { subject.create(nil) }
18
+
19
+ it do
20
+ expect { create }.to raise_error(FinAppsCore::MissingArgumentsError)
21
+ end
22
+ end
23
+
24
+ context 'with valid params' do
25
+ let(:create) { subject.create(email: 'valid email') }
26
+
27
+ it('doesn\'t raise an error') { expect { create }.not_to raise_error }
28
+ it('doesn\'t have a response') { expect(results).to be_nil }
29
+ it('returns no error messages') { expect(error_messages).to be_empty }
30
+ end
31
+ end
32
+ end
33
+ end
@@ -13,15 +13,6 @@ RSpec.describe FinApps::REST::Screenings do
13
13
  subject(:list) { described_class.new(client).list(params) }
14
14
 
15
15
  context 'with valid params' do
16
- let(:params) do
17
- {
18
- page: 2,
19
- sort: 'date_created',
20
- requested: 25,
21
- searchTerm: 'term'
22
- }
23
- end
24
-
25
16
  context 'without searchTerm' do
26
17
  let(:params) { {searchTerm: nil, page: 2} }
27
18
 
@@ -38,8 +29,34 @@ RSpec.describe FinApps::REST::Screenings do
38
29
  end
39
30
  end
40
31
 
32
+ # rubocop:disable RSpec/ExampleLength
33
+ context 'with date range' do
34
+ let(:params) { {fromDate: '08/01/2021', toDate: '09/01/2021'} }
35
+
36
+ it_behaves_like 'an API request'
37
+ it_behaves_like 'a successful request'
38
+ it 'performs a get and returns the response' do
39
+ expect(results).to have_key(:records)
40
+ end
41
+
42
+ it 'builds query and sends proper request' do
43
+ list
44
+ json_filter = {
45
+ '*date_created': {'$gte': '2021-01-08T00:00:00%2B00:00',
46
+ '$lt': '2021-01-09T00:00:00%2B00:00'}
47
+ }.to_json
48
+ encoded_filter = ERB::Util.url_encode json_filter
49
+ url = "#{versioned_api_path}/screenings?filter=#{encoded_filter}"
50
+
51
+ expect(WebMock).to have_requested(:get, url)
52
+ end
53
+ end
54
+ # rubocop:enable RSpec/ExampleLength
55
+
41
56
  # rubocop:disable RSpec/ExampleLength
42
57
  context 'with searchTerm' do
58
+ let(:params) { {searchTerm: 'le term'} }
59
+
43
60
  it_behaves_like 'an API request'
44
61
  it_behaves_like 'a successful request'
45
62
  it 'performs a get and returns the response' do
@@ -48,10 +65,17 @@ RSpec.describe FinApps::REST::Screenings do
48
65
 
49
66
  it 'builds query and sends proper request' do
50
67
  list
51
- url =
52
- "#{versioned_api_path}/screenings?filter=%7B%22$or%22:%5B%7B%22" \
53
- 'consumer.public_id%22:%22term%22%7D,%7B%22consumer.email%22:%22' \
54
- 'term%22%7D%5D%7D&page=2&requested=25&sort=date_created'
68
+ json_filter = {'$or': [{'consumer.public_id': 'le term'},
69
+ {'consumer.email': 'le term'},
70
+ {'consumer.first_name': 'le term'},
71
+ {'consumer.last_name': 'le term'},
72
+ {'consumer.external_id': 'le term'},
73
+ {'consumer.first_name': 'le'},
74
+ {'consumer.last_name': 'le'},
75
+ {'consumer.first_name': 'term'},
76
+ {'consumer.last_name': 'term'}]}.to_json
77
+ encoded_filter = ERB::Util.url_encode json_filter
78
+ url = "#{versioned_api_path}/screenings?filter=#{encoded_filter}"
55
79
 
56
80
  expect(WebMock).to have_requested(:get, url)
57
81
  end
@@ -359,7 +359,7 @@ module Fake
359
359
  end
360
360
 
361
361
  # operators login tokens
362
- post("/#{version}/login/operators/token") do
362
+ post("/#{version}/login/token") do
363
363
  request.body.rewind
364
364
  request_payload = JSON.parse request.body.read
365
365
  if request_payload['params'] == 'valid'
@@ -369,6 +369,28 @@ module Fake
369
369
  end
370
370
  end
371
371
 
372
+ # operators login tokens
373
+ post("/#{version}/login/operators/token") do
374
+ request.body.rewind
375
+ request_payload = JSON.parse request.body.read
376
+ if request_payload['params'] == 'valid'
377
+ json_response 200, 'consumer_login_token.json'
378
+ else
379
+ json_response 400, 'invalid_request_body.json'
380
+ end
381
+ end
382
+
383
+ # operator change password email
384
+ post("/#{version}/login/change_password_email") do
385
+ request.body.rewind
386
+ request_payload = JSON.parse request.body.read
387
+ if request_payload['email'] == 'valid email'
388
+ status 200
389
+ else
390
+ json_response 404, 'resource_not_found.json'
391
+ end
392
+ end
393
+
372
394
  # session
373
395
  post("/#{version}/login") do
374
396
  request.body.rewind
@@ -0,0 +1,23 @@
1
+ {
2
+ "auth0_id": "string",
3
+ "date_created": "2021-07-19T13:04:09Z",
4
+ "date_modified": "2021-07-19T13:04:09Z",
5
+ "email": "string",
6
+ "external_id": "string",
7
+ "first_name": "string",
8
+ "last_name": "string",
9
+ "locked": true,
10
+ "memo": "string",
11
+ "metadata": {
12
+ "property1": { },
13
+ "property2": { }
14
+ },
15
+ "phone": "string",
16
+ "phone_country_code": "string",
17
+ "postal_code": "string",
18
+ "public_id": "string",
19
+ "role": 0,
20
+ "status": 0,
21
+ "tenant_id": "string",
22
+ "token": "string"
23
+ }
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.1.0
4
+ version: 6.4.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-07-16 00:00:00.000000000 Z
11
+ date: 2021-09-21 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: '6.0'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 6.0.0
22
+ version: 6.0.1
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '6.0'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 6.0.0
32
+ version: 6.0.1
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: bundler
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -96,20 +96,20 @@ dependencies:
96
96
  requirements:
97
97
  - - "~>"
98
98
  - !ruby/object:Gem::Version
99
- version: '1.9'
99
+ version: '1.11'
100
100
  - - ">="
101
101
  - !ruby/object:Gem::Version
102
- version: 1.9.2
102
+ version: 1.11.5
103
103
  type: :development
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '1.9'
109
+ version: '1.11'
110
110
  - - ">="
111
111
  - !ruby/object:Gem::Version
112
- version: 1.9.2
112
+ version: 1.11.5
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: rubocop-rake
115
115
  requirement: !ruby/object:Gem::Requirement
@@ -210,20 +210,20 @@ dependencies:
210
210
  requirements:
211
211
  - - "~>"
212
212
  - !ruby/object:Gem::Version
213
- version: '3.12'
213
+ version: '3.14'
214
214
  - - ">="
215
215
  - !ruby/object:Gem::Version
216
- version: 3.12.2
216
+ version: 3.14.0
217
217
  type: :development
218
218
  prerelease: false
219
219
  version_requirements: !ruby/object:Gem::Requirement
220
220
  requirements:
221
221
  - - "~>"
222
222
  - !ruby/object:Gem::Version
223
- version: '3.12'
223
+ version: '3.14'
224
224
  - - ">="
225
225
  - !ruby/object:Gem::Version
226
- version: 3.12.2
226
+ version: 3.14.0
227
227
  description: A simple library for communicating with the FinApps REST API.
228
228
  email:
229
229
  - erich@financialapps.com
@@ -261,6 +261,7 @@ files:
261
261
  - lib/finapps/rest/alert_definitions.rb
262
262
  - lib/finapps/rest/alert_occurrences.rb
263
263
  - lib/finapps/rest/client.rb
264
+ - lib/finapps/rest/consumer_login_tokens.rb
264
265
  - lib/finapps/rest/consumers.rb
265
266
  - lib/finapps/rest/consumers_portfolios.rb
266
267
  - lib/finapps/rest/documents_orders.rb
@@ -268,6 +269,7 @@ files:
268
269
  - lib/finapps/rest/documents_upload_types.rb
269
270
  - lib/finapps/rest/documents_uploads.rb
270
271
  - lib/finapps/rest/esign_templates.rb
272
+ - lib/finapps/rest/operator_change_password_email.rb
271
273
  - lib/finapps/rest/operator_login_tokens.rb
272
274
  - lib/finapps/rest/operators.rb
273
275
  - lib/finapps/rest/operators_password_resets.rb
@@ -307,6 +309,7 @@ files:
307
309
  - spec/rest/alert_occurrences_spec.rb
308
310
  - spec/rest/api_request.rb
309
311
  - spec/rest/client_spec.rb
312
+ - spec/rest/consumer_login_tokens_spec.rb
310
313
  - spec/rest/consumers_portfolios_spec.rb
311
314
  - spec/rest/consumers_spec.rb
312
315
  - spec/rest/documents_orders_notifications_spec.rb
@@ -314,6 +317,7 @@ files:
314
317
  - spec/rest/documents_upload_types_spec.rb
315
318
  - spec/rest/documents_uploads_spec.rb
316
319
  - spec/rest/esign_templates_spec.rb
320
+ - spec/rest/operator_change_password_email_spec.rb
317
321
  - spec/rest/operators_login_tokens_spec.rb
318
322
  - spec/rest/operators_password_resets_spec.rb
319
323
  - spec/rest/operators_spec.rb
@@ -353,6 +357,7 @@ files:
353
357
  - spec/support/fixtures/alert_definition.json
354
358
  - spec/support/fixtures/alert_definitions.json
355
359
  - spec/support/fixtures/alert_occurrences.json
360
+ - spec/support/fixtures/consumer_login_token.json
356
361
  - spec/support/fixtures/documents/retrieve_order.json
357
362
  - spec/support/fixtures/documents_order.json
358
363
  - spec/support/fixtures/documents_orders.json
@@ -454,52 +459,54 @@ signing_key:
454
459
  specification_version: 4
455
460
  summary: FinApps REST API ruby client.
456
461
  test_files:
457
- - spec/support/documents_uploads_routes.rb
458
462
  - spec/support/screenings_routes.rb
459
463
  - spec/support/fake_api.rb
460
- - spec/utils/query_builder_spec.rb
461
- - spec/spec_helpers/client.rb
464
+ - spec/support/documents_uploads_routes.rb
462
465
  - spec/spec_helper.rb
463
- - spec/rest/order_reports_spec.rb
464
- - spec/rest/api_request.rb
465
- - spec/rest/operators_login_tokens_spec.rb
466
- - spec/rest/tenant_app_settings_spec.rb
466
+ - spec/spec_helpers/client.rb
467
+ - spec/rest/portfolios_alerts_spec.rb
467
468
  - spec/rest/products_spec.rb
468
- - spec/rest/orders_spec.rb
469
- - spec/rest/esign_templates_spec.rb
470
- - spec/rest/sessions_spec.rb
471
- - spec/rest/order_assignments_spec.rb
472
469
  - spec/rest/documents_orders_spec.rb
470
+ - spec/rest/password_resets_spec.rb
471
+ - spec/rest/order_statuses_spec.rb
472
+ - spec/rest/operators_spec.rb
473
+ - spec/rest/operator_change_password_email_spec.rb
474
+ - spec/rest/esign_templates_spec.rb
473
475
  - spec/rest/order_tokens_spec.rb
474
- - spec/rest/order_notifications_spec.rb
475
- - spec/rest/order_refreshes_spec.rb
476
- - spec/rest/plaid/plaid_accounts_spec.rb
477
- - spec/rest/plaid/plaid_institution_logos_spec.rb
478
- - spec/rest/plaid/plaid_account_permissions_spec.rb
479
- - spec/rest/plaid/plaid_consumer_institutions_spec.rb
480
- - spec/rest/plaid/plaid_webhooks_spec.rb
481
- - spec/rest/verix/verix_pdf_documents_spec.rb
476
+ - spec/rest/order_reports_spec.rb
477
+ - spec/rest/documents_upload_types_spec.rb
478
+ - spec/rest/consumers_portfolios_spec.rb
479
+ - spec/rest/portfolios_consumers_spec.rb
482
480
  - spec/rest/verix/verix_metadata_spec.rb
483
- - spec/rest/verix/verix_records_spec.rb
484
481
  - spec/rest/verix/verix_documents_spec.rb
485
- - spec/rest/portfolios_alerts_spec.rb
486
- - spec/rest/operators_password_resets_spec.rb
487
- - spec/rest/portfolio_reports_spec.rb
488
- - spec/rest/alert_definitions_spec.rb
489
- - spec/rest/consumers_spec.rb
482
+ - spec/rest/verix/verix_records_spec.rb
483
+ - spec/rest/verix/verix_pdf_documents_spec.rb
484
+ - spec/rest/api_request.rb
490
485
  - spec/rest/tenant_settings_spec.rb
491
- - spec/rest/signed_documents_downloads_spec.rb
492
- - spec/rest/consumers_portfolios_spec.rb
493
- - spec/rest/documents_upload_types_spec.rb
494
- - spec/rest/documents_orders_notifications_spec.rb
495
- - spec/rest/version_spec.rb
496
- - spec/rest/documents_uploads_spec.rb
486
+ - spec/rest/consumers_spec.rb
497
487
  - spec/rest/client_spec.rb
498
- - spec/rest/portfolios_consumers_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
499
493
  - spec/rest/portfolios_spec.rb
500
- - spec/rest/order_statuses_spec.rb
501
- - spec/rest/alert_occurrences_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
502
498
  - spec/rest/screenings_spec.rb
503
- - spec/rest/operators_spec.rb
504
- - spec/rest/password_resets_spec.rb
505
- - spec/rest/portfolios_available_consumers_spec.rb
499
+ - spec/rest/signed_documents_downloads_spec.rb
500
+ - spec/rest/plaid/plaid_account_permissions_spec.rb
501
+ - spec/rest/plaid/plaid_webhooks_spec.rb
502
+ - 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
505
+ - 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
512
+ - spec/utils/query_builder_spec.rb