onc_certification_g10_test_kit 7.3.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 +36 -18
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:
|
|
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,20 +44,20 @@ dependencies:
|
|
|
44
44
|
requirements:
|
|
45
45
|
- - "~>"
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '1.
|
|
47
|
+
version: '1.2'
|
|
48
48
|
- - ">="
|
|
49
49
|
- !ruby/object:Gem::Version
|
|
50
|
-
version: 1.
|
|
50
|
+
version: 1.2.2
|
|
51
51
|
type: :runtime
|
|
52
52
|
prerelease: false
|
|
53
53
|
version_requirements: !ruby/object:Gem::Requirement
|
|
54
54
|
requirements:
|
|
55
55
|
- - "~>"
|
|
56
56
|
- !ruby/object:Gem::Version
|
|
57
|
-
version: '1.
|
|
57
|
+
version: '1.2'
|
|
58
58
|
- - ">="
|
|
59
59
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: 1.
|
|
60
|
+
version: 1.2.2
|
|
61
61
|
- !ruby/object:Gem::Dependency
|
|
62
62
|
name: json-jwt
|
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -118,44 +118,62 @@ dependencies:
|
|
|
118
118
|
name: smart_app_launch_test_kit
|
|
119
119
|
requirement: !ruby/object:Gem::Requirement
|
|
120
120
|
requirements:
|
|
121
|
-
- -
|
|
121
|
+
- - "~>"
|
|
122
122
|
- !ruby/object:Gem::Version
|
|
123
|
-
version: 1.0
|
|
123
|
+
version: '1.0'
|
|
124
|
+
- - ">="
|
|
125
|
+
- !ruby/object:Gem::Version
|
|
126
|
+
version: 1.0.1
|
|
124
127
|
type: :runtime
|
|
125
128
|
prerelease: false
|
|
126
129
|
version_requirements: !ruby/object:Gem::Requirement
|
|
127
130
|
requirements:
|
|
128
|
-
- -
|
|
131
|
+
- - "~>"
|
|
129
132
|
- !ruby/object:Gem::Version
|
|
130
|
-
version: 1.0
|
|
133
|
+
version: '1.0'
|
|
134
|
+
- - ">="
|
|
135
|
+
- !ruby/object:Gem::Version
|
|
136
|
+
version: 1.0.1
|
|
131
137
|
- !ruby/object:Gem::Dependency
|
|
132
138
|
name: tls_test_kit
|
|
133
139
|
requirement: !ruby/object:Gem::Requirement
|
|
134
140
|
requirements:
|
|
135
|
-
- -
|
|
141
|
+
- - "~>"
|
|
136
142
|
- !ruby/object:Gem::Version
|
|
137
|
-
version: 1.0
|
|
143
|
+
version: '1.0'
|
|
144
|
+
- - ">="
|
|
145
|
+
- !ruby/object:Gem::Version
|
|
146
|
+
version: 1.0.2
|
|
138
147
|
type: :runtime
|
|
139
148
|
prerelease: false
|
|
140
149
|
version_requirements: !ruby/object:Gem::Requirement
|
|
141
150
|
requirements:
|
|
142
|
-
- -
|
|
151
|
+
- - "~>"
|
|
143
152
|
- !ruby/object:Gem::Version
|
|
144
|
-
version: 1.0
|
|
153
|
+
version: '1.0'
|
|
154
|
+
- - ">="
|
|
155
|
+
- !ruby/object:Gem::Version
|
|
156
|
+
version: 1.0.2
|
|
145
157
|
- !ruby/object:Gem::Dependency
|
|
146
158
|
name: us_core_test_kit
|
|
147
159
|
requirement: !ruby/object:Gem::Requirement
|
|
148
160
|
requirements:
|
|
149
|
-
- -
|
|
161
|
+
- - "~>"
|
|
162
|
+
- !ruby/object:Gem::Version
|
|
163
|
+
version: '1.1'
|
|
164
|
+
- - ">="
|
|
150
165
|
- !ruby/object:Gem::Version
|
|
151
|
-
version: 1.1.
|
|
166
|
+
version: 1.1.2
|
|
152
167
|
type: :runtime
|
|
153
168
|
prerelease: false
|
|
154
169
|
version_requirements: !ruby/object:Gem::Requirement
|
|
155
170
|
requirements:
|
|
156
|
-
- -
|
|
171
|
+
- - "~>"
|
|
172
|
+
- !ruby/object:Gem::Version
|
|
173
|
+
version: '1.1'
|
|
174
|
+
- - ">="
|
|
157
175
|
- !ruby/object:Gem::Version
|
|
158
|
-
version: 1.1.
|
|
176
|
+
version: 1.1.2
|
|
159
177
|
description: ONC Certification (g)(10) Standardized API for Patient and Population
|
|
160
178
|
Services Test Kit
|
|
161
179
|
email:
|