onc_certification_g10_test_kit 3.1.0 → 3.3.0
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/expected_manifest.yml +36 -693
- data/lib/inferno/terminology/fhir_package_manager.rb +16 -14
- data/lib/inferno/terminology/loader.rb +25 -3
- data/lib/inferno/terminology/tasks/create_value_set_validators.rb +3 -3
- data/lib/inferno/terminology/tasks/download_umls.rb +3 -2
- data/lib/inferno/terminology/tasks/expand_value_set_to_file.rb +1 -1
- data/lib/inferno/terminology/tasks/run_umls_jar.rb +2 -1
- data/lib/inferno/terminology/tasks/validate_code.rb +1 -1
- data/lib/inferno/terminology/terminology_validation.rb +1 -1
- data/lib/inferno/terminology/validator.rb +9 -9
- data/lib/inferno/terminology/value_set.rb +65 -63
- data/lib/onc_certification_g10_test_kit/authorization_request_builder.rb +2 -2
- data/lib/onc_certification_g10_test_kit/bulk_data_authorization.rb +4 -4
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_stu1.rb +3 -1
- data/lib/onc_certification_g10_test_kit/bulk_data_group_export_validation.rb +7 -4
- data/lib/onc_certification_g10_test_kit/bulk_export_validation_tester.rb +5 -14
- data/lib/onc_certification_g10_test_kit/configuration_checker.rb +23 -1
- data/lib/onc_certification_g10_test_kit/export_kick_off_performer.rb +2 -2
- data/lib/onc_certification_g10_test_kit/g10_options.rb +46 -0
- data/lib/onc_certification_g10_test_kit/incorrectly_permitted_tls_versions_messages_setup_test.rb +34 -0
- data/lib/onc_certification_g10_test_kit/limited_scope_grant_test.rb +3 -1
- data/lib/onc_certification_g10_test_kit/multi_patient_api_stu1.rb +11 -0
- data/lib/onc_certification_g10_test_kit/multi_patient_api_stu2.rb +10 -0
- data/lib/onc_certification_g10_test_kit/onc_program_procedure.yml +1 -0
- data/lib/onc_certification_g10_test_kit/patient_scope_test.rb +25 -0
- data/lib/onc_certification_g10_test_kit/profile_selector.rb +33 -25
- data/lib/onc_certification_g10_test_kit/resource_access_test.rb +1 -2
- data/lib/onc_certification_g10_test_kit/restricted_resource_type_access_group.rb +2 -2
- data/lib/onc_certification_g10_test_kit/short_id_manager.rb +46 -0
- data/lib/onc_certification_g10_test_kit/short_id_map.yml +1538 -0
- data/lib/onc_certification_g10_test_kit/single_patient_api_group.rb +4 -0
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_4_api_group.rb +4 -0
- data/lib/onc_certification_g10_test_kit/single_patient_us_core_5_api_group.rb +4 -0
- data/lib/onc_certification_g10_test_kit/smart_app_launch_invalid_aud_group.rb +2 -2
- data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group.rb +27 -4
- data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group_stu2.rb +27 -4
- data/lib/onc_certification_g10_test_kit/smart_ehr_practitioner_app_group.rb +58 -7
- data/lib/onc_certification_g10_test_kit/smart_invalid_pkce_group.rb +1 -1
- data/lib/onc_certification_g10_test_kit/smart_invalid_token_group.rb +1 -1
- data/lib/onc_certification_g10_test_kit/smart_invalid_token_group_stu2.rb +1 -1
- data/lib/onc_certification_g10_test_kit/smart_limited_app_group.rb +3 -2
- data/lib/onc_certification_g10_test_kit/smart_scopes_test.rb +4 -2
- data/lib/onc_certification_g10_test_kit/smart_standalone_patient_app_group.rb +57 -6
- data/lib/onc_certification_g10_test_kit/tasks/test_procedure.rb +1 -1
- data/lib/onc_certification_g10_test_kit/terminology_binding_validator.rb +1 -1
- data/lib/onc_certification_g10_test_kit/unrestricted_resource_type_access_group.rb +7 -4
- data/lib/onc_certification_g10_test_kit/version.rb +1 -1
- data/lib/onc_certification_g10_test_kit/visual_inspection_and_attestations_group.rb +52 -2
- data/lib/onc_certification_g10_test_kit/well_known_capabilities_test.rb +3 -1
- data/lib/onc_certification_g10_test_kit.rb +41 -23
- metadata +22 -17
@@ -1,5 +1,7 @@
|
|
1
1
|
module ONCCertificationG10TestKit
|
2
2
|
class SMARTWellKnownCapabilitiesTest < Inferno::Test
|
3
|
+
include G10Options
|
4
|
+
|
3
5
|
title 'Well-known configuration declares support for required capabilities'
|
4
6
|
description %(
|
5
7
|
A SMART on FHIR server SHALL convey its capabilities to app developers
|
@@ -21,7 +23,7 @@ module ONCCertificationG10TestKit
|
|
21
23
|
|
22
24
|
required_capabilities = config.options[:required_capabilities] || []
|
23
25
|
|
24
|
-
if
|
26
|
+
if using_us_core_5? && required_capabilities.include?('launch-ehr')
|
25
27
|
required_capabilities += ['context-ehr-encounter']
|
26
28
|
end
|
27
29
|
|
@@ -6,6 +6,7 @@ require_relative 'onc_certification_g10_test_kit/configuration_checker'
|
|
6
6
|
require_relative 'onc_certification_g10_test_kit/version'
|
7
7
|
|
8
8
|
require_relative 'onc_certification_g10_test_kit/feature'
|
9
|
+
require_relative 'onc_certification_g10_test_kit/g10_options'
|
9
10
|
require_relative 'onc_certification_g10_test_kit/single_patient_api_group'
|
10
11
|
require_relative 'onc_certification_g10_test_kit/single_patient_us_core_4_api_group'
|
11
12
|
require_relative 'onc_certification_g10_test_kit/single_patient_us_core_5_api_group'
|
@@ -26,6 +27,7 @@ require_relative 'onc_certification_g10_test_kit/terminology_binding_validator'
|
|
26
27
|
require_relative 'onc_certification_g10_test_kit/token_revocation_group'
|
27
28
|
require_relative 'onc_certification_g10_test_kit/visual_inspection_and_attestations_group'
|
28
29
|
require_relative 'inferno/terminology'
|
30
|
+
require_relative 'onc_certification_g10_test_kit/short_id_manager'
|
29
31
|
|
30
32
|
Inferno::Terminology::Loader.load_validators
|
31
33
|
|
@@ -81,10 +83,23 @@ module ONCCertificationG10TestKit
|
|
81
83
|
end
|
82
84
|
|
83
85
|
perform_additional_validation do |resource, profile_url|
|
84
|
-
|
85
|
-
|
86
|
+
versionless_profile_url, profile_version = profile_url.split('|')
|
87
|
+
profile_version = case profile_version
|
88
|
+
when '4.0.0'
|
89
|
+
'400'
|
90
|
+
when '5.0.1'
|
91
|
+
'501'
|
92
|
+
else
|
93
|
+
# This open-ended else is primarily for Vital Signs profiles in v3.1.1, which are tagged
|
94
|
+
# with the base FHIR version (4.0.1). The profiles were migrated to US Core in later
|
95
|
+
# versions.
|
96
|
+
'311'
|
97
|
+
end
|
98
|
+
|
99
|
+
us_core_suite = USCoreTestKit.const_get("USCoreV#{profile_version}")::USCoreTestSuite
|
100
|
+
metadata = us_core_suite.metadata.find do |metadata_candidate|
|
101
|
+
metadata_candidate.profile_url == versionless_profile_url
|
86
102
|
end
|
87
|
-
|
88
103
|
next if metadata.nil?
|
89
104
|
|
90
105
|
metadata.bindings
|
@@ -123,15 +138,15 @@ module ONCCertificationG10TestKit
|
|
123
138
|
list_options: [
|
124
139
|
{
|
125
140
|
label: 'US Core 3.1.1 / USCDI v1',
|
126
|
-
value:
|
141
|
+
value: G10Options::US_CORE_3
|
127
142
|
},
|
128
143
|
{
|
129
144
|
label: 'US Core 4.0.0 / USCDI v1',
|
130
|
-
value:
|
145
|
+
value: G10Options::US_CORE_4
|
131
146
|
},
|
132
147
|
{
|
133
148
|
label: 'US Core 5.0.1 / USCDI v2',
|
134
|
-
value:
|
149
|
+
value: G10Options::US_CORE_5
|
135
150
|
}
|
136
151
|
]
|
137
152
|
|
@@ -140,11 +155,11 @@ module ONCCertificationG10TestKit
|
|
140
155
|
list_options: [
|
141
156
|
{
|
142
157
|
label: 'SMART App Launch 1.0.0',
|
143
|
-
value:
|
158
|
+
value: G10Options::SMART_1
|
144
159
|
},
|
145
160
|
{
|
146
161
|
label: 'SMART App Launch 2.0.0',
|
147
|
-
value:
|
162
|
+
value: G10Options::SMART_2
|
148
163
|
}
|
149
164
|
]
|
150
165
|
|
@@ -153,17 +168,18 @@ module ONCCertificationG10TestKit
|
|
153
168
|
list_options: [
|
154
169
|
{
|
155
170
|
label: 'Bulk Data 1.0.1',
|
156
|
-
value:
|
171
|
+
value: G10Options::BULK_DATA_1
|
157
172
|
},
|
158
173
|
{
|
159
174
|
label: 'Bulk Data 2.0.0',
|
160
|
-
value:
|
175
|
+
value: G10Options::BULK_DATA_2
|
161
176
|
}
|
162
177
|
]
|
163
178
|
|
164
179
|
config(
|
165
180
|
options: {
|
166
|
-
post_authorization_uri: "#{Inferno::Application['base_url']}/custom/smart_stu2/post_auth"
|
181
|
+
post_authorization_uri: "#{Inferno::Application['base_url']}/custom/smart_stu2/post_auth",
|
182
|
+
incorrectly_permitted_tls_version_message_type: 'warning'
|
167
183
|
}
|
168
184
|
)
|
169
185
|
|
@@ -220,16 +236,16 @@ module ONCCertificationG10TestKit
|
|
220
236
|
group from: 'g10_smart_ehr_practitioner_app'
|
221
237
|
|
222
238
|
group from: 'g10_single_patient_api',
|
223
|
-
required_suite_options:
|
239
|
+
required_suite_options: G10Options::US_CORE_3_REQUIREMENT
|
224
240
|
group from: 'g10_single_patient_us_core_4_api',
|
225
|
-
required_suite_options:
|
241
|
+
required_suite_options: G10Options::US_CORE_4_REQUIREMENT
|
226
242
|
group from: 'g10_single_patient_us_core_5_api',
|
227
|
-
required_suite_options:
|
243
|
+
required_suite_options: G10Options::US_CORE_5_REQUIREMENT
|
228
244
|
|
229
245
|
group from: 'multi_patient_api',
|
230
|
-
required_suite_options:
|
246
|
+
required_suite_options: G10Options::BULK_DATA_1_REQUIREMENT
|
231
247
|
group from: 'multi_patient_api_stu2',
|
232
|
-
required_suite_options:
|
248
|
+
required_suite_options: G10Options::BULK_DATA_2_REQUIREMENT
|
233
249
|
|
234
250
|
group do
|
235
251
|
title 'Additional Tests'
|
@@ -254,10 +270,10 @@ module ONCCertificationG10TestKit
|
|
254
270
|
end
|
255
271
|
|
256
272
|
group from: :g10_public_standalone_launch,
|
257
|
-
required_suite_options:
|
273
|
+
required_suite_options: G10Options::SMART_1_REQUIREMENT,
|
258
274
|
config: { options: { redirect_message_proc: default_redirect_message_proc } }
|
259
275
|
group from: :g10_public_standalone_launch_stu2,
|
260
|
-
required_suite_options:
|
276
|
+
required_suite_options: G10Options::SMART_2_REQUIREMENT,
|
261
277
|
config: { options: { redirect_message_proc: default_redirect_message_proc } }
|
262
278
|
|
263
279
|
group from: :g10_token_revocation
|
@@ -266,21 +282,23 @@ module ONCCertificationG10TestKit
|
|
266
282
|
config: { options: { redirect_message_proc: default_redirect_message_proc } }
|
267
283
|
|
268
284
|
group from: :g10_smart_invalid_token_request,
|
269
|
-
required_suite_options:
|
285
|
+
required_suite_options: G10Options::SMART_1_REQUIREMENT,
|
270
286
|
config: { options: { redirect_message_proc: default_redirect_message_proc } }
|
271
287
|
group from: :g10_smart_invalid_token_request_stu2,
|
272
|
-
required_suite_options:
|
288
|
+
required_suite_options: G10Options::SMART_2_REQUIREMENT,
|
273
289
|
config: { options: { redirect_message_proc: default_redirect_message_proc } }
|
274
290
|
|
275
291
|
group from: :g10_smart_invalid_pkce_code_verifier_group,
|
276
|
-
required_suite_options:
|
292
|
+
required_suite_options: G10Options::SMART_2_REQUIREMENT
|
277
293
|
|
278
294
|
group from: :g10_ehr_patient_launch,
|
279
|
-
required_suite_options:
|
295
|
+
required_suite_options: G10Options::SMART_1_REQUIREMENT
|
280
296
|
group from: :g10_ehr_patient_launch_stu2,
|
281
|
-
required_suite_options:
|
297
|
+
required_suite_options: G10Options::SMART_2_REQUIREMENT
|
282
298
|
|
283
299
|
group from: :g10_visual_inspection_and_attestations
|
284
300
|
end
|
285
301
|
end
|
286
302
|
end
|
303
|
+
|
304
|
+
ONCCertificationG10TestKit::ShortIDManager.assign_short_ids
|
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: 3.
|
4
|
+
version: 3.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen MacVicar
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bloomer
|
@@ -44,28 +44,28 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 0.4.2
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: 0.4.2
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: json-jwt
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 1.
|
61
|
+
version: 1.15.3
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 1.
|
68
|
+
version: 1.15.3
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: mime-types
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -114,42 +114,42 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - '='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 0.
|
117
|
+
version: 0.2.0
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - '='
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 0.
|
124
|
+
version: 0.2.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: tls_test_kit
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - '='
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: 0.
|
131
|
+
version: 0.2.0
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - '='
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: 0.
|
138
|
+
version: 0.2.0
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: us_core_test_kit
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - '='
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: 0.
|
145
|
+
version: 0.4.1
|
146
146
|
type: :runtime
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - '='
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: 0.
|
152
|
+
version: 0.4.1
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: database_cleaner-sequel
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -259,21 +259,26 @@ files:
|
|
259
259
|
- lib/onc_certification_g10_test_kit/encounter_context_test.rb
|
260
260
|
- lib/onc_certification_g10_test_kit/export_kick_off_performer.rb
|
261
261
|
- lib/onc_certification_g10_test_kit/feature.rb
|
262
|
+
- lib/onc_certification_g10_test_kit/g10_options.rb
|
262
263
|
- lib/onc_certification_g10_test_kit/igs/StructureDefinition-bodyheight.json
|
263
264
|
- lib/onc_certification_g10_test_kit/igs/StructureDefinition-bodytemp.json
|
264
265
|
- lib/onc_certification_g10_test_kit/igs/StructureDefinition-bodyweight.json
|
265
266
|
- lib/onc_certification_g10_test_kit/igs/StructureDefinition-bp.json
|
266
267
|
- lib/onc_certification_g10_test_kit/igs/StructureDefinition-heartrate.json
|
267
268
|
- lib/onc_certification_g10_test_kit/igs/StructureDefinition-resprate.json
|
269
|
+
- lib/onc_certification_g10_test_kit/incorrectly_permitted_tls_versions_messages_setup_test.rb
|
268
270
|
- lib/onc_certification_g10_test_kit/limited_scope_grant_test.rb
|
269
271
|
- lib/onc_certification_g10_test_kit/multi_patient_api_stu1.rb
|
270
272
|
- lib/onc_certification_g10_test_kit/multi_patient_api_stu2.rb
|
271
273
|
- lib/onc_certification_g10_test_kit/onc_program_procedure.yml
|
272
274
|
- lib/onc_certification_g10_test_kit/patient_context_test.rb
|
275
|
+
- lib/onc_certification_g10_test_kit/patient_scope_test.rb
|
273
276
|
- lib/onc_certification_g10_test_kit/profile_selector.rb
|
274
277
|
- lib/onc_certification_g10_test_kit/resource_access_test.rb
|
275
278
|
- lib/onc_certification_g10_test_kit/restricted_access_test.rb
|
276
279
|
- lib/onc_certification_g10_test_kit/restricted_resource_type_access_group.rb
|
280
|
+
- lib/onc_certification_g10_test_kit/short_id_manager.rb
|
281
|
+
- lib/onc_certification_g10_test_kit/short_id_map.yml
|
277
282
|
- lib/onc_certification_g10_test_kit/single_patient_api_group.rb
|
278
283
|
- lib/onc_certification_g10_test_kit/single_patient_us_core_4_api_group.rb
|
279
284
|
- lib/onc_certification_g10_test_kit/single_patient_us_core_5_api_group.rb
|
@@ -305,7 +310,7 @@ licenses:
|
|
305
310
|
metadata:
|
306
311
|
homepage_uri: https://github.com/onc-healthit/onc-certification-g10-test-kit
|
307
312
|
source_code_uri: https://github.com/onc-healthit/onc-certification-g10-test-kit
|
308
|
-
post_install_message:
|
313
|
+
post_install_message:
|
309
314
|
rdoc_options: []
|
310
315
|
require_paths:
|
311
316
|
- lib
|
@@ -313,15 +318,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
313
318
|
requirements:
|
314
319
|
- - ">="
|
315
320
|
- !ruby/object:Gem::Version
|
316
|
-
version:
|
321
|
+
version: 3.1.2
|
317
322
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
318
323
|
requirements:
|
319
324
|
- - ">="
|
320
325
|
- !ruby/object:Gem::Version
|
321
326
|
version: '0'
|
322
327
|
requirements: []
|
323
|
-
rubygems_version: 3.
|
324
|
-
signing_key:
|
328
|
+
rubygems_version: 3.3.7
|
329
|
+
signing_key:
|
325
330
|
specification_version: 4
|
326
331
|
summary: ONC Certification (g)(10) Test Kit
|
327
332
|
test_files: []
|