us_core_test_kit 0.7.0 → 0.7.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/lib/us_core_test_kit/custom_groups/base_smart_granular_scopes_group.rb +2 -1
  3. data/lib/us_core_test_kit/custom_groups/capability_statement/instantiate_test.rb +6 -2
  4. data/lib/us_core_test_kit/custom_groups/capability_statement/profile_support_test.rb +10 -7
  5. data/lib/us_core_test_kit/custom_groups/screening_assessment_category_test.rb +75 -0
  6. data/lib/us_core_test_kit/custom_groups/smart_scopes_constants.rb +6 -4
  7. data/lib/us_core_test_kit/custom_groups/v6.1.0/screening_assessment_group.rb +45 -0
  8. data/lib/us_core_test_kit/custom_groups/v6.1.0/smart_granular_scopes_group.rb +46 -93
  9. data/lib/us_core_test_kit/custom_groups/v7.0.0-ballot/screening_assessment_group.rb +48 -0
  10. data/lib/us_core_test_kit/fhir_resource_navigation.rb +11 -6
  11. data/lib/us_core_test_kit/generated/v6.1.0/condition_encounter_diagnosis/metadata.yml +22 -20
  12. data/lib/us_core_test_kit/generated/v6.1.0/condition_granular_scope1_group.rb +22 -21
  13. data/lib/us_core_test_kit/generated/v6.1.0/condition_granular_scope2_group.rb +44 -0
  14. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_granular_scope_read_test.rb +32 -0
  15. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_abatement_date_granular_scope_test.rb → condition_patient_abatement_date_granular_scope_search_test.rb} +5 -5
  16. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_asserted_date_granular_scope_test.rb → condition_patient_asserted_date_granular_scope_search_test.rb} +5 -5
  17. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_category_clinical_status_granular_scope_test.rb → condition_patient_category_clinical_status_granular_scope_search_test.rb} +5 -5
  18. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_category_encounter_granular_scope_test.rb → condition_patient_category_encounter_granular_scope_search_test.rb} +5 -5
  19. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_category_granular_scope_test.rb → condition_patient_category_granular_scope_search_test.rb} +5 -5
  20. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_clinical_status_granular_scope_test.rb → condition_patient_clinical_status_granular_scope_search_test.rb} +5 -5
  21. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_code_granular_scope_test.rb → condition_patient_code_granular_scope_search_test.rb} +5 -5
  22. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_granular_scope_test.rb → condition_patient_granular_scope_search_test.rb} +5 -5
  23. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_onset_date_granular_scope_test.rb → condition_patient_onset_date_granular_scope_search_test.rb} +5 -5
  24. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/{condition_patient_recorded_date_granular_scope_test.rb → condition_patient_recorded_date_granular_scope_search_test.rb} +5 -5
  25. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/metadata.yml +24 -22
  26. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/metadata.yml +14 -12
  27. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_granular_scope_read_test.rb +32 -0
  28. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/{observation_patient_category_date_granular_scope_test.rb → observation_patient_category_date_granular_scope_search_test.rb} +5 -5
  29. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/{observation_patient_category_granular_scope_test.rb → observation_patient_category_granular_scope_search_test.rb} +5 -5
  30. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/{observation_patient_category_status_granular_scope_test.rb → observation_patient_category_status_granular_scope_search_test.rb} +5 -5
  31. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/{observation_patient_code_date_granular_scope_test.rb → observation_patient_code_date_granular_scope_search_test.rb} +5 -5
  32. data/lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/{observation_patient_code_granular_scope_test.rb → observation_patient_code_granular_scope_search_test.rb} +5 -5
  33. data/lib/us_core_test_kit/generated/v6.1.0/granular_scopes1_group.rb +0 -4
  34. data/lib/us_core_test_kit/generated/v6.1.0/granular_scopes2_group.rb +51 -0
  35. data/lib/us_core_test_kit/generated/v6.1.0/metadata.yml +40 -30
  36. data/lib/us_core_test_kit/generated/v6.1.0/observation_granular_scope1_group.rb +12 -13
  37. data/lib/us_core_test_kit/generated/v6.1.0/observation_granular_scope2_group.rb +36 -0
  38. data/lib/us_core_test_kit/generated/v6.1.0/observation_lab/metadata.yml +12 -10
  39. data/lib/us_core_test_kit/generated/v6.1.0/us_core_test_suite.rb +3 -1
  40. data/lib/us_core_test_kit/generated/v7.0.0-ballot/condition_encounter_diagnosis/metadata.yml +22 -20
  41. data/lib/us_core_test_kit/generated/v7.0.0-ballot/condition_granular_scope1_group.rb +22 -20
  42. data/lib/us_core_test_kit/generated/v7.0.0-ballot/condition_granular_scope2_group.rb +22 -20
  43. data/lib/us_core_test_kit/generated/v7.0.0-ballot/diagnostic_report_granular_scope1_group.rb +14 -12
  44. data/lib/us_core_test_kit/generated/v7.0.0-ballot/diagnostic_report_granular_scope2_group.rb +14 -12
  45. data/lib/us_core_test_kit/generated/v7.0.0-ballot/diagnostic_report_note/metadata.yml +14 -12
  46. data/lib/us_core_test_kit/generated/v7.0.0-ballot/document_reference/metadata.yml +16 -14
  47. data/lib/us_core_test_kit/generated/v7.0.0-ballot/document_reference_granular_scope1_group.rb +16 -14
  48. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_granular_scope_read_test.rb +32 -0
  49. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_abatement_date_granular_scope_test.rb → condition_patient_abatement_date_granular_scope_search_test.rb} +5 -5
  50. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_asserted_date_granular_scope_test.rb → condition_patient_asserted_date_granular_scope_search_test.rb} +5 -5
  51. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_category_clinical_status_granular_scope_test.rb → condition_patient_category_clinical_status_granular_scope_search_test.rb} +5 -5
  52. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_category_encounter_granular_scope_test.rb → condition_patient_category_encounter_granular_scope_search_test.rb} +5 -5
  53. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_category_granular_scope_test.rb → condition_patient_category_granular_scope_search_test.rb} +5 -5
  54. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_clinical_status_granular_scope_test.rb → condition_patient_clinical_status_granular_scope_search_test.rb} +5 -5
  55. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_code_granular_scope_test.rb → condition_patient_code_granular_scope_search_test.rb} +5 -5
  56. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_granular_scope_test.rb → condition_patient_granular_scope_search_test.rb} +5 -5
  57. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_onset_date_granular_scope_test.rb → condition_patient_onset_date_granular_scope_search_test.rb} +5 -5
  58. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/{condition_patient_recorded_date_granular_scope_test.rb → condition_patient_recorded_date_granular_scope_search_test.rb} +5 -5
  59. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/metadata.yml +22 -20
  60. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_granular_scope_read_test.rb +32 -0
  61. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/{diagnostic_report_patient_category_date_granular_scope_test.rb → diagnostic_report_patient_category_date_granular_scope_search_test.rb} +5 -5
  62. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/{diagnostic_report_patient_category_granular_scope_test.rb → diagnostic_report_patient_category_granular_scope_search_test.rb} +5 -5
  63. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/{diagnostic_report_patient_code_date_granular_scope_test.rb → diagnostic_report_patient_code_date_granular_scope_search_test.rb} +5 -5
  64. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/{diagnostic_report_patient_code_granular_scope_test.rb → diagnostic_report_patient_code_granular_scope_search_test.rb} +5 -5
  65. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/{diagnostic_report_patient_granular_scope_test.rb → diagnostic_report_patient_granular_scope_search_test.rb} +5 -5
  66. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/{diagnostic_report_patient_status_granular_scope_test.rb → diagnostic_report_patient_status_granular_scope_search_test.rb} +5 -5
  67. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/metadata.yml +14 -12
  68. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_granular_scope_read_test.rb +32 -0
  69. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_id_granular_scope_test.rb → document_reference_id_granular_scope_search_test.rb} +5 -5
  70. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_patient_category_date_granular_scope_test.rb → document_reference_patient_category_date_granular_scope_search_test.rb} +5 -5
  71. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_patient_category_granular_scope_test.rb → document_reference_patient_category_granular_scope_search_test.rb} +5 -5
  72. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_patient_granular_scope_test.rb → document_reference_patient_granular_scope_search_test.rb} +5 -5
  73. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_patient_status_granular_scope_test.rb → document_reference_patient_status_granular_scope_search_test.rb} +5 -5
  74. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_patient_type_granular_scope_test.rb → document_reference_patient_type_granular_scope_search_test.rb} +5 -5
  75. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/{document_reference_patient_type_period_granular_scope_test.rb → document_reference_patient_type_period_granular_scope_search_test.rb} +5 -5
  76. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/metadata.yml +16 -14
  77. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/metadata.yml +12 -10
  78. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_granular_scope_read_test.rb +32 -0
  79. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/{observation_patient_category_date_granular_scope_test.rb → observation_patient_category_date_granular_scope_search_test.rb} +5 -5
  80. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/{observation_patient_category_granular_scope_test.rb → observation_patient_category_granular_scope_search_test.rb} +5 -5
  81. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/{observation_patient_category_status_granular_scope_test.rb → observation_patient_category_status_granular_scope_search_test.rb} +5 -5
  82. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/{observation_patient_code_date_granular_scope_test.rb → observation_patient_code_date_granular_scope_search_test.rb} +5 -5
  83. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/{observation_patient_code_granular_scope_test.rb → observation_patient_code_granular_scope_search_test.rb} +5 -5
  84. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/metadata.yml +16 -14
  85. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_granular_scope_read_test.rb +32 -0
  86. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_id_granular_scope_test.rb → service_request_id_granular_scope_search_test.rb} +5 -5
  87. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_patient_category_authored_granular_scope_test.rb → service_request_patient_category_authored_granular_scope_search_test.rb} +5 -5
  88. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_patient_category_granular_scope_test.rb → service_request_patient_category_granular_scope_search_test.rb} +5 -5
  89. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_patient_code_authored_granular_scope_test.rb → service_request_patient_code_authored_granular_scope_search_test.rb} +5 -5
  90. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_patient_code_granular_scope_test.rb → service_request_patient_code_granular_scope_search_test.rb} +5 -5
  91. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_patient_granular_scope_test.rb → service_request_patient_granular_scope_search_test.rb} +5 -5
  92. data/lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/{service_request_patient_status_granular_scope_test.rb → service_request_patient_status_granular_scope_search_test.rb} +5 -5
  93. data/lib/us_core_test_kit/generated/v7.0.0-ballot/metadata.yml +80 -70
  94. data/lib/us_core_test_kit/generated/v7.0.0-ballot/observation_granular_scope1_group.rb +12 -10
  95. data/lib/us_core_test_kit/generated/v7.0.0-ballot/observation_granular_scope2_group.rb +12 -10
  96. data/lib/us_core_test_kit/generated/v7.0.0-ballot/observation_lab/metadata.yml +12 -10
  97. data/lib/us_core_test_kit/generated/v7.0.0-ballot/service_request/metadata.yml +16 -14
  98. data/lib/us_core_test_kit/generated/v7.0.0-ballot/service_request_granular_scope1_group.rb +16 -14
  99. data/lib/us_core_test_kit/generated/v7.0.0-ballot/service_request_granular_scope2_group.rb +16 -14
  100. data/lib/us_core_test_kit/generated/v7.0.0-ballot/us_core_test_suite.rb +3 -1
  101. data/lib/us_core_test_kit/generator/granular_scope_group_generator.rb +0 -7
  102. data/lib/us_core_test_kit/generator/granular_scope_read_test_generator.rb +102 -0
  103. data/lib/us_core_test_kit/generator/granular_scope_resource_type_group_generator.rb +1 -1
  104. data/lib/us_core_test_kit/generator/granular_scope_test_generator.rb +4 -4
  105. data/lib/us_core_test_kit/generator/suite_generator.rb +9 -1
  106. data/lib/us_core_test_kit/generator.rb +2 -0
  107. data/lib/us_core_test_kit/granular_scope.rb +63 -0
  108. data/lib/us_core_test_kit/granular_scope_read_test.rb +71 -0
  109. data/lib/us_core_test_kit/{granular_scope_checker.rb → granular_scope_search_test.rb} +8 -47
  110. data/lib/us_core_test_kit/must_support_test.rb +3 -2
  111. data/lib/us_core_test_kit/primitive_type.rb +5 -0
  112. data/lib/us_core_test_kit/provenance_validator.rb +3 -4
  113. data/lib/us_core_test_kit/resource_search_param_checker.rb +139 -0
  114. data/lib/us_core_test_kit/search_test.rb +6 -2
  115. data/lib/us_core_test_kit/version.rb +1 -1
  116. metadata +73 -55
@@ -0,0 +1,139 @@
1
+ require_relative 'fhir_resource_navigation'
2
+
3
+ module USCoreTestKit
4
+ module ResourceSearchParamChecker
5
+ include FHIRResourceNavigation
6
+
7
+ def search_param_paths(name)
8
+ paths = metadata.search_definitions[name.to_sym][:paths]
9
+ if paths.first =='class'
10
+ paths[0] = 'local_class'
11
+ end
12
+
13
+ paths
14
+ end
15
+
16
+ def element_has_valid_value?(element, include_system)
17
+ case element
18
+ when FHIR::Reference
19
+ element.reference.present?
20
+ when FHIR::CodeableConcept
21
+ if include_system
22
+ coding =
23
+ find_a_value_at(element, 'coding') { |coding| coding.code.present? && coding.system.present? }
24
+ coding.present?
25
+ else
26
+ find_a_value_at(element, 'coding.code').present?
27
+ end
28
+ when FHIR::Identifier
29
+ include_system ? element.value.present? && element.system.present? : element.value.present?
30
+ when FHIR::Coding
31
+ include_system ? element.code.present? && element.system.present? : element.code.present?
32
+ when FHIR::HumanName
33
+ (element.family || element.given&.first || element.text).present?
34
+ when FHIR::Address
35
+ (element.text || element.city || element.state || element.postalCode || element.country).present?
36
+ when FHIR::Element
37
+ false
38
+ else
39
+ true
40
+ end
41
+ end
42
+
43
+ def resource_matches_param?(resource, search_param_name, escaped_search_value, values_found = [])
44
+ search_value = unescape_search_value(escaped_search_value)
45
+ paths = search_param_paths(search_param_name)
46
+
47
+ match_found = false
48
+
49
+ paths.each do |path|
50
+ type = metadata.search_definitions[search_param_name.to_sym][:type]
51
+ values_found =
52
+ resolve_path(resource, path)
53
+ .map do |value|
54
+ if value.is_a? FHIR::Reference
55
+ value.reference
56
+ else
57
+ value
58
+ end
59
+ end
60
+
61
+ match_found =
62
+ case type
63
+ when 'Period', 'date', 'instant', 'dateTime'
64
+ values_found.any? { |date| validate_date_search(search_value, date) }
65
+ when 'HumanName'
66
+ # When a string search parameter refers to the types HumanName and Address,
67
+ # the search covers the elements of type string, and does not cover elements such as use and period
68
+ # https://www.hl7.org/fhir/search.html#string
69
+ search_value_downcase = search_value.downcase
70
+ values_found.any? do |name|
71
+ name&.text&.downcase&.start_with?(search_value_downcase) ||
72
+ name&.family&.downcase&.start_with?(search_value_downcase) ||
73
+ name&.given&.any? { |given| given.downcase.start_with?(search_value_downcase) } ||
74
+ name&.prefix&.any? { |prefix| prefix.downcase.start_with?(search_value_downcase) } ||
75
+ name&.suffix&.any? { |suffix| suffix.downcase.start_with?(search_value_downcase) }
76
+ end
77
+ when 'Address'
78
+ search_value_downcase = search_value.downcase
79
+ values_found.any? do |address|
80
+ address&.text&.downcase&.start_with?(search_value_downcase) ||
81
+ address&.city&.downcase&.start_with?(search_value_downcase) ||
82
+ address&.state&.downcase&.start_with?(search_value_downcase) ||
83
+ address&.postalCode&.downcase&.start_with?(search_value_downcase) ||
84
+ address&.country&.downcase&.start_with?(search_value_downcase)
85
+ end
86
+ when 'CodeableConcept'
87
+ # FHIR token search (https://www.hl7.org/fhir/search.html#token): "When in doubt, servers SHOULD
88
+ # treat tokens in a case-insensitive manner, on the grounds that including undesired data has
89
+ # less safety implications than excluding desired behavior".
90
+ codings = values_found.flat_map(&:coding)
91
+ if search_value.include? '|'
92
+ system = search_value.split('|').first
93
+ code = search_value.split('|').last
94
+ codings&.any? { |coding| coding.system == system && coding.code&.casecmp?(code) }
95
+ else
96
+ codings&.any? { |coding| coding.code&.casecmp?(search_value) }
97
+ end
98
+ when 'Coding'
99
+ if search_value.include? '|'
100
+ system = search_value.split('|').first
101
+ code = search_value.split('|').last
102
+ values_found.any? { |coding| coding.system == system && coding.code&.casecmp?(code) }
103
+ else
104
+ values_found.any? { |coding| coding.code&.casecmp?(search_value) }
105
+ end
106
+ when 'Identifier'
107
+ if search_value.include? '|'
108
+ values_found.any? { |identifier| "#{identifier.system}|#{identifier.value}" == search_value }
109
+ else
110
+ values_found.any? { |identifier| identifier.value == search_value }
111
+ end
112
+ when 'string'
113
+ searched_values = search_value.downcase.split(/(?<!\\\\),/).map{ |string| string.gsub('\\,', ',') }
114
+ values_found.any? do |value_found|
115
+ searched_values.any? { |searched_value| value_found.downcase.starts_with? searched_value }
116
+ end
117
+ else
118
+ # searching by patient requires special case because we are searching by a resource identifier
119
+ # references can also be URLs, so we may need to resolve those URLs
120
+ if ['subject', 'patient'].include? search_param_name.to_s
121
+ id = search_value.split('Patient/').last
122
+ possible_values = [id, "Patient/#{id}", "#{url}/Patient/#{id}"]
123
+ values_found.any? do |reference|
124
+ possible_values.include? reference
125
+ end
126
+ else
127
+ search_values = search_value.split(/(?<!\\\\),/).map { |string| string.gsub('\\,', ',') }
128
+ values_found.any? { |value_found| search_values.include? value_found }
129
+ end
130
+ end
131
+
132
+ break if match_found
133
+ end
134
+
135
+ match_found
136
+ end
137
+
138
+ end
139
+ end
@@ -1,5 +1,6 @@
1
1
  require_relative 'date_search_validation'
2
2
  require_relative 'fhir_resource_navigation'
3
+ require_relative 'resource_search_param_checker'
3
4
  require_relative 'search_test_properties'
4
5
 
5
6
  module USCoreTestKit
@@ -7,6 +8,7 @@ module USCoreTestKit
7
8
  extend Forwardable
8
9
  include DateSearchValidation
9
10
  include FHIRResourceNavigation
11
+ include ResourceSearchParamChecker
10
12
 
11
13
  def_delegators 'self.class', :metadata, :provenance_metadata, :properties
12
14
  def_delegators 'properties',
@@ -629,6 +631,8 @@ module USCoreTestKit
629
631
  element.family || element.given&.first || element.text
630
632
  when FHIR::Address
631
633
  element.text || element.city || element.state || element.postalCode || element.country
634
+ when USCoreTestKit::PrimitiveType
635
+ element.value
632
636
  else
633
637
  if metadata.version != 'v3.1.1' &&
634
638
  metadata.search_definitions[name.to_sym][:type] == 'date' &&
@@ -676,8 +680,8 @@ module USCoreTestKit
676
680
  (element.family || element.given&.first || element.text).present?
677
681
  when FHIR::Address
678
682
  (element.text || element.city || element.state || element.postalCode || element.country).present?
679
- when FHIR::Element
680
- false
683
+ when USCoreTestKit::PrimitiveType
684
+ element.value.present?
681
685
  else
682
686
  true
683
687
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module USCoreTestKit
4
- VERSION = '0.7.0'
4
+ VERSION = '0.7.2'
5
5
  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: 0.7.0
4
+ version: 0.7.2
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-05-06 00:00:00.000000000 Z
11
+ date: 2024-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: inferno_core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.4.2
19
+ version: 0.4.37
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.4.2
26
+ version: 0.4.37
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: smart_app_launch_test_kit
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -127,6 +127,7 @@ files:
127
127
  - lib/us_core_test_kit/custom_groups/clinical_note_type_test.rb
128
128
  - lib/us_core_test_kit/custom_groups/data_absent_reason_group.rb
129
129
  - lib/us_core_test_kit/custom_groups/granted_granular_scopes_test.rb
130
+ - lib/us_core_test_kit/custom_groups/screening_assessment_category_test.rb
130
131
  - lib/us_core_test_kit/custom_groups/smart_app_launch_group.rb
131
132
  - lib/us_core_test_kit/custom_groups/smart_ehr_launch_stu1.rb
132
133
  - lib/us_core_test_kit/custom_groups/smart_ehr_launch_stu2.rb
@@ -141,8 +142,10 @@ files:
141
142
  - lib/us_core_test_kit/custom_groups/v4.0.0/document_reference_custodian_test.rb
142
143
  - lib/us_core_test_kit/custom_groups/v5.0.1/capability_statement_group.rb
143
144
  - lib/us_core_test_kit/custom_groups/v6.1.0/capability_statement_group.rb
145
+ - lib/us_core_test_kit/custom_groups/v6.1.0/screening_assessment_group.rb
144
146
  - lib/us_core_test_kit/custom_groups/v6.1.0/smart_granular_scopes_group.rb
145
147
  - lib/us_core_test_kit/custom_groups/v7.0.0-ballot/capability_statement_group.rb
148
+ - lib/us_core_test_kit/custom_groups/v7.0.0-ballot/screening_assessment_group.rb
146
149
  - lib/us_core_test_kit/custom_groups/v7.0.0-ballot/smart_granular_scopes_group.rb
147
150
  - lib/us_core_test_kit/date_search_validation.rb
148
151
  - lib/us_core_test_kit/fhir_resource_navigation.rb
@@ -1408,6 +1411,7 @@ files:
1408
1411
  - lib/us_core_test_kit/generated/v6.1.0/condition_encounter_diagnosis/metadata.yml
1409
1412
  - lib/us_core_test_kit/generated/v6.1.0/condition_encounter_diagnosis_group.rb
1410
1413
  - lib/us_core_test_kit/generated/v6.1.0/condition_granular_scope1_group.rb
1414
+ - lib/us_core_test_kit/generated/v6.1.0/condition_granular_scope2_group.rb
1411
1415
  - lib/us_core_test_kit/generated/v6.1.0/condition_problems_health_concerns/condition_problems_health_concerns_must_support_test.rb
1412
1416
  - lib/us_core_test_kit/generated/v6.1.0/condition_problems_health_concerns/condition_problems_health_concerns_patient_abatement_date_search_test.rb
1413
1417
  - lib/us_core_test_kit/generated/v6.1.0/condition_problems_health_concerns/condition_problems_health_concerns_patient_asserted_date_search_test.rb
@@ -1510,24 +1514,27 @@ files:
1510
1514
  - lib/us_core_test_kit/generated/v6.1.0/goal/goal_validation_test.rb
1511
1515
  - lib/us_core_test_kit/generated/v6.1.0/goal/metadata.yml
1512
1516
  - lib/us_core_test_kit/generated/v6.1.0/goal_group.rb
1513
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_abatement_date_granular_scope_test.rb
1514
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_asserted_date_granular_scope_test.rb
1515
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_category_clinical_status_granular_scope_test.rb
1516
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_category_encounter_granular_scope_test.rb
1517
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_category_granular_scope_test.rb
1518
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_clinical_status_granular_scope_test.rb
1519
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_code_granular_scope_test.rb
1520
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_granular_scope_test.rb
1521
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_onset_date_granular_scope_test.rb
1522
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_recorded_date_granular_scope_test.rb
1517
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_granular_scope_read_test.rb
1518
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_abatement_date_granular_scope_search_test.rb
1519
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_asserted_date_granular_scope_search_test.rb
1520
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_category_clinical_status_granular_scope_search_test.rb
1521
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_category_encounter_granular_scope_search_test.rb
1522
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_category_granular_scope_search_test.rb
1523
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_clinical_status_granular_scope_search_test.rb
1524
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_code_granular_scope_search_test.rb
1525
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_granular_scope_search_test.rb
1526
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_onset_date_granular_scope_search_test.rb
1527
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/condition_patient_recorded_date_granular_scope_search_test.rb
1523
1528
  - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/condition/metadata.yml
1524
1529
  - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/metadata.yml
1525
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_category_date_granular_scope_test.rb
1526
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_category_granular_scope_test.rb
1527
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_category_status_granular_scope_test.rb
1528
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_code_date_granular_scope_test.rb
1529
- - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_code_granular_scope_test.rb
1530
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_granular_scope_read_test.rb
1531
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_category_date_granular_scope_search_test.rb
1532
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_category_granular_scope_search_test.rb
1533
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_category_status_granular_scope_search_test.rb
1534
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_code_date_granular_scope_search_test.rb
1535
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scope_tests/observation/observation_patient_code_granular_scope_search_test.rb
1530
1536
  - lib/us_core_test_kit/generated/v6.1.0/granular_scopes1_group.rb
1537
+ - lib/us_core_test_kit/generated/v6.1.0/granular_scopes2_group.rb
1531
1538
  - lib/us_core_test_kit/generated/v6.1.0/head_circumference/head_circumference_must_support_test.rb
1532
1539
  - lib/us_core_test_kit/generated/v6.1.0/head_circumference/head_circumference_patient_category_date_search_test.rb
1533
1540
  - lib/us_core_test_kit/generated/v6.1.0/head_circumference/head_circumference_patient_category_search_test.rb
@@ -1610,6 +1617,7 @@ files:
1610
1617
  - lib/us_core_test_kit/generated/v6.1.0/observation_clinical_result/observation_clinical_result_validation_test.rb
1611
1618
  - lib/us_core_test_kit/generated/v6.1.0/observation_clinical_result_group.rb
1612
1619
  - lib/us_core_test_kit/generated/v6.1.0/observation_granular_scope1_group.rb
1620
+ - lib/us_core_test_kit/generated/v6.1.0/observation_granular_scope2_group.rb
1613
1621
  - lib/us_core_test_kit/generated/v6.1.0/observation_lab/metadata.yml
1614
1622
  - lib/us_core_test_kit/generated/v6.1.0/observation_lab/observation_lab_must_support_test.rb
1615
1623
  - lib/us_core_test_kit/generated/v6.1.0/observation_lab/observation_lab_patient_category_date_search_test.rb
@@ -2092,46 +2100,51 @@ files:
2092
2100
  - lib/us_core_test_kit/generated/v7.0.0-ballot/goal/goal_validation_test.rb
2093
2101
  - lib/us_core_test_kit/generated/v7.0.0-ballot/goal/metadata.yml
2094
2102
  - lib/us_core_test_kit/generated/v7.0.0-ballot/goal_group.rb
2095
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_abatement_date_granular_scope_test.rb
2096
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_asserted_date_granular_scope_test.rb
2097
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_category_clinical_status_granular_scope_test.rb
2098
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_category_encounter_granular_scope_test.rb
2099
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_category_granular_scope_test.rb
2100
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_clinical_status_granular_scope_test.rb
2101
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_code_granular_scope_test.rb
2102
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_granular_scope_test.rb
2103
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_onset_date_granular_scope_test.rb
2104
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_recorded_date_granular_scope_test.rb
2103
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_granular_scope_read_test.rb
2104
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_abatement_date_granular_scope_search_test.rb
2105
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_asserted_date_granular_scope_search_test.rb
2106
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_category_clinical_status_granular_scope_search_test.rb
2107
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_category_encounter_granular_scope_search_test.rb
2108
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_category_granular_scope_search_test.rb
2109
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_clinical_status_granular_scope_search_test.rb
2110
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_code_granular_scope_search_test.rb
2111
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_granular_scope_search_test.rb
2112
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_onset_date_granular_scope_search_test.rb
2113
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/condition_patient_recorded_date_granular_scope_search_test.rb
2105
2114
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/condition/metadata.yml
2106
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_category_date_granular_scope_test.rb
2107
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_category_granular_scope_test.rb
2108
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_code_date_granular_scope_test.rb
2109
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_code_granular_scope_test.rb
2110
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_granular_scope_test.rb
2111
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_status_granular_scope_test.rb
2115
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_granular_scope_read_test.rb
2116
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_category_date_granular_scope_search_test.rb
2117
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_category_granular_scope_search_test.rb
2118
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_code_date_granular_scope_search_test.rb
2119
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_code_granular_scope_search_test.rb
2120
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_granular_scope_search_test.rb
2121
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/diagnostic_report_patient_status_granular_scope_search_test.rb
2112
2122
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/diagnostic_report/metadata.yml
2113
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_id_granular_scope_test.rb
2114
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_category_date_granular_scope_test.rb
2115
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_category_granular_scope_test.rb
2116
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_granular_scope_test.rb
2117
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_status_granular_scope_test.rb
2118
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_type_granular_scope_test.rb
2119
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_type_period_granular_scope_test.rb
2123
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_granular_scope_read_test.rb
2124
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_id_granular_scope_search_test.rb
2125
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_category_date_granular_scope_search_test.rb
2126
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_category_granular_scope_search_test.rb
2127
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_granular_scope_search_test.rb
2128
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_status_granular_scope_search_test.rb
2129
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_type_granular_scope_search_test.rb
2130
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/document_reference_patient_type_period_granular_scope_search_test.rb
2120
2131
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/document_reference/metadata.yml
2121
2132
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/metadata.yml
2122
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_category_date_granular_scope_test.rb
2123
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_category_granular_scope_test.rb
2124
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_category_status_granular_scope_test.rb
2125
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_code_date_granular_scope_test.rb
2126
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_code_granular_scope_test.rb
2133
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_granular_scope_read_test.rb
2134
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_category_date_granular_scope_search_test.rb
2135
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_category_granular_scope_search_test.rb
2136
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_category_status_granular_scope_search_test.rb
2137
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_code_date_granular_scope_search_test.rb
2138
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/observation/observation_patient_code_granular_scope_search_test.rb
2127
2139
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/metadata.yml
2128
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_id_granular_scope_test.rb
2129
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_category_authored_granular_scope_test.rb
2130
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_category_granular_scope_test.rb
2131
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_code_authored_granular_scope_test.rb
2132
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_code_granular_scope_test.rb
2133
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_granular_scope_test.rb
2134
- - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_status_granular_scope_test.rb
2140
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_granular_scope_read_test.rb
2141
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_id_granular_scope_search_test.rb
2142
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_category_authored_granular_scope_search_test.rb
2143
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_category_granular_scope_search_test.rb
2144
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_code_authored_granular_scope_search_test.rb
2145
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_code_granular_scope_search_test.rb
2146
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_granular_scope_search_test.rb
2147
+ - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scope_tests/service_request/service_request_patient_status_granular_scope_search_test.rb
2135
2148
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scopes1_group.rb
2136
2149
  - lib/us_core_test_kit/generated/v7.0.0-ballot/granular_scopes2_group.rb
2137
2150
  - lib/us_core_test_kit/generated/v7.0.0-ballot/head_circumference/head_circumference_must_support_test.rb
@@ -2488,6 +2501,7 @@ files:
2488
2501
  - lib/us_core_test_kit/generated/v7.0.0-ballot/us_core_test_suite.rb
2489
2502
  - lib/us_core_test_kit/generator.rb
2490
2503
  - lib/us_core_test_kit/generator/granular_scope_group_generator.rb
2504
+ - lib/us_core_test_kit/generator/granular_scope_read_test_generator.rb
2491
2505
  - lib/us_core_test_kit/generator/granular_scope_resource_type_group_generator.rb
2492
2506
  - lib/us_core_test_kit/generator/granular_scope_test_generator.rb
2493
2507
  - lib/us_core_test_kit/generator/group_generator.rb
@@ -2516,7 +2530,9 @@ files:
2516
2530
  - lib/us_core_test_kit/generator/terminology_binding_metadata_extractor.rb
2517
2531
  - lib/us_core_test_kit/generator/validation_test_generator.rb
2518
2532
  - lib/us_core_test_kit/generator/value_extractor.rb
2519
- - lib/us_core_test_kit/granular_scope_checker.rb
2533
+ - lib/us_core_test_kit/granular_scope.rb
2534
+ - lib/us_core_test_kit/granular_scope_read_test.rb
2535
+ - lib/us_core_test_kit/granular_scope_search_test.rb
2520
2536
  - lib/us_core_test_kit/igs/us_core_311.tgz
2521
2537
  - lib/us_core_test_kit/igs/us_core_311/StructureDefinition-bodyheight.json
2522
2538
  - lib/us_core_test_kit/igs/us_core_311/StructureDefinition-bodytemp.json
@@ -2537,10 +2553,12 @@ files:
2537
2553
  - lib/us_core_test_kit/igs/us_core_700_ballot/StructureDefinition-condition-assertedDate.json
2538
2554
  - lib/us_core_test_kit/igs/us_core_700_ballot/ValueSet-servicerequest-category.json
2539
2555
  - lib/us_core_test_kit/must_support_test.rb
2556
+ - lib/us_core_test_kit/primitive_type.rb
2540
2557
  - lib/us_core_test_kit/provenance_validator.rb
2541
2558
  - lib/us_core_test_kit/read_test.rb
2542
2559
  - lib/us_core_test_kit/reference_resolution_test.rb
2543
2560
  - lib/us_core_test_kit/request_logger.rb
2561
+ - lib/us_core_test_kit/resource_search_param_checker.rb
2544
2562
  - lib/us_core_test_kit/search_test.rb
2545
2563
  - lib/us_core_test_kit/search_test_properties.rb
2546
2564
  - lib/us_core_test_kit/us_core_options.rb