onc_certification_g10_test_kit 8.0.0 → 8.0.1
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/inferno/terminology/codesystem.rb +2 -2
- data/lib/inferno/terminology/tasks/process_umls.rb +1 -1
- data/lib/inferno/terminology/tasks/process_umls_translations.rb +1 -1
- data/lib/inferno/terminology/tasks/unzip_umls.rb +1 -1
- data/lib/inferno/terminology/validator.rb +1 -1
- data/lib/inferno/terminology/value_set.rb +2 -2
- data/lib/onc_certification_g10_test_kit/bulk_export_validation_tester.rb +2 -2
- data/lib/onc_certification_g10_test_kit/resource_access_test.rb +2 -2
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_6_api_group.rb +1 -1
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_7_api_group.rb +1 -1
- data/lib/onc_certification_g10_test_kit/terminology_binding_validator.rb +1 -1
- data/lib/onc_certification_g10_test_kit/version.rb +2 -2
- metadata +40 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '0911a65c9e5a4db00ad78d619126fa2f1f2cfbb39a77eaffe6c0f9e55271d2c3'
|
|
4
|
+
data.tar.gz: 73f9a4b127d92964e6441b56002716d56a0d75a5283da7ca239eaffbbab94f8c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2c9f8ba2a6fb36e9f124a3e21e63c9c0b153cb893555212bc936ce57e2aaf1915be492e5a13c0b9167b97e2aaa762810304fb6d5e64ee027ebb8ccdd606b6dc6
|
|
7
|
+
data.tar.gz: 57e75dc07fed6d87aa0ca9b1e363befaabdebddc0bc1adc1514695fc8cc533970e73b2429b5970a8224215fe7af2830c9d2792778b02f60ae4ecb9a2ffba32d8
|
|
@@ -30,14 +30,14 @@ module Inferno
|
|
|
30
30
|
end
|
|
31
31
|
end
|
|
32
32
|
|
|
33
|
-
def
|
|
33
|
+
def concept_filter?(filter)
|
|
34
34
|
(filter.op == 'is-a') && (codesystem_model.hierarchyMeaning == 'is-a') && (filter.property == 'concept')
|
|
35
35
|
end
|
|
36
36
|
|
|
37
37
|
def filter_codes(filter = nil)
|
|
38
38
|
if filter.nil?
|
|
39
39
|
all_codes_in_concept(codesystem_model.concept)
|
|
40
|
-
elsif
|
|
40
|
+
elsif concept_filter? filter
|
|
41
41
|
parent_concept = find_concept(filter.value)
|
|
42
42
|
all_codes_in_concept([parent_concept])
|
|
43
43
|
else
|
|
@@ -22,7 +22,7 @@ module Inferno
|
|
|
22
22
|
if input_file
|
|
23
23
|
start = Time.now
|
|
24
24
|
output_filename = File.join(versioned_temp_dir, 'terminology_umls.txt')
|
|
25
|
-
output = File.open(output_filename, 'w:UTF-8')
|
|
25
|
+
output = File.open(output_filename, 'w:UTF-8') # rubocop:disable Style/FileOpen
|
|
26
26
|
line = 0
|
|
27
27
|
excluded = 0
|
|
28
28
|
excluded_systems = Hash.new(0)
|
|
@@ -14,7 +14,7 @@ module Inferno
|
|
|
14
14
|
if input_file
|
|
15
15
|
start = Time.now
|
|
16
16
|
output_filename = File.join(TEMP_DIR, 'translations_umls.txt')
|
|
17
|
-
output = File.open(output_filename, 'w:UTF-8')
|
|
17
|
+
output = File.open(output_filename, 'w:UTF-8') # rubocop:disable Style/FileOpen
|
|
18
18
|
line = 0
|
|
19
19
|
excluded_systems = Hash.new(0)
|
|
20
20
|
begin
|
|
@@ -30,7 +30,7 @@ module Inferno
|
|
|
30
30
|
Zip::File.open(File.expand_path("#{Dir[wildcard_path][0]}/mmsys.zip")) do |zip_file|
|
|
31
31
|
zip_file.each do |entry|
|
|
32
32
|
Inferno.logger.info "Extracting #{entry.name}"
|
|
33
|
-
f_path = File.join(
|
|
33
|
+
f_path = File.join(Dir[wildcard_path][0].to_s, entry.name)
|
|
34
34
|
FileUtils.mkdir_p(File.dirname(f_path))
|
|
35
35
|
zip_file.extract(entry, f_path) unless File.exist?(f_path)
|
|
36
36
|
end
|
|
@@ -15,7 +15,7 @@ module Inferno
|
|
|
15
15
|
@bloom_filter = metadata[:bloom_filter]
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
def validate(code:, system: nil)
|
|
18
|
+
def validate(code:, system: nil) # rubocop:disable Naming/PredicateMethod
|
|
19
19
|
if system
|
|
20
20
|
raise ProhibitedSystemException, system if TerminologyConfiguration.system_prohibited?(system)
|
|
21
21
|
|
|
@@ -394,7 +394,7 @@ module Inferno
|
|
|
394
394
|
end
|
|
395
395
|
end
|
|
396
396
|
|
|
397
|
-
filter_clause = lambda do |filter|
|
|
397
|
+
filter_clause = lambda do |filter|
|
|
398
398
|
where = +''
|
|
399
399
|
case filter.op
|
|
400
400
|
when 'in'
|
|
@@ -472,7 +472,7 @@ module Inferno
|
|
|
472
472
|
# @return [Set] the filtered codes
|
|
473
473
|
def filter_is_a(system, filter)
|
|
474
474
|
children = {}
|
|
475
|
-
find_children = lambda do |_parent, system|
|
|
475
|
+
find_children = lambda do |_parent, system|
|
|
476
476
|
@db.execute("SELECT c1.code, c2.code
|
|
477
477
|
FROM mrrel r
|
|
478
478
|
JOIN mrconso c1 ON c1.aui=r.aui1
|
|
@@ -14,7 +14,7 @@ module ONCCertificationG10TestKit
|
|
|
14
14
|
MIN_RESOURCE_COUNT = 2
|
|
15
15
|
|
|
16
16
|
# Remove us-core-observation-sexual-orientation from bulk data validation as directed by
|
|
17
|
-
#
|
|
17
|
+
# ONC enforcement discretion issued on March 21, 2025:
|
|
18
18
|
# https://www.healthit.gov/topic/certification-ehrs/enforcement-discretion
|
|
19
19
|
# The enforcement discretion allies to US Core v6 and v7. US Core v5 also inlcude this profile.
|
|
20
20
|
# Since (g)(10) certification test kit does not cover US Core v5, adding profile url to this list
|
|
@@ -179,7 +179,7 @@ module ONCCertificationG10TestKit
|
|
|
179
179
|
end
|
|
180
180
|
|
|
181
181
|
process_headers = proc { |response|
|
|
182
|
-
value =
|
|
182
|
+
value = response[:headers].find { |header| header.name.downcase == 'content-type' }&.value
|
|
183
183
|
unless value&.start_with?('application/fhir+ndjson')
|
|
184
184
|
skip "Content type must have 'application/fhir+ndjson' but found '#{value}'"
|
|
185
185
|
end
|
|
@@ -20,8 +20,8 @@ module ONCCertificationG10TestKit
|
|
|
20
20
|
|
|
21
21
|
def search_params
|
|
22
22
|
@search_params ||=
|
|
23
|
-
resource_group.metadata.searches.first[:names].
|
|
24
|
-
|
|
23
|
+
resource_group.metadata.searches.first[:names].to_h do |name|
|
|
24
|
+
[name, search_param_value(name)]
|
|
25
25
|
end
|
|
26
26
|
end
|
|
27
27
|
|
|
@@ -174,7 +174,7 @@ module ONCCertificationG10TestKit
|
|
|
174
174
|
|
|
175
175
|
next if test_group.optional?
|
|
176
176
|
|
|
177
|
-
# Observation Sexual Orientation is removed as directed by
|
|
177
|
+
# Observation Sexual Orientation is removed as directed by ONC enforcement discretion
|
|
178
178
|
# issued on March 21, 2025:
|
|
179
179
|
# https://www.healthit.gov/topic/certification-ehrs/enforcement-discretion
|
|
180
180
|
next if test_group.id.include?('us_core_v610_observation_sexual_orientation')
|
|
@@ -179,7 +179,7 @@ module ONCCertificationG10TestKit
|
|
|
179
179
|
|
|
180
180
|
next if test_group.optional?
|
|
181
181
|
|
|
182
|
-
# Observation Sexual Orientation is removed as directed by
|
|
182
|
+
# Observation Sexual Orientation is removed as directed by ONC enforcement discretion
|
|
183
183
|
# issued on March 21, 2025:
|
|
184
184
|
# https://www.healthit.gov/topic/certification-ehrs/enforcement-discretion
|
|
185
185
|
next if test_group.id.include?('us_core_v700_observation_sexual_orientation')
|
|
@@ -122,7 +122,7 @@ module ONCCertificationG10TestKit
|
|
|
122
122
|
end
|
|
123
123
|
end
|
|
124
124
|
|
|
125
|
-
def invalid_codeable_concept?(element)
|
|
125
|
+
def invalid_codeable_concept?(element) # rubocop:disable Naming/PredicateMethod
|
|
126
126
|
return unless element.is_a? FHIR::CodeableConcept
|
|
127
127
|
|
|
128
128
|
if binding_definition[:system].present?
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: onc_certification_g10_test_kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 8.0.
|
|
4
|
+
version: 8.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Stephen MacVicar
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-05-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bloomer
|
|
@@ -44,14 +44,20 @@ dependencies:
|
|
|
44
44
|
requirements:
|
|
45
45
|
- - "~>"
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '1.
|
|
47
|
+
version: '1.2'
|
|
48
|
+
- - ">="
|
|
49
|
+
- !ruby/object:Gem::Version
|
|
50
|
+
version: 1.2.2
|
|
48
51
|
type: :runtime
|
|
49
52
|
prerelease: false
|
|
50
53
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
54
|
requirements:
|
|
52
55
|
- - "~>"
|
|
53
56
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '1.
|
|
57
|
+
version: '1.2'
|
|
58
|
+
- - ">="
|
|
59
|
+
- !ruby/object:Gem::Version
|
|
60
|
+
version: 1.2.2
|
|
55
61
|
- !ruby/object:Gem::Dependency
|
|
56
62
|
name: json-jwt
|
|
57
63
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -112,44 +118,62 @@ dependencies:
|
|
|
112
118
|
name: smart_app_launch_test_kit
|
|
113
119
|
requirement: !ruby/object:Gem::Requirement
|
|
114
120
|
requirements:
|
|
115
|
-
- -
|
|
121
|
+
- - "~>"
|
|
116
122
|
- !ruby/object:Gem::Version
|
|
117
|
-
version: 1.0
|
|
123
|
+
version: '1.0'
|
|
124
|
+
- - ">="
|
|
125
|
+
- !ruby/object:Gem::Version
|
|
126
|
+
version: 1.0.1
|
|
118
127
|
type: :runtime
|
|
119
128
|
prerelease: false
|
|
120
129
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
130
|
requirements:
|
|
122
|
-
- -
|
|
131
|
+
- - "~>"
|
|
123
132
|
- !ruby/object:Gem::Version
|
|
124
|
-
version: 1.0
|
|
133
|
+
version: '1.0'
|
|
134
|
+
- - ">="
|
|
135
|
+
- !ruby/object:Gem::Version
|
|
136
|
+
version: 1.0.1
|
|
125
137
|
- !ruby/object:Gem::Dependency
|
|
126
138
|
name: tls_test_kit
|
|
127
139
|
requirement: !ruby/object:Gem::Requirement
|
|
128
140
|
requirements:
|
|
129
|
-
- -
|
|
141
|
+
- - "~>"
|
|
130
142
|
- !ruby/object:Gem::Version
|
|
131
|
-
version: 1.0
|
|
143
|
+
version: '1.0'
|
|
144
|
+
- - ">="
|
|
145
|
+
- !ruby/object:Gem::Version
|
|
146
|
+
version: 1.0.2
|
|
132
147
|
type: :runtime
|
|
133
148
|
prerelease: false
|
|
134
149
|
version_requirements: !ruby/object:Gem::Requirement
|
|
135
150
|
requirements:
|
|
136
|
-
- -
|
|
151
|
+
- - "~>"
|
|
137
152
|
- !ruby/object:Gem::Version
|
|
138
|
-
version: 1.0
|
|
153
|
+
version: '1.0'
|
|
154
|
+
- - ">="
|
|
155
|
+
- !ruby/object:Gem::Version
|
|
156
|
+
version: 1.0.2
|
|
139
157
|
- !ruby/object:Gem::Dependency
|
|
140
158
|
name: us_core_test_kit
|
|
141
159
|
requirement: !ruby/object:Gem::Requirement
|
|
142
160
|
requirements:
|
|
143
|
-
- -
|
|
161
|
+
- - "~>"
|
|
144
162
|
- !ruby/object:Gem::Version
|
|
145
|
-
version: 1.1
|
|
163
|
+
version: '1.1'
|
|
164
|
+
- - ">="
|
|
165
|
+
- !ruby/object:Gem::Version
|
|
166
|
+
version: 1.1.2
|
|
146
167
|
type: :runtime
|
|
147
168
|
prerelease: false
|
|
148
169
|
version_requirements: !ruby/object:Gem::Requirement
|
|
149
170
|
requirements:
|
|
150
|
-
- -
|
|
171
|
+
- - "~>"
|
|
172
|
+
- !ruby/object:Gem::Version
|
|
173
|
+
version: '1.1'
|
|
174
|
+
- - ">="
|
|
151
175
|
- !ruby/object:Gem::Version
|
|
152
|
-
version: 1.1.
|
|
176
|
+
version: 1.1.2
|
|
153
177
|
description: ONC Certification (g)(10) Standardized API for Patient and Population
|
|
154
178
|
Services Test Kit
|
|
155
179
|
email:
|