onc_certification_g10_test_kit 3.4.0 → 3.5.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 98375c6a97ac9a9056303f326b8dbe742b636ce9aec9751d8ece7e9d2cc3850f
4
- data.tar.gz: 63905d2ab2aed1d6ce3beddeb09ea3670885dbf78d5f86628d0dd9efd4efdbd0
3
+ metadata.gz: 86895a228600bf6b7def9bed5d5ec4a1097ecf51ab0894c270329bfbd59ddc7e
4
+ data.tar.gz: c8ddb8549f55dbc1919e8e93464b622bdf26cd5b854ff605658ebb4ecd603267
5
5
  SHA512:
6
- metadata.gz: 023317c28042a98b0b9ed4bce639906668463655082abaefe9e033bf133b76f8dec8bb0b9af7005f0aa65ba0bca5bd00a817e3c88b542eaf72bc17cce0818829
7
- data.tar.gz: d216f8e2193a35a3a433b4ecda391a73c964f2df029d167b225c64c7f91f72d3bbd0ce7cd67833742ac991325634fa0080668a6cea98d5b295cf127832183db9
6
+ metadata.gz: 509654b9a9278a4d6d43665798ede7d41844fbbd35dd4073579f3a7a5b45a1036917f331b3fabb3453e9f7cead391a15cd82d98bc9ef5e618a9ec55b8c2395c1
7
+ data.tar.gz: aeb3ecce391706bb755b16f8af66a95d5cddd934e85d0dd5035280f9eef34955c77800007175ccbb9c6820aebc104e72b49b3e9eaa636992e757a6a7558c125c
@@ -286,10 +286,14 @@ module ONCCertificationG10TestKit
286
286
 
287
287
  include ExportKickOffPerformer
288
288
 
289
+ output :cancelled_polling_url
290
+
289
291
  run do
290
292
  perform_export_kick_off_request
291
293
  assert_response_status(202)
292
294
 
295
+ output cancelled_polling_url: request.response_header('content-location')&.value
296
+
293
297
  delete_export_kick_off_request
294
298
  end
295
299
  end
@@ -26,10 +26,6 @@ module ONCCertificationG10TestKit
26
26
 
27
27
  input :bearer_token, :group_id, :bulk_server_url
28
28
 
29
- http_client :bulk_server do
30
- url :bulk_server_url
31
- end
32
-
33
29
  run do
34
30
  ['application/fhir+ndjson', 'application/ndjson', 'ndjson'].each do |format|
35
31
  perform_export_kick_off_request(params: { _outputFormat: format })
@@ -39,5 +35,34 @@ module ONCCertificationG10TestKit
39
35
  end
40
36
  end
41
37
  end
38
+
39
+ test do
40
+ title 'Bulk Data Server returns a 404 and OperationOutcome for polling requests to cancelled exports'
41
+ description <<~DESCRIPTION
42
+ > Following the delete request, when subsequent requests are made to the
43
+ polling location, the server SHALL return a 404 Not Found error and an
44
+ associated FHIR OperationOutcome in JSON format.
45
+
46
+ http://hl7.org/fhir/uv/bulkdata/STU2/export.html#bulk-data-delete-request
47
+ DESCRIPTION
48
+
49
+ id :bulk_data_poll_cancelled_export
50
+
51
+ input :cancelled_polling_url
52
+
53
+ run do
54
+ skip 'No polling url available' unless cancelled_polling_url.present?
55
+
56
+ get(cancelled_polling_url, headers: { authorization: "Bearer #{bearer_token}", accept: 'application/json' })
57
+
58
+ assert_response_status(404)
59
+
60
+ assert_valid_json(response[:body])
61
+ response_body = JSON.parse(response[:body])
62
+
63
+ assert response_body['resourceType'] == 'OperationOutcome', 'Server did not return an OperationOutcome'
64
+ assert_valid_resource(resource: FHIR::OperationOutcome.new(response_body))
65
+ end
66
+ end
42
67
  end
43
68
  end
@@ -2,7 +2,7 @@ require_relative '../inferno/terminology/tasks/check_built_terminology'
2
2
 
3
3
  module ONCCertificationG10TestKit
4
4
  class ConfigurationChecker
5
- EXPECTED_VALIDATOR_VERSION = '2.2.0'.freeze
5
+ EXPECTED_VALIDATOR_VERSION = '2.2.1'.freeze
6
6
 
7
7
  def configuration_messages
8
8
  validator_version_message + terminology_messages + version_message
@@ -2186,6 +2186,7 @@ procedure:
2186
2186
  inferno_tests:
2187
2187
  - 7.2.07
2188
2188
  - 8.2.07
2189
+ - 8.2.09
2189
2190
  - id: DAT-PAT-13
2190
2191
  SUT: |
2191
2192
  The health IT developer demonstrates the ability of the Health IT
@@ -3,11 +3,15 @@ module ONCCertificationG10TestKit
3
3
  title 'Patient-level scopes were granted'
4
4
  description %(
5
5
  Systems are required to support the `permission-patient` capability as
6
- part of the [Clinician Access for EHR Launch Capability
7
- Set.](http://hl7.org/fhir/smart-app-launch/1.0.0/conformance/index.html#clinician-access-for-ehr-launch)
6
+ part of the Clinician Access for EHR Launch Capability Set.
8
7
 
9
8
  This test verifies that systems are capable of granting patient-level
10
9
  scopes during an EHR Launch.
10
+
11
+ * [Clinician Access for EHR Launch Capability Set STU
12
+ 1](http://hl7.org/fhir/smart-app-launch/1.0.0/conformance/index.html#clinician-access-for-ehr-launch)
13
+ * [Clinician Access for EHR Launch Capability Set STU
14
+ 2](http://hl7.org/fhir/smart-app-launch/STU2/conformance.html#clinician-access-for-ehr-launch)
11
15
  )
12
16
  id :g10_patient_scope
13
17
  input :received_scopes
@@ -1414,6 +1414,7 @@ g10_certification-multi_patient_api_stu2-bulk_data_group_export_stu2-Test05: 8.2
1414
1414
  g10_certification-multi_patient_api_stu2-bulk_data_group_export_stu2-Test06: 8.2.06
1415
1415
  g10_certification-multi_patient_api_stu2-bulk_data_group_export_stu2-Test07: 8.2.07
1416
1416
  g10_certification-multi_patient_api_stu2-bulk_data_group_export_stu2-output_format_in_export_response: 8.2.08
1417
+ g10_certification-multi_patient_api_stu2-bulk_data_group_export_stu2-bulk_data_poll_cancelled_export: 8.2.09
1417
1418
  g10_certification-multi_patient_api_stu2-g10_bulk_group_export_tls_messages_setup: '8.02'
1418
1419
  g10_certification-multi_patient_api_stu2-bulk_data_group_export_validation: '8.3'
1419
1420
  g10_certification-multi_patient_api_stu2-bulk_data_group_export_validation-g10_bulk_file_server_tls_version: 8.3.01
@@ -53,6 +53,30 @@ module ONCCertificationG10TestKit
53
53
 
54
54
  input_order :url, :patient_id, :additional_patient_ids, :implantable_device_codes, :smart_credentials
55
55
 
56
+ config(
57
+ options: {
58
+ required_resources: [
59
+ 'Patient',
60
+ 'AllergyIntolerance',
61
+ 'CarePlan',
62
+ 'CareTeam',
63
+ 'Condition',
64
+ 'Device',
65
+ 'DiagnosticReport',
66
+ 'DocumentReference',
67
+ 'Goal',
68
+ 'Immunization',
69
+ 'MedicationRequest',
70
+ 'Observation',
71
+ 'Procedure',
72
+ 'Encounter',
73
+ 'Organization',
74
+ 'Practitioner',
75
+ 'Provenance'
76
+ ]
77
+ }
78
+ )
79
+
56
80
  test do
57
81
  id :g10_patient_id_setup
58
82
  title 'Manage patient id list'
@@ -95,6 +119,28 @@ module ONCCertificationG10TestKit
95
119
  group(from: id, exclude_optional: true, config: group_config)
96
120
  end
97
121
 
122
+ groups.first.description %(
123
+ The Capability Statement test verifies a FHIR server's ability support the
124
+ [capabilities
125
+ operation](https://www.hl7.org/fhir/R4/capabilitystatement.html#instance)
126
+ to formally describe features supported by the API as a [Capability
127
+ Statement](https://www.hl7.org/fhir/R4/capabilitystatement.html) resource.
128
+ The capabilities described in the Capability Statement must be consistent with
129
+ the required capabilities of a US Core server. This test also expects that
130
+ APIs state support for all resources types applicable to USCDI v1, as is
131
+ expected by the ONC (g)(10) Standardized API for Patient and Populations
132
+ Services certification criterion.
133
+
134
+ This test sequence accesses the server endpoint at `/metadata` using a
135
+ `GET` request. It parses the Capability Statement and verifies that:
136
+
137
+ * The endpoint is secured by an appropriate cryptographic protocol
138
+ * The resource matches the expected FHIR version defined by the tests
139
+ * The resource is a valid FHIR resource
140
+ * The server claims support for JSON encoding of resources
141
+ * The server claims support for all required USCDI resource types
142
+ )
143
+
98
144
  test from: :g10_incorrectly_permitted_tls_versions_messages_setup
99
145
  end
100
146
  end
@@ -53,6 +53,30 @@ module ONCCertificationG10TestKit
53
53
 
54
54
  input_order :url, :patient_id, :additional_patient_ids, :implantable_device_codes, :smart_credentials
55
55
 
56
+ config(
57
+ options: {
58
+ required_resources: [
59
+ 'Patient',
60
+ 'AllergyIntolerance',
61
+ 'CarePlan',
62
+ 'CareTeam',
63
+ 'Condition',
64
+ 'Device',
65
+ 'DiagnosticReport',
66
+ 'DocumentReference',
67
+ 'Goal',
68
+ 'Immunization',
69
+ 'MedicationRequest',
70
+ 'Observation',
71
+ 'Procedure',
72
+ 'Encounter',
73
+ 'Organization',
74
+ 'Practitioner',
75
+ 'Provenance'
76
+ ]
77
+ }
78
+ )
79
+
56
80
  test do
57
81
  id :g10_patient_id_setup
58
82
  title 'Manage patient id list'
@@ -95,6 +119,28 @@ module ONCCertificationG10TestKit
95
119
  group(from: id, exclude_optional: true, config: group_config)
96
120
  end
97
121
 
122
+ groups.first.description %(
123
+ The Capability Statement test verifies a FHIR server's ability support the
124
+ [capabilities
125
+ operation](https://www.hl7.org/fhir/R4/capabilitystatement.html#instance)
126
+ to formally describe features supported by the API as a [Capability
127
+ Statement](https://www.hl7.org/fhir/R4/capabilitystatement.html) resource.
128
+ The capabilities described in the Capability Statement must be consistent with
129
+ the required capabilities of a US Core server. This test also expects that
130
+ APIs state support for all resources types applicable to USCDI v1, as is
131
+ expected by the ONC (g)(10) Standardized API for Patient and Populations
132
+ Services certification criterion.
133
+
134
+ This test sequence accesses the server endpoint at `/metadata` using a
135
+ `GET` request. It parses the Capability Statement and verifies that:
136
+
137
+ * The endpoint is secured by an appropriate cryptographic protocol
138
+ * The resource matches the expected FHIR version defined by the tests
139
+ * The resource is a valid FHIR resource
140
+ * The server claims support for JSON encoding of resources
141
+ * The server claims support for all required USCDI resource types
142
+ )
143
+
98
144
  test from: :g10_incorrectly_permitted_tls_versions_messages_setup
99
145
  end
100
146
  end
@@ -53,6 +53,32 @@ module ONCCertificationG10TestKit
53
53
 
54
54
  input_order :url, :patient_id, :additional_patient_ids, :implantable_device_codes, :smart_credentials
55
55
 
56
+ config(
57
+ options: {
58
+ required_resources: [
59
+ 'Patient',
60
+ 'AllergyIntolerance',
61
+ 'CarePlan',
62
+ 'CareTeam',
63
+ 'Condition',
64
+ 'Device',
65
+ 'DiagnosticReport',
66
+ 'DocumentReference',
67
+ 'Encounter',
68
+ 'Goal',
69
+ 'Immunization',
70
+ 'MedicationRequest',
71
+ 'Observation',
72
+ 'Procedure',
73
+ 'ServiceRequest',
74
+ 'Organization',
75
+ 'Practitioner',
76
+ 'Provenance',
77
+ 'RelatedPerson'
78
+ ]
79
+ }
80
+ )
81
+
56
82
  test do
57
83
  id :g10_patient_id_setup
58
84
  title 'Manage patient id list'
@@ -95,6 +121,28 @@ module ONCCertificationG10TestKit
95
121
  group(from: id, exclude_optional: true, config: group_config)
96
122
  end
97
123
 
124
+ groups.first.description %(
125
+ The Capability Statement test verifies a FHIR server's ability support the
126
+ [capabilities
127
+ operation](https://www.hl7.org/fhir/R4/capabilitystatement.html#instance)
128
+ to formally describe features supported by the API as a [Capability
129
+ Statement](https://www.hl7.org/fhir/R4/capabilitystatement.html) resource.
130
+ The capabilities described in the Capability Statement must be consistent with
131
+ the required capabilities of a US Core server. This test also expects that
132
+ APIs state support for all resources types applicable to USCDI v2, as is
133
+ expected by the ONC (g)(10) Standardized API for Patient and Populations
134
+ Services certification criterion.
135
+
136
+ This test sequence accesses the server endpoint at `/metadata` using a
137
+ `GET` request. It parses the Capability Statement and verifies that:
138
+
139
+ * The endpoint is secured by an appropriate cryptographic protocol
140
+ * The resource matches the expected FHIR version defined by the tests
141
+ * The resource is a valid FHIR resource
142
+ * The server claims support for JSON encoding of resources
143
+ * The server claims support for all required USCDI resource types
144
+ )
145
+
98
146
  test from: :g10_incorrectly_permitted_tls_versions_messages_setup
99
147
  end
100
148
  end
@@ -28,7 +28,7 @@ module ONCCertificationG10TestKit
28
28
  For more information on the #{title}
29
29
 
30
30
  * [Apps that launch from the
31
- EHR](http://hl7.org/fhir/smart-app-launch/STU2/scopes-and-launch-context.html#apps-that-launch-from-the-ehr)
31
+ EHR](http://hl7.org/fhir/smart-app-launch/1.0.0/scopes-and-launch-context/index.html#apps-that-launch-from-the-ehr)
32
32
  )
33
33
  id :g10_ehr_patient_launch
34
34
  run_as_group
@@ -241,6 +241,7 @@ module ONCCertificationG10TestKit
241
241
  token: { name: :limited_token }
242
242
  },
243
243
  options: {
244
+ ignore_missing_scopes_check: true,
244
245
  redirect_message_proc: lambda do |auth_url|
245
246
  expected_resource_string =
246
247
  expected_resources
@@ -1,3 +1,3 @@
1
1
  module ONCCertificationG10TestKit
2
- VERSION = '3.4.0'.freeze
2
+ VERSION = '3.5.0'.freeze
3
3
  end
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.0
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen MacVicar
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-11 00:00:00.000000000 Z
11
+ date: 2023-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bloomer
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 0.4.7
47
+ version: 0.4.8
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.4.7
54
+ version: 0.4.8
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: json-jwt
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -114,14 +114,14 @@ dependencies:
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 0.2.1
117
+ version: 0.2.2
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.2.1
124
+ version: 0.2.2
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: tls_test_kit
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -142,14 +142,14 @@ dependencies:
142
142
  requirements:
143
143
  - - '='
144
144
  - !ruby/object:Gem::Version
145
- version: 0.4.4
145
+ version: 0.4.5
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.4.4
152
+ version: 0.4.5
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: database_cleaner-sequel
155
155
  requirement: !ruby/object:Gem::Requirement