onc_certification_g10_test_kit 5.4.1 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/lib/onc_certification_g10_test_kit/base_token_refresh_stu2_group.rb +49 -0
  3. data/lib/onc_certification_g10_test_kit/multi_patient_api_stu1.rb +13 -8
  4. data/lib/onc_certification_g10_test_kit/multi_patient_api_stu2.rb +12 -7
  5. data/lib/onc_certification_g10_test_kit/onc_program_procedure.yml +448 -468
  6. data/lib/onc_certification_g10_test_kit/patient_context_test.rb +3 -2
  7. data/lib/onc_certification_g10_test_kit/short_id_map.yml +227 -17
  8. data/lib/onc_certification_g10_test_kit/single_patient_api_group.rb +6 -1
  9. data/lib/onc_certification_g10_test_kit/single_patient_us_core_4_api_group.rb +6 -1
  10. data/lib/onc_certification_g10_test_kit/single_patient_us_core_6_api_group.rb +8 -5
  11. data/lib/onc_certification_g10_test_kit/smart_app_launch_invalid_aud_group.rb +16 -17
  12. data/lib/onc_certification_g10_test_kit/smart_asymmetric_launch_group.rb +194 -0
  13. data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group.rb +2 -4
  14. data/lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group_stu2.rb +7 -6
  15. data/lib/onc_certification_g10_test_kit/smart_ehr_practitioner_app_group.rb +23 -7
  16. data/lib/onc_certification_g10_test_kit/smart_fine_grained_scopes_group.rb +188 -0
  17. data/lib/onc_certification_g10_test_kit/smart_granular_scope_selection_group.rb +150 -0
  18. data/lib/onc_certification_g10_test_kit/smart_granular_scope_selection_test.rb +53 -0
  19. data/lib/onc_certification_g10_test_kit/smart_invalid_pkce_group.rb +6 -7
  20. data/lib/onc_certification_g10_test_kit/smart_invalid_token_group.rb +8 -10
  21. data/lib/onc_certification_g10_test_kit/smart_invalid_token_group_stu2.rb +7 -9
  22. data/lib/onc_certification_g10_test_kit/smart_limited_app_group.rb +5 -3
  23. data/lib/onc_certification_g10_test_kit/smart_public_standalone_launch_group.rb +14 -16
  24. data/lib/onc_certification_g10_test_kit/smart_public_standalone_launch_group_stu2.rb +28 -4
  25. data/lib/onc_certification_g10_test_kit/smart_scopes_test.rb +34 -25
  26. data/lib/onc_certification_g10_test_kit/smart_standalone_patient_app_group.rb +20 -9
  27. data/lib/onc_certification_g10_test_kit/smart_v1_scopes_group.rb +241 -0
  28. data/lib/onc_certification_g10_test_kit/tasks/generate_matrix.rb +75 -51
  29. data/lib/onc_certification_g10_test_kit/token_introspection_group.rb +110 -0
  30. data/lib/onc_certification_g10_test_kit/token_revocation_group.rb +1 -1
  31. data/lib/onc_certification_g10_test_kit/version.rb +1 -1
  32. data/lib/onc_certification_g10_test_kit/visual_inspection_and_attestations_group.rb +57 -37
  33. data/lib/onc_certification_g10_test_kit.rb +86 -19
  34. metadata +13 -6
@@ -0,0 +1,110 @@
1
+ require 'smart_app_launch/standalone_launch_group'
2
+ require 'smart_app_launch/discovery_stu1_group'
3
+ require 'smart_app_launch/token_introspection_group'
4
+
5
+ require_relative 'g10_options'
6
+
7
+ module ONCCertificationG10TestKit
8
+ class TokenIntrospectionGroup < SMARTAppLaunch::SMARTTokenIntrospectionGroup
9
+ id :g10_token_introspection
10
+
11
+ description <<~DESCRIPTION
12
+
13
+ This scenario verifies the ability of an authorization server to
14
+ perform token introspection in accordance with the [SMART App Launch STU2
15
+ Implementation Guide Section on Token
16
+ Introspection](https://hl7.org/fhir/smart-app-launch/STU2/token-introspection.html).
17
+ Inferno first acts as a registered SMART App Launch client to request and
18
+ receive a valid access token, and then as an authorized resource server that
19
+ queries the authorization server for information about this access token.
20
+
21
+ The system under test must perform the following in order to pass this
22
+ scenario:
23
+ * Issue a new bearer token to Inferno acting as a registered SMART App
24
+ Launch client. The tester has flexibility in deciding what type of SMART
25
+ App Launch client is used (e.g. public or confidential). This is
26
+ redundant to tests earlier in this test suite, but is performed to ensure
27
+ an active token can be introspected.
28
+ * Respond to a token introspection request from Inferno acting as a
29
+ resource server for both valid and invalid tokens. Systems have flexibility
30
+ in how access control for this service is implemented. To account for
31
+ this flexibility, the tester has the ability to add an Authorization
32
+ Header to the request (provided out-of-band of these tests), as well as
33
+ additional Introspect parameters, as allowed by the specification.
34
+
35
+ DESCRIPTION
36
+
37
+ input_instructions <<~INSTRUCTIONS
38
+ If the introspection endpoint is access controlled, testers must enter their own
39
+ HTTP Authorization header for the introspection request. See [RFC 7616 The
40
+ 'Basic' HTTP Authentication
41
+ Scheme](https://datatracker.ietf.org/doc/html/rfc7617) for the most common
42
+ approach that uses client credentials. Testers may also provide any
43
+ additional parameters needed for their authorization server to complete
44
+ the introspection request.
45
+
46
+ **Note:** For both the Authorization header and request parameters, user-input
47
+ values will be sent exactly as entered and therefore the tester must
48
+ URI-encode any appropriate values.
49
+ INSTRUCTIONS
50
+
51
+ run_as_group
52
+
53
+ input :well_known_introspection_url,
54
+ title: 'Token Introspection Endpoint',
55
+ description: <<~DESCRIPTION,
56
+ The complete URL of the token introspection endpoint. This will be
57
+ populated automatically if included in the server's discovery
58
+ endpoint.
59
+ DESCRIPTION
60
+ optional: true
61
+
62
+ input_order :url,
63
+ :well_known_introspection_url,
64
+ :custom_authorization_header,
65
+ :optional_introspection_request_params,
66
+ :standalone_client_id,
67
+ :standalone_client_secret,
68
+ :authorization_method,
69
+ :use_pkce,
70
+ :pkce_code_challenge_method,
71
+ :standalone_requested_scopes,
72
+ :token_introspection_auth_type,
73
+ :client_auth_encryption_method
74
+
75
+ config(
76
+ inputs: {
77
+ client_auth_type: {
78
+ name: :token_introspection_auth_type
79
+ }
80
+ }
81
+ )
82
+
83
+ groups.first.description <<~DESCRIPTION
84
+ These tests are perform discovery and a standalone launch in order to
85
+ receive a new, active access token that will be provided for token
86
+ introspection.
87
+ DESCRIPTION
88
+
89
+ groups[1].description <<~DESCRIPTION
90
+ This group of tests executes the token introspection requests and ensures
91
+ the correct HTTP response is returned but does not validate the contents
92
+ of the token introspection response.
93
+ DESCRIPTION
94
+
95
+ # The token introspection tests are SMART v2 only, so they use v2 discovery
96
+ # and launch groups. g10 needs them for SMART v1 and v2, so this sets the
97
+ # original discovery and launch groups to only appear when using SMART v2,
98
+ # and adds the v1 groups when using v1.
99
+
100
+ groups.first.groups.each do |group|
101
+ group.required_suite_options(G10Options::SMART_2_REQUIREMENT)
102
+ end
103
+
104
+ groups.first.group from: :smart_discovery,
105
+ required_suite_options: G10Options::SMART_1_REQUIREMENT
106
+
107
+ groups.first.group from: :smart_standalone_launch,
108
+ required_suite_options: G10Options::SMART_1_REQUIREMENT
109
+ end
110
+ end
@@ -2,7 +2,7 @@ module ONCCertificationG10TestKit
2
2
  class TokenRevocationGroup < Inferno::TestGroup
3
3
  title 'Token Revocation'
4
4
  description %(
5
- Demonstrate the Health IT module is capable of revoking access granted to
5
+ This scenario verifies the ability of the system to revoke access granted to
6
6
  an application at the direction of a patient. Access to the application
7
7
  must be revoked within one hour of the patient's request.
8
8
  )
@@ -1,3 +1,3 @@
1
1
  module ONCCertificationG10TestKit
2
- VERSION = '5.4.1'.freeze
2
+ VERSION = '6.0.0'.freeze
3
3
  end
@@ -189,43 +189,6 @@ module ONCCertificationG10TestKit
189
189
  end
190
190
  end
191
191
 
192
- test do
193
- title 'Health IT developer demonstrated the ability of the Health IT Module / ' \
194
- 'authorization server to validate token it has issued.'
195
- description %(
196
- Health IT developer demonstrated the ability of the Health IT Module /
197
- authorization server to validate token it has issued
198
- )
199
- id 'Test06'
200
- input :token_validation_support,
201
- title: 'Health IT developer demonstrated the ability of the Health IT Module / authorization server to validate token it has issued.', # rubocop:disable Layout/LineLength
202
- type: 'radio',
203
- default: 'false',
204
- options: {
205
- list_options: [
206
- {
207
- label: 'Yes',
208
- value: 'true'
209
- },
210
- {
211
- label: 'No',
212
- value: 'false'
213
- }
214
- ]
215
- }
216
- input :token_validation_notes,
217
- title: 'Notes, if applicable:',
218
- type: 'textarea',
219
- optional: true
220
-
221
- run do
222
- assert token_validation_support == 'true',
223
- 'Health IT Module did not demonstrate the ability of the Health IT Module / ' \
224
- 'authorization server to validate token it has issued'
225
- pass token_validation_notes if token_validation_notes.present?
226
- end
227
- end
228
-
229
192
  test do
230
193
  title 'Tester verifies that all information is accurate and without omission.'
231
194
  description %(
@@ -646,5 +609,62 @@ module ONCCertificationG10TestKit
646
609
  pass bulk_v2_since_attestation_notes if bulk_v2_since_attestation_notes.present?
647
610
  end
648
611
  end
612
+
613
+ test do
614
+ required_suite_options G10Options::SMART_2_REQUIREMENT.merge(G10Options::US_CORE_6_REQUIREMENT)
615
+ title 'Health IT developer attested that the Health IT Module supports ' \
616
+ 'granting a sub resource scope for Clinical Test Observations.'
617
+
618
+ description <<~DESCRIPTION
619
+ As finalized in the HTI-1 Final Rule (89 FR 1294), Health IT Modules are
620
+ required to support SMART App Launch v2.0.0 "Finer-grained resource
621
+ constraints using search parameters" for the “category” parameter for
622
+ the Condition resource with Condition sub-resources Encounter Diagnosis,
623
+ Problem List, and Health Concern, and the Observation resource with
624
+ Observation sub-resources Clinical Test, Laboratory, Social History,
625
+ SDOH, Survey, and Vital Signs. We defer to the implementation guides
626
+ referenced at § 170.215(b)(1) and § 170.215(c) for specific
627
+ implementation guidance for this requirement. In the context of the US
628
+ Core 6.1.0 implementation guide, the Observation sub-resources of
629
+ Clinical Test and SDOH may have scopes supported as follows:
630
+
631
+ * support for scopes for the Observation sub-resource Clinical Test
632
+ using the "procedure" code from the US Core Clinical Result
633
+ Observation Category value set.
634
+
635
+ * support for scopes for the Observation sub-resource SDOH using the
636
+ "sdoh" code from the US Core Category code system .
637
+ DESCRIPTION
638
+ id :g10_clinical_test_scope_attestation
639
+ input :clinical_test_scope_attestation,
640
+ title: 'Health IT developer attested that the Health IT Module supports ' \
641
+ 'granting a sub resource scope for Clinical Test Observations.',
642
+ type: 'radio',
643
+ default: 'false',
644
+ options: {
645
+ list_options: [
646
+ {
647
+ label: 'Yes',
648
+ value: 'true'
649
+ },
650
+ {
651
+ label: 'No',
652
+ value: 'false'
653
+ }
654
+ ]
655
+ }
656
+ input :clinical_test_scope_attestation_notes,
657
+ title: 'Notes, if applicable:',
658
+ type: 'textarea',
659
+ optional: true
660
+
661
+ run do
662
+ assert clinical_test_scope_attestation == 'true',
663
+ 'Health IT developer did not attest that the Health IT Module supports ' \
664
+ 'granting a sub resource scope for Clinical Test Observations.'
665
+
666
+ pass clinical_test_scope_attestation_notes if clinical_test_scope_attestation_notes.present?
667
+ end
668
+ end
649
669
  end
650
670
  end
@@ -7,26 +7,32 @@ require_relative 'onc_certification_g10_test_kit/version'
7
7
 
8
8
  require_relative 'onc_certification_g10_test_kit/feature'
9
9
  require_relative 'onc_certification_g10_test_kit/g10_options'
10
+ require_relative 'onc_certification_g10_test_kit/multi_patient_api_stu1'
11
+ require_relative 'onc_certification_g10_test_kit/multi_patient_api_stu2'
10
12
  require_relative 'onc_certification_g10_test_kit/single_patient_api_group'
11
13
  require_relative 'onc_certification_g10_test_kit/single_patient_us_core_4_api_group'
12
14
  require_relative 'onc_certification_g10_test_kit/single_patient_us_core_5_api_group'
13
15
  require_relative 'onc_certification_g10_test_kit/single_patient_us_core_6_api_group'
14
16
  require_relative 'onc_certification_g10_test_kit/smart_app_launch_invalid_aud_group'
17
+ require_relative 'onc_certification_g10_test_kit/smart_asymmetric_launch_group'
18
+ require_relative 'onc_certification_g10_test_kit/smart_granular_scope_selection_group'
15
19
  require_relative 'onc_certification_g10_test_kit/smart_invalid_token_group'
16
20
  require_relative 'onc_certification_g10_test_kit/smart_invalid_token_group_stu2'
17
21
  require_relative 'onc_certification_g10_test_kit/smart_invalid_pkce_group'
18
22
  require_relative 'onc_certification_g10_test_kit/smart_limited_app_group'
19
23
  require_relative 'onc_certification_g10_test_kit/smart_standalone_patient_app_group'
20
- require_relative 'onc_certification_g10_test_kit/smart_ehr_practitioner_app_group'
21
24
  require_relative 'onc_certification_g10_test_kit/smart_public_standalone_launch_group'
22
25
  require_relative 'onc_certification_g10_test_kit/smart_public_standalone_launch_group_stu2'
23
26
  require_relative 'onc_certification_g10_test_kit/smart_ehr_patient_launch_group'
24
27
  require_relative 'onc_certification_g10_test_kit/smart_ehr_patient_launch_group_stu2'
25
- require_relative 'onc_certification_g10_test_kit/multi_patient_api_stu1'
26
- require_relative 'onc_certification_g10_test_kit/multi_patient_api_stu2'
28
+ require_relative 'onc_certification_g10_test_kit/smart_ehr_practitioner_app_group'
29
+ require_relative 'onc_certification_g10_test_kit/smart_fine_grained_scopes_group'
30
+ require_relative 'onc_certification_g10_test_kit/smart_v1_scopes_group'
27
31
  require_relative 'onc_certification_g10_test_kit/terminology_binding_validator'
32
+ require_relative 'onc_certification_g10_test_kit/token_introspection_group'
28
33
  require_relative 'onc_certification_g10_test_kit/token_revocation_group'
29
34
  require_relative 'onc_certification_g10_test_kit/visual_inspection_and_attestations_group'
35
+
30
36
  require_relative 'inferno/terminology'
31
37
  require_relative 'onc_certification_g10_test_kit/short_id_manager'
32
38
 
@@ -70,7 +76,8 @@ module ONCCertificationG10TestKit
70
76
  /\A\S+: \S+: The Coding provided \(\S*\) was not found in the value set/,
71
77
  /\A\S+: \S+: A definition for CodeSystem '.*' could not be found, so the code cannot be validated/,
72
78
  /\A\S+: \S+: URL value '.*' does not resolve/,
73
- /\A\S+: \S+: .*\[No server available\]/ # Catch-all for certain errors when TX server is disabled
79
+ /\A\S+: \S+: .*\[No server available\]/, # Catch-all for certain errors when TX server is disabled
80
+ %r{\A\S+: \S+: .*\[Error from http://tx.fhir.org/r4:} # Catch-all for TX server errors that slip through
74
81
  ].freeze
75
82
 
76
83
  def self.setup_validator(us_core_version_requirement) # rubocop:disable Metrics/CyclomaticComplexity
@@ -250,13 +257,37 @@ module ONCCertificationG10TestKit
250
257
  )
251
258
 
252
259
  description %(
253
- The ONC Certification (g)(10) Standardized API Test Kit is a testing tool for
254
- Health Level 7 (HL7®) Fast Healthcare Interoperability Resources (FHIR®)
255
- services seeking to meet the requirements of the Standardized API for
256
- Patient and Population Services criterion § 170.315(g)(10) in the ONC Certification Program.
257
-
258
- To get started, please first register the Inferno client as a SMART App
259
- with the following information:
260
+ The ONC Certification (g)(10) Standardized API Test Suite is a testing
261
+ tool for Health Level 7 (HL7®) Fast Healthcare Interoperability Resources
262
+ (FHIR®) services seeking to meet the requirements of the Standardized API
263
+ for Patient and Population Services criterion § 170.315(g)(10) in the ONC
264
+ Certification Program.
265
+
266
+ This test suite is organized into testing scenarios that in sum cover all
267
+ requirements within the § 170.315(g)(10) certification criterion. The
268
+ scenarios are intended to be run in order during certification, but can
269
+ be run out of order to support testing during development or certification
270
+ preparation. Some scenarios depend on data collected during previous
271
+ scenarios to function. In these cases, the scenario description describes
272
+ these dependencies.
273
+
274
+ The best way to learn about how to use these tests is the
275
+ [(g)(10) Standardized API Test Kit walkthrough](https://github.com/onc-healthit/onc-certification-g10-test-kit/wiki/Walkthrough),
276
+ which demonstrates the tests running against a simulated system.
277
+
278
+ The first three scenarios require the system under test to demonstrate
279
+ basic SMART App Launch functionality. The fourth uses a valid token
280
+ provided during earlier tests to verify support for the Single Patient API
281
+ as described in the criterion. The fifth verifies support for the Multi
282
+ Patient API, including Backend Services for authorization. Not all
283
+ authorization-related requirements are verified in the first three
284
+ scenarios, and the 'Additional Authorization Tests' verify these
285
+ additional requirements. The last scenario contains a list of
286
+ 'attestations' and 'visual inspections' for requirements that could not
287
+ be verified through automated testing.
288
+
289
+ To get started with the first group of scenarios, please first register the
290
+ Inferno client as a SMART App with the following information:
260
291
 
261
292
  * SMART Launch URI: `#{SMARTAppLaunch::AppLaunchTest.config.options[:launch_uri]}`
262
293
  * OAuth Redirect URI: `#{SMARTAppLaunch::AppRedirectTest.config.options[:redirect_uri]}`
@@ -266,7 +297,7 @@ module ONCCertificationG10TestKit
266
297
 
267
298
  * `#{Inferno::Application[:base_url]}/custom/g10_certification/.well-known/jwks.json`
268
299
 
269
- Systems must pass all tests in order to qualify for ONC certification.
300
+ Systems must pass all tests to qualify for ONC certification.
270
301
  )
271
302
 
272
303
  suite_summary %(
@@ -314,14 +345,22 @@ module ONCCertificationG10TestKit
314
345
  required_suite_options: G10Options::BULK_DATA_2_REQUIREMENT
315
346
 
316
347
  group do
317
- title 'Additional Tests'
348
+ title 'Additional Authorization Tests'
318
349
  id 'Group06'
319
350
  description %(
320
- Not all requirements that need to be tested fit within the previous
321
- scenarios. The tests contained in this section addresses remaining
322
- testing requirements. Each of these tests need to be run independently.
323
- Please read the instructions for each in the 'About' section, as they
324
- may require special setup on the part of the tester.
351
+ The (g)(10) Standardized Test Suite attempts to minimize effort required
352
+ by testers by creating scenarios that validate as many requirements as
353
+ possible with just a handful of SMART App Launches. However, not all
354
+ SMART App Launch and (g)(10) Standardized API criterion requirements
355
+ that need to be verified fit within the first few test scenarios in this
356
+ suite.
357
+
358
+ The scenarios contained in this section verify remaining testing
359
+ requirements for the (g)(10) Standardized API criterion relevant to
360
+ the SMART App Launch implementation specification. Each of these scenarios
361
+ need to be run independently. Please read the instructions for each in
362
+ the 'About' section, as they may require special setup on the part of
363
+ the tester.
325
364
  )
326
365
 
327
366
  default_redirect_message_proc = lambda do |auth_url|
@@ -335,6 +374,14 @@ module ONCCertificationG10TestKit
335
374
  )
336
375
  end
337
376
 
377
+ config(
378
+ inputs: {
379
+ client_auth_encryption_method: {
380
+ locked: false
381
+ }
382
+ }
383
+ )
384
+
338
385
  group from: :g10_public_standalone_launch,
339
386
  required_suite_options: G10Options::SMART_1_REQUIREMENT,
340
387
  config: { options: { redirect_message_proc: default_redirect_message_proc } }
@@ -362,8 +409,28 @@ module ONCCertificationG10TestKit
362
409
  group from: :g10_ehr_patient_launch_stu2,
363
410
  required_suite_options: G10Options::SMART_2_REQUIREMENT
364
411
 
365
- group from: :g10_visual_inspection_and_attestations
412
+ group from: :g10_token_introspection
413
+
414
+ group from: :g10_asymmetric_launch,
415
+ required_suite_options: G10Options::SMART_2_REQUIREMENT
416
+
417
+ group from: :g10_smart_v1_scopes,
418
+ required_suite_options: G10Options::SMART_2_REQUIREMENT,
419
+ config: {
420
+ inputs: {
421
+ client_auth_encryption_method: { locked: true }
422
+ }
423
+ }
424
+
425
+ group from: :g10_smart_fine_grained_scopes,
426
+ required_suite_options: G10Options::SMART_2_REQUIREMENT.merge(G10Options::US_CORE_6_REQUIREMENT),
427
+ exclude_optional: true
428
+
429
+ group from: :g10_smart_granular_scope_selection,
430
+ required_suite_options: G10Options::SMART_2_REQUIREMENT.merge(G10Options::US_CORE_6_REQUIREMENT)
366
431
  end
432
+
433
+ group from: :g10_visual_inspection_and_attestations
367
434
  end
368
435
  end
369
436
 
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: 5.4.1
4
+ version: 6.0.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: 2024-06-12 00:00:00.000000000 Z
11
+ date: 2024-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bloomer
@@ -114,14 +114,14 @@ dependencies:
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 0.4.2
117
+ version: 0.4.3
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.4.2
124
+ version: 0.4.3
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.7.1
145
+ version: 0.8.0
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.7.1
152
+ version: 0.8.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: database_cleaner-sequel
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -249,6 +249,7 @@ files:
249
249
  - lib/onc_certification_g10_test_kit.rb
250
250
  - lib/onc_certification_g10_test_kit/authorization_request_builder.rb
251
251
  - lib/onc_certification_g10_test_kit/base_token_refresh_group.rb
252
+ - lib/onc_certification_g10_test_kit/base_token_refresh_stu2_group.rb
252
253
  - lib/onc_certification_g10_test_kit/bulk_data_authorization.rb
253
254
  - lib/onc_certification_g10_test_kit/bulk_data_group_export_cancel_stu1.rb
254
255
  - lib/onc_certification_g10_test_kit/bulk_data_group_export_cancel_stu2.rb
@@ -291,9 +292,13 @@ files:
291
292
  - lib/onc_certification_g10_test_kit/single_patient_us_core_5_api_group.rb
292
293
  - lib/onc_certification_g10_test_kit/single_patient_us_core_6_api_group.rb
293
294
  - lib/onc_certification_g10_test_kit/smart_app_launch_invalid_aud_group.rb
295
+ - lib/onc_certification_g10_test_kit/smart_asymmetric_launch_group.rb
294
296
  - lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group.rb
295
297
  - lib/onc_certification_g10_test_kit/smart_ehr_patient_launch_group_stu2.rb
296
298
  - lib/onc_certification_g10_test_kit/smart_ehr_practitioner_app_group.rb
299
+ - lib/onc_certification_g10_test_kit/smart_fine_grained_scopes_group.rb
300
+ - lib/onc_certification_g10_test_kit/smart_granular_scope_selection_group.rb
301
+ - lib/onc_certification_g10_test_kit/smart_granular_scope_selection_test.rb
297
302
  - lib/onc_certification_g10_test_kit/smart_invalid_pkce_group.rb
298
303
  - lib/onc_certification_g10_test_kit/smart_invalid_token_group.rb
299
304
  - lib/onc_certification_g10_test_kit/smart_invalid_token_group_stu2.rb
@@ -303,9 +308,11 @@ files:
303
308
  - lib/onc_certification_g10_test_kit/smart_public_standalone_launch_group_stu2.rb
304
309
  - lib/onc_certification_g10_test_kit/smart_scopes_test.rb
305
310
  - lib/onc_certification_g10_test_kit/smart_standalone_patient_app_group.rb
311
+ - lib/onc_certification_g10_test_kit/smart_v1_scopes_group.rb
306
312
  - lib/onc_certification_g10_test_kit/tasks/generate_matrix.rb
307
313
  - lib/onc_certification_g10_test_kit/tasks/test_procedure.rb
308
314
  - lib/onc_certification_g10_test_kit/terminology_binding_validator.rb
315
+ - lib/onc_certification_g10_test_kit/token_introspection_group.rb
309
316
  - lib/onc_certification_g10_test_kit/token_revocation_group.rb
310
317
  - lib/onc_certification_g10_test_kit/unauthorized_access_test.rb
311
318
  - lib/onc_certification_g10_test_kit/unrestricted_resource_type_access_group.rb