lifen 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/lib/lifen/app_authenticated_client.rb +7 -1
- data/lib/lifen/user_authenticated_client.rb +7 -0
- data/lib/lifen/version.rb +1 -1
- data/spec/cassettes/flows/attach_users/invalid_flow_uuid.yml +1 -1
- data/spec/cassettes/flows/attach_users/invalid_user_uuid.yml +1 -1
- data/spec/cassettes/flows/attach_users/valid.yml +1 -1
- data/spec/cassettes/flows/create.yml +1 -1
- data/spec/cassettes/flows/detach_users/valid.yml +1 -1
- data/spec/cassettes/flows/detach_users/valid_again.yml +1 -1
- data/spec/cassettes/flows/internal_error.yml +56 -0
- data/spec/cassettes/flows/internal_error_without_trace_id.yml +56 -0
- data/spec/cassettes/flows/invalid_token.yml +1 -1
- data/spec/cassettes/flows/valid_token.yml +2 -2
- data/spec/cassettes/users/create/existing_user.yml +1 -1
- data/spec/cassettes/users/create/invalid_token.yml +1 -1
- data/spec/cassettes/users/create/missing_fields.yml +1 -1
- data/spec/cassettes/users/create/valid_attributes.yml +1 -1
- data/spec/cassettes/users/refresh/invalid_user_uuid.yml +1 -1
- data/spec/cassettes/users/refresh/valid_user_uuid.yml +1 -1
- data/spec/cassettes/users/refresh_unread_messages/invalid_token.yml +1 -1
- data/spec/cassettes/users/refresh_unread_messages/valid_token.yml +1 -1
- data/spec/flows_spec.rb +20 -0
- data/spec/spec_helper.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6adc4c05214d98c131b76fae1d12e1fee469adab
|
4
|
+
data.tar.gz: 4ad0289f54a54ae548ec0bb15ea246d4debab564
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 05f67f7c831ab06ccfaff089b24e313e22d14c042e067c83667a5d4649b0deb2652c8c990189a404ef21d50dd8f9d55db1e553c704036fefdecef358e9d4a22f
|
7
|
+
data.tar.gz: ca39bfb00523b8ac8a993f467562b0dda712182f9a4055e27ee856763a428600e7c0f1b2bd35117471aa1221cf211c77f2833917ae5b77d166b5682d8abf2475
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -23,7 +23,7 @@ Or install it yourself as:
|
|
23
23
|
Lifen can be configured (ideally inside an initializer) like so:
|
24
24
|
|
25
25
|
Lifen.configure do |config|
|
26
|
-
config.site = "
|
26
|
+
config.site = "https://develop.lifen.fr/"
|
27
27
|
config.secret_key = "secret_key"
|
28
28
|
config.proxy_url = "http://my.proxy.fr/"
|
29
29
|
end
|
@@ -12,7 +12,13 @@ module Lifen
|
|
12
12
|
req.body = JSON.generate(params)
|
13
13
|
end
|
14
14
|
|
15
|
-
|
15
|
+
if response.status == 500
|
16
|
+
json = JSON.parse response.body
|
17
|
+
|
18
|
+
trace_id = json.fetch("X-B3-TraceId", "unknown")
|
19
|
+
raise Error, "Error 500, Internal server error (trace ID: #{trace_id})"
|
20
|
+
end
|
21
|
+
|
16
22
|
raise Error, "Error 400" if response.status == 400
|
17
23
|
raise Error, "Error 404, Page not found" if response.status == 404
|
18
24
|
raise InvalidSecretTokenError if response.status == 401
|
@@ -17,6 +17,13 @@ module Lifen
|
|
17
17
|
req.body = JSON.generate(params)
|
18
18
|
end
|
19
19
|
|
20
|
+
if response.status == 500
|
21
|
+
json = JSON.parse response.body
|
22
|
+
|
23
|
+
trace_id = json.fetch("X-B3-TraceId", "unknown")
|
24
|
+
raise Error, "Error 500, Internal server error (trace ID: #{trace_id})"
|
25
|
+
end
|
26
|
+
|
20
27
|
raise UnauthorizedError, "Token is not valid" if response.status == 401
|
21
28
|
raise Error, "Action is forbidden" if response.status == 403
|
22
29
|
raise InvalidParamsError, "Invalid params" if response.status == 400
|
data/lib/lifen/version.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats/invalid-uuid/attach_users?rel=activeUsers
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '["25588996-4ff1-2dbb-9643-eabb809fa654"]'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats/11e65eca-4af7-d795-bf1a-0242ac110002/attach_users?rel=activeUsers
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '["invalid-uuid"]'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats/11e65eca-4af7-d795-bf1a-0242ac110002/attach_users?rel=activeUsers
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '["25588996-4ff1-2dbb-9643-eabb809fa654"]'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats/11e65eca-4af7-d795-bf1a-0242ac110002/detach_users?rel=activeUsers
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '["25588996-4ff1-2dbb-9643-eabb809fa654"]'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats/11e65eca-4af7-d795-bf1a-0242ac110002/detach_users?rel=activeUsers
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '["25588996-4ff1-2dbb-9643-eabb809fa654"]'
|
@@ -0,0 +1,56 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: "{}"
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.10.0
|
12
|
+
X-Auth-Token:
|
13
|
+
- valid_token
|
14
|
+
Content-Type:
|
15
|
+
- application/json
|
16
|
+
Accept-Encoding:
|
17
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
18
|
+
Accept:
|
19
|
+
- "*/*"
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 500
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- Apache-Coyote/1.1
|
27
|
+
X-B3-Sampled:
|
28
|
+
- '1'
|
29
|
+
X-B3-Spanid:
|
30
|
+
- 8b7701489385096
|
31
|
+
X-B3-Traceid:
|
32
|
+
- 8b7701489385096
|
33
|
+
X-Content-Type-Options:
|
34
|
+
- nosniff
|
35
|
+
X-Xss-Protection:
|
36
|
+
- 1; mode=block
|
37
|
+
Cache-Control:
|
38
|
+
- no-cache, no-store, max-age=0, must-revalidate
|
39
|
+
Pragma:
|
40
|
+
- no-cache
|
41
|
+
Expires:
|
42
|
+
- '0'
|
43
|
+
Content-Type:
|
44
|
+
- application/hal+json;charset=UTF-8
|
45
|
+
Transfer-Encoding:
|
46
|
+
- chunked
|
47
|
+
Date:
|
48
|
+
- Mon, 28 Nov 2016 13:28:27 GMT
|
49
|
+
Connection:
|
50
|
+
- close
|
51
|
+
body:
|
52
|
+
encoding: UTF-8
|
53
|
+
string: '{"timestamp": "2016-11-28T13:31:26.135+0000","status": 500,"error": "Internal Server Error","code": "error.500","X-B3-TraceId": "2e2eac3a7e3fa2","X-B3-SpanId": "2e2eac3a7e3fa2"}'
|
54
|
+
http_version:
|
55
|
+
recorded_at: Mon, 28 Nov 2016 13:28:27 GMT
|
56
|
+
recorded_with: VCR 3.0.3
|
@@ -0,0 +1,56 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: "{}"
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.10.0
|
12
|
+
X-Auth-Token:
|
13
|
+
- valid_token
|
14
|
+
Content-Type:
|
15
|
+
- application/json
|
16
|
+
Accept-Encoding:
|
17
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
18
|
+
Accept:
|
19
|
+
- "*/*"
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 500
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- Apache-Coyote/1.1
|
27
|
+
X-B3-Sampled:
|
28
|
+
- '1'
|
29
|
+
X-B3-Spanid:
|
30
|
+
- 8b7701489385096
|
31
|
+
X-B3-Traceid:
|
32
|
+
- 8b7701489385096
|
33
|
+
X-Content-Type-Options:
|
34
|
+
- nosniff
|
35
|
+
X-Xss-Protection:
|
36
|
+
- 1; mode=block
|
37
|
+
Cache-Control:
|
38
|
+
- no-cache, no-store, max-age=0, must-revalidate
|
39
|
+
Pragma:
|
40
|
+
- no-cache
|
41
|
+
Expires:
|
42
|
+
- '0'
|
43
|
+
Content-Type:
|
44
|
+
- application/hal+json;charset=UTF-8
|
45
|
+
Transfer-Encoding:
|
46
|
+
- chunked
|
47
|
+
Date:
|
48
|
+
- Mon, 28 Nov 2016 13:28:27 GMT
|
49
|
+
Connection:
|
50
|
+
- close
|
51
|
+
body:
|
52
|
+
encoding: UTF-8
|
53
|
+
string: '{}'
|
54
|
+
http_version:
|
55
|
+
recorded_at: Mon, 28 Nov 2016 13:28:27 GMT
|
56
|
+
recorded_with: VCR 3.0.3
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: get
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/central/api/chats
|
6
6
|
body:
|
7
7
|
encoding: US-ASCII
|
8
8
|
string: ''
|
@@ -52,7 +52,7 @@ http_interactions:
|
|
52
52
|
encoding: UTF-8
|
53
53
|
string: '{"_embedded":{"flows":[{"uuid":"11e5c68b-85e9-96e8-9d33-027026ae8c87","version":0,"type":"regular"},{"uuid":"11e5c68c-464b-c5d5-9d33-027026ae8c87","version":0,"title":"Résultats
|
54
54
|
de bio disponibles","type":"regular"},{"uuid":"11e5c68c-7dc2-fde8-9d33-027026ae8c87","version":0,"title":"Demande
|
55
|
-
d''avis dermato","type":"regular"}]},"_links":{"self":{"href":"
|
55
|
+
d''avis dermato","type":"regular"}]},"_links":{"self":{"href":"https://develop.lifen.fr/central/api/chats"}},"page":{"size":20,"totalElements":3,"totalPages":1,"number":0}}'
|
56
56
|
http_version:
|
57
57
|
recorded_at: Wed, 10 Aug 2016 07:15:12 GMT
|
58
58
|
recorded_with: VCR 3.0.3
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/authentication/api/register/third_party
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '{"emailAddress":"existing-user@domain.tld","lastName":null,"firstName":null}'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/authentication/api/register/third_party
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '{"emailAddress":"invalid-key-email@test.tld","lastName":null,"firstName":null}'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/authentication/api/register/third_party
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '{"emailAddress":null,"lastName":null,"firstName":null}'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/authentication/api/register/third_party
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '{"emailAddress":"valid-email-spec@domain.tld","lastName":null,"firstName":null}'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri:
|
5
|
+
uri: https://develop.lifen.fr/authentication/api/authenticate/third_party
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: '{"accountUuid":"invalid-user-uuid"}'
|
data/spec/flows_spec.rb
CHANGED
@@ -19,6 +19,26 @@ describe Lifen::Flow do
|
|
19
19
|
|
20
20
|
end
|
21
21
|
|
22
|
+
context "valid token but internal error" do
|
23
|
+
it 'raises an error' do
|
24
|
+
|
25
|
+
expect{
|
26
|
+
VCR.use_cassette "flows/internal_error" do
|
27
|
+
@flows = user.flows
|
28
|
+
end
|
29
|
+
}.to raise_error(Lifen::Error, "Error 500, Internal server error (trace ID: 2e2eac3a7e3fa2)")
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'raises an error (without trace ID)' do
|
33
|
+
expect{
|
34
|
+
VCR.use_cassette "flows/internal_error_without_trace_id" do
|
35
|
+
@flows = user.flows
|
36
|
+
end
|
37
|
+
}.to raise_error(Lifen::Error, "Error 500, Internal server error (trace ID: unknown)")
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
22
42
|
context "valid token" do
|
23
43
|
|
24
44
|
before(:each) do
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lifen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Etienne Depaulis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-11-
|
11
|
+
date: 2016-11-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -157,6 +157,8 @@ files:
|
|
157
157
|
- spec/cassettes/flows/create.yml
|
158
158
|
- spec/cassettes/flows/detach_users/valid.yml
|
159
159
|
- spec/cassettes/flows/detach_users/valid_again.yml
|
160
|
+
- spec/cassettes/flows/internal_error.yml
|
161
|
+
- spec/cassettes/flows/internal_error_without_trace_id.yml
|
160
162
|
- spec/cassettes/flows/invalid_token.yml
|
161
163
|
- spec/cassettes/flows/valid_token.yml
|
162
164
|
- spec/cassettes/users/create/existing_user.yml
|
@@ -201,6 +203,8 @@ test_files:
|
|
201
203
|
- spec/cassettes/flows/create.yml
|
202
204
|
- spec/cassettes/flows/detach_users/valid.yml
|
203
205
|
- spec/cassettes/flows/detach_users/valid_again.yml
|
206
|
+
- spec/cassettes/flows/internal_error.yml
|
207
|
+
- spec/cassettes/flows/internal_error_without_trace_id.yml
|
204
208
|
- spec/cassettes/flows/invalid_token.yml
|
205
209
|
- spec/cassettes/flows/valid_token.yml
|
206
210
|
- spec/cassettes/users/create/existing_user.yml
|