us_core_test_kit 1.1.6 → 1.2.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.
@@ -16,7 +16,7 @@ module USCoreTestKit
16
16
 
17
17
  In this set of tests, Inferno serves as a FHIR client that attempts to
18
18
  access the different types of Screening and Assessments specified in the guidance.
19
- The provided patient needs to have the following four common Screening and Assessements
19
+ The provided patients need to have the following four common Screening and Assessements
20
20
  as Observation categories:
21
21
 
22
22
  * SDOH Assessment (sdoh)
@@ -24,7 +24,7 @@ module USCoreTestKit
24
24
  * Disability Status (disability-status)
25
25
  * Mental/Cognitive Status (cognitive-status)
26
26
 
27
- The provided patient also needs to have the following common Screening and Assessment
27
+ The provided patients also need to have the following common Screening and Assessment
28
28
  as Condition category:
29
29
 
30
30
  * SDOH Assessment (sdoh)
@@ -16,7 +16,7 @@ module USCoreTestKit
16
16
 
17
17
  In this set of tests, Inferno serves as a FHIR client that attempts to
18
18
  access the different types of Screening and Assessments specified in the guidance.
19
- The provided patient needs to have the following four common Screening and Assessements
19
+ The provided patients need to have the following seven common Screening and Assessements
20
20
  as Observation categories:
21
21
 
22
22
  * SDOH Assessment (sdoh)
@@ -27,7 +27,7 @@ module USCoreTestKit
27
27
  * Alcohol Use (social-history)
28
28
  * Substance Use (social-history)
29
29
 
30
- The provided patient also needs to have the following common Screening and Assessment
30
+ The provided patients also need to have the following common Screening and Assessment
31
31
  as Condition category:
32
32
 
33
33
  * SDOH Assessment (sdoh)
@@ -15,7 +15,7 @@ module USCoreTestKit
15
15
 
16
16
  In this set of tests, Inferno serves as a FHIR client that attempts to
17
17
  access the different types of Screening and Assessments specified in the guidance.
18
- The provided patient needs to have the following four common Screening and Assessements
18
+ The provided patients need to have the following seven common Screening and Assessements
19
19
  as Observation categories:
20
20
 
21
21
  * SDOH Assessment (sdoh)
@@ -26,7 +26,7 @@ module USCoreTestKit
26
26
  * Alcohol Use (social-history)
27
27
  * Substance Use (social-history)
28
28
 
29
- The provided patient also needs to have the following common Screening and Assessment
29
+ The provided patients also need to have the following common Screening and Assessment
30
30
  as Condition category:
31
31
 
32
32
  * SDOH Assessment (sdoh)
@@ -167,7 +167,26 @@ module USCoreTestKit
167
167
  def resource_is_valid_with_target_profile?(resource, target_profile)
168
168
  return true if target_profile.blank?
169
169
 
170
- resource_is_valid?(resource:, profile_url: target_profile, add_messages_to_runnable: false)
170
+ resource_is_valid?(resource:, profile_url: versioned_target_profile(target_profile),
171
+ add_messages_to_runnable: false)
172
+ end
173
+
174
+ # Only target profiles from the same IG as the group's profile get the group's profile version. Other kits
175
+ # include this module with their own metadata (e.g. Da Vinci PDex, whose profile_version is the PDex
176
+ # version) while targeting US Core profiles, and US Core 3.1.1 vital signs groups have base FHIR profiles,
177
+ # so target profiles with a different canonical base are left unchanged.
178
+ def versioned_target_profile(target_profile)
179
+ return target_profile if target_profile.include?('|')
180
+
181
+ group_base = canonical_base(metadata.profile_url)
182
+ return target_profile if group_base.nil? || canonical_base(target_profile) != group_base
183
+
184
+ "#{target_profile}|#{metadata.profile_version}"
185
+ end
186
+
187
+ def canonical_base(profile_url)
188
+ base, separator, = profile_url.to_s.partition('StructureDefinition/')
189
+ base if separator.present?
171
190
  end
172
191
  end
173
192
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module USCoreTestKit
4
- VERSION = '1.1.6'
5
- LAST_UPDATED = '2026-09-03'
4
+ VERSION = '1.2.0'
5
+ LAST_UPDATED = '2026-10-27'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: us_core_test_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Inferno Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-03 00:00:00.000000000 Z
11
+ date: 2026-10-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: inferno_core
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.4'
19
+ version: '1.5'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 1.4.3
22
+ version: 1.5.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '1.4'
29
+ version: '1.5'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 1.4.3
32
+ version: 1.5.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: smart_app_launch_test_kit
35
35
  requirement: !ruby/object:Gem::Requirement