roqua-healthy 1.1.2 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e603a289862cc5ed41a951e56e040169cb27f3ad
4
- data.tar.gz: e271603c076b1a9399f812aae6e5717dec953913
3
+ metadata.gz: abe2a3460e88fbddb7d47cb2a8c8376cc7ca8b35
4
+ data.tar.gz: b7b6732d28fc1a0243a167a479c67e2b00791853
5
5
  SHA512:
6
- metadata.gz: d68bf8cd67c0037c49a6538c57b6761aeb00b4908892316f5e25560c7e82a0719d5ed9a61ce1cfbed4c917241e3e709b779b1f96d38ba7afe870f819ea80fcf9
7
- data.tar.gz: fb6e76356ec6015f61ad7d9ba7da752b61e6ac3d4cc39e72f8e9c274946dfdd12418f7037f7799d6ae2dfe7ec0e12f83bed193a6d157fb34cd3bdd728a723a1a
6
+ metadata.gz: 910aaa5a1fa67d2e27628ff59023d0f07bc75d527ae7740a4797c8901c6f5e5bd2402ca0aa26e77048e7b36dd319270b781ed320affbe064379369616790f09e
7
+ data.tar.gz: ffb940fbcf3a9151e27e33871d720ee09adae059aff393a72b9859ef76ea8e91299be2ff3a93b67d6388f401cef050125da89ab2cc5e6eed68c748cae8d55b8b
data/.gitignore CHANGED
@@ -1,3 +1,4 @@
1
+ .bundle
1
2
  .idea
2
3
  .yardoc
3
4
  Gemfile.lock
data/.rubocop.yml CHANGED
@@ -28,4 +28,9 @@ FinalNewline:
28
28
  Enabled: False
29
29
 
30
30
  SignalException:
31
- Enabled: False
31
+ Enabled: False
32
+
33
+ # Gems typically have one file named the-gem-name.rb which can be autorequired by bundler
34
+ FileName:
35
+ Exclude:
36
+ - lib/roqua-healthy.rb
@@ -14,7 +14,7 @@ module Roqua
14
14
  end
15
15
 
16
16
  def street
17
- return nil unless record
17
+ return nil if record.blank? || record.fetch('PID.11.1').blank?
18
18
  record.fetch('PID.11.1').fetch('PID.11.1.1')
19
19
  end
20
20
 
@@ -1,6 +1,6 @@
1
1
  module Roqua
2
2
  module Healthy
3
3
  # healthy version
4
- VERSION = "1.1.2"
4
+ VERSION = "1.1.3"
5
5
  end
6
6
  end
@@ -0,0 +1,355 @@
1
+ <?xml version="1.0"?>
2
+ <HL7Message>
3
+ <MSH>
4
+ <MSH.1>|</MSH.1>
5
+ <MSH.2>^~\&amp;</MSH.2>
6
+ <MSH.3>
7
+ <MSH.3.1>CDIS</MSH.3.1>
8
+ </MSH.3>
9
+ <MSH.4>
10
+ <MSH.4.1>UMCG</MSH.4.1>
11
+ </MSH.4>
12
+ <MSH.5>
13
+ <MSH.5.1>ROQUA</MSH.5.1>
14
+ </MSH.5>
15
+ <MSH.6>
16
+ <MSH.6.1>RGOC</MSH.6.1>
17
+ </MSH.6>
18
+ <MSH.7>
19
+ <MSH.7.1>201404041410</MSH.7.1>
20
+ </MSH.7>
21
+ <MSH.8/>
22
+ <MSH.9>
23
+ <MSH.9.1>ADR</MSH.9.1>
24
+ <MSH.9.2>A19</MSH.9.2>
25
+ </MSH.9>
26
+ <MSH.10>
27
+ <MSH.10.1>fffffffffff</MSH.10.1>
28
+ </MSH.10>
29
+ <MSH.11>
30
+ <MSH.11.1>P</MSH.11.1>
31
+ </MSH.11>
32
+ <MSH.12>
33
+ <MSH.12.1>2.4</MSH.12.1>
34
+ </MSH.12>
35
+ <MSH.13/>
36
+ <MSH.14/>
37
+ <MSH.15>
38
+ <MSH.15.1>NE</MSH.15.1>
39
+ </MSH.15>
40
+ </MSH>
41
+ <MSA>
42
+ <MSA.1>
43
+ <MSA.1.1>AA</MSA.1.1>
44
+ </MSA.1>
45
+ <MSA.2>
46
+ <MSA.2.1>fffffffffff</MSA.2.1>
47
+ </MSA.2>
48
+ </MSA>
49
+ <QRD>
50
+ <QRD.1>
51
+ <QRD.1.1>20140404</QRD.1.1>
52
+ </QRD.1>
53
+ <QRD.2>
54
+ <QRD.2.1>R</QRD.2.1>
55
+ </QRD.2>
56
+ <QRD.3>
57
+ <QRD.3.1>I</QRD.3.1>
58
+ </QRD.3>
59
+ <QRD.4>
60
+ <QRD.4.1>fffffffffff</QRD.4.1>
61
+ </QRD.4>
62
+ <QRD.5/>
63
+ <QRD.6/>
64
+ <QRD.7>
65
+ <QRD.7.1>1</QRD.7.1>
66
+ <QRD.7.2>RD</QRD.7.2>
67
+ </QRD.7>
68
+ <QRD.8>
69
+ <QRD.8.1>1234</QRD.8.1>
70
+ </QRD.8>
71
+ <QRD.9>
72
+ <QRD.9.1>DEM</QRD.9.1>
73
+ </QRD.9>
74
+ </QRD>
75
+ <PID>
76
+ <PID.1>
77
+ <PID.1.1>1</PID.1.1>
78
+ </PID.1>
79
+ <PID.2/>
80
+ <PID.3>
81
+ <PID.3.1>1234</PID.3.1>
82
+ <PID.3.2/>
83
+ <PID.3.3/>
84
+ <PID.3.4/>
85
+ <PID.3.5>PI</PID.3.5>
86
+ </PID.3>
87
+ <PID.3>
88
+ <PID.3.1>""</PID.3.1>
89
+ <PID.3.2/>
90
+ <PID.3.3/>
91
+ <PID.3.4/>
92
+ <PID.3.5>NNNLD</PID.3.5>
93
+ </PID.3>
94
+ <PID.3>
95
+ <PID.3.1>""</PID.3.1>
96
+ <PID.3.2/>
97
+ <PID.3.3/>
98
+ <PID.3.4>GIRO</PID.3.4>
99
+ <PID.3.5>BA</PID.3.5>
100
+ </PID.3>
101
+ <PID.3>
102
+ <PID.3.1>""</PID.3.1>
103
+ <PID.3.2/>
104
+ <PID.3.3/>
105
+ <PID.3.4>BANK</PID.3.4>
106
+ <PID.3.5>BA</PID.3.5>
107
+ </PID.3>
108
+ <PID.4/>
109
+ <PID.5>
110
+ <PID.5.1>
111
+ <PID.5.1.1>Tester</PID.5.1.1>
112
+ <PID.5.1.2/>
113
+ <PID.5.1.3>Test</PID.5.1.3>
114
+ <PID.5.1.4/>
115
+ <PID.5.1.5>""</PID.5.1.5>
116
+ </PID.5.1>
117
+ <PID.5.2>T.</PID.5.2>
118
+ <PID.5.3>T.</PID.5.3>
119
+ <PID.5.4/>
120
+ <PID.5.5/>
121
+ <PID.5.6/>
122
+ <PID.5.7>L</PID.5.7>
123
+ </PID.5>
124
+ <PID.6/>
125
+ <PID.7>
126
+ <PID.7.1>19900101</PID.7.1>
127
+ </PID.7>
128
+ <PID.8>
129
+ <PID.8.1>M</PID.8.1>
130
+ </PID.8>
131
+ <PID.9/>
132
+ <PID.10/>
133
+ <PID.11>
134
+ <PID.11.1> </PID.11.1>
135
+ <PID.11.2/>
136
+ <PID.11.3/>
137
+ <PID.11.4>""</PID.11.4>
138
+ <PID.11.5/>
139
+ <PID.11.6>""</PID.11.6>
140
+ <PID.11.7>M</PID.11.7>
141
+ </PID.11>
142
+ <PID.12/>
143
+ <PID.13/>
144
+ <PID.14>
145
+ <PID.14.1>""</PID.14.1>
146
+ </PID.14>
147
+ <PID.15/>
148
+ <PID.16>
149
+ <PID.16.1>U</PID.16.1>
150
+ </PID.16>
151
+ <PID.17/>
152
+ <PID.18/>
153
+ <PID.19/>
154
+ <PID.20/>
155
+ <PID.21/>
156
+ <PID.22/>
157
+ <PID.23>
158
+ <PID.23.1>""</PID.23.1>
159
+ </PID.23>
160
+ <PID.24>
161
+ <PID.24.1>N</PID.24.1>
162
+ </PID.24>
163
+ <PID.25/>
164
+ <PID.26/>
165
+ <PID.27/>
166
+ <PID.28/>
167
+ <PID.29>
168
+ <PID.29.1>""</PID.29.1>
169
+ </PID.29>
170
+ <PID.30>
171
+ <PID.30.1>N</PID.30.1>
172
+ </PID.30>
173
+ </PID>
174
+ <ROL>
175
+ <ROL.1/>
176
+ <ROL.2>
177
+ <ROL.2.1>UP</ROL.2.1>
178
+ </ROL.2>
179
+ <ROL.3>
180
+ <ROL.3.1>33333333</ROL.3.1>
181
+ <ROL.3.2/>
182
+ <ROL.3.3>VZ</ROL.3.3>
183
+ <ROL.3.4>166</ROL.3.4>
184
+ <ROL.3.5/>
185
+ <ROL.3.6>TH3</ROL.3.6>
186
+ </ROL.3>
187
+ <ROL.4>
188
+ <ROL.4.1>33333333</ROL.4.1>
189
+ <ROL.4.2>Hophop</ROL.4.2>
190
+ </ROL.4>
191
+ <ROL.5/>
192
+ <ROL.6/>
193
+ <ROL.7/>
194
+ <ROL.8/>
195
+ <ROL.9>
196
+ <ROL.9.1>ZV</ROL.9.1>
197
+ </ROL.9>
198
+ <ROL.10/>
199
+ <ROL.11>
200
+ <ROL.11.1/>
201
+ <ROL.11.2/>
202
+ <ROL.11.3>Onbekend</ROL.11.3>
203
+ </ROL.11>
204
+ </ROL>
205
+ <PV1>
206
+ <PV1.1/>
207
+ <PV1.2>
208
+ <PV1.2.1>I</PV1.2.1>
209
+ </PV1.2>
210
+ <PV1.3>
211
+ <PV1.3.1>PSI2</PV1.3.1>
212
+ </PV1.3>
213
+ <PV1.4>
214
+ <PV1.4.1>1</PV1.4.1>
215
+ </PV1.4>
216
+ <PV1.5/>
217
+ <PV1.6/>
218
+ <PV1.7>
219
+ <PV1.7.1>PSI</PV1.7.1>
220
+ </PV1.7>
221
+ <PV1.8/>
222
+ <PV1.9/>
223
+ <PV1.10>
224
+ <PV1.10.1>PSI</PV1.10.1>
225
+ </PV1.10>
226
+ <PV1.11/>
227
+ <PV1.12/>
228
+ <PV1.13/>
229
+ <PV1.14/>
230
+ <PV1.15/>
231
+ <PV1.16/>
232
+ <PV1.17/>
233
+ <PV1.18/>
234
+ <PV1.19>
235
+ <PV1.19.1>00112233</PV1.19.1>
236
+ </PV1.19>
237
+ <PV1.20>
238
+ <PV1.20.1>PV</PV1.20.1>
239
+ </PV1.20>
240
+ <PV1.21>
241
+ <PV1.21.1>PV</PV1.21.1>
242
+ </PV1.21>
243
+ <PV1.22/>
244
+ <PV1.23/>
245
+ <PV1.24/>
246
+ <PV1.25/>
247
+ <PV1.26/>
248
+ <PV1.27/>
249
+ <PV1.28/>
250
+ <PV1.29/>
251
+ <PV1.30/>
252
+ <PV1.31/>
253
+ <PV1.32/>
254
+ <PV1.33/>
255
+ <PV1.34/>
256
+ <PV1.35/>
257
+ <PV1.36>
258
+ <PV1.36.1>""</PV1.36.1>
259
+ </PV1.36>
260
+ <PV1.37>
261
+ <PV1.37.1>""</PV1.37.1>
262
+ </PV1.37>
263
+ <PV1.38/>
264
+ <PV1.39/>
265
+ <PV1.40/>
266
+ <PV1.41/>
267
+ <PV1.42/>
268
+ <PV1.43/>
269
+ <PV1.44>
270
+ <PV1.44.1>201404032200</PV1.44.1>
271
+ </PV1.44>
272
+ </PV1>
273
+ <ROL>
274
+ <ROL.1/>
275
+ <ROL.2>
276
+ <ROL.2.1>UP</ROL.2.1>
277
+ </ROL.2>
278
+ <ROL.3>
279
+ <ROL.3.1>CP</ROL.3.1>
280
+ </ROL.3>
281
+ <ROL.4>
282
+ <ROL.4.1>""</ROL.4.1>
283
+ </ROL.4>
284
+ </ROL>
285
+ <IN1>
286
+ <IN1.1>
287
+ <IN1.1.1>1</IN1.1.1>
288
+ </IN1.1>
289
+ <IN1.2>
290
+ <IN1.2.1>""</IN1.2.1>
291
+ </IN1.2>
292
+ <IN1.3>
293
+ <IN1.3.1>ONBBV</IN1.3.1>
294
+ </IN1.3>
295
+ <IN1.4>
296
+ <IN1.4.1>ONBEKENDE BASISVERZEKERAAR</IN1.4.1>
297
+ </IN1.4>
298
+ <IN1.5>
299
+ <IN1.5.1>Hanze 133</IN1.5.1>
300
+ <IN1.5.2/>
301
+ <IN1.5.3>Groningen</IN1.5.3>
302
+ <IN1.5.4/>
303
+ <IN1.5.5>9711XX</IN1.5.5>
304
+ </IN1.5>
305
+ <IN1.6/>
306
+ <IN1.7/>
307
+ <IN1.8/>
308
+ <IN1.9/>
309
+ <IN1.10/>
310
+ <IN1.11/>
311
+ <IN1.12>
312
+ <IN1.12.1>20000101</IN1.12.1>
313
+ </IN1.12>
314
+ <IN1.13>
315
+ <IN1.13.1>""</IN1.13.1>
316
+ </IN1.13>
317
+ <IN1.14/>
318
+ <IN1.15>
319
+ <IN1.15.1>Z</IN1.15.1>
320
+ <IN1.15.2>H</IN1.15.2>
321
+ </IN1.15>
322
+ </IN1>
323
+ <IN2>
324
+ <IN2.1/>
325
+ <IN2.2/>
326
+ <IN2.3/>
327
+ <IN2.4/>
328
+ <IN2.5/>
329
+ <IN2.6/>
330
+ <IN2.7/>
331
+ <IN2.8/>
332
+ <IN2.9/>
333
+ <IN2.10/>
334
+ <IN2.11/>
335
+ <IN2.12/>
336
+ <IN2.13/>
337
+ <IN2.14/>
338
+ <IN2.15/>
339
+ <IN2.16/>
340
+ <IN2.17/>
341
+ <IN2.18/>
342
+ <IN2.19/>
343
+ <IN2.20/>
344
+ <IN2.21/>
345
+ <IN2.22/>
346
+ <IN2.23/>
347
+ <IN2.24/>
348
+ <IN2.25/>
349
+ <IN2.26/>
350
+ <IN2.27/>
351
+ <IN2.28>
352
+ <IN2.28.1>3B</IN2.28.1>
353
+ </IN2.28>
354
+ </IN2>
355
+ </HL7Message>
@@ -69,4 +69,27 @@ describe 'Fetching A19 from CDIS' do
69
69
  it { expect(subject[:gender]).to eq('F') }
70
70
  it { expect(subject[:phone_cell]).to be_nil }
71
71
  end
72
+
73
+ describe 'a patient with an empty 11.1 address field' do
74
+ before { load_fixture 'cdis_missing_address', '1234' }
75
+ subject { Roqua::Healthy::A19.fetch('1234') }
76
+
77
+ it { expect(subject[:status]).to eq('SUCCESS') }
78
+ it { expect(subject[:error]).to be_nil }
79
+ it { expect(subject[:source]).to eq('UMCG') }
80
+ it { expect(subject[:identities]).to eq([{ident: "1234", authority: "PI"}]) }
81
+ it { expect(subject[:firstname]).to eq('T.') }
82
+ it { expect(subject[:initials]).to eq('T.') }
83
+ it { expect(subject[:lastname]).to eq('Test') }
84
+ it { expect(subject[:display_name]).to eq(nil) }
85
+ it { expect(subject[:email]).to eq(nil) }
86
+ it { expect(subject[:address_type]).to eq('M') }
87
+ it { expect(subject[:street]).to eq(nil) }
88
+ it { expect(subject[:city]).to eq(nil) }
89
+ it { expect(subject[:zipcode]).to eq(nil) }
90
+ it { expect(subject[:country]).to eq('') }
91
+ it { expect(subject[:birthdate]).to eq('19900101') }
92
+ it { expect(subject[:gender]).to eq('M') }
93
+ it { expect(subject[:phone_cell]).to eq(nil) }
94
+ end
72
95
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roqua-healthy
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marten Veldthuis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-27 00:00:00.000000000 Z
11
+ date: 2014-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -266,6 +266,7 @@ files:
266
266
  - roqua-healthy.gemspec
267
267
  - spec/fixtures/cdis_gerda_geit.xml
268
268
  - spec/fixtures/cdis_jan_fictief.xml
269
+ - spec/fixtures/cdis_missing_address.xml
269
270
  - spec/fixtures/cdis_piet_fictief.xml
270
271
  - spec/fixtures/comez_patient.xml
271
272
  - spec/fixtures/medo_patient.xml
@@ -328,6 +329,7 @@ summary: Arranges communication between Mirth and RoQua
328
329
  test_files:
329
330
  - spec/fixtures/cdis_gerda_geit.xml
330
331
  - spec/fixtures/cdis_jan_fictief.xml
332
+ - spec/fixtures/cdis_missing_address.xml
331
333
  - spec/fixtures/cdis_piet_fictief.xml
332
334
  - spec/fixtures/comez_patient.xml
333
335
  - spec/fixtures/medo_patient.xml