finapps 5.1.0 → 5.4.1
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/ci.yaml +15 -21
- data/.github/workflows/verify-pr-labeled.yml +11 -2
- data/README.md +0 -3
- data/finapps.gemspec +5 -6
- data/lib/finapps/rest/consumers.rb +1 -0
- data/lib/finapps/rest/documents_orders.rb +9 -10
- data/lib/finapps/rest/screenings.rb +12 -0
- data/lib/finapps/version.rb +1 -1
- data/spec/rest/consumers_spec.rb +20 -12
- data/spec/rest/documents_orders_spec.rb +12 -15
- data/spec/rest/screenings_spec.rb +47 -14
- data/spec/spec_helper.rb +13 -4
- data/spec/support/fake_api.rb +4 -0
- 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/screenings_routes.rb +30 -26
- metadata +85 -107
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f2a3cc29031a78b597ac3fadc86765e2d53fd1a9d5461ab484f565c7b9142f1
|
4
|
+
data.tar.gz: 03cd2d0d21472ed22851506db157dc464beebb691cfa12d7f37852630c8939af
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f2c6a4534249d60fd3ee49fc29d810b47ebbc9984eddd55945bf0d1ba604d1062289bb0bbaee5e8b2c4174627ae243440c3a9ee3fe5dd28667490b341b82c53
|
7
|
+
data.tar.gz: 65ca4b08c104b8c7201acb063b9d8c501143695dca17bbefc2b23451772878dd195a248c1f4e25a027203c2f3896c71013b666389f92f5839caf53a9bfd41ce2
|
data/.github/workflows/ci.yaml
CHANGED
@@ -10,38 +10,32 @@ on:
|
|
10
10
|
- ".github/**"
|
11
11
|
- ".VERSION"
|
12
12
|
jobs:
|
13
|
-
|
13
|
+
test:
|
14
14
|
if: "!contains(github.event.head_commit.message, 'skip ci')"
|
15
|
-
runs-on: ubuntu-latest
|
16
|
-
|
17
15
|
strategy:
|
18
|
-
fail-fast:
|
19
|
-
|
16
|
+
fail-fast: false
|
17
|
+
matrix:
|
18
|
+
os: [ubuntu-latest]
|
19
|
+
ruby: [2.6, 2.7, '3.0']
|
20
|
+
runs-on: ${{ matrix.os }}
|
20
21
|
steps:
|
21
22
|
- name: Checkout source code
|
22
23
|
uses: actions/checkout@v2
|
23
24
|
|
24
|
-
- name: Install required ruby
|
25
|
+
- name: Install required ruby version
|
25
26
|
uses: ruby/setup-ruby@v1
|
26
|
-
|
27
|
-
- name: Setup cache key and directory for gems cache
|
28
|
-
uses: actions/cache@v2
|
29
27
|
with:
|
30
|
-
|
31
|
-
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
|
32
|
-
restore-keys: |
|
33
|
-
${{ runner.os }}-gems-
|
28
|
+
bundler-cache: true # runs 'bundle install' and caches gems
|
34
29
|
|
35
|
-
- name:
|
30
|
+
- name: Run rspec with coverage
|
36
31
|
run: |
|
37
|
-
bundle
|
38
|
-
bundle config set jobs 4
|
39
|
-
bundle config set retry 3
|
40
|
-
bundle install
|
32
|
+
COVERAGE=true bundle exec rspec
|
41
33
|
|
42
34
|
- name: Run rubocop
|
43
|
-
run: |
|
35
|
+
run: |
|
44
36
|
bundle exec rubocop --parallel
|
45
37
|
|
46
|
-
- name: Run
|
47
|
-
run:
|
38
|
+
- name: Run Skunk on Project
|
39
|
+
run: |
|
40
|
+
gem install skunk
|
41
|
+
skunk lib/
|
@@ -9,6 +9,15 @@ jobs:
|
|
9
9
|
steps:
|
10
10
|
- uses: mheap/github-action-required-labels@v1
|
11
11
|
with:
|
12
|
-
mode:
|
12
|
+
mode: minimum
|
13
13
|
count: 1
|
14
|
-
|
14
|
+
#
|
15
|
+
# Releases will group changes under Added/Fixed/Changed sub-headers
|
16
|
+
# based on labels and follwing these rules:
|
17
|
+
#
|
18
|
+
# Added: enhancement
|
19
|
+
# Fixed: bug
|
20
|
+
# Changed: maintenance, change, dependencies (used by Dependabot)
|
21
|
+
# Ignore: skip-changelog
|
22
|
+
#
|
23
|
+
labels: "enhancement, bug, maintenance, change, dependencies, skip-changelog"
|
data/README.md
CHANGED
@@ -4,9 +4,6 @@ FinApps Ruby-Client
|
|
4
4
|
|
5
5
|
[](https://rubygems.org/gems/finapps)
|
6
6
|

|
7
|
-
[](https://travis-ci.org/finapps/ruby-client)
|
8
|
-
[](https://codeclimate.com/github/finapps/ruby-client)
|
9
|
-
[](https://codeclimate.com/github/finapps/ruby-client/coverage)
|
10
7
|
[](http://finapps.mit-license.org)
|
11
8
|
|
12
9
|
|
data/finapps.gemspec
CHANGED
@@ -20,20 +20,19 @@ 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.16'
|
24
24
|
|
25
|
-
spec.add_development_dependency 'bundler', '~> 2.
|
26
|
-
spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0', '>= 1.0.9'
|
27
|
-
spec.add_development_dependency 'guard', '~> 2.16', '>= 2.16.1'
|
28
|
-
spec.add_development_dependency 'guard-rspec', '~> 4.7', '>= 4.7.3'
|
25
|
+
spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.16'
|
29
26
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
|
30
27
|
spec.add_development_dependency 'rspec', '~> 3.10', '>= 3.10.0'
|
31
28
|
spec.add_development_dependency 'rubocop', '~> 1.9', '>= 1.9.1'
|
32
29
|
spec.add_development_dependency 'rubocop-performance', '~> 1.9', '>= 1.9.2'
|
33
30
|
spec.add_development_dependency 'rubocop-rake', '~> 0.5', '>= 0.5.1'
|
34
31
|
spec.add_development_dependency 'rubocop-rspec', '~> 2.2', '>= 2.2.0'
|
32
|
+
spec.add_development_dependency 'simplecov', '~> 0.21', '>= 0.21.2'
|
33
|
+
spec.add_development_dependency 'simplecov-console', '~> 0.9'
|
35
34
|
spec.add_development_dependency 'sinatra', '~> 2.1', '>= 2.1.0'
|
36
|
-
spec.add_development_dependency 'webmock', '~> 3.
|
35
|
+
spec.add_development_dependency 'webmock', '~> 3.12', '>= 3.12.2'
|
37
36
|
|
38
37
|
spec.extra_rdoc_files = %w[README.md LICENSE.txt]
|
39
38
|
spec.rdoc_options = %w[--line-numbers --inline-source --title finapps-ruby --main README.md]
|
@@ -90,16 +90,15 @@ 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)
|
@@ -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
|
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,11 +52,10 @@ 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
|
@@ -69,16 +68,14 @@ RSpec.describe FinApps::REST::DocumentsOrders do
|
|
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
|
@@ -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,12 +120,36 @@ 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
|
{
|
@@ -153,8 +191,6 @@ 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 }
|
@@ -199,9 +235,6 @@ RSpec.describe FinApps::REST::Screenings do
|
|
199
235
|
describe '#destroy' do
|
200
236
|
subject(:destroy) { described_class.new(client).destroy(id) }
|
201
237
|
|
202
|
-
let(:results) { destroy[0] }
|
203
|
-
let(:error_messages) { destroy[1] }
|
204
|
-
|
205
238
|
context 'with valid session id' do
|
206
239
|
let(:id) { :valid_id }
|
207
240
|
|
data/spec/spec_helper.rb
CHANGED
@@ -1,10 +1,19 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
if ENV['
|
4
|
-
# require 'codeclimate-test-reporter'
|
5
|
-
# CodeClimate::TestReporter.start
|
3
|
+
if ENV['COVERAGE'] == 'true'
|
6
4
|
require 'simplecov'
|
7
|
-
|
5
|
+
require 'simplecov-console'
|
6
|
+
|
7
|
+
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
|
8
|
+
SimpleCov::Formatter::HTMLFormatter,
|
9
|
+
SimpleCov::Formatter::Console,
|
10
|
+
]
|
11
|
+
|
12
|
+
SimpleCov.start do
|
13
|
+
track_files 'lib/**/*.rb'
|
14
|
+
end
|
15
|
+
|
16
|
+
puts "Using SimpleCov v#{SimpleCov::VERSION}"
|
8
17
|
end
|
9
18
|
|
10
19
|
require 'bundler/setup'
|
data/spec/support/fake_api.rb
CHANGED
@@ -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
|
+
}
|
@@ -4,39 +4,43 @@ module Fake
|
|
4
4
|
module ScreeningsRoutes
|
5
5
|
class << self
|
6
6
|
def included(base)
|
7
|
-
|
8
|
-
resume_routes base
|
9
|
-
update_routes_invalid_id base
|
10
|
-
update_routes base
|
11
|
-
destroy_routes base
|
12
|
-
create_routes base
|
7
|
+
resource = "/#{base.version}/screenings"
|
13
8
|
|
14
|
-
|
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
|
15
14
|
end
|
16
15
|
|
17
|
-
|
18
|
-
|
19
|
-
|
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
|
20
28
|
end
|
21
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'
|
22
35
|
|
23
|
-
def resume_routes(base)
|
24
|
-
base.get("/#{base.version}/screenings/invalid_id/resume") do
|
25
|
-
json_response 404, 'resource_not_found.json'
|
26
|
-
end
|
27
|
-
base.get("/#{base.version}/screenings/valid_id/resume") do
|
28
36
|
json_response 200, 'screening.json'
|
29
37
|
end
|
30
38
|
end
|
31
39
|
|
32
|
-
def
|
33
|
-
base.put("
|
34
|
-
|
35
|
-
end
|
36
|
-
end
|
40
|
+
def update_routes(base, resource)
|
41
|
+
base.put("#{resource}/:session_id") do
|
42
|
+
return resource_not_found if params[:session_id] == 'invalid_id'
|
37
43
|
|
38
|
-
def update_routes(base)
|
39
|
-
base.put("/#{base.version}/screenings/valid_id") do
|
40
44
|
request.body.rewind
|
41
45
|
request_payload = JSON.parse request.body.read
|
42
46
|
if request_payload['question_id'] == 'invalid'
|
@@ -47,8 +51,8 @@ module Fake
|
|
47
51
|
end
|
48
52
|
end
|
49
53
|
|
50
|
-
def create_routes(base)
|
51
|
-
base.post(
|
54
|
+
def create_routes(base, resource)
|
55
|
+
base.post(resource) do
|
52
56
|
request.body.rewind
|
53
57
|
request_payload = JSON.parse request.body.read
|
54
58
|
if request_payload.key? 'email'
|
@@ -59,8 +63,8 @@ module Fake
|
|
59
63
|
end
|
60
64
|
end
|
61
65
|
|
62
|
-
def destroy_routes(base)
|
63
|
-
base.delete("
|
66
|
+
def destroy_routes(base, resource)
|
67
|
+
base.delete("#{resource}/:session_id") do
|
64
68
|
if params[:session_id] == 'valid_id'
|
65
69
|
status 200
|
66
70
|
else
|
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.1
|
4
|
+
version: 5.4.1
|
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-04-30 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.16
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,87 +29,27 @@ dependencies:
|
|
29
29
|
version: '5.0'
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 5.0.
|
32
|
+
version: 5.0.16
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: bundler
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
37
|
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '2.
|
40
|
-
- - ">="
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
version: 2.0.2
|
43
|
-
type: :development
|
44
|
-
prerelease: false
|
45
|
-
version_requirements: !ruby/object:Gem::Requirement
|
46
|
-
requirements:
|
47
|
-
- - "~>"
|
48
|
-
- !ruby/object:Gem::Version
|
49
|
-
version: '2.0'
|
50
|
-
- - ">="
|
51
|
-
- !ruby/object:Gem::Version
|
52
|
-
version: 2.0.2
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
|
-
name: codeclimate-test-reporter
|
55
|
-
requirement: !ruby/object:Gem::Requirement
|
56
|
-
requirements:
|
57
|
-
- - "~>"
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
version: '1.0'
|
60
|
-
- - ">="
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version: 1.0.9
|
63
|
-
type: :development
|
64
|
-
prerelease: false
|
65
|
-
version_requirements: !ruby/object:Gem::Requirement
|
66
|
-
requirements:
|
67
|
-
- - "~>"
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '1.0'
|
70
|
-
- - ">="
|
71
|
-
- !ruby/object:Gem::Version
|
72
|
-
version: 1.0.9
|
73
|
-
- !ruby/object:Gem::Dependency
|
74
|
-
name: guard
|
75
|
-
requirement: !ruby/object:Gem::Requirement
|
76
|
-
requirements:
|
77
|
-
- - "~>"
|
78
|
-
- !ruby/object:Gem::Version
|
79
|
-
version: '2.16'
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 2.16.1
|
83
|
-
type: :development
|
84
|
-
prerelease: false
|
85
|
-
version_requirements: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '2.16'
|
90
|
-
- - ">="
|
91
|
-
- !ruby/object:Gem::Version
|
92
|
-
version: 2.16.1
|
93
|
-
- !ruby/object:Gem::Dependency
|
94
|
-
name: guard-rspec
|
95
|
-
requirement: !ruby/object:Gem::Requirement
|
96
|
-
requirements:
|
97
|
-
- - "~>"
|
98
|
-
- !ruby/object:Gem::Version
|
99
|
-
version: '4.7'
|
39
|
+
version: '2.2'
|
100
40
|
- - ">="
|
101
41
|
- !ruby/object:Gem::Version
|
102
|
-
version:
|
42
|
+
version: 2.2.16
|
103
43
|
type: :development
|
104
44
|
prerelease: false
|
105
45
|
version_requirements: !ruby/object:Gem::Requirement
|
106
46
|
requirements:
|
107
47
|
- - "~>"
|
108
48
|
- !ruby/object:Gem::Version
|
109
|
-
version: '
|
49
|
+
version: '2.2'
|
110
50
|
- - ">="
|
111
51
|
- !ruby/object:Gem::Version
|
112
|
-
version:
|
52
|
+
version: 2.2.16
|
113
53
|
- !ruby/object:Gem::Dependency
|
114
54
|
name: rake
|
115
55
|
requirement: !ruby/object:Gem::Requirement
|
@@ -230,6 +170,40 @@ dependencies:
|
|
230
170
|
- - ">="
|
231
171
|
- !ruby/object:Gem::Version
|
232
172
|
version: 2.2.0
|
173
|
+
- !ruby/object:Gem::Dependency
|
174
|
+
name: simplecov
|
175
|
+
requirement: !ruby/object:Gem::Requirement
|
176
|
+
requirements:
|
177
|
+
- - "~>"
|
178
|
+
- !ruby/object:Gem::Version
|
179
|
+
version: '0.21'
|
180
|
+
- - ">="
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: 0.21.2
|
183
|
+
type: :development
|
184
|
+
prerelease: false
|
185
|
+
version_requirements: !ruby/object:Gem::Requirement
|
186
|
+
requirements:
|
187
|
+
- - "~>"
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '0.21'
|
190
|
+
- - ">="
|
191
|
+
- !ruby/object:Gem::Version
|
192
|
+
version: 0.21.2
|
193
|
+
- !ruby/object:Gem::Dependency
|
194
|
+
name: simplecov-console
|
195
|
+
requirement: !ruby/object:Gem::Requirement
|
196
|
+
requirements:
|
197
|
+
- - "~>"
|
198
|
+
- !ruby/object:Gem::Version
|
199
|
+
version: '0.9'
|
200
|
+
type: :development
|
201
|
+
prerelease: false
|
202
|
+
version_requirements: !ruby/object:Gem::Requirement
|
203
|
+
requirements:
|
204
|
+
- - "~>"
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
version: '0.9'
|
233
207
|
- !ruby/object:Gem::Dependency
|
234
208
|
name: sinatra
|
235
209
|
requirement: !ruby/object:Gem::Requirement
|
@@ -256,20 +230,20 @@ dependencies:
|
|
256
230
|
requirements:
|
257
231
|
- - "~>"
|
258
232
|
- !ruby/object:Gem::Version
|
259
|
-
version: '3.
|
233
|
+
version: '3.12'
|
260
234
|
- - ">="
|
261
235
|
- !ruby/object:Gem::Version
|
262
|
-
version: 3.
|
236
|
+
version: 3.12.2
|
263
237
|
type: :development
|
264
238
|
prerelease: false
|
265
239
|
version_requirements: !ruby/object:Gem::Requirement
|
266
240
|
requirements:
|
267
241
|
- - "~>"
|
268
242
|
- !ruby/object:Gem::Version
|
269
|
-
version: '3.
|
243
|
+
version: '3.12'
|
270
244
|
- - ">="
|
271
245
|
- !ruby/object:Gem::Version
|
272
|
-
version: 3.
|
246
|
+
version: 3.12.2
|
273
247
|
description: A simple library for communicating with the FinApps REST API.
|
274
248
|
email:
|
275
249
|
- erich@financialapps.com
|
@@ -280,6 +254,7 @@ extra_rdoc_files:
|
|
280
254
|
- LICENSE.txt
|
281
255
|
files:
|
282
256
|
- ".codeclimate.yml"
|
257
|
+
- ".github/dependabot.yml"
|
283
258
|
- ".github/release-drafter.yml"
|
284
259
|
- ".github/workflows/ci.yaml"
|
285
260
|
- ".github/workflows/release-drafter.yml"
|
@@ -444,6 +419,9 @@ files:
|
|
444
419
|
- spec/support/fixtures/screening.json
|
445
420
|
- spec/support/fixtures/screening_invalid_update.json
|
446
421
|
- spec/support/fixtures/screening_list.json
|
422
|
+
- spec/support/fixtures/screenings/last_session.json
|
423
|
+
- spec/support/fixtures/screenings/session_not_found_with_id.json
|
424
|
+
- spec/support/fixtures/screenings/tenant_schemas.json
|
447
425
|
- spec/support/fixtures/session_not_found.json
|
448
426
|
- spec/support/fixtures/sign_url.json
|
449
427
|
- spec/support/fixtures/signed_document.pdf
|
@@ -493,51 +471,51 @@ signing_key:
|
|
493
471
|
specification_version: 4
|
494
472
|
summary: FinApps REST API ruby client.
|
495
473
|
test_files:
|
474
|
+
- spec/utils/query_builder_spec.rb
|
475
|
+
- spec/spec_helper.rb
|
496
476
|
- spec/support/documents_uploads_routes.rb
|
497
477
|
- spec/support/screenings_routes.rb
|
498
478
|
- spec/support/fake_api.rb
|
499
479
|
- spec/spec_helpers/client.rb
|
500
|
-
- spec/rest/
|
501
|
-
- spec/rest/
|
502
|
-
- spec/rest/api_request.rb
|
503
|
-
- spec/rest/sessions_spec.rb
|
504
|
-
- spec/rest/tenant_app_settings_spec.rb
|
505
|
-
- spec/rest/documents_orders_notifications_spec.rb
|
506
|
-
- spec/rest/order_refreshes_spec.rb
|
507
|
-
- spec/rest/tenant_settings_spec.rb
|
480
|
+
- spec/rest/password_resets_spec.rb
|
481
|
+
- spec/rest/order_reports_spec.rb
|
508
482
|
- spec/rest/order_statuses_spec.rb
|
509
|
-
- spec/rest/order_tokens_spec.rb
|
510
|
-
- spec/rest/documents_orders_spec.rb
|
511
|
-
- spec/rest/consumers_spec.rb
|
512
|
-
- spec/rest/portfolio_reports_spec.rb
|
513
|
-
- spec/rest/alert_definitions_spec.rb
|
514
|
-
- spec/rest/portfolios_available_consumers_spec.rb
|
515
|
-
- spec/rest/portfolios_consumers_spec.rb
|
516
|
-
- spec/rest/documents_upload_types_spec.rb
|
517
|
-
- spec/rest/esign_templates_spec.rb
|
518
|
-
- spec/rest/documents_uploads_spec.rb
|
519
|
-
- spec/rest/orders_spec.rb
|
520
|
-
- spec/rest/order_assignments_spec.rb
|
521
483
|
- spec/rest/plaid/plaid_account_permissions_spec.rb
|
522
|
-
- spec/rest/plaid/
|
484
|
+
- spec/rest/plaid/plaid_institution_logos_spec.rb
|
523
485
|
- spec/rest/plaid/plaid_accounts_spec.rb
|
486
|
+
- spec/rest/plaid/plaid_consumer_institutions_spec.rb
|
524
487
|
- spec/rest/plaid/plaid_webhooks_spec.rb
|
525
|
-
- spec/rest/
|
526
|
-
- spec/rest/
|
527
|
-
- spec/rest/order_reports_spec.rb
|
488
|
+
- spec/rest/api_request.rb
|
489
|
+
- spec/rest/orders_spec.rb
|
528
490
|
- spec/rest/screenings_spec.rb
|
529
|
-
- spec/rest/
|
530
|
-
- spec/rest/
|
491
|
+
- spec/rest/documents_orders_notifications_spec.rb
|
492
|
+
- spec/rest/documents_upload_types_spec.rb
|
531
493
|
- spec/rest/consumers_portfolios_spec.rb
|
532
|
-
- spec/rest/
|
533
|
-
- spec/rest/
|
534
|
-
- spec/rest/
|
535
|
-
- spec/rest/
|
494
|
+
- spec/rest/consumers_spec.rb
|
495
|
+
- spec/rest/documents_uploads_spec.rb
|
496
|
+
- spec/rest/tenant_app_settings_spec.rb
|
497
|
+
- spec/rest/signed_documents_downloads_spec.rb
|
498
|
+
- spec/rest/order_assignments_spec.rb
|
499
|
+
- spec/rest/operators_spec.rb
|
500
|
+
- spec/rest/documents_orders_spec.rb
|
501
|
+
- spec/rest/tenant_settings_spec.rb
|
502
|
+
- spec/rest/operators_password_resets_spec.rb
|
536
503
|
- spec/rest/portfolios_spec.rb
|
537
|
-
- spec/rest/
|
504
|
+
- spec/rest/order_tokens_spec.rb
|
505
|
+
- spec/rest/order_notifications_spec.rb
|
506
|
+
- spec/rest/sessions_spec.rb
|
538
507
|
- spec/rest/verix/verix_documents_spec.rb
|
539
|
-
- spec/rest/verix/verix_records_spec.rb
|
540
508
|
- spec/rest/verix/verix_metadata_spec.rb
|
541
|
-
- spec/rest/
|
542
|
-
- spec/
|
543
|
-
- spec/
|
509
|
+
- spec/rest/verix/verix_pdf_documents_spec.rb
|
510
|
+
- spec/rest/verix/verix_records_spec.rb
|
511
|
+
- spec/rest/alert_occurrences_spec.rb
|
512
|
+
- spec/rest/version_spec.rb
|
513
|
+
- spec/rest/order_refreshes_spec.rb
|
514
|
+
- spec/rest/alert_definitions_spec.rb
|
515
|
+
- spec/rest/portfolios_available_consumers_spec.rb
|
516
|
+
- spec/rest/products_spec.rb
|
517
|
+
- spec/rest/client_spec.rb
|
518
|
+
- spec/rest/portfolios_alerts_spec.rb
|
519
|
+
- spec/rest/esign_templates_spec.rb
|
520
|
+
- spec/rest/portfolio_reports_spec.rb
|
521
|
+
- spec/rest/portfolios_consumers_spec.rb
|