finapps 5.0.47 → 5.4.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.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +7 -0
- data/.github/workflows/{main.yaml → ci.yaml} +20 -9
- data/.github/workflows/release.yml +42 -42
- data/.rubocop.yml +1 -1
- data/.ruby-version +1 -1
- data/Guardfile +1 -1
- data/finapps.gemspec +8 -7
- data/lib/finapps/rest/client.rb +1 -1
- data/lib/finapps/rest/consumers.rb +6 -5
- data/lib/finapps/rest/documents_orders.rb +11 -12
- data/lib/finapps/rest/operators.rb +3 -3
- data/lib/finapps/rest/orders.rb +6 -6
- data/lib/finapps/rest/screenings.rb +18 -0
- data/lib/finapps/version.rb +1 -1
- data/spec/rest/consumers_spec.rb +20 -12
- data/spec/rest/documents_orders_spec.rb +29 -32
- data/spec/rest/screenings_spec.rb +89 -19
- data/spec/support/fake_api.rb +6 -29
- data/spec/support/fixtures/screenings/last_session.json +13 -0
- data/spec/support/fixtures/screenings/session_not_found_with_id.json +5 -0
- data/spec/support/fixtures/screenings/tenant_schemas.json +8 -0
- data/spec/support/fixtures/session_not_found.json +5 -0
- data/spec/support/screenings_routes.rb +77 -0
- metadata +111 -84
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e65bb80fb054553a018a117ef278f51ca1f39cae1c51b32951c1c23b66456ae9
|
4
|
+
data.tar.gz: 98365bd10401bd230e3884d626f7a305bd331c02497445fa25484ba09ba14b42
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e64cf1d45c0895165c6d7a47a8e762c3fba2c8925f16177dca3702853aff83834e9296be6942bc6025a7a22fc472dd4c44a9db9d7da079777a0c6e51e7c76a44
|
7
|
+
data.tar.gz: 3203972fa2e7001d4f099b8668368d263f253848e0b8d85ed6bba7dd9034c5344db5d15ca310f8daedeecc04d088a36c1332cb28f58460c6015cae1e2ae899da
|
@@ -1,9 +1,16 @@
|
|
1
1
|
name: Continuous Integration
|
2
2
|
|
3
|
-
on:
|
4
|
-
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
paths-ignore:
|
6
|
+
- ".github/**"
|
7
|
+
- ".VERSION"
|
8
|
+
pull_request:
|
9
|
+
paths-ignore:
|
10
|
+
- ".github/**"
|
11
|
+
- ".VERSION"
|
5
12
|
jobs:
|
6
|
-
|
13
|
+
tests:
|
7
14
|
if: "!contains(github.event.head_commit.message, 'skip ci')"
|
8
15
|
runs-on: ubuntu-latest
|
9
16
|
|
@@ -11,26 +18,30 @@ jobs:
|
|
11
18
|
fail-fast: true
|
12
19
|
|
13
20
|
steps:
|
14
|
-
-
|
21
|
+
- name: Checkout source code
|
22
|
+
uses: actions/checkout@v2
|
15
23
|
|
16
24
|
- name: Install required ruby
|
17
25
|
uses: ruby/setup-ruby@v1
|
18
26
|
|
19
|
-
-
|
27
|
+
- name: Setup cache key and directory for gems cache
|
28
|
+
uses: actions/cache@v2.1.4
|
20
29
|
with:
|
21
30
|
path: vendor/bundle
|
22
31
|
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
|
23
32
|
restore-keys: |
|
24
33
|
${{ runner.os }}-gems-
|
25
34
|
|
26
|
-
- name:
|
35
|
+
- name: Bundle install
|
27
36
|
run: |
|
28
|
-
gem install -N bundler
|
29
37
|
bundle config path vendor/bundle
|
30
|
-
bundle
|
38
|
+
bundle config set jobs 4
|
39
|
+
bundle config set retry 3
|
40
|
+
bundle install
|
31
41
|
|
32
42
|
- name: Run rubocop
|
33
|
-
run:
|
43
|
+
run: |
|
44
|
+
bundle exec rubocop --parallel
|
34
45
|
|
35
46
|
- name: Run tests
|
36
47
|
run: bundle exec rspec
|
@@ -2,53 +2,53 @@ name: Bump version and Release
|
|
2
2
|
on:
|
3
3
|
release:
|
4
4
|
types: [published]
|
5
|
-
|
5
|
+
|
6
6
|
jobs:
|
7
7
|
release:
|
8
8
|
runs-on: ubuntu-latest
|
9
9
|
strategy:
|
10
10
|
fail-fast: true
|
11
11
|
|
12
|
-
steps:
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
12
|
+
steps:
|
13
|
+
- name: Checkout source code
|
14
|
+
uses: actions/checkout@v2
|
15
|
+
with:
|
16
|
+
persist-credentials: false
|
17
|
+
fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
|
18
|
+
|
19
|
+
- name: Install required ruby version
|
20
|
+
uses: ruby/setup-ruby@v1
|
21
|
+
|
22
|
+
- name: Get version from latest tag
|
23
|
+
id: get_version
|
24
|
+
uses: battila7/get-version-action@v2
|
25
|
+
|
26
|
+
- name: Bump version
|
27
|
+
run: |
|
28
|
+
gem install -N gem-release
|
29
|
+
git config --local user.email "action@github.com"
|
30
|
+
git config --local user.name "GitHub Action"
|
31
|
+
gem bump --skip-ci --version ${{ steps.get_version.outputs.version-without-v }}
|
17
32
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
33
|
+
- name: Push changes
|
34
|
+
uses: ad-m/github-push-action@master
|
35
|
+
with:
|
36
|
+
# GitHub Actions token does not support pushing to protected branches.
|
37
|
+
# github_token: ${{ secrets.GITHUB_TOKEN }}
|
38
|
+
#
|
39
|
+
# A manually populated`PERSONAL_ACCESS_TOKEN` environment variable
|
40
|
+
# with permissions to push to a protected branch must be used.
|
41
|
+
# not ideal - keep eyes open for a better solution
|
42
|
+
github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
|
25
43
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
# github_token: ${{ secrets.GITHUB_TOKEN }}
|
38
|
-
#
|
39
|
-
# A manually populated`PERSONAL_ACCESS_TOKEN` environment variable
|
40
|
-
# with permissions to push to a protected branch must be used.
|
41
|
-
# not ideal - keep eyes open for a better solution
|
42
|
-
github_token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
|
43
|
-
|
44
|
-
- name: Release gem to rubygems.org
|
45
|
-
run: |
|
46
|
-
set +x
|
47
|
-
mkdir -p ~/.gem
|
48
|
-
cat << EOF > ~/.gem/credentials
|
49
|
-
---
|
50
|
-
:rubygems_api_key: ${{ secrets.RUBYGEMS_API_KEY }}
|
51
|
-
EOF
|
52
|
-
chmod 0600 ~/.gem/credentials
|
53
|
-
set -x
|
54
|
-
gem release
|
44
|
+
- name: Release gem to rubygems.org
|
45
|
+
run: |
|
46
|
+
set +x
|
47
|
+
mkdir -p ~/.gem
|
48
|
+
cat << EOF > ~/.gem/credentials
|
49
|
+
---
|
50
|
+
:rubygems_api_key: ${{ secrets.RUBYGEMS_API_KEY }}
|
51
|
+
EOF
|
52
|
+
chmod 0600 ~/.gem/credentials
|
53
|
+
set -x
|
54
|
+
gem release
|
data/.rubocop.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby-2.
|
1
|
+
ruby-2.7.2
|
data/Guardfile
CHANGED
@@ -17,7 +17,7 @@
|
|
17
17
|
#
|
18
18
|
# and, you'll have to watch "config/Guardfile" instead of "Guardfile"
|
19
19
|
|
20
|
-
#
|
20
|
+
# NOTE: The cmd option is now required due to the increasing number of ways
|
21
21
|
# rspec may be run, below are examples of the most common uses.
|
22
22
|
# * bundler: 'bundle exec rspec'
|
23
23
|
# * bundler binstubs: 'bin/rspec'
|
data/finapps.gemspec
CHANGED
@@ -20,19 +20,20 @@ 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', '~> 5.0', '>= 5.0.
|
23
|
+
spec.add_runtime_dependency 'finapps_core', '~> 5.0', '>= 5.0.15'
|
24
24
|
|
25
25
|
spec.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.2'
|
26
26
|
spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0', '>= 1.0.9'
|
27
27
|
spec.add_development_dependency 'guard', '~> 2.16', '>= 2.16.1'
|
28
28
|
spec.add_development_dependency 'guard-rspec', '~> 4.7', '>= 4.7.3'
|
29
29
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
|
30
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
31
|
-
spec.add_development_dependency 'rubocop', '~>
|
32
|
-
spec.add_development_dependency 'rubocop-performance', '~> 1.
|
33
|
-
spec.add_development_dependency 'rubocop-
|
34
|
-
spec.add_development_dependency '
|
35
|
-
spec.add_development_dependency '
|
30
|
+
spec.add_development_dependency 'rspec', '~> 3.10', '>= 3.10.0'
|
31
|
+
spec.add_development_dependency 'rubocop', '~> 1.9', '>= 1.9.1'
|
32
|
+
spec.add_development_dependency 'rubocop-performance', '~> 1.9', '>= 1.9.2'
|
33
|
+
spec.add_development_dependency 'rubocop-rake', '~> 0.5', '>= 0.5.1'
|
34
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 2.2', '>= 2.2.0'
|
35
|
+
spec.add_development_dependency 'sinatra', '~> 2.1', '>= 2.1.0'
|
36
|
+
spec.add_development_dependency 'webmock', '~> 3.11', '>= 3.11.2'
|
36
37
|
|
37
38
|
spec.extra_rdoc_files = %w[README.md LICENSE.txt]
|
38
39
|
spec.rdoc_options = %w[--line-numbers --inline-source --title finapps-ruby --main README.md]
|
data/lib/finapps/rest/client.rb
CHANGED
@@ -83,7 +83,7 @@ module FinApps
|
|
83
83
|
|
84
84
|
def camelize(term)
|
85
85
|
string = term.to_s
|
86
|
-
string = string.sub(/^[a-z\d]*/) {
|
86
|
+
string = string.sub(/^[a-z\d]*/) { Regexp.last_match(0).capitalize }
|
87
87
|
string.gsub(%r{(?:_|(/))([a-z\d]*)}) do
|
88
88
|
Regexp.last_match(2).capitalize.to_s
|
89
89
|
end
|
@@ -62,9 +62,10 @@ module FinApps
|
|
62
62
|
|
63
63
|
def with_space_search(term)
|
64
64
|
[
|
65
|
-
{
|
66
|
-
{
|
67
|
-
{
|
65
|
+
{external_id: term},
|
66
|
+
{email: term},
|
67
|
+
{first_name: term},
|
68
|
+
{last_name: term}
|
68
69
|
]
|
69
70
|
end
|
70
71
|
|
@@ -72,8 +73,8 @@ module FinApps
|
|
72
73
|
search_arr = []
|
73
74
|
if /\s/.match?(term)
|
74
75
|
term.split.each do |t|
|
75
|
-
search_arr.append(
|
76
|
-
search_arr.append(
|
76
|
+
search_arr.append(first_name: t)
|
77
|
+
search_arr.append(last_name: t)
|
77
78
|
end
|
78
79
|
end
|
79
80
|
search_arr
|
@@ -90,22 +90,21 @@ module FinApps
|
|
90
90
|
end
|
91
91
|
|
92
92
|
def with_space_search(term)
|
93
|
-
[
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
]
|
93
|
+
[{"applicant.email": term},
|
94
|
+
{"applicant.first_name": term},
|
95
|
+
{"applicant.last_name": term},
|
96
|
+
{"applicant.external_id": term},
|
97
|
+
{
|
98
|
+
reference_no: {
|
99
|
+
"$regex": "^#{term}", "$options": 'i'
|
100
|
+
}
|
101
|
+
}]
|
103
102
|
end
|
104
103
|
|
105
104
|
def tag_query(tag)
|
106
105
|
return {} unless tag
|
107
106
|
|
108
|
-
{
|
107
|
+
{tag: tag.empty? ? nil : tag}
|
109
108
|
end
|
110
109
|
|
111
110
|
def status_query(status)
|
@@ -117,7 +116,7 @@ module FinApps
|
|
117
116
|
def consumer_query(consumer)
|
118
117
|
return {} unless consumer
|
119
118
|
|
120
|
-
{
|
119
|
+
{consumer_id: consumer.empty? ? nil : consumer}
|
121
120
|
end
|
122
121
|
end
|
123
122
|
end
|
@@ -64,14 +64,14 @@ module FinApps
|
|
64
64
|
end
|
65
65
|
|
66
66
|
def search_query(term)
|
67
|
-
{
|
67
|
+
{last_name: term}
|
68
68
|
end
|
69
69
|
|
70
70
|
def role_query(role)
|
71
71
|
if role.is_a?(Array)
|
72
|
-
{
|
72
|
+
{role: {"$in": role.map(&:to_i)}}
|
73
73
|
else
|
74
|
-
{
|
74
|
+
{role: role.to_i}
|
75
75
|
end
|
76
76
|
end
|
77
77
|
end
|
data/lib/finapps/rest/orders.rb
CHANGED
@@ -81,7 +81,7 @@ module FinApps
|
|
81
81
|
end
|
82
82
|
|
83
83
|
def search_query_object(term)
|
84
|
-
[{
|
84
|
+
[{public_id: {"$regex": "^#{term}", "$options": 'i'}},
|
85
85
|
{"assignment.last_name": term},
|
86
86
|
{"applicant.first_name": term},
|
87
87
|
{"applicant.last_name": term},
|
@@ -95,9 +95,9 @@ module FinApps
|
|
95
95
|
def status_query(status)
|
96
96
|
if status
|
97
97
|
if status.is_a?(Array)
|
98
|
-
{
|
98
|
+
{status: {"$in": status.map(&:to_i)}}
|
99
99
|
else
|
100
|
-
{
|
100
|
+
{status: status.to_i}
|
101
101
|
end
|
102
102
|
else
|
103
103
|
{}
|
@@ -115,7 +115,7 @@ module FinApps
|
|
115
115
|
|
116
116
|
def consumer_query(consumer)
|
117
117
|
if consumer
|
118
|
-
{
|
118
|
+
{consumer_id: consumer.empty? ? nil : consumer}
|
119
119
|
else
|
120
120
|
{}
|
121
121
|
end
|
@@ -125,8 +125,8 @@ module FinApps
|
|
125
125
|
if !search_term && !nil_or_empty?(relation)
|
126
126
|
{
|
127
127
|
"$or": [
|
128
|
-
{
|
129
|
-
{
|
128
|
+
{public_id: {"$in": relation}},
|
129
|
+
{original_order_id: {"$in": relation}}
|
130
130
|
]
|
131
131
|
}
|
132
132
|
else
|
@@ -14,6 +14,18 @@ module FinApps
|
|
14
14
|
super(nil, path)
|
15
15
|
end
|
16
16
|
|
17
|
+
def tenant_schemas
|
18
|
+
path = 'schemas'
|
19
|
+
send_request path, :get
|
20
|
+
end
|
21
|
+
|
22
|
+
def last(consumer_id)
|
23
|
+
not_blank(consumer_id, :consumer_id)
|
24
|
+
|
25
|
+
path = "#{end_point}/#{ERB::Util.url_encode(consumer_id)}/consumer"
|
26
|
+
send_request_for_id path, :get, nil
|
27
|
+
end
|
28
|
+
|
17
29
|
def create(params)
|
18
30
|
not_blank(params, :params)
|
19
31
|
super params
|
@@ -34,6 +46,12 @@ module FinApps
|
|
34
46
|
super params, path
|
35
47
|
end
|
36
48
|
|
49
|
+
def destroy(id)
|
50
|
+
not_blank(id, :session_id)
|
51
|
+
|
52
|
+
super
|
53
|
+
end
|
54
|
+
|
37
55
|
private
|
38
56
|
|
39
57
|
def build_filter(params)
|
data/lib/finapps/version.rb
CHANGED
data/spec/rest/consumers_spec.rb
CHANGED
@@ -118,11 +118,14 @@ RSpec.describe FinApps::REST::Consumers do
|
|
118
118
|
|
119
119
|
it 'builds query and sends proper request' do
|
120
120
|
list
|
121
|
-
|
122
|
-
'
|
123
|
-
'
|
124
|
-
'
|
125
|
-
'
|
121
|
+
filter = '{"$or":['\
|
122
|
+
'{"external_id":"term"},'\
|
123
|
+
'{"email":"term"},'\
|
124
|
+
'{"first_name":"term"},'\
|
125
|
+
'{"last_name":"term"}'\
|
126
|
+
']}'
|
127
|
+
query = "?filter=#{filter}&page=2&requested=25&sort=date_created"
|
128
|
+
url = "#{versioned_api_path}/consumers#{query}"
|
126
129
|
expect(WebMock).to have_requested(:get, url)
|
127
130
|
end
|
128
131
|
|
@@ -138,13 +141,18 @@ RSpec.describe FinApps::REST::Consumers do
|
|
138
141
|
|
139
142
|
it 'treats space as start of a new query for first and last name' do
|
140
143
|
list
|
141
|
-
|
142
|
-
'
|
143
|
-
'
|
144
|
-
'
|
145
|
-
'
|
146
|
-
'
|
147
|
-
'
|
144
|
+
filter = '{"$or":['\
|
145
|
+
'{"external_id":"Two terms"},'\
|
146
|
+
'{"email":"Two terms"},'\
|
147
|
+
'{"first_name":"Two terms"},'\
|
148
|
+
'{"last_name":"Two terms"},'\
|
149
|
+
'{"first_name":"Two"},'\
|
150
|
+
'{"last_name":"Two"},'\
|
151
|
+
'{"first_name":"terms"},'\
|
152
|
+
'{"last_name":"terms"}'\
|
153
|
+
']}'
|
154
|
+
query = "?filter=#{filter}&page=2&requested=25&sort=date_created"
|
155
|
+
url = "#{versioned_api_path}/consumers#{query}"
|
148
156
|
expect(WebMock).to have_requested(:get, url)
|
149
157
|
end
|
150
158
|
end
|
@@ -52,33 +52,30 @@ RSpec.describe FinApps::REST::DocumentsOrders do
|
|
52
52
|
"#{versioned_api_path}/documents/orders?"\
|
53
53
|
'filter=%7B%22$or%22:%5B%7B%22applicant.email%22:'\
|
54
54
|
'%22term%22%7D,%7B%22applicant.first_name%22:%22term%22%7D,'\
|
55
|
-
'%7B%22applicant.last_name%22
|
56
|
-
'%22term%22%7D,%7B%22reference_no%22
|
57
|
-
'%22$options%22:%22i%22%7D%7D%5D,'\
|
58
|
-
'%22consumer_id%22:%22valid_consumer_id%22%7D&'
|
59
|
-
'page=2&requested=25&sort=tag '
|
55
|
+
'%7B%22applicant.last_name%22:%22term%22%7D,'\
|
56
|
+
'%7B%22applicant.external_id%22:%22term%22%7D,%7B%22reference_no%22:'\
|
57
|
+
'%7B%22$regex%22:%22%5Eterm%22,%22$options%22:%22i%22%7D%7D%5D,'\
|
58
|
+
'%22consumer_id%22:%22valid_consumer_id%22%7D&page=2&requested=25&sort=tag'
|
60
59
|
|
61
60
|
expect(WebMock).to have_requested(:get, url)
|
62
61
|
end
|
63
62
|
|
64
63
|
context 'with search term containing spaces' do
|
65
|
-
let(:params) { {
|
64
|
+
let(:params) { {searchTerm: 'Blue Jay', page: 2} }
|
66
65
|
|
67
66
|
it 'builds query and sends proper request' do
|
68
67
|
list
|
69
68
|
url =
|
70
69
|
"#{versioned_api_path}/documents/orders?"\
|
71
70
|
'filter=%7B%22$or%22:%5B%7B%22applicant.email%22:'\
|
72
|
-
'%22Blue%20Jay%22%7D
|
73
|
-
'%
|
74
|
-
'%7B%22applicant.
|
75
|
-
'%22Blue%20Jay%22%7D
|
76
|
-
'%
|
77
|
-
'%22
|
78
|
-
'%
|
79
|
-
'%7B%22applicant.last_name%22:%
|
80
|
-
'%7B%22applicant.first_name%22:%22Jay%22%7D,'\
|
81
|
-
'%7B%22applicant.last_name%22:%22Jay%22%7D%5D%7D&page=2'
|
71
|
+
'%22Blue%20Jay%22%7D,%7B%22applicant.first_name%22:'\
|
72
|
+
'%22Blue%20Jay%22%7D,%7B%22applicant.last_name%22:'\
|
73
|
+
'%22Blue%20Jay%22%7D,%7B%22applicant.external_id%22:'\
|
74
|
+
'%22Blue%20Jay%22%7D,%7B%22reference_no%22:%7B%22$regex%22:'\
|
75
|
+
'%22%5EBlue%20Jay%22,%22$options%22:%22i%22%7D%7D,'\
|
76
|
+
'%7B%22applicant.first_name%22:%22Blue%22%7D,%7B%22'\
|
77
|
+
'applicant.last_name%22:%22Blue%22%7D,%7B%22applicant.first_name%22:'\
|
78
|
+
'%22Jay%22%7D,%7B%22applicant.last_name%22:%22Jay%22%7D%5D%7D&page=2'
|
82
79
|
|
83
80
|
expect(WebMock).to have_requested(:get, url)
|
84
81
|
end
|
@@ -174,17 +171,17 @@ RSpec.describe FinApps::REST::DocumentsOrders do
|
|
174
171
|
context 'with valid params' do
|
175
172
|
let(:params) do
|
176
173
|
{
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
174
|
+
applicant: {
|
175
|
+
email: 'validemail@financialapps.com',
|
176
|
+
first_name: 'Emily',
|
177
|
+
last_name: 'Macs',
|
178
|
+
role: 'patient'
|
182
179
|
},
|
183
|
-
|
180
|
+
esign_documents: [
|
184
181
|
'temp-id'
|
185
182
|
],
|
186
|
-
|
187
|
-
|
183
|
+
reference_no: 'REFNO',
|
184
|
+
tag: 'new'
|
188
185
|
}
|
189
186
|
end
|
190
187
|
|
@@ -200,13 +197,13 @@ RSpec.describe FinApps::REST::DocumentsOrders do
|
|
200
197
|
context 'with invalid params' do
|
201
198
|
let(:params) do
|
202
199
|
{
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
200
|
+
applicant: {
|
201
|
+
email: 'validemail@financialapps.com',
|
202
|
+
first_name: 'Emily',
|
203
|
+
last_name: 'Macs',
|
204
|
+
role: 'patient'
|
208
205
|
},
|
209
|
-
|
206
|
+
reference_no: 'REFNO'
|
210
207
|
}
|
211
208
|
end
|
212
209
|
|
@@ -236,7 +233,7 @@ RSpec.describe FinApps::REST::DocumentsOrders do
|
|
236
233
|
let(:id) { :valid_order_id }
|
237
234
|
|
238
235
|
context 'with valid params' do
|
239
|
-
let(:params) { {
|
236
|
+
let(:params) { {tag: 'pending'} }
|
240
237
|
|
241
238
|
it_behaves_like 'an API request'
|
242
239
|
it_behaves_like 'a successful request'
|
@@ -244,7 +241,7 @@ RSpec.describe FinApps::REST::DocumentsOrders do
|
|
244
241
|
end
|
245
242
|
|
246
243
|
context 'with invalid params' do
|
247
|
-
let(:params) { {
|
244
|
+
let(:params) { {tag: 'invalid'} }
|
248
245
|
|
249
246
|
it_behaves_like 'an API request'
|
250
247
|
it('results is nil') { expect(results).to be_nil }
|
@@ -6,12 +6,12 @@ require 'rest/api_request'
|
|
6
6
|
RSpec.describe FinApps::REST::Screenings do
|
7
7
|
include SpecHelpers::Client
|
8
8
|
|
9
|
+
let(:results) { subject[0] }
|
10
|
+
let(:error_messages) { subject[1] }
|
11
|
+
|
9
12
|
describe '#list' do
|
10
13
|
subject(:list) { described_class.new(client).list(params) }
|
11
14
|
|
12
|
-
let(:results) { list[0] }
|
13
|
-
let(:error_messages) { list[1] }
|
14
|
-
|
15
15
|
context 'with valid params' do
|
16
16
|
let(:params) do
|
17
17
|
{
|
@@ -76,12 +76,26 @@ RSpec.describe FinApps::REST::Screenings do
|
|
76
76
|
end
|
77
77
|
end
|
78
78
|
|
79
|
+
describe '#tenant_schemas' do
|
80
|
+
subject(:tenant_schemas) { described_class.new(client).tenant_schemas }
|
81
|
+
|
82
|
+
it_behaves_like 'an API request'
|
83
|
+
it_behaves_like 'a successful request'
|
84
|
+
it 'performs a get and returns the response' do
|
85
|
+
expect(results[0]).to have_key(:external_url)
|
86
|
+
end
|
87
|
+
|
88
|
+
it 'sends proper request' do
|
89
|
+
tenant_schemas
|
90
|
+
url = "#{versioned_api_path}/schemas"
|
91
|
+
|
92
|
+
expect(WebMock).to have_requested(:get, url)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
79
96
|
describe '#show' do
|
80
97
|
subject(:show) { described_class.new(client).show(id) }
|
81
98
|
|
82
|
-
let(:results) { show[0] }
|
83
|
-
let(:error_messages) { show[1] }
|
84
|
-
|
85
99
|
context 'with valid id' do
|
86
100
|
let(:id) { :valid_id }
|
87
101
|
|
@@ -106,19 +120,43 @@ RSpec.describe FinApps::REST::Screenings do
|
|
106
120
|
end
|
107
121
|
end
|
108
122
|
|
123
|
+
describe '#last' do
|
124
|
+
subject(:last) { described_class.new(client).last(consumer_id) }
|
125
|
+
|
126
|
+
context 'with valid consumer_id' do
|
127
|
+
let(:consumer_id) { :valid_consumer_id }
|
128
|
+
|
129
|
+
it_behaves_like 'an API request'
|
130
|
+
it_behaves_like 'a successful request'
|
131
|
+
it('results have an :s_id node') do
|
132
|
+
expect(results).to have_key(:s_id)
|
133
|
+
end
|
134
|
+
end
|
135
|
+
|
136
|
+
context 'with invalid consumer_id' do
|
137
|
+
let(:consumer_id) { :invalid_consumer_id }
|
138
|
+
|
139
|
+
it { expect(results).to be_nil }
|
140
|
+
it { expect(error_messages).not_to be_empty }
|
141
|
+
end
|
142
|
+
|
143
|
+
context 'when missing consumer_id' do
|
144
|
+
let(:consumer_id) { nil }
|
145
|
+
|
146
|
+
it_behaves_like 'a request that raises an error'
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
109
150
|
describe '#create' do
|
110
151
|
subject(:create) { described_class.new(client).create(params) }
|
111
152
|
|
112
|
-
let(:results) { create[0] }
|
113
|
-
let(:error_messages) { create[1] }
|
114
|
-
|
115
153
|
context 'with valid params' do
|
116
154
|
let(:params) do
|
117
155
|
{
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
156
|
+
email: 'validemail@financialapps.com',
|
157
|
+
first_name: 'Geo',
|
158
|
+
last_name: 'Metric',
|
159
|
+
public_id: '1234'
|
122
160
|
}
|
123
161
|
end
|
124
162
|
|
@@ -132,7 +170,7 @@ RSpec.describe FinApps::REST::Screenings do
|
|
132
170
|
end
|
133
171
|
|
134
172
|
context 'with invalid params' do
|
135
|
-
let(:params) { {
|
173
|
+
let(:params) { {params: 'invalid'} }
|
136
174
|
|
137
175
|
it { expect { create }.not_to raise_error }
|
138
176
|
it('results is nil') { expect(results).to be_nil }
|
@@ -153,14 +191,12 @@ RSpec.describe FinApps::REST::Screenings do
|
|
153
191
|
subject(:update) { described_class.new(client).update(id, params) }
|
154
192
|
|
155
193
|
let(:params) { {} }
|
156
|
-
let(:results) { update[0] }
|
157
|
-
let(:error_messages) { update[1] }
|
158
194
|
|
159
195
|
context 'with valid session id' do
|
160
196
|
let(:id) { :valid_id }
|
161
197
|
|
162
198
|
context 'with valid params' do
|
163
|
-
let(:params) { {
|
199
|
+
let(:params) { {question_id: '1234'} }
|
164
200
|
|
165
201
|
it_behaves_like 'an API request'
|
166
202
|
it_behaves_like 'a successful request'
|
@@ -170,7 +206,7 @@ RSpec.describe FinApps::REST::Screenings do
|
|
170
206
|
end
|
171
207
|
|
172
208
|
context 'with invalid params' do
|
173
|
-
let(:params) { {
|
209
|
+
let(:params) { {question_id: 'invalid'} }
|
174
210
|
|
175
211
|
it_behaves_like 'an API request'
|
176
212
|
it('results is nil') { expect(results).to be_nil }
|
@@ -183,7 +219,7 @@ RSpec.describe FinApps::REST::Screenings do
|
|
183
219
|
|
184
220
|
context 'with invalid session id' do
|
185
221
|
let(:id) { :invalid_id }
|
186
|
-
let(:params) { {
|
222
|
+
let(:params) { {question_id: '1234'} }
|
187
223
|
|
188
224
|
it_behaves_like 'an API request'
|
189
225
|
it('results is nil') { expect(results).to be_nil }
|
@@ -195,4 +231,38 @@ RSpec.describe FinApps::REST::Screenings do
|
|
195
231
|
end
|
196
232
|
end
|
197
233
|
end
|
234
|
+
|
235
|
+
describe '#destroy' do
|
236
|
+
subject(:destroy) { described_class.new(client).destroy(id) }
|
237
|
+
|
238
|
+
context 'with valid session id' do
|
239
|
+
let(:id) { :valid_id }
|
240
|
+
|
241
|
+
it_behaves_like 'an API request'
|
242
|
+
it_behaves_like 'a successful request'
|
243
|
+
it('results is nil') { expect(results).to be_nil }
|
244
|
+
it('error_messages is empty') { expect(error_messages).to be_empty }
|
245
|
+
end
|
246
|
+
|
247
|
+
context 'when missing session id' do
|
248
|
+
let(:id) { nil }
|
249
|
+
|
250
|
+
it_behaves_like 'a request that raises an error'
|
251
|
+
end
|
252
|
+
|
253
|
+
context 'with invalid session id' do
|
254
|
+
let(:id) { :invalid_id }
|
255
|
+
|
256
|
+
it_behaves_like 'an API request'
|
257
|
+
it('results is nil') { expect(results).to be_nil }
|
258
|
+
|
259
|
+
it('error_messages is not empty') do
|
260
|
+
expect(error_messages).not_to be_empty
|
261
|
+
end
|
262
|
+
|
263
|
+
it('error messages array is populated') do
|
264
|
+
expect(error_messages.first.downcase).to eq('session not found')
|
265
|
+
end
|
266
|
+
end
|
267
|
+
end
|
198
268
|
end
|
data/spec/support/fake_api.rb
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
require 'sinatra/base'
|
4
4
|
require_relative 'documents_uploads_routes'
|
5
|
+
require_relative 'screenings_routes'
|
5
6
|
|
6
7
|
module Fake
|
7
|
-
# rubocop:disable Metrics/ClassLength
|
8
8
|
# the FakeApi class is used to mock API requests while testing.
|
9
9
|
class FakeApi < Sinatra::Base
|
10
10
|
def self.version
|
@@ -278,33 +278,7 @@ module Fake
|
|
278
278
|
get("/#{version}/documents/upload_types") { json_response 200, 'upload_types.json' }
|
279
279
|
|
280
280
|
# screenings
|
281
|
-
|
282
|
-
get("/#{version}/screenings/invalid_id/resume") do
|
283
|
-
json_response 404, 'resource_not_found.json'
|
284
|
-
end
|
285
|
-
get("/#{version}/screenings/valid_id/resume") { json_response 200, 'screening.json' }
|
286
|
-
put("/#{version}/screenings/invalid_id") do
|
287
|
-
json_response 404, 'resource_not_found.json'
|
288
|
-
end
|
289
|
-
put("/#{version}/screenings/valid_id") do
|
290
|
-
request.body.rewind
|
291
|
-
request_payload = JSON.parse request.body.read
|
292
|
-
if request_payload['question_id'] == 'invalid'
|
293
|
-
json_response 400, 'screening_invalid_update.json'
|
294
|
-
else
|
295
|
-
json_response 200, 'screening.json'
|
296
|
-
end
|
297
|
-
end
|
298
|
-
|
299
|
-
post("/#{version}/screenings") do
|
300
|
-
request.body.rewind
|
301
|
-
request_payload = JSON.parse request.body.read
|
302
|
-
if request_payload.key? 'email'
|
303
|
-
json_response 201, 'screening.json'
|
304
|
-
else
|
305
|
-
json_response 400, 'invalid_request_body.json'
|
306
|
-
end
|
307
|
-
end
|
281
|
+
include ScreeningsRoutes
|
308
282
|
|
309
283
|
# consumers
|
310
284
|
get("/#{version}/consumers") do
|
@@ -528,6 +502,10 @@ module Fake
|
|
528
502
|
|
529
503
|
private
|
530
504
|
|
505
|
+
def resource_not_found
|
506
|
+
json_response 404, 'resource_not_found.json'
|
507
|
+
end
|
508
|
+
|
531
509
|
def json_response(response_code, file_name)
|
532
510
|
http_response :json, response_code, file_name
|
533
511
|
end
|
@@ -546,5 +524,4 @@ module Fake
|
|
546
524
|
File.open("#{File.dirname(__FILE__)}/fixtures/#{file_name}").read
|
547
525
|
end
|
548
526
|
end
|
549
|
-
# rubocop:enable Metrics/ClassLength
|
550
527
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
{
|
2
|
+
"s_id": "ee8d7a39-5bf2-4e80-9e03-2f88897c4ebd",
|
3
|
+
"date_created": "2021-02-05T21:23:50.368Z",
|
4
|
+
"date_modified": "2021-02-05T21:23:50.368Z",
|
5
|
+
"consumer": {
|
6
|
+
"public_id": "368bf4ac-cd8c-4059-62a7-f19a9d7501df",
|
7
|
+
"email": "christopher+1612473370669@financialapps.com",
|
8
|
+
"first_name": "Dayna",
|
9
|
+
"last_name": "Langosh"
|
10
|
+
},
|
11
|
+
"operator_id": "5d2afdf9-11fc-425b-704d-d74ca7626de8",
|
12
|
+
"progress": 0
|
13
|
+
}
|
@@ -0,0 +1,77 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Fake
|
4
|
+
module ScreeningsRoutes
|
5
|
+
class << self
|
6
|
+
def included(base)
|
7
|
+
resource = "/#{base.version}/screenings"
|
8
|
+
|
9
|
+
list_routes base, resource
|
10
|
+
resume_routes base, resource
|
11
|
+
update_routes base, resource
|
12
|
+
destroy_routes base, resource
|
13
|
+
create_routes base, resource
|
14
|
+
end
|
15
|
+
|
16
|
+
# rubocop:disable Metrics/MethodLength
|
17
|
+
def list_routes(base, resource)
|
18
|
+
base.get(resource) { json_response 200, 'screening_list.json' }
|
19
|
+
base.get(resource.gsub('screenings', 'schemas')) do
|
20
|
+
json_response 200, 'screenings/tenant_schemas.json'
|
21
|
+
end
|
22
|
+
base.get("#{resource}/:consumer_id/consumer") do
|
23
|
+
if params[:consumer_id] == 'invalid_consumer_id'
|
24
|
+
json_response 404, 'session_not_found.json'
|
25
|
+
else
|
26
|
+
json_response 200, 'screenings/last_session.json'
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
# rubocop:enable Metrics/MethodLength
|
31
|
+
|
32
|
+
def resume_routes(base, resource)
|
33
|
+
base.get("#{resource}/:session_id/resume") do
|
34
|
+
return resource_not_found if params[:session_id] == 'invalid_id'
|
35
|
+
|
36
|
+
json_response 200, 'screening.json'
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def update_routes(base, resource)
|
41
|
+
base.put("#{resource}/:session_id") do
|
42
|
+
return resource_not_found if params[:session_id] == 'invalid_id'
|
43
|
+
|
44
|
+
request.body.rewind
|
45
|
+
request_payload = JSON.parse request.body.read
|
46
|
+
if request_payload['question_id'] == 'invalid'
|
47
|
+
json_response 400, 'screening_invalid_update.json'
|
48
|
+
else
|
49
|
+
json_response 200, 'screening.json'
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
def create_routes(base, resource)
|
55
|
+
base.post(resource) do
|
56
|
+
request.body.rewind
|
57
|
+
request_payload = JSON.parse request.body.read
|
58
|
+
if request_payload.key? 'email'
|
59
|
+
json_response 201, 'screening.json'
|
60
|
+
else
|
61
|
+
json_response 400, 'invalid_request_body.json'
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
def destroy_routes(base, resource)
|
67
|
+
base.delete("#{resource}/:session_id") do
|
68
|
+
if params[:session_id] == 'valid_id'
|
69
|
+
status 200
|
70
|
+
else
|
71
|
+
json_response 404, 'session_not_found.json'
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
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
|
4
|
+
version: 5.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-
|
11
|
+
date: 2021-03-23 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.
|
22
|
+
version: 5.0.15
|
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.
|
32
|
+
version: 5.0.15
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: bundler
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -134,122 +134,142 @@ dependencies:
|
|
134
134
|
name: rspec
|
135
135
|
requirement: !ruby/object:Gem::Requirement
|
136
136
|
requirements:
|
137
|
-
- - ">="
|
138
|
-
- !ruby/object:Gem::Version
|
139
|
-
version: 3.9.0
|
140
137
|
- - "~>"
|
141
138
|
- !ruby/object:Gem::Version
|
142
|
-
version: '3.
|
139
|
+
version: '3.10'
|
140
|
+
- - ">="
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: 3.10.0
|
143
143
|
type: :development
|
144
144
|
prerelease: false
|
145
145
|
version_requirements: !ruby/object:Gem::Requirement
|
146
146
|
requirements:
|
147
|
-
- - ">="
|
148
|
-
- !ruby/object:Gem::Version
|
149
|
-
version: 3.9.0
|
150
147
|
- - "~>"
|
151
148
|
- !ruby/object:Gem::Version
|
152
|
-
version: '3.
|
149
|
+
version: '3.10'
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 3.10.0
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: rubocop
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- - ">="
|
158
|
-
- !ruby/object:Gem::Version
|
159
|
-
version: 0.87.0
|
160
157
|
- - "~>"
|
161
158
|
- !ruby/object:Gem::Version
|
162
|
-
version: '
|
159
|
+
version: '1.9'
|
160
|
+
- - ">="
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: 1.9.1
|
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: 0.87.0
|
170
167
|
- - "~>"
|
171
168
|
- !ruby/object:Gem::Version
|
172
|
-
version: '
|
169
|
+
version: '1.9'
|
170
|
+
- - ">="
|
171
|
+
- !ruby/object:Gem::Version
|
172
|
+
version: 1.9.1
|
173
173
|
- !ruby/object:Gem::Dependency
|
174
174
|
name: rubocop-performance
|
175
175
|
requirement: !ruby/object:Gem::Requirement
|
176
176
|
requirements:
|
177
|
-
- - ">="
|
178
|
-
- !ruby/object:Gem::Version
|
179
|
-
version: 1.7.0
|
180
177
|
- - "~>"
|
181
178
|
- !ruby/object:Gem::Version
|
182
|
-
version: '1.
|
179
|
+
version: '1.9'
|
180
|
+
- - ">="
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: 1.9.2
|
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: '1.9'
|
187
190
|
- - ">="
|
188
191
|
- !ruby/object:Gem::Version
|
189
|
-
version: 1.
|
192
|
+
version: 1.9.2
|
193
|
+
- !ruby/object:Gem::Dependency
|
194
|
+
name: rubocop-rake
|
195
|
+
requirement: !ruby/object:Gem::Requirement
|
196
|
+
requirements:
|
190
197
|
- - "~>"
|
191
198
|
- !ruby/object:Gem::Version
|
192
|
-
version: '
|
199
|
+
version: '0.5'
|
200
|
+
- - ">="
|
201
|
+
- !ruby/object:Gem::Version
|
202
|
+
version: 0.5.1
|
203
|
+
type: :development
|
204
|
+
prerelease: false
|
205
|
+
version_requirements: !ruby/object:Gem::Requirement
|
206
|
+
requirements:
|
207
|
+
- - "~>"
|
208
|
+
- !ruby/object:Gem::Version
|
209
|
+
version: '0.5'
|
210
|
+
- - ">="
|
211
|
+
- !ruby/object:Gem::Version
|
212
|
+
version: 0.5.1
|
193
213
|
- !ruby/object:Gem::Dependency
|
194
214
|
name: rubocop-rspec
|
195
215
|
requirement: !ruby/object:Gem::Requirement
|
196
216
|
requirements:
|
197
|
-
- - ">="
|
198
|
-
- !ruby/object:Gem::Version
|
199
|
-
version: 1.41.0
|
200
217
|
- - "~>"
|
201
218
|
- !ruby/object:Gem::Version
|
202
|
-
version: '
|
219
|
+
version: '2.2'
|
220
|
+
- - ">="
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: 2.2.0
|
203
223
|
type: :development
|
204
224
|
prerelease: false
|
205
225
|
version_requirements: !ruby/object:Gem::Requirement
|
206
226
|
requirements:
|
207
|
-
- - ">="
|
208
|
-
- !ruby/object:Gem::Version
|
209
|
-
version: 1.41.0
|
210
227
|
- - "~>"
|
211
228
|
- !ruby/object:Gem::Version
|
212
|
-
version: '
|
229
|
+
version: '2.2'
|
230
|
+
- - ">="
|
231
|
+
- !ruby/object:Gem::Version
|
232
|
+
version: 2.2.0
|
213
233
|
- !ruby/object:Gem::Dependency
|
214
234
|
name: sinatra
|
215
235
|
requirement: !ruby/object:Gem::Requirement
|
216
236
|
requirements:
|
217
237
|
- - "~>"
|
218
238
|
- !ruby/object:Gem::Version
|
219
|
-
version: '2.
|
239
|
+
version: '2.1'
|
220
240
|
- - ">="
|
221
241
|
- !ruby/object:Gem::Version
|
222
|
-
version: 2.0
|
242
|
+
version: 2.1.0
|
223
243
|
type: :development
|
224
244
|
prerelease: false
|
225
245
|
version_requirements: !ruby/object:Gem::Requirement
|
226
246
|
requirements:
|
227
247
|
- - "~>"
|
228
248
|
- !ruby/object:Gem::Version
|
229
|
-
version: '2.
|
249
|
+
version: '2.1'
|
230
250
|
- - ">="
|
231
251
|
- !ruby/object:Gem::Version
|
232
|
-
version: 2.0
|
252
|
+
version: 2.1.0
|
233
253
|
- !ruby/object:Gem::Dependency
|
234
254
|
name: webmock
|
235
255
|
requirement: !ruby/object:Gem::Requirement
|
236
256
|
requirements:
|
237
|
-
- - ">="
|
238
|
-
- !ruby/object:Gem::Version
|
239
|
-
version: 3.8.0
|
240
257
|
- - "~>"
|
241
258
|
- !ruby/object:Gem::Version
|
242
|
-
version: '3.
|
259
|
+
version: '3.11'
|
260
|
+
- - ">="
|
261
|
+
- !ruby/object:Gem::Version
|
262
|
+
version: 3.11.2
|
243
263
|
type: :development
|
244
264
|
prerelease: false
|
245
265
|
version_requirements: !ruby/object:Gem::Requirement
|
246
266
|
requirements:
|
247
|
-
- - ">="
|
248
|
-
- !ruby/object:Gem::Version
|
249
|
-
version: 3.8.0
|
250
267
|
- - "~>"
|
251
268
|
- !ruby/object:Gem::Version
|
252
|
-
version: '3.
|
269
|
+
version: '3.11'
|
270
|
+
- - ">="
|
271
|
+
- !ruby/object:Gem::Version
|
272
|
+
version: 3.11.2
|
253
273
|
description: A simple library for communicating with the FinApps REST API.
|
254
274
|
email:
|
255
275
|
- erich@financialapps.com
|
@@ -260,8 +280,9 @@ extra_rdoc_files:
|
|
260
280
|
- LICENSE.txt
|
261
281
|
files:
|
262
282
|
- ".codeclimate.yml"
|
283
|
+
- ".github/dependabot.yml"
|
263
284
|
- ".github/release-drafter.yml"
|
264
|
-
- ".github/workflows/
|
285
|
+
- ".github/workflows/ci.yaml"
|
265
286
|
- ".github/workflows/release-drafter.yml"
|
266
287
|
- ".github/workflows/release.yml"
|
267
288
|
- ".github/workflows/verify-pr-labeled.yml"
|
@@ -424,6 +445,10 @@ files:
|
|
424
445
|
- spec/support/fixtures/screening.json
|
425
446
|
- spec/support/fixtures/screening_invalid_update.json
|
426
447
|
- spec/support/fixtures/screening_list.json
|
448
|
+
- spec/support/fixtures/screenings/last_session.json
|
449
|
+
- spec/support/fixtures/screenings/session_not_found_with_id.json
|
450
|
+
- spec/support/fixtures/screenings/tenant_schemas.json
|
451
|
+
- spec/support/fixtures/session_not_found.json
|
427
452
|
- spec/support/fixtures/sign_url.json
|
428
453
|
- spec/support/fixtures/signed_document.pdf
|
429
454
|
- spec/support/fixtures/single_consumer_subscribe_error.json
|
@@ -439,6 +464,7 @@ files:
|
|
439
464
|
- spec/support/fixtures/verix/metadata.json
|
440
465
|
- spec/support/fixtures/verix/record/create.json
|
441
466
|
- spec/support/fixtures/verix/record/list.json
|
467
|
+
- spec/support/screenings_routes.rb
|
442
468
|
- spec/utils/query_builder_spec.rb
|
443
469
|
- tags
|
444
470
|
homepage: https://github.com/finapps/ruby-client
|
@@ -466,55 +492,56 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
466
492
|
- !ruby/object:Gem::Version
|
467
493
|
version: '0'
|
468
494
|
requirements: []
|
469
|
-
rubygems_version: 3.
|
495
|
+
rubygems_version: 3.1.4
|
470
496
|
signing_key:
|
471
497
|
specification_version: 4
|
472
498
|
summary: FinApps REST API ruby client.
|
473
499
|
test_files:
|
474
|
-
- spec/
|
475
|
-
- spec/
|
476
|
-
- spec/
|
500
|
+
- spec/spec_helpers/client.rb
|
501
|
+
- spec/support/screenings_routes.rb
|
502
|
+
- spec/support/fake_api.rb
|
503
|
+
- spec/support/documents_uploads_routes.rb
|
477
504
|
- spec/rest/alert_definitions_spec.rb
|
478
|
-
- spec/rest/
|
479
|
-
- spec/rest/verix/verix_documents_spec.rb
|
480
|
-
- spec/rest/verix/verix_records_spec.rb
|
481
|
-
- spec/rest/verix/verix_metadata_spec.rb
|
482
|
-
- spec/rest/verix/verix_pdf_documents_spec.rb
|
483
|
-
- spec/rest/api_request.rb
|
484
|
-
- spec/rest/documents_upload_types_spec.rb
|
485
|
-
- spec/rest/portfolios_consumers_spec.rb
|
486
|
-
- spec/rest/esign_templates_spec.rb
|
487
|
-
- spec/rest/operators_spec.rb
|
488
|
-
- spec/rest/sessions_spec.rb
|
489
|
-
- spec/rest/documents_orders_spec.rb
|
490
|
-
- spec/rest/version_spec.rb
|
491
|
-
- spec/rest/products_spec.rb
|
492
|
-
- spec/rest/signed_documents_downloads_spec.rb
|
493
|
-
- spec/rest/portfolios_available_consumers_spec.rb
|
494
|
-
- spec/rest/plaid/plaid_account_permissions_spec.rb
|
495
|
-
- spec/rest/plaid/plaid_accounts_spec.rb
|
496
|
-
- spec/rest/plaid/plaid_webhooks_spec.rb
|
497
|
-
- spec/rest/plaid/plaid_consumer_institutions_spec.rb
|
498
|
-
- spec/rest/plaid/plaid_institution_logos_spec.rb
|
499
|
-
- spec/rest/tenant_app_settings_spec.rb
|
505
|
+
- spec/rest/documents_orders_notifications_spec.rb
|
500
506
|
- spec/rest/order_reports_spec.rb
|
501
|
-
- spec/rest/orders_spec.rb
|
502
|
-
- spec/rest/client_spec.rb
|
503
|
-
- spec/rest/screenings_spec.rb
|
504
507
|
- spec/rest/consumers_spec.rb
|
505
|
-
- spec/rest/
|
506
|
-
- spec/rest/
|
507
|
-
- spec/rest/documents_orders_notifications_spec.rb
|
508
|
+
- spec/rest/documents_uploads_spec.rb
|
509
|
+
- spec/rest/portfolios_available_consumers_spec.rb
|
508
510
|
- spec/rest/alert_occurrences_spec.rb
|
511
|
+
- spec/rest/screenings_spec.rb
|
509
512
|
- spec/rest/portfolios_alerts_spec.rb
|
513
|
+
- spec/rest/products_spec.rb
|
514
|
+
- spec/rest/tenant_app_settings_spec.rb
|
515
|
+
- spec/rest/plaid/plaid_consumer_institutions_spec.rb
|
516
|
+
- spec/rest/plaid/plaid_webhooks_spec.rb
|
517
|
+
- spec/rest/plaid/plaid_institution_logos_spec.rb
|
518
|
+
- spec/rest/plaid/plaid_account_permissions_spec.rb
|
519
|
+
- spec/rest/plaid/plaid_accounts_spec.rb
|
510
520
|
- spec/rest/order_refreshes_spec.rb
|
521
|
+
- spec/rest/order_assignments_spec.rb
|
522
|
+
- spec/rest/order_tokens_spec.rb
|
523
|
+
- spec/rest/documents_orders_spec.rb
|
524
|
+
- spec/rest/signed_documents_downloads_spec.rb
|
525
|
+
- spec/rest/portfolios_consumers_spec.rb
|
526
|
+
- spec/rest/version_spec.rb
|
527
|
+
- spec/rest/documents_upload_types_spec.rb
|
528
|
+
- spec/rest/password_resets_spec.rb
|
529
|
+
- spec/rest/order_statuses_spec.rb
|
530
|
+
- spec/rest/operators_spec.rb
|
531
|
+
- spec/rest/portfolio_reports_spec.rb
|
532
|
+
- spec/rest/order_notifications_spec.rb
|
533
|
+
- spec/rest/orders_spec.rb
|
534
|
+
- spec/rest/esign_templates_spec.rb
|
535
|
+
- spec/rest/sessions_spec.rb
|
536
|
+
- spec/rest/api_request.rb
|
537
|
+
- spec/rest/verix/verix_documents_spec.rb
|
538
|
+
- spec/rest/verix/verix_pdf_documents_spec.rb
|
539
|
+
- spec/rest/verix/verix_records_spec.rb
|
540
|
+
- spec/rest/verix/verix_metadata_spec.rb
|
511
541
|
- spec/rest/tenant_settings_spec.rb
|
512
542
|
- spec/rest/portfolios_spec.rb
|
513
|
-
- spec/rest/
|
514
|
-
- spec/rest/consumers_portfolios_spec.rb
|
543
|
+
- spec/rest/client_spec.rb
|
515
544
|
- spec/rest/operators_password_resets_spec.rb
|
516
|
-
- spec/
|
517
|
-
- spec/support/documents_uploads_routes.rb
|
545
|
+
- spec/rest/consumers_portfolios_spec.rb
|
518
546
|
- spec/spec_helper.rb
|
519
547
|
- spec/utils/query_builder_spec.rb
|
520
|
-
- spec/spec_helpers/client.rb
|