finapps 5.1.0 → 5.2.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/lib/finapps/rest/screenings.rb +7 -0
- data/lib/finapps/version.rb +1 -1
- data/spec/rest/screenings_spec.rb +30 -14
- 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/screenings_routes.rb +25 -26
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 554b65d6356fd5e7b4e6c6711af7b915285353a34f88e6c95f73305573da56b5
|
4
|
+
data.tar.gz: 7b2d81aeba357ae0c8cdf7b6688ab4b7f5017a75c840ee6f09e095c1c64bd085
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 36390552ea22bf844baab8585a516e54cfa9e22267159f426d0ce94baae60163823b2dfe364828f8b039abdbf6ac1930c4105eea532f7667ed95687074829a49
|
7
|
+
data.tar.gz: 3942cfe7e696a6560f78bf0e5ead716831a7698b13b513b175d9af4f38382f4c4e457f2758f3053d596c3f37b99984ecf3cd3006f9f470afd644549a294f9362
|
@@ -14,6 +14,13 @@ module FinApps
|
|
14
14
|
super(nil, path)
|
15
15
|
end
|
16
16
|
|
17
|
+
def last(consumer_id)
|
18
|
+
not_blank(consumer_id, :consumer_id)
|
19
|
+
|
20
|
+
path = "#{end_point}/#{ERB::Util.url_encode(consumer_id)}/consumer"
|
21
|
+
send_request_for_id path, :get, nil
|
22
|
+
end
|
23
|
+
|
17
24
|
def create(params)
|
18
25
|
not_blank(params, :params)
|
19
26
|
super params
|
data/lib/finapps/version.rb
CHANGED
@@ -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
|
{
|
@@ -79,9 +79,6 @@ RSpec.describe FinApps::REST::Screenings do
|
|
79
79
|
describe '#show' do
|
80
80
|
subject(:show) { described_class.new(client).show(id) }
|
81
81
|
|
82
|
-
let(:results) { show[0] }
|
83
|
-
let(:error_messages) { show[1] }
|
84
|
-
|
85
82
|
context 'with valid id' do
|
86
83
|
let(:id) { :valid_id }
|
87
84
|
|
@@ -106,12 +103,36 @@ RSpec.describe FinApps::REST::Screenings do
|
|
106
103
|
end
|
107
104
|
end
|
108
105
|
|
106
|
+
describe '#last' do
|
107
|
+
subject(:last) { described_class.new(client).last(consumer_id) }
|
108
|
+
|
109
|
+
context 'with valid consumer_id' do
|
110
|
+
let(:consumer_id) { :valid_consumer_id }
|
111
|
+
|
112
|
+
it_behaves_like 'an API request'
|
113
|
+
it_behaves_like 'a successful request'
|
114
|
+
it('results have an :s_id node') do
|
115
|
+
expect(results).to have_key(:s_id)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
context 'with invalid consumer_id' do
|
120
|
+
let(:consumer_id) { :invalid_consumer_id }
|
121
|
+
|
122
|
+
it { expect(results).to be_nil }
|
123
|
+
it { expect(error_messages).not_to be_empty }
|
124
|
+
end
|
125
|
+
|
126
|
+
context 'when missing consumer_id' do
|
127
|
+
let(:consumer_id) { nil }
|
128
|
+
|
129
|
+
it_behaves_like 'a request that raises an error'
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
109
133
|
describe '#create' do
|
110
134
|
subject(:create) { described_class.new(client).create(params) }
|
111
135
|
|
112
|
-
let(:results) { create[0] }
|
113
|
-
let(:error_messages) { create[1] }
|
114
|
-
|
115
136
|
context 'with valid params' do
|
116
137
|
let(:params) do
|
117
138
|
{
|
@@ -153,8 +174,6 @@ RSpec.describe FinApps::REST::Screenings do
|
|
153
174
|
subject(:update) { described_class.new(client).update(id, params) }
|
154
175
|
|
155
176
|
let(:params) { {} }
|
156
|
-
let(:results) { update[0] }
|
157
|
-
let(:error_messages) { update[1] }
|
158
177
|
|
159
178
|
context 'with valid session id' do
|
160
179
|
let(:id) { :valid_id }
|
@@ -199,9 +218,6 @@ RSpec.describe FinApps::REST::Screenings do
|
|
199
218
|
describe '#destroy' do
|
200
219
|
subject(:destroy) { described_class.new(client).destroy(id) }
|
201
220
|
|
202
|
-
let(:results) { destroy[0] }
|
203
|
-
let(:error_messages) { destroy[1] }
|
204
|
-
|
205
221
|
context 'with valid session id' do
|
206
222
|
let(:id) { :valid_id }
|
207
223
|
|
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,38 @@ 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
|
-
def list_routes(base)
|
18
|
-
base.get(
|
19
|
-
|
16
|
+
def list_routes(base, resource)
|
17
|
+
base.get(resource) { json_response 200, 'screening_list.json' }
|
18
|
+
base.get("#{resource}/:consumer_id/consumer") do
|
19
|
+
if params[:consumer_id] == 'invalid_consumer_id'
|
20
|
+
json_response 404, 'session_not_found.json'
|
21
|
+
else
|
22
|
+
json_response 200, 'screenings/last_session.json'
|
23
|
+
end
|
20
24
|
end
|
21
25
|
end
|
22
26
|
|
23
|
-
def resume_routes(base)
|
24
|
-
base.get("
|
25
|
-
|
26
|
-
|
27
|
-
base.get("/#{base.version}/screenings/valid_id/resume") do
|
27
|
+
def resume_routes(base, resource)
|
28
|
+
base.get("#{resource}/:session_id/resume") do
|
29
|
+
return resource_not_found if params[:session_id] == 'invalid_id'
|
30
|
+
|
28
31
|
json_response 200, 'screening.json'
|
29
32
|
end
|
30
33
|
end
|
31
34
|
|
32
|
-
def
|
33
|
-
base.put("
|
34
|
-
|
35
|
-
end
|
36
|
-
end
|
35
|
+
def update_routes(base, resource)
|
36
|
+
base.put("#{resource}/:session_id") do
|
37
|
+
return resource_not_found if params[:session_id] == 'invalid_id'
|
37
38
|
|
38
|
-
def update_routes(base)
|
39
|
-
base.put("/#{base.version}/screenings/valid_id") do
|
40
39
|
request.body.rewind
|
41
40
|
request_payload = JSON.parse request.body.read
|
42
41
|
if request_payload['question_id'] == 'invalid'
|
@@ -47,8 +46,8 @@ module Fake
|
|
47
46
|
end
|
48
47
|
end
|
49
48
|
|
50
|
-
def create_routes(base)
|
51
|
-
base.post(
|
49
|
+
def create_routes(base, resource)
|
50
|
+
base.post(resource) do
|
52
51
|
request.body.rewind
|
53
52
|
request_payload = JSON.parse request.body.read
|
54
53
|
if request_payload.key? 'email'
|
@@ -59,8 +58,8 @@ module Fake
|
|
59
58
|
end
|
60
59
|
end
|
61
60
|
|
62
|
-
def destroy_routes(base)
|
63
|
-
base.delete("
|
61
|
+
def destroy_routes(base, resource)
|
62
|
+
base.delete("#{resource}/:session_id") do
|
64
63
|
if params[:session_id] == 'valid_id'
|
65
64
|
status 200
|
66
65
|
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.
|
4
|
+
version: 5.2.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-02-
|
11
|
+
date: 2021-02-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: finapps_core
|
@@ -444,6 +444,8 @@ files:
|
|
444
444
|
- spec/support/fixtures/screening.json
|
445
445
|
- spec/support/fixtures/screening_invalid_update.json
|
446
446
|
- spec/support/fixtures/screening_list.json
|
447
|
+
- spec/support/fixtures/screenings/last_session.json
|
448
|
+
- spec/support/fixtures/screenings/session_not_found_with_id.json
|
447
449
|
- spec/support/fixtures/session_not_found.json
|
448
450
|
- spec/support/fixtures/sign_url.json
|
449
451
|
- spec/support/fixtures/signed_document.pdf
|