finapps 6.6.1 → 6.9.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: 2a73b786466432a4103a2aa1a613b7294363e3a2a2ee36796e46107cc624cee6
4
- data.tar.gz: 044fd7f2ab6662059afdfe520c73f351a2f6c14571fc2e37c6f14c9f27ede559
3
+ metadata.gz: d40d367eccfbf2e294b583650afe8ca7f73478c3fb0d4b989560965552422af3
4
+ data.tar.gz: a267d69a66d99def1f79c0afebd02ba58fd6b8177aae4f041988eb04ba6469d9
5
5
  SHA512:
6
- metadata.gz: 5a3da497f21c62ba5e22347beab814818d9ee9d29a83d8c9a02b9a7db8503ad8b1df848d11606d37e0a51a9c96b34c18ecb92044c08e6cac014a1c4b30882083
7
- data.tar.gz: 16fffb9b02cf31f970a757401c6c60f4c6f98435f7eafb2a145c13f5e43b798b6e2dac6b1a981c2e336a96c8ca09537558a5d1789bb2bcf6f2f8498ebc5b353a
6
+ metadata.gz: 0efaad47504531652d32fb805477f5c1a253e656615402b54f787334813929674e871f4ca5eaf0a511d2f9257a805015de13afd851a150f24b6c61decc899e77
7
+ data.tar.gz: 8f45fe8f7c2e92351bad40af3a3d29868c908b0d7794bc006b67be12c2fbe8a6452d973beba135f6be5fd5da217b2e36cf694aee3af30eb50e1715cbf6a1ca51
@@ -7,7 +7,7 @@ jobs:
7
7
  label:
8
8
  runs-on: ubuntu-latest
9
9
  steps:
10
- - uses: mheap/github-action-required-labels@v1.1.2
10
+ - uses: mheap/github-action-required-labels@v1.2
11
11
  with:
12
12
  mode: minimum
13
13
  count: 1
data/.rubocop.yml CHANGED
@@ -12,6 +12,9 @@ AllCops:
12
12
  CacheRootDirectory: tmp
13
13
  NewCops: enable
14
14
 
15
+ Gemspec/RequireMFA:
16
+ Enabled: false
17
+
15
18
  Layout/SpaceAroundMethodCallOperator:
16
19
  Enabled: true
17
20
  Layout/EmptyLinesAroundAttributeAccessor:
@@ -42,6 +42,7 @@ module FinApps
42
42
  portfolio_reports
43
43
  products
44
44
  screenings
45
+ screening_metadatas
45
46
  sessions
46
47
  signed_documents_downloads
47
48
  tenant_settings
@@ -53,6 +54,32 @@ module FinApps
53
54
  version
54
55
  ].freeze
55
56
 
57
+ RESOURCES.each do |method|
58
+ define_method(method) do
59
+ method_definition(method) do |class_name|
60
+ Object.const_get(:FinApps)
61
+ .const_get(:REST)
62
+ .const_get(class_name)
63
+ end
64
+ end
65
+ end
66
+
67
+ QUERY_RESOURCES = [:query_screenings].freeze
68
+
69
+ QUERY_RESOURCES.each do |method|
70
+ define_method(method) do
71
+ class_name = capitalize(method.to_s.gsub(/query_/, ''))
72
+ variable = "@#{method}"
73
+
74
+ method_definition(method, class_name, variable) do |_|
75
+ Object.const_get(:FinApps)
76
+ .const_get(:REST)
77
+ .const_get(:Query)
78
+ .const_get(class_name)
79
+ end
80
+ end
81
+ end
82
+
56
83
  # @param [String] tenant_token
57
84
  # @param [Hash] options
58
85
  # @return [FinApps::REST::Client]
@@ -63,34 +90,23 @@ module FinApps
63
90
  super(options, logger)
64
91
  end
65
92
 
66
- def method_missing(symbol, *arguments, &block)
67
- if RESOURCES.include? symbol
68
- class_name = camelize(symbol.to_s)
69
- variable = "@#{class_name.downcase}"
70
- set_variable(class_name, variable) unless instance_variable_defined? variable
71
- instance_variable_get(variable)
72
- else
73
- super
74
- end
75
- end
93
+ private
76
94
 
77
- def set_variable(class_name, variable)
78
- klass = Object.const_get('FinApps').const_get('REST').const_get class_name
79
- instance_variable_set(variable, klass.new(self))
80
- end
95
+ def method_definition(method, class_name = nil, variable = nil)
96
+ class_name = camelize(method.to_s) if class_name.nil?
97
+ variable = "@#{class_name.downcase}" if variable.nil?
81
98
 
82
- def respond_to_missing?(method_sym, include_private = false)
83
- RESOURCES.include?(method_sym) ? true : super
99
+ unless instance_variable_defined?(variable)
100
+ klass = yield class_name
101
+ instance_variable_set(variable, klass.new(self))
102
+ end
103
+ instance_variable_get(variable)
84
104
  end
85
105
 
86
- private
87
-
88
106
  def camelize(term)
89
107
  string = term.to_s
90
108
  string = string.sub(/^[a-z\d]*/) { Regexp.last_match(0).capitalize }
91
- string.gsub(%r{(?:_|(/))([a-z\d]*)}) do
92
- Regexp.last_match(2).capitalize.to_s
93
- end
109
+ string.gsub(%r{(?:_|(/))([a-z\d]*)}) { Regexp.last_match(2).capitalize }
94
110
  end
95
111
  end
96
112
  end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinApps
4
+ module REST
5
+ module Query
6
+ class Base < FinAppsCore::REST::Resources
7
+ def end_point
8
+ "query/#{super}"
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinApps
4
+ module REST
5
+ module Query
6
+ class Screenings < FinApps::REST::Query::Base
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinApps
4
+ module REST
5
+ class ScreeningMetadatas < FinAppsCore::REST::Resources # :nodoc:
6
+ def show(id, key)
7
+ not_blank(id, :session_id)
8
+ not_blank(key, :key)
9
+
10
+ path = "screenings/#{ERB::Util.url_encode(id)}/meta/#{ERB::Util.url_encode(key)}"
11
+ super(nil, path)
12
+ end
13
+
14
+ def create(id, key, value)
15
+ not_blank(id, :session_id)
16
+ not_blank(key, :key)
17
+ not_blank(value, :value)
18
+
19
+ path = "screenings/#{ERB::Util.url_encode(id)}/meta"
20
+ super({key: key, value: value}, path)
21
+ end
22
+
23
+ def destroy(id, key)
24
+ not_blank(id, :session_id)
25
+ not_blank(key, :key)
26
+
27
+ path = "screenings/#{ERB::Util.url_encode(id)}/meta/#{ERB::Util.url_encode(key)}"
28
+ super(nil, path)
29
+ end
30
+ end
31
+ end
32
+ end
@@ -57,6 +57,7 @@ module FinApps
57
57
 
58
58
  def build_filter(params)
59
59
  term_filter(params[:searchTerm])
60
+ .merge(operator_filter(params[:operatorID]))
60
61
  .merge(date_range_filter(params[:fromDate], params[:toDate]))
61
62
  .merge(progress_filter(params[:progress]))
62
63
  end
@@ -73,7 +74,9 @@ module FinApps
73
74
  {'consumer.email': term},
74
75
  {'consumer.first_name': term},
75
76
  {'consumer.last_name': term},
76
- {'consumer.external_id': term}
77
+ {'consumer.external_id': term},
78
+ {'operator.first_name': term},
79
+ {'operator.last_name': term}
77
80
  ]
78
81
  end
79
82
 
@@ -84,11 +87,19 @@ module FinApps
84
87
  term.split.each do |t|
85
88
  arr.append('consumer.first_name': t)
86
89
  arr.append('consumer.last_name': t)
90
+ arr.append('operator.first_name': t)
91
+ arr.append('operator.last_name': t)
87
92
  end
88
93
 
89
94
  arr
90
95
  end
91
96
 
97
+ def operator_filter(operator_id)
98
+ return {} unless operator_id
99
+
100
+ {operator_id: operator_id}
101
+ end
102
+
92
103
  def date_range_filter(from_date, to_date)
93
104
  return {} unless from_date || to_date
94
105
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FinApps
4
- VERSION = '6.6.1'
4
+ VERSION = '6.9.0'
5
5
  end
data/lib/finapps.rb CHANGED
@@ -40,6 +40,7 @@ require 'finapps/rest/documents_upload_types'
40
40
  require 'finapps/rest/signed_documents_downloads'
41
41
  require 'finapps/rest/documents_orders_notifications'
42
42
  require 'finapps/rest/screenings'
43
+ require 'finapps/rest/screening_metadatas'
43
44
 
44
45
  require 'finapps/rest/plaid/plaid_resources'
45
46
  require 'finapps/rest/plaid/plaid_webhooks'
@@ -53,5 +54,8 @@ require 'finapps/rest/verix/verix_records'
53
54
  require 'finapps/rest/verix/verix_pdf_documents'
54
55
  require 'finapps/rest/verix/verix_documents'
55
56
 
57
+ require 'finapps/rest/query/base'
58
+ require 'finapps/rest/query/screenings'
59
+
56
60
  require 'finapps/utils/query_builder'
57
61
  require 'finapps/version' unless defined?(FinApps::VERSION)
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helpers/client'
4
+ require 'spec_helpers/api_request'
5
+
6
+ RSpec.describe FinApps::REST::Query::Base do
7
+ describe '#end_point' do
8
+ it 'starts with query/' do
9
+ expect(described_class.new(:client).end_point).to start_with('query/')
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helpers/client'
4
+ require 'spec_helpers/api_request'
5
+
6
+ RSpec.describe FinApps::REST::Query::Screenings do
7
+ include SpecHelpers::Client
8
+
9
+ subject(:create) { described_class.new(client).create('string') }
10
+
11
+ describe '#create' do
12
+ context 'when valid tenant token is provided' do
13
+ it_behaves_like 'an API request'
14
+ it_behaves_like 'a successful request'
15
+ it 'sends the params in the body of the request' do
16
+ create
17
+ url = "#{versioned_api_path}/query/screenings"
18
+
19
+ expect(WebMock).to have_requested(:post, url).with(body: 'string')
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,131 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helpers/client'
4
+ require 'spec_helpers/api_request'
5
+
6
+ RSpec.describe FinApps::REST::ScreeningMetadatas do
7
+ include SpecHelpers::Client
8
+
9
+ let(:results) { subject[RESULTS] }
10
+ let(:error_messages) { subject[ERROR_MESSAGES] }
11
+
12
+ describe '#show' do
13
+ subject(:show_metadata) { described_class.new(client).show(id, key) }
14
+
15
+ context 'with valid params' do
16
+ let(:id) { :session_id }
17
+ let(:key) { :key }
18
+
19
+ before { show_metadata }
20
+
21
+ it 'sends proper request' do
22
+ url = "#{versioned_api_path}/screenings/session_id/meta/key"
23
+
24
+ expect(WebMock).to have_requested(:get, url)
25
+ end
26
+
27
+ it_behaves_like 'an API request'
28
+ it_behaves_like 'a successful request'
29
+ end
30
+
31
+ context 'with invalid params' do
32
+ let(:id) { :something_else }
33
+ let(:key) { :key }
34
+
35
+ it_behaves_like 'an API request'
36
+ it('results is nil') { expect(results).to be_nil }
37
+
38
+ it('error messages array is populated') do
39
+ expect(error_messages.first.downcase).to eq('the screening id was not found')
40
+ end
41
+ end
42
+
43
+ context 'with missing params' do
44
+ let(:id) { nil }
45
+ let(:key) { nil }
46
+
47
+ it_behaves_like 'a request that raises an error'
48
+ end
49
+ end
50
+
51
+ describe '#create' do
52
+ subject(:create_metadata) { described_class.new(client).create(id, key, value) }
53
+
54
+ context 'with valid params' do
55
+ let(:id) { :session_id }
56
+ let(:key) { :key }
57
+ let(:value) { :value }
58
+
59
+ before { create_metadata }
60
+
61
+ it 'sends proper request' do
62
+ url = "#{versioned_api_path}/screenings/session_id/meta"
63
+
64
+ expect(WebMock).to have_requested(:post, url)
65
+ end
66
+
67
+ it_behaves_like 'an API request'
68
+ it_behaves_like 'a successful request'
69
+ end
70
+
71
+ context 'with invalid params' do
72
+ let(:id) { :something_else }
73
+ let(:key) { :key }
74
+ let(:value) { :value }
75
+
76
+ it_behaves_like 'an API request'
77
+ it('results is nil') { expect(results).to be_nil }
78
+
79
+ it('error messages array is populated') do
80
+ expect(error_messages.first.downcase).to eq('the screening id was not found')
81
+ end
82
+ end
83
+
84
+ context 'with missing params' do
85
+ let(:id) { nil }
86
+ let(:key) { nil }
87
+ let(:value) { nil }
88
+
89
+ it_behaves_like 'a request that raises an error'
90
+ end
91
+ end
92
+
93
+ describe '#destroy' do
94
+ subject(:destroy_metadata) { described_class.new(client).destroy(id, key) }
95
+
96
+ context 'with valid params' do
97
+ let(:id) { :session_id }
98
+ let(:key) { :key }
99
+
100
+ before { destroy_metadata }
101
+
102
+ it 'sends proper request' do
103
+ url = "#{versioned_api_path}/screenings/session_id/meta/key"
104
+
105
+ expect(WebMock).to have_requested(:delete, url)
106
+ end
107
+
108
+ it_behaves_like 'an API request'
109
+ it_behaves_like 'a successful request'
110
+ end
111
+
112
+ context 'with invalid params' do
113
+ let(:id) { :something_else }
114
+ let(:key) { :key }
115
+
116
+ it_behaves_like 'an API request'
117
+ it('results is nil') { expect(results).to be_nil }
118
+
119
+ it('error messages array is populated') do
120
+ expect(error_messages.first.downcase).to eq('the screening id was not found')
121
+ end
122
+ end
123
+
124
+ context 'with missing params' do
125
+ let(:id) { nil }
126
+ let(:key) { nil }
127
+
128
+ it_behaves_like 'a request that raises an error'
129
+ end
130
+ end
131
+ end
@@ -84,10 +84,24 @@ RSpec.describe FinApps::REST::Screenings do
84
84
  {'consumer.first_name': 'le term'},
85
85
  {'consumer.last_name': 'le term'},
86
86
  {'consumer.external_id': 'le term'},
87
+ {'operator.first_name': 'le term'},
88
+ {'operator.last_name': 'le term'},
87
89
  {'consumer.first_name': 'le'},
88
90
  {'consumer.last_name': 'le'},
91
+ {'operator.first_name': 'le'},
92
+ {'operator.last_name': 'le'},
89
93
  {'consumer.first_name': 'term'},
90
- {'consumer.last_name': 'term'}]
94
+ {'consumer.last_name': 'term'},
95
+ {'operator.first_name': 'term'},
96
+ {'operator.last_name': 'term'}]
97
+ }
98
+ end
99
+
100
+ context 'with operator' do
101
+ let(:params) { {operatorID: '123abc'} }
102
+
103
+ it_behaves_like 'a correct query builder', {
104
+ operator_id: '123abc'
91
105
  }
92
106
  end
93
107
  end
@@ -4,6 +4,8 @@ require 'sinatra/base'
4
4
  require_relative 'documents_uploads_routes'
5
5
  require_relative 'screenings_routes'
6
6
  require_relative 'routes/actors'
7
+ require_relative 'routes/screening_metadatas'
8
+ require_relative 'routes/query_screenings'
7
9
 
8
10
  module Fake
9
11
  # the FakeApi class is used to mock API requests while testing.
@@ -22,6 +24,8 @@ module Fake
22
24
  include ActorsRoutes
23
25
  include DocumentsUploadsRoutes
24
26
  include ScreeningsRoutes
27
+ include ScreeningMetadatasRoutes
28
+ include QueryScreeningRoutes
25
29
 
26
30
  # verix_metadata
27
31
  get("/#{version}/v/metadata") do
@@ -553,7 +557,7 @@ module Fake
553
557
  def http_response(content_type, response_code, file_name)
554
558
  content_type content_type
555
559
  status response_code
556
- File.open("#{File.dirname(__FILE__)}/fixtures/#{file_name}").read
560
+ File.read("#{File.dirname(__FILE__)}/fixtures/#{file_name}")
557
561
  end
558
562
  end
559
563
  end
@@ -0,0 +1,68 @@
1
+ [
2
+ {
3
+ "answered_questions": [
4
+ {
5
+ "additional_label": "string",
6
+ "answer_type": "string",
7
+ "answers": [
8
+ {
9
+ "documents": [
10
+ {
11
+ "name": "string",
12
+ "type": 0
13
+ }
14
+ ],
15
+ "id": "string",
16
+ "input_value": "string",
17
+ "label": "string",
18
+ "next_question_id": "string",
19
+ "type": "string",
20
+ "value": "string"
21
+ }
22
+ ],
23
+ "group": "string",
24
+ "id": "string",
25
+ "label": "string",
26
+ "summary": "string"
27
+ }
28
+ ],
29
+ "consumer": {
30
+ "email": "string",
31
+ "external_id": "string",
32
+ "first_name": "string",
33
+ "last_name": "string",
34
+ "public_id": "string"
35
+ },
36
+ "date_created": "2022-02-04T14:29:03Z",
37
+ "date_modified": "2022-02-04T14:29:03Z",
38
+ "metadata": {
39
+ "property1": "string",
40
+ "property2": "string"
41
+ },
42
+ "operator": {
43
+ "email": "string",
44
+ "first_name": "string",
45
+ "last_name": "string"
46
+ },
47
+ "operator_id": "string",
48
+ "original_consumer": {
49
+ "email": "string",
50
+ "external_id": "string",
51
+ "first_name": "string",
52
+ "last_name": "string",
53
+ "public_id": "string"
54
+ },
55
+ "progress": 0,
56
+ "result": {
57
+ "documents": [
58
+ {
59
+ "name": "string",
60
+ "type": 0
61
+ }
62
+ ],
63
+ "status": "string"
64
+ },
65
+ "s_id": "string",
66
+ "schema_id": "string"
67
+ }
68
+ ]
@@ -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 QueryScreeningRoutes
5
+ class << self
6
+ def included(base)
7
+ base.post("/#{base.version}/query/screenings") do
8
+ json_response 200, 'query/screenings.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.6.1
4
+ version: 6.9.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-11-09 00:00:00.000000000 Z
11
+ date: 2022-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: finapps_core
@@ -294,6 +294,9 @@ files:
294
294
  - lib/finapps/rest/portfolios_available_consumers.rb
295
295
  - lib/finapps/rest/portfolios_consumers.rb
296
296
  - lib/finapps/rest/products.rb
297
+ - lib/finapps/rest/query/base.rb
298
+ - lib/finapps/rest/query/screenings.rb
299
+ - lib/finapps/rest/screening_metadatas.rb
297
300
  - lib/finapps/rest/screenings.rb
298
301
  - lib/finapps/rest/sessions.rb
299
302
  - lib/finapps/rest/signed_documents_downloads.rb
@@ -341,6 +344,9 @@ files:
341
344
  - spec/rest/portfolios_consumers_spec.rb
342
345
  - spec/rest/portfolios_spec.rb
343
346
  - spec/rest/products_spec.rb
347
+ - spec/rest/query/base_spec.rb
348
+ - spec/rest/query/screenings_spec.rb
349
+ - spec/rest/screening_metadatas_spec.rb
344
350
  - spec/rest/screenings_spec.rb
345
351
  - spec/rest/sessions_spec.rb
346
352
  - spec/rest/signed_documents_downloads_spec.rb
@@ -404,12 +410,15 @@ files:
404
410
  - spec/support/fixtures/portfolios_available_consumers.json
405
411
  - spec/support/fixtures/portfolios_consumers.json
406
412
  - spec/support/fixtures/products.json
413
+ - spec/support/fixtures/query/screenings.json
407
414
  - spec/support/fixtures/resource.json
408
415
  - spec/support/fixtures/resource_not_found.json
409
416
  - spec/support/fixtures/resources.json
410
417
  - spec/support/fixtures/screening.json
411
418
  - spec/support/fixtures/screening_invalid_update.json
412
419
  - spec/support/fixtures/screening_list.json
420
+ - spec/support/fixtures/screening_metadatas/not_found.json
421
+ - spec/support/fixtures/screening_metadatas/show.json
413
422
  - spec/support/fixtures/screenings/last_session.json
414
423
  - spec/support/fixtures/screenings/session_not_found_with_id.json
415
424
  - spec/support/fixtures/screenings/tenant_schemas.json
@@ -430,6 +439,8 @@ files:
430
439
  - spec/support/fixtures/verix/record/create.json
431
440
  - spec/support/fixtures/verix/record/list.json
432
441
  - spec/support/routes/actors.rb
442
+ - spec/support/routes/query_screenings.rb
443
+ - spec/support/routes/screening_metadatas.rb
433
444
  - spec/support/screenings_routes.rb
434
445
  - spec/utils/query_builder_spec.rb
435
446
  - tags
@@ -463,56 +474,61 @@ signing_key:
463
474
  specification_version: 4
464
475
  summary: FinApps REST API ruby client.
465
476
  test_files:
466
- - spec/support/screenings_routes.rb
467
- - spec/support/documents_uploads_routes.rb
477
+ - spec/utils/query_builder_spec.rb
468
478
  - spec/support/fake_api.rb
479
+ - spec/support/documents_uploads_routes.rb
480
+ - spec/support/routes/query_screenings.rb
469
481
  - spec/support/routes/actors.rb
470
- - spec/utils/query_builder_spec.rb
471
- - spec/spec_helpers/client.rb
472
- - spec/spec_helpers/api_request.rb
482
+ - spec/support/routes/screening_metadatas.rb
483
+ - spec/support/screenings_routes.rb
473
484
  - spec/spec_helper.rb
474
- - spec/rest/tenant_app_settings_spec.rb
485
+ - spec/rest/documents_orders_notifications_spec.rb
486
+ - spec/rest/operator_change_password_email_spec.rb
487
+ - spec/rest/order_assignments_spec.rb
488
+ - spec/rest/order_refreshes_spec.rb
489
+ - spec/rest/verix/verix_records_spec.rb
490
+ - spec/rest/verix/verix_documents_spec.rb
491
+ - spec/rest/verix/verix_pdf_documents_spec.rb
492
+ - spec/rest/verix/verix_metadata_spec.rb
475
493
  - spec/rest/consumers_portfolios_spec.rb
476
- - spec/rest/portfolios_consumers_spec.rb
477
- - spec/rest/order_reports_spec.rb
494
+ - spec/rest/signed_documents_downloads_spec.rb
478
495
  - spec/rest/portfolio_reports_spec.rb
479
- - spec/rest/portfolios_spec.rb
480
- - spec/rest/order_tokens_spec.rb
481
- - spec/rest/sessions_spec.rb
496
+ - spec/rest/order_statuses_spec.rb
497
+ - spec/rest/esign_templates_spec.rb
498
+ - spec/rest/order_reports_spec.rb
499
+ - spec/rest/tenant_settings_spec.rb
500
+ - spec/rest/portfolios_alerts_spec.rb
482
501
  - spec/rest/orders_spec.rb
483
- - spec/rest/products_spec.rb
484
- - spec/rest/operators_password_resets_spec.rb
485
- - spec/rest/alert_occurrences_spec.rb
486
- - spec/rest/plaid/plaid_consumer_institutions_spec.rb
502
+ - spec/rest/consumer_login_tokens_spec.rb
503
+ - spec/rest/operators_spec.rb
504
+ - spec/rest/actors_spec.rb
487
505
  - spec/rest/plaid/plaid_accounts_spec.rb
506
+ - spec/rest/plaid/plaid_account_permissions_spec.rb
488
507
  - spec/rest/plaid/plaid_webhooks_spec.rb
489
508
  - spec/rest/plaid/plaid_institution_logos_spec.rb
490
- - spec/rest/plaid/plaid_account_permissions_spec.rb
491
- - spec/rest/consumer_login_tokens_spec.rb
492
- - spec/rest/documents_orders_notifications_spec.rb
493
- - spec/rest/signed_documents_downloads_spec.rb
494
- - spec/rest/operator_change_password_email_spec.rb
495
- - spec/rest/version_spec.rb
496
- - spec/rest/operators_spec.rb
497
- - spec/rest/order_notifications_spec.rb
498
- - spec/rest/portfolios_alerts_spec.rb
499
- - spec/rest/verix/verix_pdf_documents_spec.rb
500
- - spec/rest/verix/verix_metadata_spec.rb
501
- - spec/rest/verix/verix_documents_spec.rb
502
- - spec/rest/verix/verix_records_spec.rb
503
- - spec/rest/screenings_spec.rb
504
- - spec/rest/order_assignments_spec.rb
509
+ - spec/rest/plaid/plaid_consumer_institutions_spec.rb
510
+ - spec/rest/tenant_app_settings_spec.rb
511
+ - spec/rest/consumers_spec.rb
512
+ - spec/rest/order_tokens_spec.rb
505
513
  - spec/rest/alert_definitions_spec.rb
506
- - spec/rest/portfolios_available_consumers_spec.rb
507
- - spec/rest/order_statuses_spec.rb
508
- - spec/rest/actors_spec.rb
509
- - spec/rest/client_spec.rb
514
+ - spec/rest/documents_upload_types_spec.rb
515
+ - spec/rest/order_notifications_spec.rb
510
516
  - spec/rest/documents_orders_spec.rb
511
517
  - spec/rest/documents_uploads_spec.rb
512
- - spec/rest/operators_login_tokens_spec.rb
518
+ - spec/rest/portfolios_available_consumers_spec.rb
519
+ - spec/rest/screening_metadatas_spec.rb
520
+ - spec/rest/client_spec.rb
521
+ - spec/rest/screenings_spec.rb
522
+ - spec/rest/sessions_spec.rb
523
+ - spec/rest/query/screenings_spec.rb
524
+ - spec/rest/query/base_spec.rb
525
+ - spec/rest/operators_password_resets_spec.rb
513
526
  - spec/rest/password_resets_spec.rb
514
- - spec/rest/esign_templates_spec.rb
515
- - spec/rest/order_refreshes_spec.rb
516
- - spec/rest/consumers_spec.rb
517
- - spec/rest/tenant_settings_spec.rb
518
- - spec/rest/documents_upload_types_spec.rb
527
+ - spec/rest/products_spec.rb
528
+ - spec/rest/portfolios_spec.rb
529
+ - spec/rest/operators_login_tokens_spec.rb
530
+ - spec/rest/alert_occurrences_spec.rb
531
+ - spec/rest/portfolios_consumers_spec.rb
532
+ - spec/rest/version_spec.rb
533
+ - spec/spec_helpers/api_request.rb
534
+ - spec/spec_helpers/client.rb