onfido 2.6.0 → 2.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/gem-push.yml +2 -2
- data/CHANGELOG.md +4 -0
- data/lib/onfido/api.rb +4 -0
- data/lib/onfido/resource.rb +4 -0
- data/lib/onfido/resources/workflow_run.rb +17 -0
- data/lib/onfido/version.rb +1 -1
- data/lib/onfido.rb +1 -0
- data/spec/integrations/workflow_run_spec.rb +46 -0
- data/spec/support/fake_onfido_api.rb +12 -0
- data/spec/support/fixtures/workflow_run.json +20 -0
- data/spec/support/fixtures/workflow_runs.json +42 -0
- metadata +9 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2e3f3ecb736185d8fb0227413d125caacad919d755a3a61d855783d525082f3
|
4
|
+
data.tar.gz: f553f828aaf8273067417fb62a62d34a4727f0632f677d1751da34fa611288ca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11cc9bf7b6f06b93d5cf7b68c3d6982359f762b88d9d59d9069d52b02ba7498511de545a11ad78cea358f7d9fd724fc2dc554f044f0ff206a7dd91502922b821
|
7
|
+
data.tar.gz: 19bf65314bc21d5d989eeb1102ae32de7e930a3cb665aca5b849c5405b611061fd67adb7eaab1ad899904626ccfbf08c39ef4495e0f9a8d6f315cf3366af8ea8
|
data/CHANGELOG.md
CHANGED
data/lib/onfido/api.rb
CHANGED
data/lib/onfido/resource.rb
CHANGED
@@ -141,5 +141,9 @@ module Onfido
|
|
141
141
|
raise ArgumentError, 'File must be a `File`-like object which responds to ' \
|
142
142
|
'`#read` and `#path`'
|
143
143
|
end
|
144
|
+
|
145
|
+
def stringify_query_params(hashed_params)
|
146
|
+
URI.encode_www_form_component(hashed_params.map{ |k,v| "#{k}=#{v}" }.join("&"))
|
147
|
+
end
|
144
148
|
end
|
145
149
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Onfido
|
4
|
+
class WorkflowRun < Resource
|
5
|
+
def create(payload)
|
6
|
+
post(path: 'workflow_runs', payload: payload)
|
7
|
+
end
|
8
|
+
|
9
|
+
def find(workflow_run_id)
|
10
|
+
get(path: "workflow_runs/#{workflow_run_id}")
|
11
|
+
end
|
12
|
+
|
13
|
+
def all(query_params = {})
|
14
|
+
get(path: "workflow_runs?#{stringify_query_params(query_params)}")
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/onfido/version.rb
CHANGED
data/lib/onfido.rb
CHANGED
@@ -0,0 +1,46 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
describe Onfido::WorkflowRun do
|
4
|
+
include_context 'fake onfido api'
|
5
|
+
|
6
|
+
subject(:workflow_run) { onfido.workflow_run }
|
7
|
+
|
8
|
+
let(:workflow_run_id) { 'fcb73186-0733-4f6f-9c57-d9d5ef979443' }
|
9
|
+
let(:params) do
|
10
|
+
{
|
11
|
+
'a' => 'b'
|
12
|
+
}
|
13
|
+
end
|
14
|
+
|
15
|
+
describe '#create' do
|
16
|
+
it 'serializes the payload correctly' do
|
17
|
+
WebMock.after_request do |request_signature, _response|
|
18
|
+
if request_signature.uri.path == 'v3.5/workflow_run'
|
19
|
+
expect(Rack::Utils.parse_nested_query(request_signature.body))
|
20
|
+
.to eq(params)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'creates a workflow run' do
|
26
|
+
response = workflow_run.create(params)
|
27
|
+
expect(response['id']).not_to be_nil
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe '#find' do
|
32
|
+
it 'returns the workflow run' do
|
33
|
+
response = workflow_run.find(workflow_run_id)
|
34
|
+
|
35
|
+
expect(response['id']).to eq(workflow_run_id)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
describe '#all' do
|
40
|
+
it 'returns the workflow runs' do
|
41
|
+
response = workflow_run.all({ page: 1, sort: "asc" })
|
42
|
+
|
43
|
+
expect(response.count).to eq(2)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -216,6 +216,18 @@ class FakeOnfidoAPI < Sinatra::Base # rubocop:disable Metrics/ClassLength
|
|
216
216
|
json_response(200, 'webhooks.json')
|
217
217
|
end
|
218
218
|
|
219
|
+
post '/v3.5/workflow_runs' do
|
220
|
+
json_response(201, 'workflow_run.json')
|
221
|
+
end
|
222
|
+
|
223
|
+
get '/v3.5/workflow_runs/:id' do
|
224
|
+
json_response(200, 'workflow_run.json')
|
225
|
+
end
|
226
|
+
|
227
|
+
get '/v3.5/workflow_runs' do
|
228
|
+
json_response(200, 'workflow_runs.json')
|
229
|
+
end
|
230
|
+
|
219
231
|
get '/v3.5/4xx_response' do
|
220
232
|
json_response(422, '4xx_response.json')
|
221
233
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
{
|
2
|
+
"id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
3
|
+
"applicant_id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
4
|
+
"workflow_id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
5
|
+
"workflow_version_id": 11,
|
6
|
+
"status": "approved",
|
7
|
+
"dashboard_url":"https://dashboard.onfido.com/results/fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
8
|
+
"output": {"prop1": "val_1", "prop2": 10},
|
9
|
+
"reasons": ["reason_1", "reason_2"],
|
10
|
+
"error": null,
|
11
|
+
"created_at": "2022-06-28T15:39:42Z",
|
12
|
+
"updated_at": "2022-07-28T15:40:42Z",
|
13
|
+
"link": {
|
14
|
+
"completed_redirect_url": "https://example.onfido.com",
|
15
|
+
"expired_redirect_url": "https://example.onfido.com",
|
16
|
+
"expires_at": "2022-10-17T14:40:50Z",
|
17
|
+
"language": "en_US",
|
18
|
+
"url": "https://eu.onfido.app/l/fcb73186-0733-4f6f-9c57-d9d5ef979443"
|
19
|
+
}
|
20
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
4
|
+
"applicant_id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
5
|
+
"workflow_id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
6
|
+
"workflow_version_id": 11,
|
7
|
+
"status": "approved",
|
8
|
+
"dashboard_url":"https://dashboard.onfido.com/results/fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
9
|
+
"output": {"prop1": "val_1", "prop2": 10},
|
10
|
+
"reasons": ["reason_1", "reason_2"],
|
11
|
+
"error": null,
|
12
|
+
"created_at": "2022-06-28T15:39:42Z",
|
13
|
+
"updated_at": "2022-07-28T15:40:42Z",
|
14
|
+
"link": {
|
15
|
+
"completed_redirect_url": "https://example.onfido.com",
|
16
|
+
"expired_redirect_url": "https://example.onfido.com",
|
17
|
+
"expires_at": "2022-10-17T14:40:50Z",
|
18
|
+
"language": "en_US",
|
19
|
+
"url": "https://eu.onfido.app/l/fcb73186-0733-4f6f-9c57-d9d5ef979443"
|
20
|
+
}
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"id": "fcb73186-0733-4f6f-9c57-d9d5ef979463",
|
24
|
+
"applicant_id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
25
|
+
"workflow_id": "fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
26
|
+
"workflow_version_id": 11,
|
27
|
+
"status": "approved",
|
28
|
+
"dashboard_url":"https://dashboard.onfido.com/results/fcb73186-0733-4f6f-9c57-d9d5ef979443",
|
29
|
+
"output": {"prop1": "val_1", "prop2": 10},
|
30
|
+
"reasons": ["reason_1", "reason_2"],
|
31
|
+
"error": null,
|
32
|
+
"created_at": "2022-06-28T15:39:42Z",
|
33
|
+
"updated_at": "2022-07-28T15:40:42Z",
|
34
|
+
"link": {
|
35
|
+
"completed_redirect_url": "https://example.onfido.com",
|
36
|
+
"expired_redirect_url": "https://example.onfido.com",
|
37
|
+
"expires_at": "2022-10-17T14:40:50Z",
|
38
|
+
"language": "en_US",
|
39
|
+
"url": "https://eu.onfido.app/l/fcb73186-0733-4f6f-9c57-d9d5ef979443"
|
40
|
+
}
|
41
|
+
}
|
42
|
+
]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onfido
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Onfido
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -146,6 +146,7 @@ files:
|
|
146
146
|
- lib/onfido/resources/report.rb
|
147
147
|
- lib/onfido/resources/sdk_token.rb
|
148
148
|
- lib/onfido/resources/webhook.rb
|
149
|
+
- lib/onfido/resources/workflow_run.rb
|
149
150
|
- lib/onfido/version.rb
|
150
151
|
- onfido.gemspec
|
151
152
|
- spec/integrations/address_spec.rb
|
@@ -161,6 +162,7 @@ files:
|
|
161
162
|
- spec/integrations/resource_spec.rb
|
162
163
|
- spec/integrations/sdk_token_spec.rb
|
163
164
|
- spec/integrations/webhook_spec.rb
|
165
|
+
- spec/integrations/workflow_run_spec.rb
|
164
166
|
- spec/onfido/api_spec.rb
|
165
167
|
- spec/onfido/connection_error_spec.rb
|
166
168
|
- spec/onfido/options_spec.rb
|
@@ -191,6 +193,8 @@ files:
|
|
191
193
|
- spec/support/fixtures/unexpected_error_format.json
|
192
194
|
- spec/support/fixtures/webhook.json
|
193
195
|
- spec/support/fixtures/webhooks.json
|
196
|
+
- spec/support/fixtures/workflow_run.json
|
197
|
+
- spec/support/fixtures/workflow_runs.json
|
194
198
|
homepage: http://github.com/onfido/onfido-ruby
|
195
199
|
licenses:
|
196
200
|
- MIT
|
@@ -228,6 +232,7 @@ test_files:
|
|
228
232
|
- spec/integrations/resource_spec.rb
|
229
233
|
- spec/integrations/sdk_token_spec.rb
|
230
234
|
- spec/integrations/webhook_spec.rb
|
235
|
+
- spec/integrations/workflow_run_spec.rb
|
231
236
|
- spec/onfido/api_spec.rb
|
232
237
|
- spec/onfido/connection_error_spec.rb
|
233
238
|
- spec/onfido/options_spec.rb
|
@@ -258,3 +263,5 @@ test_files:
|
|
258
263
|
- spec/support/fixtures/unexpected_error_format.json
|
259
264
|
- spec/support/fixtures/webhook.json
|
260
265
|
- spec/support/fixtures/webhooks.json
|
266
|
+
- spec/support/fixtures/workflow_run.json
|
267
|
+
- spec/support/fixtures/workflow_runs.json
|