au_core_test_kit 1.4.6 → 1.4.7

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.
Files changed (512) hide show
  1. checksums.yaml +4 -4
  2. data/lib/au_core_test_kit/custom_groups/clinical_note_type_test.rb +2 -2
  3. data/lib/au_core_test_kit/custom_groups/missing_data_group.rb +1 -1
  4. data/lib/au_core_test_kit/custom_groups/smart_app_launch_group.rb +6 -0
  5. data/lib/au_core_test_kit/custom_groups/v0.3.0-ballot/capability_statement_group.rb +32 -2
  6. data/lib/au_core_test_kit/custom_suites/validation_suite.rb +1 -0
  7. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_clinical_status_search_test.rb +17 -7
  8. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_must_support_test.rb +3 -3
  9. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_patient_chain_search_test.rb +7 -7
  10. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_patient_clinical_status_search_test.rb +17 -7
  11. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_patient_dva_chain_search_test.rb +7 -7
  12. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_patient_ihi_chain_search_test.rb +7 -7
  13. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_patient_medicare_chain_search_test.rb +7 -7
  14. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_patient_search_test.rb +18 -9
  15. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_read_test.rb +8 -2
  16. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_reference_resolution_test.rb +8 -4
  17. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/allergy_intolerance_validation_test.rb +6 -2
  18. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance/metadata.yml +2 -0
  19. data/lib/au_core_test_kit/generated/v1.0.0/allergy_intolerance_group.rb +2 -1
  20. data/lib/au_core_test_kit/generated/v1.0.0/au_core_test_suite.rb +29 -19
  21. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_category_search_test.rb +17 -7
  22. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_code_multiple_or_search_test.rb +9 -9
  23. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_code_search_test.rb +18 -7
  24. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_date_multiple_and_search_test.rb +9 -9
  25. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_date_search_test.rb +17 -7
  26. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_must_support_test.rb +3 -3
  27. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_category_date_search_test.rb +17 -7
  28. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_category_search_test.rb +17 -7
  29. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_category_status_search_test.rb +17 -7
  30. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_chain_search_test.rb +7 -7
  31. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_code_date_search_test.rb +18 -7
  32. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_code_search_test.rb +18 -9
  33. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_dva_chain_search_test.rb +7 -7
  34. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_ihi_chain_search_test.rb +7 -7
  35. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_medicare_chain_search_test.rb +7 -7
  36. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_patient_search_test.rb +17 -7
  37. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_read_test.rb +8 -2
  38. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_reference_resolution_test.rb +8 -4
  39. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_status_multiple_or_search_test.rb +9 -9
  40. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_status_search_test.rb +17 -7
  41. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/bloodpressure_validation_test.rb +6 -2
  42. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure/metadata.yml +2 -0
  43. data/lib/au_core_test_kit/generated/v1.0.0/bloodpressure_group.rb +2 -1
  44. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_category_search_test.rb +17 -7
  45. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_code_multiple_or_search_test.rb +9 -9
  46. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_code_search_test.rb +18 -7
  47. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_date_multiple_and_search_test.rb +9 -9
  48. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_date_search_test.rb +17 -7
  49. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_must_support_test.rb +3 -3
  50. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_category_date_search_test.rb +17 -7
  51. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_category_search_test.rb +17 -7
  52. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_category_status_search_test.rb +17 -7
  53. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_chain_search_test.rb +7 -7
  54. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_code_date_search_test.rb +18 -7
  55. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_code_search_test.rb +18 -9
  56. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_dva_chain_search_test.rb +7 -7
  57. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_ihi_chain_search_test.rb +7 -7
  58. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_medicare_chain_search_test.rb +7 -7
  59. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_patient_search_test.rb +17 -7
  60. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_read_test.rb +8 -2
  61. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_reference_resolution_test.rb +8 -4
  62. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_status_multiple_or_search_test.rb +9 -9
  63. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_status_search_test.rb +17 -7
  64. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/bodyheight_validation_test.rb +6 -2
  65. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight/metadata.yml +2 -0
  66. data/lib/au_core_test_kit/generated/v1.0.0/bodyheight_group.rb +2 -1
  67. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_category_search_test.rb +17 -7
  68. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_code_multiple_or_search_test.rb +9 -9
  69. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_code_search_test.rb +18 -7
  70. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_date_multiple_and_search_test.rb +9 -9
  71. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_date_search_test.rb +17 -7
  72. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_must_support_test.rb +3 -3
  73. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_category_date_search_test.rb +17 -7
  74. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_category_search_test.rb +17 -7
  75. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_category_status_search_test.rb +17 -7
  76. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_chain_search_test.rb +7 -7
  77. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_code_date_search_test.rb +18 -7
  78. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_code_search_test.rb +18 -9
  79. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_dva_chain_search_test.rb +7 -7
  80. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_ihi_chain_search_test.rb +7 -7
  81. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_medicare_chain_search_test.rb +7 -7
  82. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_patient_search_test.rb +17 -7
  83. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_read_test.rb +8 -2
  84. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_reference_resolution_test.rb +8 -4
  85. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_status_multiple_or_search_test.rb +9 -9
  86. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_status_search_test.rb +17 -7
  87. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/bodytemp_validation_test.rb +6 -2
  88. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp/metadata.yml +2 -0
  89. data/lib/au_core_test_kit/generated/v1.0.0/bodytemp_group.rb +2 -1
  90. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_category_search_test.rb +17 -7
  91. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_code_multiple_or_search_test.rb +9 -9
  92. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_code_search_test.rb +18 -7
  93. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_date_multiple_and_search_test.rb +9 -9
  94. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_date_search_test.rb +17 -7
  95. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_must_support_test.rb +3 -3
  96. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_category_date_search_test.rb +17 -7
  97. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_category_search_test.rb +17 -7
  98. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_category_status_search_test.rb +17 -7
  99. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_chain_search_test.rb +7 -7
  100. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_code_date_search_test.rb +18 -7
  101. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_code_search_test.rb +18 -9
  102. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_dva_chain_search_test.rb +7 -7
  103. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_ihi_chain_search_test.rb +7 -7
  104. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_medicare_chain_search_test.rb +7 -7
  105. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_patient_search_test.rb +17 -7
  106. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_read_test.rb +8 -2
  107. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_reference_resolution_test.rb +8 -4
  108. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_status_multiple_or_search_test.rb +9 -9
  109. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_status_search_test.rb +17 -7
  110. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/bodyweight_validation_test.rb +6 -2
  111. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight/metadata.yml +2 -0
  112. data/lib/au_core_test_kit/generated/v1.0.0/bodyweight_group.rb +2 -1
  113. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_category_search_test.rb +17 -7
  114. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_clinical_status_search_test.rb +17 -7
  115. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_code_multiple_or_search_test.rb +8 -8
  116. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_code_search_test.rb +17 -7
  117. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_must_support_test.rb +3 -3
  118. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_onset_date_multiple_and_search_test.rb +9 -9
  119. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_onset_date_search_test.rb +17 -7
  120. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_category_clinical_status_search_test.rb +17 -7
  121. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_category_search_test.rb +17 -7
  122. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_chain_search_test.rb +7 -7
  123. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_clinical_status_search_test.rb +17 -7
  124. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_code_search_test.rb +17 -7
  125. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_dva_chain_search_test.rb +7 -7
  126. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_ihi_chain_search_test.rb +7 -7
  127. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_medicare_chain_search_test.rb +7 -7
  128. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_onset_date_search_test.rb +17 -7
  129. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_patient_search_test.rb +18 -9
  130. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_read_test.rb +8 -2
  131. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_reference_resolution_test.rb +8 -4
  132. data/lib/au_core_test_kit/generated/v1.0.0/condition/condition_validation_test.rb +6 -2
  133. data/lib/au_core_test_kit/generated/v1.0.0/condition/metadata.yml +6 -4
  134. data/lib/au_core_test_kit/generated/v1.0.0/condition_group.rb +2 -1
  135. data/lib/au_core_test_kit/generated/v1.0.0/demodata.yml +1903 -0
  136. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_category_search_test.rb +17 -7
  137. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_code_multiple_or_search_test.rb +9 -9
  138. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_code_search_test.rb +18 -7
  139. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_date_multiple_and_search_test.rb +9 -9
  140. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_date_search_test.rb +17 -7
  141. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_must_support_test.rb +3 -3
  142. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_category_date_search_test.rb +17 -7
  143. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_category_search_test.rb +17 -7
  144. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_category_status_search_test.rb +17 -7
  145. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_chain_search_test.rb +7 -7
  146. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_code_date_search_test.rb +18 -7
  147. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_code_search_test.rb +18 -9
  148. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_dva_chain_search_test.rb +7 -7
  149. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_ihi_chain_search_test.rb +7 -7
  150. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_medicare_chain_search_test.rb +7 -7
  151. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_patient_search_test.rb +17 -7
  152. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_read_test.rb +8 -2
  153. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_reference_resolution_test.rb +8 -4
  154. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_status_multiple_or_search_test.rb +9 -9
  155. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_status_search_test.rb +17 -7
  156. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/diagnosticresult_validation_test.rb +6 -2
  157. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult/metadata.yml +10 -1
  158. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_group.rb +2 -1
  159. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_category_search_test.rb +17 -7
  160. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_code_multiple_or_search_test.rb +9 -9
  161. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_code_search_test.rb +17 -7
  162. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_date_multiple_and_search_test.rb +9 -9
  163. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_date_search_test.rb +17 -7
  164. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_must_support_test.rb +3 -3
  165. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_category_date_search_test.rb +17 -7
  166. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_category_search_test.rb +18 -9
  167. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_category_status_search_test.rb +17 -7
  168. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_chain_search_test.rb +7 -7
  169. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_code_date_search_test.rb +17 -7
  170. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_code_search_test.rb +17 -7
  171. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_dva_chain_search_test.rb +7 -7
  172. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_ihi_chain_search_test.rb +7 -7
  173. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_medicare_chain_search_test.rb +7 -7
  174. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_patient_search_test.rb +17 -7
  175. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_read_test.rb +8 -2
  176. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_reference_resolution_test.rb +8 -4
  177. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_status_multiple_or_search_test.rb +9 -9
  178. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_status_search_test.rb +17 -7
  179. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/diagnosticresult_path_validation_test.rb +6 -2
  180. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path/metadata.yml +10 -1
  181. data/lib/au_core_test_kit/generated/v1.0.0/diagnosticresult_path_group.rb +2 -1
  182. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_class_patient_search_test.rb +17 -7
  183. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_class_search_test.rb +17 -7
  184. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_date_multiple_and_search_test.rb +9 -9
  185. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_date_patient_search_test.rb +17 -7
  186. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_date_search_test.rb +17 -7
  187. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_location_search_test.rb +17 -7
  188. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_must_support_test.rb +3 -3
  189. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_chain_search_test.rb +7 -7
  190. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_dva_chain_search_test.rb +7 -7
  191. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_ihi_chain_search_test.rb +7 -7
  192. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_location_search_test.rb +17 -7
  193. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_medicare_chain_search_test.rb +7 -7
  194. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_search_test.rb +18 -9
  195. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_patient_status_search_test.rb +17 -7
  196. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_read_test.rb +8 -2
  197. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_reference_resolution_test.rb +8 -4
  198. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_status_multiple_or_search_test.rb +8 -8
  199. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_status_search_test.rb +17 -7
  200. data/lib/au_core_test_kit/generated/v1.0.0/encounter/encounter_validation_test.rb +6 -2
  201. data/lib/au_core_test_kit/generated/v1.0.0/encounter/metadata.yml +17 -5
  202. data/lib/au_core_test_kit/generated/v1.0.0/encounter_group.rb +2 -1
  203. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_category_search_test.rb +17 -7
  204. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_code_multiple_or_search_test.rb +9 -9
  205. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_code_search_test.rb +18 -7
  206. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_date_multiple_and_search_test.rb +9 -9
  207. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_date_search_test.rb +17 -7
  208. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_must_support_test.rb +3 -3
  209. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_category_date_search_test.rb +17 -7
  210. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_category_search_test.rb +17 -7
  211. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_category_status_search_test.rb +17 -7
  212. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_chain_search_test.rb +7 -7
  213. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_code_date_search_test.rb +18 -7
  214. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_code_search_test.rb +18 -9
  215. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_dva_chain_search_test.rb +7 -7
  216. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_ihi_chain_search_test.rb +7 -7
  217. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_medicare_chain_search_test.rb +7 -7
  218. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_patient_search_test.rb +17 -7
  219. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_read_test.rb +8 -2
  220. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_reference_resolution_test.rb +8 -4
  221. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_status_multiple_or_search_test.rb +9 -9
  222. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_status_search_test.rb +17 -7
  223. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/heartrate_validation_test.rb +6 -2
  224. data/lib/au_core_test_kit/generated/v1.0.0/heartrate/metadata.yml +2 -0
  225. data/lib/au_core_test_kit/generated/v1.0.0/heartrate_group.rb +2 -1
  226. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_date_multiple_and_search_test.rb +9 -9
  227. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_date_search_test.rb +17 -7
  228. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_must_support_test.rb +3 -3
  229. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_chain_search_test.rb +7 -7
  230. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_date_search_test.rb +17 -7
  231. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_dva_chain_search_test.rb +7 -7
  232. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_ihi_chain_search_test.rb +7 -7
  233. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_medicare_chain_search_test.rb +7 -7
  234. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_search_test.rb +18 -9
  235. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_status_search_test.rb +17 -7
  236. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_patient_vaccine_code_search_test.rb +17 -7
  237. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_read_test.rb +8 -2
  238. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_reference_resolution_test.rb +8 -4
  239. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_status_search_test.rb +17 -7
  240. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_vaccine_code_multiple_or_search_test.rb +9 -9
  241. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_vaccine_code_search_test.rb +17 -7
  242. data/lib/au_core_test_kit/generated/v1.0.0/immunization/immunization_validation_test.rb +6 -2
  243. data/lib/au_core_test_kit/generated/v1.0.0/immunization/metadata.yml +6 -4
  244. data/lib/au_core_test_kit/generated/v1.0.0/immunization_group.rb +2 -1
  245. data/lib/au_core_test_kit/generated/v1.0.0/location/location_address_city_search_test.rb +17 -7
  246. data/lib/au_core_test_kit/generated/v1.0.0/location/location_address_postalcode_search_test.rb +17 -7
  247. data/lib/au_core_test_kit/generated/v1.0.0/location/location_address_search_test.rb +17 -7
  248. data/lib/au_core_test_kit/generated/v1.0.0/location/location_address_state_search_test.rb +17 -7
  249. data/lib/au_core_test_kit/generated/v1.0.0/location/location_must_support_test.rb +3 -3
  250. data/lib/au_core_test_kit/generated/v1.0.0/location/location_name_search_test.rb +18 -7
  251. data/lib/au_core_test_kit/generated/v1.0.0/location/location_read_test.rb +8 -2
  252. data/lib/au_core_test_kit/generated/v1.0.0/location/location_reference_resolution_test.rb +8 -4
  253. data/lib/au_core_test_kit/generated/v1.0.0/location/location_validation_test.rb +6 -2
  254. data/lib/au_core_test_kit/generated/v1.0.0/location/metadata.yml +2 -0
  255. data/lib/au_core_test_kit/generated/v1.0.0/location_group.rb +2 -1
  256. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_authoredon_multiple_and_search_test.rb +10 -10
  257. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_authoredon_search_test.rb +17 -13
  258. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_id_include_medication_test.rb +6 -6
  259. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_id_search_test.rb +18 -14
  260. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_intent_multiple_or_search_test.rb +10 -10
  261. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_intent_search_test.rb +18 -14
  262. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/{medication_validation_test.rb → medication_request_medication_inclusion_validation_test.rb} +11 -5
  263. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_must_support_test.rb +3 -3
  264. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_chain_search_test.rb +7 -7
  265. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_dva_chain_search_test.rb +7 -7
  266. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_ihi_chain_search_test.rb +7 -7
  267. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_include_medication_test.rb +6 -6
  268. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_intent_authoredon_include_medication_test.rb +6 -6
  269. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_intent_authoredon_search_test.rb +17 -13
  270. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_intent_include_medication_test.rb +6 -6
  271. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_intent_search_test.rb +18 -14
  272. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_intent_status_include_medication_test.rb +6 -6
  273. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_intent_status_search_test.rb +18 -14
  274. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_medicare_chain_search_test.rb +7 -7
  275. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_search_test.rb +18 -15
  276. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_patient_status_search_test.rb +18 -14
  277. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_read_test.rb +8 -2
  278. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_reference_resolution_test.rb +8 -4
  279. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_status_multiple_or_search_test.rb +10 -10
  280. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_status_search_test.rb +18 -14
  281. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/medication_request_validation_test.rb +6 -2
  282. data/lib/au_core_test_kit/generated/v1.0.0/medication_request/metadata.yml +20 -7
  283. data/lib/au_core_test_kit/generated/v1.0.0/medication_request_group.rb +4 -3
  284. data/lib/au_core_test_kit/generated/v1.0.0/metadata.yml +126 -135
  285. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_address_search_test.rb +17 -7
  286. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_id_search_test.rb +17 -7
  287. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_identifier_abn_search_test.rb +4 -7
  288. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_identifier_hpio_search_test.rb +4 -7
  289. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_identifier_search_test.rb +18 -7
  290. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_must_support_test.rb +3 -3
  291. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_name_search_test.rb +18 -7
  292. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_read_test.rb +8 -2
  293. data/lib/au_core_test_kit/generated/v1.0.0/organization/organization_validation_test.rb +6 -2
  294. data/lib/au_core_test_kit/generated/v1.0.0/organization_group.rb +2 -1
  295. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_birthdate_family_search_test.rb +17 -7
  296. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_birthdate_multiple_and_search_test.rb +8 -8
  297. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_birthdate_name_search_test.rb +17 -7
  298. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_birthdate_search_test.rb +17 -7
  299. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_family_gender_search_test.rb +17 -7
  300. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_family_search_test.rb +17 -7
  301. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_gender_identity_multiple_and_search_test.rb +8 -8
  302. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_gender_identity_multiple_or_search_test.rb +8 -8
  303. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_gender_identity_search_test.rb +17 -7
  304. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_gender_name_search_test.rb +17 -7
  305. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_gender_search_test.rb +17 -7
  306. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_id_search_test.rb +18 -7
  307. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_identifier_dva_search_test.rb +4 -7
  308. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_identifier_ihi_search_test.rb +4 -7
  309. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_identifier_medicare_search_test.rb +4 -7
  310. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_identifier_search_test.rb +19 -8
  311. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_indigenous_status_multiple_and_search_test.rb +8 -8
  312. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_indigenous_status_multiple_or_search_test.rb +8 -8
  313. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_indigenous_status_search_test.rb +17 -7
  314. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_must_support_test.rb +3 -3
  315. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_name_search_test.rb +17 -7
  316. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_read_test.rb +8 -2
  317. data/lib/au_core_test_kit/generated/v1.0.0/patient/patient_validation_test.rb +6 -2
  318. data/lib/au_core_test_kit/generated/v1.0.0/patient_group.rb +2 -1
  319. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_id_search_test.rb +17 -7
  320. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_identifier_hpii_search_test.rb +4 -7
  321. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_identifier_search_test.rb +18 -7
  322. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_must_support_test.rb +3 -3
  323. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_name_search_test.rb +17 -7
  324. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_read_test.rb +8 -2
  325. data/lib/au_core_test_kit/generated/v1.0.0/practitioner/practitioner_validation_test.rb +6 -2
  326. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_group.rb +2 -1
  327. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/metadata.yml +4 -0
  328. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_id_include_practitioner_test.rb +6 -6
  329. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_id_search_test.rb +17 -8
  330. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_identifier_include_practitioner_test.rb +6 -6
  331. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_identifier_medicare_search_test.rb +4 -7
  332. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_identifier_search_test.rb +18 -8
  333. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_must_support_test.rb +3 -3
  334. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_organization_search_test.rb +18 -9
  335. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_practitioner_chain_search_test.rb +7 -7
  336. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_practitioner_include_practitioner_test.rb +6 -6
  337. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_practitioner_multiple_and_search_test.rb +9 -9
  338. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_practitioner_multiple_or_search_test.rb +9 -9
  339. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_practitioner_search_test.rb +19 -10
  340. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_read_test.rb +8 -2
  341. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_reference_resolution_test.rb +8 -4
  342. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_role_search_test.rb +17 -8
  343. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_specialty_include_practitioner_test.rb +6 -6
  344. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_specialty_search_test.rb +17 -8
  345. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role/practitioner_role_validation_test.rb +6 -2
  346. data/lib/au_core_test_kit/generated/v1.0.0/practitioner_role_group.rb +2 -1
  347. data/lib/au_core_test_kit/generated/v1.0.0/procedure/metadata.yml +11 -4
  348. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_code_multiple_or_search_test.rb +9 -9
  349. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_code_search_test.rb +17 -7
  350. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_date_multiple_and_search_test.rb +8 -8
  351. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_date_search_test.rb +17 -7
  352. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_must_support_test.rb +3 -3
  353. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_chain_search_test.rb +7 -7
  354. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_code_date_search_test.rb +17 -7
  355. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_date_search_test.rb +17 -7
  356. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_dva_chain_search_test.rb +7 -7
  357. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_ihi_chain_search_test.rb +7 -7
  358. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_medicare_chain_search_test.rb +7 -7
  359. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_search_test.rb +18 -9
  360. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_patient_status_search_test.rb +17 -7
  361. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_read_test.rb +8 -2
  362. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_reference_resolution_test.rb +8 -4
  363. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_status_multiple_or_search_test.rb +9 -9
  364. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_status_search_test.rb +17 -7
  365. data/lib/au_core_test_kit/generated/v1.0.0/procedure/procedure_validation_test.rb +6 -2
  366. data/lib/au_core_test_kit/generated/v1.0.0/procedure_group.rb +2 -1
  367. data/lib/au_core_test_kit/generated/v1.0.0/resprate/metadata.yml +2 -0
  368. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_category_search_test.rb +17 -7
  369. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_code_multiple_or_search_test.rb +9 -9
  370. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_code_search_test.rb +18 -7
  371. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_date_multiple_and_search_test.rb +9 -9
  372. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_date_search_test.rb +17 -7
  373. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_must_support_test.rb +3 -3
  374. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_category_date_search_test.rb +17 -7
  375. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_category_search_test.rb +17 -7
  376. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_category_status_search_test.rb +17 -7
  377. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_chain_search_test.rb +7 -7
  378. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_code_date_search_test.rb +18 -7
  379. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_code_search_test.rb +18 -9
  380. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_dva_chain_search_test.rb +7 -7
  381. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_ihi_chain_search_test.rb +7 -7
  382. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_medicare_chain_search_test.rb +7 -7
  383. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_patient_search_test.rb +17 -7
  384. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_read_test.rb +8 -2
  385. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_reference_resolution_test.rb +8 -4
  386. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_status_multiple_or_search_test.rb +9 -9
  387. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_status_search_test.rb +17 -7
  388. data/lib/au_core_test_kit/generated/v1.0.0/resprate/resprate_validation_test.rb +6 -2
  389. data/lib/au_core_test_kit/generated/v1.0.0/resprate_group.rb +2 -1
  390. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/metadata.yml +2 -0
  391. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_category_search_test.rb +17 -7
  392. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_code_multiple_or_search_test.rb +9 -9
  393. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_code_search_test.rb +18 -7
  394. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_date_multiple_and_search_test.rb +9 -9
  395. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_date_search_test.rb +17 -7
  396. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_must_support_test.rb +3 -3
  397. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_category_date_search_test.rb +17 -7
  398. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_category_search_test.rb +17 -7
  399. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_category_status_search_test.rb +17 -7
  400. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_chain_search_test.rb +7 -7
  401. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_code_date_search_test.rb +18 -7
  402. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_code_search_test.rb +18 -9
  403. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_dva_chain_search_test.rb +7 -7
  404. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_ihi_chain_search_test.rb +7 -7
  405. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_medicare_chain_search_test.rb +7 -7
  406. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_patient_search_test.rb +17 -7
  407. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_read_test.rb +8 -2
  408. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_reference_resolution_test.rb +8 -4
  409. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_status_multiple_or_search_test.rb +9 -9
  410. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_status_search_test.rb +17 -7
  411. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus/smokingstatus_validation_test.rb +6 -2
  412. data/lib/au_core_test_kit/generated/v1.0.0/smokingstatus_group.rb +2 -1
  413. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/metadata.yml +2 -0
  414. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_category_search_test.rb +17 -7
  415. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_code_multiple_or_search_test.rb +9 -9
  416. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_code_search_test.rb +18 -7
  417. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_date_multiple_and_search_test.rb +9 -9
  418. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_date_search_test.rb +17 -7
  419. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_must_support_test.rb +3 -3
  420. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_category_date_search_test.rb +17 -7
  421. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_category_search_test.rb +17 -7
  422. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_category_status_search_test.rb +17 -7
  423. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_chain_search_test.rb +7 -7
  424. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_code_date_search_test.rb +18 -7
  425. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_code_search_test.rb +18 -9
  426. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_dva_chain_search_test.rb +7 -7
  427. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_ihi_chain_search_test.rb +7 -7
  428. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_medicare_chain_search_test.rb +7 -7
  429. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_patient_search_test.rb +17 -7
  430. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_read_test.rb +8 -2
  431. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_reference_resolution_test.rb +8 -4
  432. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_status_multiple_or_search_test.rb +9 -9
  433. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_status_search_test.rb +17 -7
  434. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum/waistcircum_validation_test.rb +6 -2
  435. data/lib/au_core_test_kit/generated/v1.0.0/waistcircum_group.rb +2 -1
  436. data/lib/au_core_test_kit/generated/v2.0.0/allergy_intolerance/allergy_intolerance_reference_resolution_test.rb +5 -1
  437. data/lib/au_core_test_kit/generated/v2.0.0/au_core_test_suite.rb +17 -9
  438. data/lib/au_core_test_kit/generated/v2.0.0/bloodpressure/bloodpressure_reference_resolution_test.rb +5 -1
  439. data/lib/au_core_test_kit/generated/v2.0.0/bodyheight/bodyheight_reference_resolution_test.rb +5 -1
  440. data/lib/au_core_test_kit/generated/v2.0.0/bodytemp/bodytemp_reference_resolution_test.rb +5 -1
  441. data/lib/au_core_test_kit/generated/v2.0.0/bodyweight/bodyweight_reference_resolution_test.rb +5 -1
  442. data/lib/au_core_test_kit/generated/v2.0.0/condition/condition_reference_resolution_test.rb +5 -1
  443. data/lib/au_core_test_kit/generated/v2.0.0/demodata.yml +3 -3
  444. data/lib/au_core_test_kit/generated/v2.0.0/diagnosticresult/diagnosticresult_reference_resolution_test.rb +5 -1
  445. data/lib/au_core_test_kit/generated/v2.0.0/diagnosticresult_path/diagnosticresult_path_reference_resolution_test.rb +5 -1
  446. data/lib/au_core_test_kit/generated/v2.0.0/encounter/encounter_reference_resolution_test.rb +5 -1
  447. data/lib/au_core_test_kit/generated/v2.0.0/heartrate/heartrate_reference_resolution_test.rb +5 -1
  448. data/lib/au_core_test_kit/generated/v2.0.0/immunization/immunization_reference_resolution_test.rb +5 -1
  449. data/lib/au_core_test_kit/generated/v2.0.0/location/location_reference_resolution_test.rb +5 -1
  450. data/lib/au_core_test_kit/generated/v2.0.0/medication_request/medication_request_reference_resolution_test.rb +5 -1
  451. data/lib/au_core_test_kit/generated/v2.0.0/medication_statement/medication_statement_reference_resolution_test.rb +5 -1
  452. data/lib/au_core_test_kit/generated/v2.0.0/practitioner_role/practitioner_role_reference_resolution_test.rb +5 -1
  453. data/lib/au_core_test_kit/generated/v2.0.0/procedure/procedure_reference_resolution_test.rb +5 -1
  454. data/lib/au_core_test_kit/generated/v2.0.0/related_person/related_person_reference_resolution_test.rb +5 -1
  455. data/lib/au_core_test_kit/generated/v2.0.0/resprate/resprate_reference_resolution_test.rb +5 -1
  456. data/lib/au_core_test_kit/generated/v2.0.0/smokingstatus/smokingstatus_reference_resolution_test.rb +5 -1
  457. data/lib/au_core_test_kit/generated/v2.0.0/waistcircum/waistcircum_reference_resolution_test.rb +5 -1
  458. data/lib/au_core_test_kit/generated/v2.1.0-draft/au_core_test_suite.rb +19 -3
  459. data/lib/au_core_test_kit/generated/v2.1.0-draft/demodata.yml +3 -3
  460. data/lib/au_core_test_kit/generated/v3.0.0-ballot1/au_core_test_suite.rb +9 -0
  461. data/lib/au_core_test_kit/generated/v3.0.0-ballot1/demodata.yml +3 -3
  462. data/lib/au_core_test_kit/version.rb +1 -1
  463. metadata +4 -52
  464. data/lib/au_core_test_kit/assert_helpers.rb +0 -27
  465. data/lib/au_core_test_kit/au_core_options.rb +0 -11
  466. data/lib/au_core_test_kit/chained_search_test.rb +0 -99
  467. data/lib/au_core_test_kit/constants.rb +0 -11
  468. data/lib/au_core_test_kit/date_search_validation.rb +0 -114
  469. data/lib/au_core_test_kit/fhir_resource_navigation.rb +0 -177
  470. data/lib/au_core_test_kit/generator/chain_search_test_generator.rb +0 -169
  471. data/lib/au_core_test_kit/generator/group_generator.rb +0 -143
  472. data/lib/au_core_test_kit/generator/group_metadata.rb +0 -103
  473. data/lib/au_core_test_kit/generator/group_metadata_extractor.rb +0 -334
  474. data/lib/au_core_test_kit/generator/ig_download.rb +0 -77
  475. data/lib/au_core_test_kit/generator/ig_loader.rb +0 -88
  476. data/lib/au_core_test_kit/generator/ig_metadata.rb +0 -51
  477. data/lib/au_core_test_kit/generator/ig_metadata_extractor.rb +0 -94
  478. data/lib/au_core_test_kit/generator/ig_resources.rb +0 -106
  479. data/lib/au_core_test_kit/generator/include_search_test_generator.rb +0 -111
  480. data/lib/au_core_test_kit/generator/multiple_and_search_test_generator.rb +0 -216
  481. data/lib/au_core_test_kit/generator/multiple_or_search_test_generator.rb +0 -219
  482. data/lib/au_core_test_kit/generator/must_support_metadata_extractor.rb +0 -472
  483. data/lib/au_core_test_kit/generator/must_support_metadata_extractor_au_core_3.rb +0 -64
  484. data/lib/au_core_test_kit/generator/must_support_test_generator.rb +0 -118
  485. data/lib/au_core_test_kit/generator/naming.rb +0 -57
  486. data/lib/au_core_test_kit/generator/provenance_revinclude_search_test_generator.rb +0 -193
  487. data/lib/au_core_test_kit/generator/read_test_generator.rb +0 -116
  488. data/lib/au_core_test_kit/generator/reference_resolution_test_generator.rb +0 -94
  489. data/lib/au_core_test_kit/generator/search_definition_metadata_extractor.rb +0 -340
  490. data/lib/au_core_test_kit/generator/search_metadata_extractor.rb +0 -95
  491. data/lib/au_core_test_kit/generator/search_test_generator.rb +0 -386
  492. data/lib/au_core_test_kit/generator/special_cases.rb +0 -99
  493. data/lib/au_core_test_kit/generator/special_identifier_search_test_generator.rb +0 -85
  494. data/lib/au_core_test_kit/generator/special_identifiers_chain_search_test_generator.rb +0 -77
  495. data/lib/au_core_test_kit/generator/suite_generator.rb +0 -102
  496. data/lib/au_core_test_kit/generator/summary_generator.rb +0 -172
  497. data/lib/au_core_test_kit/generator/terminology_binding_metadata_extractor.rb +0 -118
  498. data/lib/au_core_test_kit/generator/validation_test_generator.rb +0 -142
  499. data/lib/au_core_test_kit/generator/value_extractor.rb +0 -107
  500. data/lib/au_core_test_kit/generator.rb +0 -146
  501. data/lib/au_core_test_kit/helpers.rb +0 -238
  502. data/lib/au_core_test_kit/must_support_test.rb +0 -221
  503. data/lib/au_core_test_kit/provenance_validator.rb +0 -38
  504. data/lib/au_core_test_kit/read_test.rb +0 -123
  505. data/lib/au_core_test_kit/reference_resolution_test.rb +0 -185
  506. data/lib/au_core_test_kit/request_logger.rb +0 -48
  507. data/lib/au_core_test_kit/search_test.rb +0 -1032
  508. data/lib/au_core_test_kit/search_test_helpers.rb +0 -21
  509. data/lib/au_core_test_kit/search_test_properties.rb +0 -67
  510. data/lib/au_core_test_kit/special_identifier_search_test.rb +0 -94
  511. data/lib/au_core_test_kit/validation_test.rb +0 -65
  512. data/lib/au_core_test_kit/validator_helpers.rb +0 -90
@@ -1,472 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'value_extractor'
4
- require_relative 'must_support_metadata_extractor_au_core_3'
5
-
6
- module AUCoreTestKit
7
- class Generator
8
- class MustSupportMetadataExtractor
9
- attr_accessor :profile_elements, :profile, :resource, :ig_resources
10
-
11
- def initialize(profile_elements, profile, resource, ig_resources)
12
- self.profile_elements = profile_elements
13
- self.profile = profile
14
- self.resource = resource
15
- self.ig_resources = ig_resources
16
- end
17
-
18
- def must_supports
19
- @must_supports = {
20
- extensions: must_support_extensions,
21
- slices: must_support_slices,
22
- elements: must_support_elements
23
- }
24
-
25
- handle_special_cases
26
-
27
- @must_supports
28
- end
29
-
30
- def is_uscdi_requirement_element?(_element)
31
- # TODO: Temporary fix
32
- false
33
- end
34
-
35
- def all_must_support_elements
36
- profile_elements.select { |element| element.mustSupport || is_uscdi_requirement_element?(element) }
37
- end
38
-
39
- def must_support_extension_elements
40
- all_must_support_elements.select { |element| element.path.end_with? 'extension' }
41
- end
42
-
43
- def must_support_extensions
44
- must_support_extension_elements.map do |element|
45
- {
46
- id: element.id,
47
- url: element.type.first.profile.first
48
- }.tap do |metadata|
49
- metadata[:uscdi_only] = true if is_uscdi_requirement_element?(element)
50
- end
51
- end
52
- end
53
-
54
- def must_support_slice_elements
55
- all_must_support_elements.select do |element|
56
- !element.path.end_with?('extension') && element.sliceName.present?
57
- end
58
- end
59
-
60
- def sliced_element(slice)
61
- profile_elements.find do |element|
62
- element.id == slice.path || element.id == slice.id.sub(":#{slice.sliceName}", '')
63
- end
64
- end
65
-
66
- def discriminators(slice)
67
- slice.slicing.discriminator
68
- end
69
-
70
- def must_support_pattern_slice_elements
71
- must_support_slice_elements.select do |element|
72
- discriminators(sliced_element(element)).first.type == 'pattern'
73
- end
74
- end
75
-
76
- def pattern_slices
77
- must_support_pattern_slice_elements.map do |current_element|
78
- next if current_element.id.include? ':'
79
-
80
- {
81
- slice_id: current_element.id,
82
- slice_name: current_element.sliceName,
83
- path: current_element.path.gsub("#{resource}.", '')
84
- }.tap do |metadata|
85
- discriminator = discriminators(sliced_element(current_element)).first
86
- discriminator_path = discriminator.path
87
- discriminator_path = '' if discriminator_path == '$this'
88
- pattern_element =
89
- if discriminator_path.present?
90
- profile_elements.find { |element| element.id == "#{current_element.id}.#{discriminator_path}" }
91
- else
92
- current_element
93
- end
94
- metadata[:discriminator] =
95
- if pattern_element.patternCodeableConcept.present?
96
- {
97
- type: 'patternCodeableConcept',
98
- path: discriminator_path,
99
- code: pattern_element.patternCodeableConcept.coding.first.code,
100
- system: pattern_element.patternCodeableConcept.coding.first.system
101
- }
102
- elsif pattern_element.patternCoding.present?
103
- {
104
- type: 'patternCoding',
105
- path: discriminator_path,
106
- code: pattern_element.patternCoding.code,
107
- system: pattern_element.patternCoding.system
108
- }
109
- elsif pattern_element.patternIdentifier.present?
110
- {
111
- type: 'patternIdentifier',
112
- path: discriminator_path,
113
- system: pattern_element.patternIdentifier.system
114
- }
115
- elsif pattern_element.binding&.strength == 'required' &&
116
- pattern_element.binding&.valueSet.present?
117
-
118
- value_extractor = ValueExactor.new(ig_resources, resource, profile_elements)
119
-
120
- values = value_extractor.values_from_value_set_binding(pattern_element).presence ||
121
- value_extractor.values_from_resource_metadata([metadata[:path]]).presence || []
122
-
123
- {
124
- type: 'requiredBinding',
125
- path: discriminator_path,
126
- values:
127
- }
128
- else
129
- raise StandardError, 'Unsupported discriminator pattern type'
130
- end
131
-
132
- metadata[:uscdi_only] = true if is_uscdi_requirement_element?(current_element)
133
- end
134
- end.compact
135
- end
136
-
137
- def must_support_type_slice_elements
138
- must_support_slice_elements.select do |element|
139
- discriminators(sliced_element(element)).first.type == 'type'
140
- end
141
- end
142
-
143
- def type_slices
144
- must_support_type_slice_elements.map do |current_element|
145
- discriminator = discriminators(sliced_element(current_element)).first
146
- type_path = discriminator.path
147
- type_path = '' if type_path == '$this'
148
- type_element =
149
- if type_path.present?
150
- elements.find { |element| element.id == "#{current_element.id}.#{type_path}" }
151
- else
152
- current_element
153
- end
154
-
155
- type_code = type_element.type.first.code
156
-
157
- {
158
- slice_id: current_element.id,
159
- slice_name: current_element.sliceName,
160
- path: current_element.path.gsub("#{resource}.", ''),
161
- discriminator: {
162
- type: 'type',
163
- code: type_code.upcase_first
164
- }
165
- }.tap do |metadata|
166
- metadata[:uscdi_only] = true if is_uscdi_requirement_element?(current_element)
167
- end
168
- end
169
- end
170
-
171
- def must_support_value_slice_elements
172
- must_support_slice_elements.select do |element|
173
- discriminators(sliced_element(element)).first.type == 'value'
174
- end
175
- end
176
-
177
- def value_slices
178
- must_support_value_slice_elements.map do |current_element|
179
- {
180
- slice_id: current_element.id,
181
- slice_name: current_element.sliceName,
182
- path: current_element.path.gsub("#{resource}.", ''),
183
- discriminator: {
184
- type: 'value'
185
- }
186
- }.tap do |metadata|
187
- metadata[:discriminator][:values] = discriminators(sliced_element(current_element)).map do |discriminator|
188
- fixed_element = profile_elements.find do |element|
189
- element.id.starts_with?(current_element.id) &&
190
- element.path == "#{current_element.path}.#{discriminator.path}"
191
- end
192
-
193
- {
194
- path: discriminator.path,
195
- value: fixed_element.fixedUri || fixed_element.fixedCode
196
- }
197
- end
198
-
199
- metadata[:uscdi_only] = true if is_uscdi_requirement_element?(current_element)
200
- end
201
- end
202
- end
203
-
204
- def must_support_slices
205
- pattern_slices + type_slices + value_slices
206
- end
207
-
208
- def plain_must_support_elements
209
- all_must_support_elements - must_support_extension_elements - must_support_slice_elements
210
- end
211
-
212
- def element_part_of_slice_discrimination?(element)
213
- must_support_slice_elements.any? { |ms_slice| element.id.include?(ms_slice.id) }
214
- end
215
-
216
- def handle_fixed_values(metadata, element)
217
- if element.fixedUri.present?
218
- metadata[:fixed_value] = element.fixedUri
219
- elsif element.patternCodeableConcept.present? && !element_part_of_slice_discrimination?(element)
220
- metadata[:fixed_value] = element.patternCodeableConcept.coding.first.code
221
- metadata[:path] += '.coding.code'
222
- elsif element.fixedCode.present?
223
- metadata[:fixed_value] = element.fixedCode
224
- elsif element.patternIdentifier.present? && !element_part_of_slice_discrimination?(element)
225
- metadata[:fixed_value] = element.patternIdentifier.system
226
- metadata[:path] += '.system'
227
- end
228
- end
229
-
230
- def type_must_support_extension?(extensions)
231
- extensions&.any? do |extension|
232
- extension.url == 'http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support' &&
233
- extension.valueBoolean
234
- end
235
- end
236
-
237
- def save_type_code?(type)
238
- type.code == 'Reference'
239
- end
240
-
241
- def get_type_must_support_metadata(current_metadata, current_element)
242
- current_element.type.map do |type|
243
- next unless type_must_support_extension?(type.extension)
244
-
245
- metadata =
246
- {
247
- path: "#{current_metadata[:path].delete_suffix('[x]')}#{type.code.upcase_first}",
248
- original_path: current_metadata[:path]
249
- }
250
- metadata[:types] = [type.code] if save_type_code?(type)
251
- handle_type_must_support_target_profiles(type, metadata) if type.code == 'Reference'
252
-
253
- metadata
254
- end.compact
255
- end
256
-
257
- def handle_type_must_support_target_profiles(type, metadata)
258
- # AU Core 3.1.1 profiles do not have AU Core target profiles.
259
- # Vital Sign proifles from FHIR R4 (version 4.0.1) do not have AU Core target profiles either.
260
- return if ['3.1.1', '4.0.1'].include?(profile.version)
261
-
262
- target_profiles = []
263
-
264
- if type.targetProfile&.length == 1
265
- target_profiles << type.targetProfile.first
266
- else
267
- type.source_hash['_targetProfile']&.each_with_index do |hash, index|
268
- if hash.present?
269
- element = FHIR::Element.new(hash)
270
- target_profiles << type.targetProfile[index] if type_must_support_extension?(element.extension)
271
- end
272
- end
273
- end
274
-
275
- # remove target_profile for FHIR Base resource type.
276
- target_profiles.delete_if { |reference| reference.start_with?('http://hl7.org/fhir/StructureDefinition') }
277
- metadata[:target_profiles] = target_profiles if target_profiles.present?
278
- end
279
-
280
- def handle_choice_type_in_sliced_element(current_metadata, must_support_elements_metadata)
281
- choice_element_metadata = must_support_elements_metadata.find do |metadata|
282
- metadata[:original_path].present? &&
283
- current_metadata[:path].include?(metadata[:original_path])
284
- end
285
-
286
- return unless choice_element_metadata.present?
287
-
288
- current_metadata[:original_path] = current_metadata[:path]
289
- current_metadata[:path] =
290
- current_metadata[:path].sub(choice_element_metadata[:original_path], choice_element_metadata[:path])
291
- end
292
-
293
- def must_support_elements
294
- plain_must_support_elements.each_with_object([]) do |current_element, must_support_elements_metadata|
295
- {
296
- path: current_element.id.gsub("#{resource}.", '')
297
- }.tap do |current_metadata|
298
- current_metadata[:uscdi_only] = true if is_uscdi_requirement_element?(current_element)
299
-
300
- type_must_support_metadata = get_type_must_support_metadata(current_metadata, current_element)
301
-
302
- if type_must_support_metadata.any?
303
- must_support_elements_metadata.concat(type_must_support_metadata)
304
- else
305
- handle_choice_type_in_sliced_element(current_metadata, must_support_elements_metadata)
306
-
307
- supported_types = current_element.type.select { |type| save_type_code?(type) }.map(&:code)
308
- current_metadata[:types] = supported_types if supported_types.present?
309
-
310
- if current_element.type.first&.code == 'Reference'
311
- handle_type_must_support_target_profiles(current_element.type.first,
312
- current_metadata)
313
- end
314
-
315
- handle_fixed_values(current_metadata, current_element)
316
-
317
- must_support_elements_metadata.delete_if do |metadata|
318
- metadata[:path] == current_metadata[:path] && metadata[:fixed_value].blank?
319
- end
320
-
321
- must_support_elements_metadata << current_metadata
322
- end
323
- end
324
- end.uniq
325
- end
326
-
327
- #### SPECIAL CASE ####
328
-
329
- def handle_special_cases
330
- remove_vital_sign_component
331
- remove_blood_pressure_value_data_absent_reason
332
- remove_observation_data_absent_reason
333
- remove_observation_method_attribute
334
- remove_observation_value_attribute
335
- remove_lipid_result_attributes
336
- # remove_specimen_attribute
337
-
338
- case profile.version
339
- when '3.1.1'
340
- MustSupportMetadataExtractorAUCore3.new(profile, @must_supports).handle_special_cases
341
- when '4.0.0'
342
- MustSupportMetadataExtractorAUCore4.new(profile, @must_supports).handle_special_cases
343
- when '5.0.1'
344
- MustSupportMetadataExtractorAUCore5.new(profile, @must_supports).handle_special_cases
345
- when '6.1.0'
346
- MustSupportMetadataExtractorAUCore6.new(profile, @must_supports).handle_special_cases
347
- when '7.0.0-ballot'
348
- MustSupportMetadataExtractorAUCore7.new(profile, @must_supports).handle_special_cases
349
- end
350
- end
351
-
352
- def remove_specimen_attribute
353
- # TODO: Temporary solution https://github.com/hl7au/au-fhir-core-inferno/issues/18
354
- return unless profile.id == 'au-core-diagnosticresult-path'
355
-
356
- @must_supports[:elements].delete_if do |element|
357
- ['specimen'].include? element[:path]
358
- end
359
- end
360
-
361
- def remove_lipid_result_attributes
362
- # TODO: This code block should be discussed.
363
- # We need to understand why there are a lot of extra attributes
364
- # for the current Observation resource profile.
365
- return unless profile.id == 'au-core-lipid-result'
366
-
367
- @must_supports[:elements].delete_if do |element|
368
- ['identifier', 'performer', 'note',
369
- 'specimen', 'referenceRange.type',
370
- 'referenceRange.text', 'hasMember'].include? element[:path]
371
- end
372
- end
373
-
374
- def remove_observation_value_attribute
375
- return unless is_observation_without_value?
376
-
377
- @must_supports[:elements].delete_if do |element|
378
- element[:path] == 'value[x]'
379
- end
380
- end
381
-
382
- def remove_observation_method_attribute
383
- # TODO: Discuss with the team the problem related to the method attribute.
384
- if %w[AUCorePathologyResult AUCoreLipidResult AUCoreDiagnosticImagingResult
385
- AUCoreDiagnosticResult].include? profile.name
386
- @must_supports[:elements].delete_if do |element|
387
- element[:path] == 'method'
388
- end
389
- end
390
- end
391
-
392
- def is_vital_sign?
393
- [
394
- 'http://hl7.org/fhir/StructureDefinition/vitalsigns'
395
- ].include?(profile.baseDefinition)
396
- end
397
-
398
- def is_observation_without_component?
399
- %w[
400
- au-core-bmi
401
- au-core-bodyweight
402
- au-core-oxygensat
403
- au-core-bodyheight
404
- au-core-headcircum
405
- au-core-bodytemp
406
- au-core-heartrate
407
- au-core-resprate
408
- au-core-vitalspanel
409
- au-core-lipid-result
410
- ].include?(profile.id)
411
- end
412
-
413
- def is_observation_without_value?
414
- [
415
- 'au-core-vitalspanel'
416
- ].include?(profile.id)
417
- end
418
-
419
- def is_blood_pressure?
420
- ['au-core-bloodpressure'].include?(profile.id)
421
- end
422
-
423
- # Exclude Observation.component from vital sign profiles except observation-bp and observation-pulse-ox
424
- def remove_vital_sign_component
425
- return if is_blood_pressure? || profile.name == 'AUCorePulseOximetryProfile'
426
-
427
- return unless is_vital_sign? || is_observation_without_component?
428
-
429
- @must_supports[:elements].delete_if do |element|
430
- element[:path].start_with?('component')
431
- end
432
- end
433
-
434
- # Exclude Observation.value[x] from observation-bp
435
- def remove_blood_pressure_value_data_absent_reason
436
- return unless is_blood_pressure?
437
-
438
- pattern = /component(:[^.]+)?\.dataAbsentReason/
439
-
440
- @must_supports[:elements].delete_if do |element|
441
- element[:path].start_with?('value[x]') ||
442
- element[:original_path]&.start_with?('value[x]') ||
443
- element[:path] == ('dataAbsentReason') ||
444
- (
445
- pattern.match?(element[:path]) && ['3.1.1', '4.0.0'].include?(ig_resources.ig.version)
446
- )
447
- end
448
-
449
- @must_supports[:slices].delete_if do |slice|
450
- slice[:path].start_with?('value[x]')
451
- end
452
- end
453
-
454
- # ONC and AU Core 4.0.0 both clarified that health IT developers that always provide HL7 FHIR "observation" values
455
- # are not required to demonstrate Health IT Module support for "dataAbsentReason" elements.
456
- # Remove MS check for dataAbsentReason and component.dataAbsentReason from vital sign profiles and observation lab profile
457
- # Smoking status profile does not have MS on dataAbsentReason. It is safe to use profile.type == 'Observation'
458
- # Since AU Core 5.0.1, Blood Pressure profile restores component.dataAbsentReason as MustSupport.
459
- def remove_observation_data_absent_reason
460
- return if is_blood_pressure?
461
-
462
- pattern = /(component(:[^.]+)?\.)?dataAbsentReason/
463
-
464
- return unless profile.type == 'Observation'
465
-
466
- @must_supports[:elements].delete_if do |element|
467
- pattern.match?(element[:path])
468
- end
469
- end
470
- end
471
- end
472
- end
@@ -1,64 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module AUCoreTestKit
4
- class Generator
5
- class MustSupportMetadataExtractorAUCore3
6
- attr_accessor :profile, :must_supports
7
-
8
- def initialize(profile, must_supports)
9
- self.profile = profile
10
- self.must_supports = must_supports
11
- end
12
-
13
- def handle_special_cases
14
- add_must_support_choices
15
- remove_patient_address_period
16
- remove_document_reference_custodian
17
- end
18
-
19
- def add_must_support_choices
20
- choices = []
21
-
22
- case profile.type
23
- when 'Device'
24
- choices << { paths: ['udiCarrier.carrierAIDC', 'udiCarrier.carrierHRF'] }
25
- when 'DocumentReference'
26
- choices << { paths: ['content.attachment.data', 'content.attachment.url'] }
27
- when 'Patient'
28
- # FHIR-40299 adds USCDI MustSupport choices for:
29
- # * address.period.end and address.use,
30
- # * name.period.end and name.use
31
- choices << {
32
- paths: ['address.period.end', 'address.use'],
33
- uscdi_only: true
34
- }
35
-
36
- choices << {
37
- paths: ['name.period.end', 'name.use'],
38
- uscdi_only: true
39
- }
40
- end
41
-
42
- must_supports[:choices] = choices if choices.present?
43
- end
44
-
45
- # FHIR-40299 removes Patient.address.period from MustSupport,
46
- def remove_patient_address_period
47
- return unless profile.type == 'Patient'
48
-
49
- must_supports[:elements].delete_if do |element|
50
- element[:path] == 'address.period'
51
- end
52
- end
53
-
54
- # AU Core clarified that server implmentation is not required to support DocumentReference.custodian (FHIR-28393)
55
- def remove_document_reference_custodian
56
- return unless profile.type == 'DocumentReference'
57
-
58
- must_supports[:elements].delete_if do |element|
59
- element[:path] == 'custodian'
60
- end
61
- end
62
- end
63
- end
64
- end
@@ -1,118 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'naming'
4
- require_relative 'special_cases'
5
-
6
- module AUCoreTestKit
7
- class Generator
8
- class MustSupportTestGenerator
9
- class << self
10
- def generate(ig_metadata, base_output_dir)
11
- ig_metadata.groups
12
- .reject { |group| SpecialCases.exclude_group? group }
13
- .each { |group| new(group, base_output_dir).generate }
14
- end
15
- end
16
-
17
- attr_accessor :group_metadata, :base_output_dir
18
-
19
- def initialize(group_metadata, base_output_dir)
20
- self.group_metadata = group_metadata
21
- self.base_output_dir = base_output_dir
22
- end
23
-
24
- def template
25
- @template ||= File.read(File.join(__dir__, 'templates', 'must_support.rb.erb'))
26
- end
27
-
28
- def output
29
- @output ||= ERB.new(template).result(binding)
30
- end
31
-
32
- def base_output_file_name
33
- "#{class_name.underscore}.rb"
34
- end
35
-
36
- def output_file_directory
37
- File.join(base_output_dir, profile_identifier)
38
- end
39
-
40
- def output_file_name
41
- File.join(output_file_directory, base_output_file_name)
42
- end
43
-
44
- def read_interaction
45
- self.class.read_interaction(group_metadata)
46
- end
47
-
48
- def profile_identifier
49
- Naming.snake_case_for_profile(group_metadata)
50
- end
51
-
52
- def test_id
53
- "au_core_#{group_metadata.reformatted_version}_#{profile_identifier}_must_support_test"
54
- end
55
-
56
- def class_name
57
- "#{Naming.upper_camel_case_for_profile(group_metadata)}MustSupportTest"
58
- end
59
-
60
- def module_name
61
- "AUCore#{group_metadata.reformatted_version.upcase}"
62
- end
63
-
64
- def resource_type
65
- group_metadata.resource
66
- end
67
-
68
- def resource_collection_string
69
- 'all_scratch_resources'
70
- end
71
-
72
- def must_support_list_string
73
- build_must_support_list_string(false)
74
- end
75
-
76
- def uscdi_list_string
77
- build_must_support_list_string(true)
78
- end
79
-
80
- def build_must_support_list_string(uscdi_only)
81
- slice_names = group_metadata.must_supports[:slices]
82
- .select { |slice| slice[:uscdi_only].presence == uscdi_only.presence }
83
- .map { |slice| slice[:slice_id] }
84
-
85
- element_names = group_metadata.must_supports[:elements]
86
- .select { |element| element[:uscdi_only].presence == uscdi_only.presence }
87
- .map { |element| "#{resource_type}.#{element[:path]}" }
88
-
89
- extension_names = group_metadata.must_supports[:extensions]
90
- .select { |extension| extension[:uscdi_only].presence == uscdi_only.presence }
91
- .map { |extension| extension[:id] }
92
-
93
- group_metadata.must_supports[:choices]&.each do |choice|
94
- next unless choice[:uscdi_only].presence == uscdi_only.presence && choice.key?(:paths)
95
-
96
- choice[:paths].each { |path| element_names.delete("#{resource_type}.#{path}") }
97
- element_names << choice[:paths].map { |path| "#{resource_type}.#{path}" }.join(' or ')
98
- end
99
-
100
- (slice_names + element_names + extension_names)
101
- .uniq
102
- .sort
103
- .map { |name| "#{' ' * 8}* #{name}" }
104
- .join("\n")
105
- end
106
-
107
- def generate
108
- FileUtils.mkdir_p(output_file_directory)
109
- File.open(output_file_name, 'w') { |f| f.write(output) }
110
-
111
- group_metadata.add_test(
112
- id: test_id,
113
- file_name: base_output_file_name
114
- )
115
- end
116
- end
117
- end
118
- end