us_core_test_kit 0.9.3 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/config/presets/inferno_reference_server_311_preset.json +66 -0
  3. data/config/presets/inferno_reference_server_400_preset.json +66 -0
  4. data/config/presets/inferno_reference_server_501_preset.json +66 -0
  5. data/config/presets/inferno_reference_server_610_preset.json +66 -0
  6. data/config/presets/inferno_reference_server_700_preset.json +66 -0
  7. data/lib/us_core_test_kit/generated/v3.1.1/us_core_test_suite.rb +18 -1
  8. data/lib/us_core_test_kit/generated/v4.0.0/us_core_test_suite.rb +18 -1
  9. data/lib/us_core_test_kit/generated/v5.0.1/us_core_test_suite.rb +18 -1
  10. data/lib/us_core_test_kit/generated/v6.1.0/us_core_test_suite.rb +18 -1
  11. data/lib/us_core_test_kit/generated/v7.0.0/us_core_test_suite.rb +18 -1
  12. data/lib/us_core_test_kit/generator/templates/granular_scope_group.rb.erb +41 -0
  13. data/lib/us_core_test_kit/generator/templates/granular_scope_read_test.rb.erb +29 -0
  14. data/lib/us_core_test_kit/generator/templates/granular_scope_resource_type_group.rb.erb +19 -0
  15. data/lib/us_core_test_kit/generator/templates/granular_scope_test.rb.erb +38 -0
  16. data/lib/us_core_test_kit/generator/templates/group.rb.erb +24 -0
  17. data/lib/us_core_test_kit/generator/templates/must_support.rb.erb +41 -0
  18. data/lib/us_core_test_kit/generator/templates/practitioner_address_test.rb.erb +32 -0
  19. data/lib/us_core_test_kit/generator/templates/provenance_revinclude_search.rb.erb +50 -0
  20. data/lib/us_core_test_kit/generator/templates/read.rb.erb +26 -0
  21. data/lib/us_core_test_kit/generator/templates/reference_resolution.rb.erb +40 -0
  22. data/lib/us_core_test_kit/generator/templates/search.rb.erb +46 -0
  23. data/lib/us_core_test_kit/generator/templates/suite.rb.erb +160 -0
  24. data/lib/us_core_test_kit/generator/templates/validation.rb.erb +31 -0
  25. data/lib/us_core_test_kit/igs/README.md +21 -0
  26. data/lib/us_core_test_kit/metadata.rb +70 -0
  27. data/lib/us_core_test_kit/reference_resolution_test.rb +1 -16
  28. data/lib/us_core_test_kit/version.rb +2 -1
  29. data/lib/us_core_test_kit.rb +1 -0
  30. metadata +31 -10
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 640b258b3230fd4c3061922d8e70fb0c795b6723c2327baa4f4f31acb961912c
4
- data.tar.gz: e3746b1b30f6a3fe869b955565875d33ccb82b964cb321da84bf8d23eca15fd2
3
+ metadata.gz: cd2a2b92b210f0b0bda54fb16a511ae955033d2b836f4237db9fd318a7e6415b
4
+ data.tar.gz: 602b0b724d94dded2cc181393de9aea97a941532f841e978ed415a910fc59693
5
5
  SHA512:
6
- metadata.gz: 52d2b138dbc0827306e741de88eda414596d1f2dd388184b911b672251f5d52a0cf0ee826321096c410512db490a0c59bd5c1972e3bbe1b429f84998141898db
7
- data.tar.gz: 9f762ca3869219ea45f76703a7f65cfa02436e9c222c8bbaf5aad16df541030ded6296c8abe04306e40392e36f0ad16a27e0065b4d645c98adc8186ef4a54026
6
+ metadata.gz: '0384ee74913d206fda3fb672690d095cab56be0b92889b94823faa6ccc72f5da95f21b471334c4575d50f6c6f2fa408fd6e7e8244e685cafcb8e29af33e8f5d5'
7
+ data.tar.gz: cc68f24f9a3b3554f9d4b949a273f55ba85691998bc7f92b52fa5dc62a71f2567d0ed5b960ee4daee988b9f0674b83ffade001c6a227647649d0bf3b6563b732
@@ -0,0 +1,66 @@
1
+ {
2
+ "title": "Inferno Reference Server",
3
+ "id": null,
4
+ "test_suite_id": "us_core_v311",
5
+ "inputs": [
6
+ {
7
+ "name": "url",
8
+ "type": "text",
9
+ "title": "FHIR Endpoint",
10
+ "description": "URL of the FHIR endpoint",
11
+ "value": "https://inferno.healthit.gov/reference-server/r4"
12
+ },
13
+ {
14
+ "name": "smart_credentials",
15
+ "type": "oauth_credentials",
16
+ "title": "OAuth Credentials",
17
+ "optional": true,
18
+ "value": "{\"access_token\":\"SAMPLE_TOKEN\"}"
19
+ },
20
+ {
21
+ "name": "standalone_client_id",
22
+ "type": "text",
23
+ "title": "Standalone Client ID",
24
+ "description": "Client ID provided during registration of Inferno as a standalone application",
25
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
26
+ },
27
+ {
28
+ "name": "standalone_client_secret",
29
+ "type": "text",
30
+ "title": "Standalone Client Secret",
31
+ "description": "Client Secret provided during registration of Inferno as a standalone application",
32
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
33
+ },
34
+ {
35
+ "name": "ehr_client_id",
36
+ "type": "text",
37
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
38
+ },
39
+ {
40
+ "name": "ehr_client_secret",
41
+ "type": "text",
42
+ "optional": false,
43
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
44
+ },
45
+ {
46
+ "name": "client_auth_type",
47
+ "type": "text",
48
+ "value": "confidential_symmetric"
49
+ },
50
+ {
51
+ "name": "patient_ids",
52
+ "type": "text",
53
+ "title": "Patient IDs",
54
+ "description": "Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements",
55
+ "value": "85,355"
56
+ },
57
+ {
58
+ "name": "implantable_device_codes",
59
+ "type": "text",
60
+ "title": "Implantable Device Type Code",
61
+ "description": "Enter the code for an Implantable Device type, or multiple codes separated by commas. If blank, Inferno will validate all Device resources against the Implantable Device profile",
62
+ "optional": true,
63
+ "value": null
64
+ }
65
+ ]
66
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "title": "Inferno Reference Server",
3
+ "id": null,
4
+ "test_suite_id": "us_core_v400",
5
+ "inputs": [
6
+ {
7
+ "name": "url",
8
+ "type": "text",
9
+ "title": "FHIR Endpoint",
10
+ "description": "URL of the FHIR endpoint",
11
+ "value": "https://inferno.healthit.gov/reference-server/r4"
12
+ },
13
+ {
14
+ "name": "smart_credentials",
15
+ "type": "oauth_credentials",
16
+ "title": "OAuth Credentials",
17
+ "optional": true,
18
+ "value": "{\"access_token\":\"SAMPLE_TOKEN\"}"
19
+ },
20
+ {
21
+ "name": "standalone_client_id",
22
+ "type": "text",
23
+ "title": "Standalone Client ID",
24
+ "description": "Client ID provided during registration of Inferno as a standalone application",
25
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
26
+ },
27
+ {
28
+ "name": "standalone_client_secret",
29
+ "type": "text",
30
+ "title": "Standalone Client Secret",
31
+ "description": "Client Secret provided during registration of Inferno as a standalone application",
32
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
33
+ },
34
+ {
35
+ "name": "ehr_client_id",
36
+ "type": "text",
37
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
38
+ },
39
+ {
40
+ "name": "ehr_client_secret",
41
+ "type": "text",
42
+ "optional": false,
43
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
44
+ },
45
+ {
46
+ "name": "client_auth_type",
47
+ "type": "text",
48
+ "value": "confidential_symmetric"
49
+ },
50
+ {
51
+ "name": "patient_ids",
52
+ "type": "text",
53
+ "title": "Patient IDs",
54
+ "description": "Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements",
55
+ "value": "85,355"
56
+ },
57
+ {
58
+ "name": "implantable_device_codes",
59
+ "type": "text",
60
+ "title": "Implantable Device Type Code",
61
+ "description": "Enter the code for an Implantable Device type, or multiple codes separated by commas. If blank, Inferno will validate all Device resources against the Implantable Device profile",
62
+ "optional": true,
63
+ "value": null
64
+ }
65
+ ]
66
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "title": "Inferno Reference Server",
3
+ "id": null,
4
+ "test_suite_id": "us_core_v501",
5
+ "inputs": [
6
+ {
7
+ "name": "url",
8
+ "type": "text",
9
+ "title": "FHIR Endpoint",
10
+ "description": "URL of the FHIR endpoint",
11
+ "value": "https://inferno.healthit.gov/reference-server/r4"
12
+ },
13
+ {
14
+ "name": "smart_credentials",
15
+ "type": "oauth_credentials",
16
+ "title": "OAuth Credentials",
17
+ "optional": true,
18
+ "value": "{\"access_token\":\"SAMPLE_TOKEN\"}"
19
+ },
20
+ {
21
+ "name": "standalone_client_id",
22
+ "type": "text",
23
+ "title": "Standalone Client ID",
24
+ "description": "Client ID provided during registration of Inferno as a standalone application",
25
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
26
+ },
27
+ {
28
+ "name": "standalone_client_secret",
29
+ "type": "text",
30
+ "title": "Standalone Client Secret",
31
+ "description": "Client Secret provided during registration of Inferno as a standalone application",
32
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
33
+ },
34
+ {
35
+ "name": "ehr_client_id",
36
+ "type": "text",
37
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
38
+ },
39
+ {
40
+ "name": "ehr_client_secret",
41
+ "type": "text",
42
+ "optional": false,
43
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
44
+ },
45
+ {
46
+ "name": "client_auth_type",
47
+ "type": "text",
48
+ "value": "confidential_symmetric"
49
+ },
50
+ {
51
+ "name": "patient_ids",
52
+ "type": "text",
53
+ "title": "Patient IDs",
54
+ "description": "Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements",
55
+ "value": "85,355"
56
+ },
57
+ {
58
+ "name": "implantable_device_codes",
59
+ "type": "text",
60
+ "title": "Implantable Device Type Code",
61
+ "description": "Enter the code for an Implantable Device type, or multiple codes separated by commas. If blank, Inferno will validate all Device resources against the Implantable Device profile",
62
+ "optional": true,
63
+ "value": null
64
+ }
65
+ ]
66
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "title": "Inferno Reference Server",
3
+ "id": null,
4
+ "test_suite_id": "us_core_v610",
5
+ "inputs": [
6
+ {
7
+ "name": "url",
8
+ "type": "text",
9
+ "title": "FHIR Endpoint",
10
+ "description": "URL of the FHIR endpoint",
11
+ "value": "https://inferno.healthit.gov/reference-server/r4"
12
+ },
13
+ {
14
+ "name": "smart_credentials",
15
+ "type": "oauth_credentials",
16
+ "title": "OAuth Credentials",
17
+ "optional": true,
18
+ "value": "{\"access_token\":\"SAMPLE_TOKEN\"}"
19
+ },
20
+ {
21
+ "name": "standalone_client_id",
22
+ "type": "text",
23
+ "title": "Standalone Client ID",
24
+ "description": "Client ID provided during registration of Inferno as a standalone application",
25
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
26
+ },
27
+ {
28
+ "name": "standalone_client_secret",
29
+ "type": "text",
30
+ "title": "Standalone Client Secret",
31
+ "description": "Client Secret provided during registration of Inferno as a standalone application",
32
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
33
+ },
34
+ {
35
+ "name": "ehr_client_id",
36
+ "type": "text",
37
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
38
+ },
39
+ {
40
+ "name": "ehr_client_secret",
41
+ "type": "text",
42
+ "optional": false,
43
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
44
+ },
45
+ {
46
+ "name": "client_auth_type",
47
+ "type": "text",
48
+ "value": "confidential_symmetric"
49
+ },
50
+ {
51
+ "name": "patient_ids",
52
+ "type": "text",
53
+ "title": "Patient IDs",
54
+ "description": "Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements",
55
+ "value": "85,355"
56
+ },
57
+ {
58
+ "name": "implantable_device_codes",
59
+ "type": "text",
60
+ "title": "Implantable Device Type Code",
61
+ "description": "Enter the code for an Implantable Device type, or multiple codes separated by commas. If blank, Inferno will validate all Device resources against the Implantable Device profile",
62
+ "optional": true,
63
+ "value": null
64
+ }
65
+ ]
66
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "title": "Inferno Reference Server",
3
+ "id": null,
4
+ "test_suite_id": "us_core_v700",
5
+ "inputs": [
6
+ {
7
+ "name": "url",
8
+ "type": "text",
9
+ "title": "FHIR Endpoint",
10
+ "description": "URL of the FHIR endpoint",
11
+ "value": "https://inferno.healthit.gov/reference-server/r4"
12
+ },
13
+ {
14
+ "name": "smart_credentials",
15
+ "type": "oauth_credentials",
16
+ "title": "OAuth Credentials",
17
+ "optional": true,
18
+ "value": "{\"access_token\":\"SAMPLE_TOKEN\"}"
19
+ },
20
+ {
21
+ "name": "standalone_client_id",
22
+ "type": "text",
23
+ "title": "Standalone Client ID",
24
+ "description": "Client ID provided during registration of Inferno as a standalone application",
25
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
26
+ },
27
+ {
28
+ "name": "standalone_client_secret",
29
+ "type": "text",
30
+ "title": "Standalone Client Secret",
31
+ "description": "Client Secret provided during registration of Inferno as a standalone application",
32
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
33
+ },
34
+ {
35
+ "name": "ehr_client_id",
36
+ "type": "text",
37
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_ID"
38
+ },
39
+ {
40
+ "name": "ehr_client_secret",
41
+ "type": "text",
42
+ "optional": false,
43
+ "value": "SAMPLE_CONFIDENTIAL_CLIENT_SECRET"
44
+ },
45
+ {
46
+ "name": "client_auth_type",
47
+ "type": "text",
48
+ "value": "confidential_symmetric"
49
+ },
50
+ {
51
+ "name": "patient_ids",
52
+ "type": "text",
53
+ "title": "Patient IDs",
54
+ "description": "Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements",
55
+ "value": "85,355"
56
+ },
57
+ {
58
+ "name": "implantable_device_codes",
59
+ "type": "text",
60
+ "title": "Implantable Device Type Code",
61
+ "description": "Enter the code for an Implantable Device type, or multiple codes separated by commas. If blank, Inferno will validate all Device resources against the Implantable Device profile",
62
+ "optional": true,
63
+ "value": null
64
+ }
65
+ ]
66
+ }
@@ -55,7 +55,6 @@ module USCoreTestKit
55
55
  the US Core Test Suite and the ONC Certification (g)(10) Standardized
56
56
  API Test Suite.
57
57
  )
58
- version VERSION
59
58
 
60
59
  GENERAL_MESSAGE_FILTERS = [
61
60
  %r{Sub-extension url 'introspect' is not defined by the Extension http://fhir-registry\.smarthealthit\.org/StructureDefinition/oauth-uris},
@@ -166,6 +165,24 @@ module USCoreTestKit
166
165
  group from: :us_core_v311_clinical_notes_guidance
167
166
  group from: :us_core_311_data_absent_reason
168
167
  end
168
+
169
+ links [
170
+ {
171
+ type: 'report_issue',
172
+ label: 'Report Issue',
173
+ url: 'https://github.com/inferno-framework/us-core-test-kit/issues/'
174
+ },
175
+ {
176
+ type: 'source_code',
177
+ label: 'Open Source',
178
+ url: 'https://github.com/inferno-framework/us-core-test-kit/'
179
+ },
180
+ {
181
+ type: 'download',
182
+ label: 'Download',
183
+ url: 'https://github.com/inferno-framework/us-core-test-kit/releases/'
184
+ }
185
+ ]
169
186
  end
170
187
  end
171
188
  end
@@ -57,7 +57,6 @@ module USCoreTestKit
57
57
  the US Core Test Suite and the ONC Certification (g)(10) Standardized
58
58
  API Test Suite.
59
59
  )
60
- version VERSION
61
60
 
62
61
  GENERAL_MESSAGE_FILTERS = [
63
62
  %r{Sub-extension url 'introspect' is not defined by the Extension http://fhir-registry\.smarthealthit\.org/StructureDefinition/oauth-uris},
@@ -170,6 +169,24 @@ module USCoreTestKit
170
169
  group from: :us_core_v400_clinical_notes_guidance
171
170
  group from: :us_core_311_data_absent_reason
172
171
  end
172
+
173
+ links [
174
+ {
175
+ type: 'report_issue',
176
+ label: 'Report Issue',
177
+ url: 'https://github.com/inferno-framework/us-core-test-kit/issues/'
178
+ },
179
+ {
180
+ type: 'source_code',
181
+ label: 'Open Source',
182
+ url: 'https://github.com/inferno-framework/us-core-test-kit/'
183
+ },
184
+ {
185
+ type: 'download',
186
+ label: 'Download',
187
+ url: 'https://github.com/inferno-framework/us-core-test-kit/releases/'
188
+ }
189
+ ]
173
190
  end
174
191
  end
175
192
  end
@@ -67,7 +67,6 @@ module USCoreTestKit
67
67
  the US Core Test Suite and the ONC Certification (g)(10) Standardized
68
68
  API Test Suite.
69
69
  )
70
- version VERSION
71
70
 
72
71
  GENERAL_MESSAGE_FILTERS = [
73
72
  %r{Sub-extension url 'introspect' is not defined by the Extension http://fhir-registry\.smarthealthit\.org/StructureDefinition/oauth-uris},
@@ -190,6 +189,24 @@ module USCoreTestKit
190
189
  group from: :us_core_v400_clinical_notes_guidance
191
190
  group from: :us_core_311_data_absent_reason
192
191
  end
192
+
193
+ links [
194
+ {
195
+ type: 'report_issue',
196
+ label: 'Report Issue',
197
+ url: 'https://github.com/inferno-framework/us-core-test-kit/issues/'
198
+ },
199
+ {
200
+ type: 'source_code',
201
+ label: 'Open Source',
202
+ url: 'https://github.com/inferno-framework/us-core-test-kit/'
203
+ },
204
+ {
205
+ type: 'download',
206
+ label: 'Download',
207
+ url: 'https://github.com/inferno-framework/us-core-test-kit/releases/'
208
+ }
209
+ ]
193
210
  end
194
211
  end
195
212
  end
@@ -74,7 +74,6 @@ module USCoreTestKit
74
74
  the US Core Test Suite and the ONC Certification (g)(10) Standardized
75
75
  API Test Suite.
76
76
  )
77
- version VERSION
78
77
 
79
78
  GENERAL_MESSAGE_FILTERS = [
80
79
  %r{Sub-extension url 'introspect' is not defined by the Extension http://fhir-registry\.smarthealthit\.org/StructureDefinition/oauth-uris},
@@ -220,6 +219,24 @@ module USCoreTestKit
220
219
  id: :us_core_v610_smart_granular_scopes_stu2_2,
221
220
  required_suite_options: USCoreOptions::SMART_2_2_REQUIREMENT
222
221
 
222
+
223
+ links [
224
+ {
225
+ type: 'report_issue',
226
+ label: 'Report Issue',
227
+ url: 'https://github.com/inferno-framework/us-core-test-kit/issues/'
228
+ },
229
+ {
230
+ type: 'source_code',
231
+ label: 'Open Source',
232
+ url: 'https://github.com/inferno-framework/us-core-test-kit/'
233
+ },
234
+ {
235
+ type: 'download',
236
+ label: 'Download',
237
+ url: 'https://github.com/inferno-framework/us-core-test-kit/releases/'
238
+ }
239
+ ]
223
240
  end
224
241
  end
225
242
  end
@@ -80,7 +80,6 @@ module USCoreTestKit
80
80
  the US Core Test Suite and the ONC Certification (g)(10) Standardized
81
81
  API Test Suite.
82
82
  )
83
- version VERSION
84
83
 
85
84
  GENERAL_MESSAGE_FILTERS = [
86
85
  %r{Sub-extension url 'introspect' is not defined by the Extension http://fhir-registry\.smarthealthit\.org/StructureDefinition/oauth-uris},
@@ -232,6 +231,24 @@ module USCoreTestKit
232
231
  id: :us_core_v700_smart_granular_scopes_stu2_2,
233
232
  required_suite_options: USCoreOptions::SMART_2_2_REQUIREMENT
234
233
 
234
+
235
+ links [
236
+ {
237
+ type: 'report_issue',
238
+ label: 'Report Issue',
239
+ url: 'https://github.com/inferno-framework/us-core-test-kit/issues/'
240
+ },
241
+ {
242
+ type: 'source_code',
243
+ label: 'Open Source',
244
+ url: 'https://github.com/inferno-framework/us-core-test-kit/'
245
+ },
246
+ {
247
+ type: 'download',
248
+ label: 'Download',
249
+ url: 'https://github.com/inferno-framework/us-core-test-kit/releases/'
250
+ }
251
+ ]
235
252
  end
236
253
  end
237
254
  end
@@ -0,0 +1,41 @@
1
+ <% group_file_list.each do |file| %>require_relative '<%= file %>'
2
+ <% end %>
3
+ module USCoreTestKit
4
+ module <%= module_name %>
5
+ class SmartGranularScopes<%= group_number %>Group < Inferno::TestGroup
6
+ id :<%= group_id %>
7
+ title 'US Core FHIR API w/Granular Scopes <%= group_number %>'
8
+
9
+ description %(
10
+ <%= description %>
11
+ )
12
+
13
+ input :granular_scopes_<%= group_number %>_credentials,
14
+ title: 'SMART Credentials for Granular Scopes <%= group_number %>',
15
+ type: :oauth_credentials,
16
+ locked: true
17
+
18
+ config(
19
+ inputs: {
20
+ patient_ids: {
21
+ locked: true
22
+ },
23
+ received_scopes: {
24
+ title: 'Received Scopes',
25
+ locked: true
26
+ },
27
+ url: {
28
+ locked: true
29
+ }
30
+ }
31
+ )
32
+
33
+ fhir_client do
34
+ oauth_credentials :granular_scopes_<%= group_number %>_credentials
35
+ url :url
36
+ end
37
+ <% group_id_list.each do |group_id| %>
38
+ group from: :<%= group_id %><% end %>
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,29 @@
1
+ require_relative '../../../../generator/group_metadata'
2
+ require_relative '../../../../granular_scope_read_test'
3
+
4
+ module USCoreTestKit
5
+ module <%= module_name %>
6
+ class <%= class_name %> < Inferno::Test
7
+ include USCoreTestKit::GranularScopeReadTest
8
+
9
+ title 'Server filters results for <%= resource_type %> reads based on granular scopes'
10
+ description %(
11
+ <%= description %>
12
+ )
13
+
14
+ id :<%= test_id %>
15
+
16
+ def resource_type
17
+ '<%= resource_type %>'
18
+ end
19
+
20
+ def self.metadata
21
+ @metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml'), aliases: true))
22
+ end
23
+
24
+ run do
25
+ run_scope_read_test
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,19 @@
1
+ <% test_file_list.each do |file_name| %>require_relative '<%= file_name %>'
2
+ <% end %>
3
+ module USCoreTestKit
4
+ module <%= module_name %>
5
+ class <%= class_name %> < Inferno::TestGroup
6
+ title '<%= title %> Tests'
7
+ short_description '<%= short_description %>'
8
+ description %(
9
+ <%= description %>
10
+ )
11
+
12
+ id :<%= group_id %>
13
+ run_as_group
14
+
15
+ <% test_id_list.each do |id| %>
16
+ test from: :<%= id %><% end %>
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,38 @@
1
+ require_relative '../../../../search_test'
2
+ require_relative '../../../../generator/group_metadata'
3
+ require_relative '../../../../granular_scope_search_test'
4
+
5
+ module USCoreTestKit
6
+ module <%= module_name %>
7
+ class <%= class_name %> < Inferno::Test
8
+ include USCoreTestKit::SearchTest
9
+ include USCoreTestKit::GranularScopeSearchTest
10
+
11
+ title 'Server filters results for <%= resource_type %> search by <%= search_param_name_string %> based on granular scopes'
12
+ description %(
13
+ <%= description %>
14
+ )
15
+
16
+ id :<%= test_id %><% if optional? %>
17
+ optional
18
+ <% end %><% if needs_patient_id? %>
19
+ input :patient_ids,
20
+ title: 'Patient IDs',
21
+ description: 'Comma separated list of patient IDs that in sum contain all MUST SUPPORT elements'
22
+ <% end %>
23
+ def self.properties
24
+ @properties ||= SearchTestProperties.new(
25
+ <%= search_test_properties_string %>
26
+ )
27
+ end
28
+
29
+ def self.metadata
30
+ @metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml'), aliases: true))
31
+ end
32
+
33
+ run do
34
+ run_scope_search_test
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,24 @@
1
+ <% test_file_list.each do |file_name| %>require_relative '<%= file_name %>'
2
+ <% end %>
3
+ module USCoreTestKit
4
+ module <%= module_name %>
5
+ class <%= class_name %> < Inferno::TestGroup
6
+ title '<%= title %> Tests'
7
+ short_description '<%= short_description %>'
8
+ description %(
9
+ <%= description %>
10
+ )
11
+
12
+ id :<%= group_id %>
13
+ run_as_group<% if optional? %>
14
+ optional
15
+ <% end %>
16
+
17
+ def self.metadata
18
+ @metadata ||= Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, '<%= profile_identifier %>', 'metadata.yml'), aliases: true))
19
+ end
20
+ <% test_id_list.each do |id| %>
21
+ test from: :<%= id %><% end %>
22
+ end
23
+ end
24
+ end