lifen 1.6.4 → 1.6.5
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/CHANGELOG.md +5 -1
- data/Gemfile.lock +1 -1
- data/README.md +7 -0
- data/lib/lifen/user.rb +21 -0
- data/lib/lifen/version.rb +1 -1
- data/spec/cassettes/users/create_channel/valid_attributes.yml +70 -0
- data/spec/users_spec.rb +15 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0f7482b071f425af6016a9c130d10f6bb02fa600
|
4
|
+
data.tar.gz: 3852ce021bd7fbafef57d93259aef0f4b175925a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7efdc2fc2ccac4672b22535a9f432f2de3c1e83157e271f4404afa5a68eef3c7f8ca5a75c4608916f3455b5cb0d1cc5b6646f71ea7503ce47f226ec22134405c
|
7
|
+
data.tar.gz: 3c6e77819cd7fe0fe6e6a85ffb088d11562609bb092660850857a4de9f4bf08ff1569a266b3e0d4c00eac633101b18610b9b4c3121de074bbe73b78033194bf9
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -142,6 +142,13 @@ request = Lifen::Communication::Request.new(sender: sender, recipient: recipient
|
|
142
142
|
request.send
|
143
143
|
```
|
144
144
|
|
145
|
+
### Custom Addresses management
|
146
|
+
|
147
|
+
```ruby
|
148
|
+
recipient = Lifen::User.new(uuid: "valid-user-uuid")
|
149
|
+
channel = recipient.create_channel(type: "address", lines: ["39 rue Aboukir"], city: "Paris", postal_code: "75002", country: "France")
|
150
|
+
```
|
151
|
+
|
145
152
|
## Contributing
|
146
153
|
|
147
154
|
1. Fork it
|
data/lib/lifen/user.rb
CHANGED
@@ -138,6 +138,27 @@ module Lifen
|
|
138
138
|
user
|
139
139
|
end
|
140
140
|
|
141
|
+
def create_channel(params)
|
142
|
+
filtered_params = {"resourceType" => "Practitioner"}
|
143
|
+
|
144
|
+
address = {
|
145
|
+
"line": Array(params[:lines]),
|
146
|
+
"city": params[:city],
|
147
|
+
"postalCode": params[:postal_code],
|
148
|
+
"country": params[:country]
|
149
|
+
}
|
150
|
+
|
151
|
+
filtered_params[params[:type]] = address
|
152
|
+
|
153
|
+
json = application_client.post("fhir/Practitioner/#{uuid}/$add-address", filtered_params)
|
154
|
+
|
155
|
+
channel = Communication::Channel.new(uuid: json["issue"][0]["id"], type: params[:type], value: "#{Array(params[:lines])[0]}, #{params[:postal_code]} #{params[:city]}")
|
156
|
+
|
157
|
+
self.channels << channel
|
158
|
+
|
159
|
+
channel
|
160
|
+
end
|
161
|
+
|
141
162
|
private
|
142
163
|
|
143
164
|
def application_client
|
data/lib/lifen/version.rb
CHANGED
@@ -0,0 +1,70 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://develop.lifen.fr/fhir/Practitioner/11e5c85e-9bc0-4c6e-9b29-deb9993a92c0/$add-address
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"resourceType":"Practitioner","address":{"line":["39 rue Aboukir"],"city":"Paris","postalCode":"75002","country":"France"}}'
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.11.0
|
12
|
+
Authorization:
|
13
|
+
- Bearer valid_application_access_token
|
14
|
+
Content-Type:
|
15
|
+
- application/json
|
16
|
+
Accept:
|
17
|
+
- application/json
|
18
|
+
Accept-Encoding:
|
19
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- Apache-Coyote/1.1
|
27
|
+
X-B3-Sampled:
|
28
|
+
- '1'
|
29
|
+
X-B3-Spanid:
|
30
|
+
- ba943922b8381e3
|
31
|
+
X-B3-Traceid:
|
32
|
+
- ba943922b8381e3
|
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
|
+
X-Powered-By:
|
44
|
+
- HAPI FHIR 2.2 REST Server (FHIR Server; FHIR 1.0.2/DSTU2)
|
45
|
+
Content-Type:
|
46
|
+
- application/json+fhir;charset=UTF-8
|
47
|
+
Transfer-Encoding:
|
48
|
+
- chunked
|
49
|
+
Date:
|
50
|
+
- Fri, 10 Mar 2017 09:57:16 GMT
|
51
|
+
Connection:
|
52
|
+
- close
|
53
|
+
Access-Control-Allow-Credentials:
|
54
|
+
- 'true'
|
55
|
+
body:
|
56
|
+
encoding: UTF-8
|
57
|
+
string: |-
|
58
|
+
{
|
59
|
+
"resourceType": "OperationOutcome",
|
60
|
+
"issue": [
|
61
|
+
{
|
62
|
+
"id": "11e70577-f114-5cde-b13b-0242ac110002",
|
63
|
+
"severity": "information",
|
64
|
+
"diagnostics": "Address created"
|
65
|
+
}
|
66
|
+
]
|
67
|
+
}
|
68
|
+
http_version:
|
69
|
+
recorded_at: Fri, 10 Mar 2017 09:57:16 GMT
|
70
|
+
recorded_with: VCR 3.0.3
|
data/spec/users_spec.rb
CHANGED
@@ -259,5 +259,20 @@ describe Lifen::User do
|
|
259
259
|
|
260
260
|
end
|
261
261
|
|
262
|
+
describe ':create_channel' do
|
263
|
+
|
264
|
+
let(:user) { Lifen::User.new(uuid: "11e5c85e-9bc0-4c6e-9b29-deb9993a92c0") }
|
265
|
+
|
266
|
+
it 'creates the channel' do
|
267
|
+
VCR.use_cassette "users/create_channel/valid_attributes" do
|
268
|
+
@channel = user.create_channel(type: "address", lines: ["39 rue d'Aboukir"], city: "Paris", postal_code: "75002", country: "France")
|
269
|
+
end
|
270
|
+
|
271
|
+
expect(@channel.value).to eq "39 rue d'Aboukir, 75002 Paris"
|
272
|
+
expect(@channel.uuid).to eq "11e70577-f114-5cde-b13b-0242ac110002"
|
273
|
+
expect(user.channels.size).to eq 1
|
274
|
+
end
|
275
|
+
end
|
276
|
+
|
262
277
|
|
263
278
|
end
|
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: 1.6.
|
4
|
+
version: 1.6.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: 2017-03-
|
11
|
+
date: 2017-03-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -193,6 +193,7 @@ files:
|
|
193
193
|
- spec/cassettes/users/create/invalid_token.yml
|
194
194
|
- spec/cassettes/users/create/missing_fields.yml
|
195
195
|
- spec/cassettes/users/create/valid_attributes.yml
|
196
|
+
- spec/cassettes/users/create_channel/valid_attributes.yml
|
196
197
|
- spec/cassettes/users/find/existing_uuid.yml
|
197
198
|
- spec/cassettes/users/find/missing_uuid.yml
|
198
199
|
- spec/cassettes/users/find_by_rpps/existing_rpps.yml
|
@@ -257,6 +258,7 @@ test_files:
|
|
257
258
|
- spec/cassettes/users/create/invalid_token.yml
|
258
259
|
- spec/cassettes/users/create/missing_fields.yml
|
259
260
|
- spec/cassettes/users/create/valid_attributes.yml
|
261
|
+
- spec/cassettes/users/create_channel/valid_attributes.yml
|
260
262
|
- spec/cassettes/users/find/existing_uuid.yml
|
261
263
|
- spec/cassettes/users/find/missing_uuid.yml
|
262
264
|
- spec/cassettes/users/find_by_rpps/existing_rpps.yml
|