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,102 +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 SuiteGenerator
9
- class << self
10
- def generate(ig_metadata, base_output_dir)
11
- new(ig_metadata, base_output_dir).generate
12
- end
13
- end
14
-
15
- attr_accessor :ig_metadata, :base_output_dir
16
-
17
- def initialize(ig_metadata, base_output_dir)
18
- self.ig_metadata = ig_metadata
19
- self.base_output_dir = base_output_dir
20
- end
21
-
22
- def version_specific_message_filters
23
- []
24
- end
25
-
26
- def template
27
- @template ||= File.read(File.join(__dir__, 'templates', 'suite.rb.erb'))
28
- end
29
-
30
- def output
31
- @output ||= ERB.new(template).result(binding)
32
- end
33
-
34
- def base_output_file_name
35
- 'au_core_test_suite.rb'
36
- end
37
-
38
- def class_name
39
- 'AUCoreTestSuite'
40
- end
41
-
42
- def module_name
43
- "AUCore#{ig_metadata.reformatted_version.upcase}"
44
- end
45
-
46
- def output_file_name
47
- File.join(base_output_dir, base_output_file_name)
48
- end
49
-
50
- def suite_id
51
- "au_core_#{ig_metadata.reformatted_version}"
52
- end
53
-
54
- def fhir_api_group_id
55
- "au_core_#{ig_metadata.reformatted_version}_fhir_api"
56
- end
57
-
58
- def title
59
- "AU Core #{ig_metadata.ig_version}"
60
- end
61
-
62
- def ig_identifier
63
- version = ig_metadata.ig_version[1..] # Remove leading 'v'
64
- "hl7.fhir.au.core##{version}"
65
- end
66
-
67
- def ig_link
68
- version = ig_metadata.ig_version[1..] # Remove leading 'v'
69
- "https://hl7.org.au/fhir/core/#{version}"
70
- end
71
-
72
- def generate
73
- File.open(output_file_name, 'w') { |f| f.write(output) }
74
- end
75
-
76
- def groups
77
- ig_metadata.ordered_groups.compact
78
- .reject { |group| SpecialCases.exclude_group? group }
79
- end
80
-
81
- def group_id_list
82
- @group_id_list ||=
83
- groups.map(&:id)
84
- end
85
-
86
- def group_file_list
87
- @group_file_list ||=
88
- groups.map { |group| group.file_name.delete_suffix('.rb') }
89
- end
90
-
91
- def capability_statement_file_name
92
- # "../../custom_groups/#{ig_metadata.ig_version}/capability_statement_group"
93
- '../../custom_groups/v0.3.0-ballot/capability_statement_group'
94
- end
95
-
96
- def capability_statement_group_id
97
- # "au_core_#{ig_metadata.reformatted_version}_capability_statement"
98
- 'au_core_v030_ballot_capability_statement'
99
- end
100
- end
101
- end
102
- end
@@ -1,172 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'erb'
4
- require 'yaml'
5
-
6
- def symbolize_keys(hash)
7
- hash.transform_keys(&:to_sym).transform_values do |value|
8
- if value.is_a?(Hash)
9
- symbolize_keys(value)
10
- elsif value.is_a?(Array)
11
- value.map { |item| item.is_a?(Hash) ? symbolize_keys(item) : item }
12
- else
13
- value
14
- end
15
- end
16
- end
17
-
18
- def make_search_string(resource_name, search_names)
19
- search = search_names.map.with_index do |search_name, index|
20
- prefix = index.zero? ? '?' : '&'
21
- "#{prefix}#{search_name}={#{search_name}}"
22
- end
23
- "/#{resource_name}#{search.join('')}"
24
- end
25
-
26
- def search_string(file_path)
27
- search_names = extract_test_attribute(file_path, 'search_param_names')
28
- return unless search_names
29
-
30
- resource_type = extract_test_attribute(file_path, 'resource_type')
31
- make_search_string(resource_type, search_names)
32
- end
33
-
34
- def update_test_groups_titles(ig_index, test_groups)
35
- test_groups.each_with_index do |test_group, index|
36
- test_group_index = index + 2
37
- test_group[:title] = "#{ig_index}.#{test_group_index} #{test_group[:title]}"
38
- test_group[:tests].each_with_index do |test, t_index|
39
- test_index = t_index + 1
40
- test[:title] = "#{ig_index}.#{test_group_index}.#{test_index} #{test[:title]}"
41
- end
42
- end
43
- end
44
-
45
- def generate_summary_md(folder_hashes)
46
- summary_template = File.read(File.join(__dir__, 'templates', 'summary.md.erb'))
47
- folder_hashes.each do |folder_hash|
48
- folder_name = folder_hash[:folder_name]
49
- folder_path = folder_hash[:folder_path]
50
- test_groups = folder_hash[:test_groups]
51
-
52
- summary_content = ERB.new(summary_template).result(binding)
53
-
54
- File.open("#{folder_path}/summary.md", 'w') { |summary_file| summary_file.puts summary_content }
55
- end
56
- end
57
-
58
- def find_value_in_file(file_path, search_str)
59
- value = nil
60
- File.foreach(file_path) do |test_line|
61
- if test_line.include?(search_str)
62
- value = test_line.split(search_str)[1].strip.gsub("'", '')
63
- break
64
- end
65
- end
66
- value
67
- end
68
-
69
- def extract_test_attribute(test_file_path_with_id, attribute)
70
- attribute_value = nil
71
- case attribute
72
- when 'resource_type'
73
- attribute_value = find_value_in_file(test_file_path_with_id, 'resource_type').delete(':,').strip
74
- when 'search_param_names'
75
- dirty_value = find_value_in_file(test_file_path_with_id, 'search_param_names')
76
- attribute_value = dirty_value.scan(/\[(.*?)\]/).flatten.first.split(', ') if dirty_value
77
- when 'title', 'short_description'
78
- attribute_value = find_value_in_file(test_file_path_with_id, attribute)
79
- when 'description'
80
- content = File.read(test_file_path_with_id)
81
- matches = content.scan(/%\((.*?)\)/m)
82
- attribute_value = find_value_in_file(test_file_path_with_id, 'description') if matches.empty?
83
- matches.each { |match| attribute_value = match[0].strip }
84
- # TODO: Fix it
85
- attribute_value = attribute_value.gsub(
86
- '[AU Core Server CapabilityStatement](http://hl7.org.au/fhir/core/0.3.0-ballot/CapabilityStatement-au-core-server.html',
87
- '[AU Core Server CapabilityStatement](http://hl7.org.au/fhir/core/0.3.0-ballot/CapabilityStatement-au-core-server.html)'
88
- )
89
- else
90
- puts "Unknown attribute: #{attribute}"
91
- end
92
- attribute_value
93
- end
94
-
95
- directory_path = 'lib/au_core_test_kit/generated'
96
- folder_hashes = []
97
-
98
- if Dir.exist?(directory_path)
99
- folder_names = Dir.entries(directory_path).select do |entry|
100
- File.directory?(File.join(directory_path, entry)) && entry != '.' && entry != '..'
101
- end
102
-
103
- folder_names.each_with_index do |folder_name, index|
104
- folder_path = File.join(directory_path, folder_name)
105
- file_path = File.join(folder_path, 'au_core_test_suite.rb')
106
- test_groups = []
107
- ig_index = index + 1
108
-
109
- next unless File.exist?(file_path)
110
-
111
- File.foreach(file_path) do |line|
112
- if line.include?('group from: :')
113
- value = line[/:\s*([^\s]+)/, 1]
114
- id = value if value
115
- file_path_with_id = Dir.glob("#{folder_path}/*").find { |f| File.file?(f) && File.read(f).include?("id #{id}") }
116
- tests = []
117
- next unless id && file_path_with_id
118
-
119
- File.foreach(file_path_with_id) do |test_line|
120
- if test_line.include?('test from: :')
121
- test_value = test_line[/:\s*([^\s]+)/, 1]
122
- test_id = test_value if test_value
123
- Dir.glob("#{folder_path}/**/*").select { |f| File.file?(f) }.each do |test_file_path_with_id|
124
- next unless File.read(test_file_path_with_id).include?("id #{test_id}")
125
-
126
- tests << {
127
- id: test_id,
128
- test_file_path: test_file_path_with_id,
129
- title: extract_test_attribute(test_file_path_with_id, 'title'),
130
- description: extract_test_attribute(test_file_path_with_id, 'description'),
131
- search_string: search_string(test_file_path_with_id)
132
- }
133
- break
134
- end
135
- end
136
- end
137
- if id && file_path_with_id
138
- test_groups << {
139
- id:,
140
- file_path: file_path_with_id,
141
- title: extract_test_attribute(file_path_with_id, 'title'),
142
- short_description: extract_test_attribute(file_path_with_id, 'short_description'),
143
- description: extract_test_attribute(file_path_with_id, 'description'),
144
- tests:
145
- }
146
- end
147
- end
148
- end
149
-
150
- update_test_groups_titles(ig_index, test_groups)
151
- test_groups.unshift(
152
- symbolize_keys(
153
- YAML.safe_load(
154
- File.read(
155
- File.join(
156
- __dir__, 'assets', 'capability_statement_group.yaml'
157
- )
158
- )
159
- )
160
- )
161
- )
162
-
163
- folder_hashes << {
164
- folder_name: "#{ig_index} AU Core #{folder_name}",
165
- folder_path:,
166
- test_groups:
167
- }
168
- end
169
- generate_summary_md(folder_hashes)
170
- else
171
- puts "Directory not found: #{directory_path}"
172
- end
@@ -1,118 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module AUCoreTestKit
4
- class Generator
5
- class TerminologyBindingMetadataExtractor
6
- attr_accessor :profile_elements, :ig_resources, :resource
7
-
8
- def initialize(profile_elements, ig_resources, resource)
9
- self.profile_elements = profile_elements
10
- self.ig_resources = ig_resources
11
- self.resource = resource
12
- end
13
-
14
- def terminology_bindings
15
- (element_terminology_bindings + extension_terminology_bindings).compact
16
- # add_terminology_bindings_from_extensions
17
- # profile_elements.select { |element| element.type&.first&.code == 'Extension' }
18
- # .each { |extension| add_terminology_bindings_from_extension(extension) }
19
- end
20
-
21
- def element_has_fixed_value?(element)
22
- case element.type.first.code
23
- when 'Quantity'
24
- code = profile_elements.find { |e| e.path == "#{element.path}.code" }
25
- system = profile_elements.find { |e| e.path == "#{element.path}.system" }
26
- code&.fixedCode || system&.fixedUri
27
- when 'code'
28
- element.fixedCode.present?
29
- end
30
- end
31
-
32
- def element_has_optional_binding_slice?(element)
33
- element.sliceName.present? && element.min.zero?
34
- end
35
-
36
- def profile_elements_with_bindings
37
- profile_elements
38
- .select { |element| element.binding.present? && element.binding.strength == 'required' }
39
- .reject { |element| element_has_fixed_value?(element) || element_has_optional_binding_slice?(element) }
40
- end
41
-
42
- def element_terminology_bindings
43
- profile_elements_with_bindings.map do |element|
44
- binding = {
45
- type: element.type.first.code,
46
- strength: element.binding.strength,
47
- # Goal.target.detail has an unbound binding
48
- system: element.binding.valueSet&.split('|')&.first,
49
- path: element.path.gsub('[x]', '').gsub("#{resource}.", '')
50
- }
51
-
52
- binding[:required_binding_slice] = true if element.sliceName.present? && element.min.positive?
53
-
54
- binding
55
- end
56
- end
57
-
58
- def extension_profile_elements
59
- profile_elements
60
- .select { |element| element.type&.first&.code == 'Extension' }
61
- .select { |element| extension_profile_url(element).present? }
62
- end
63
-
64
- def extension_profile_url(extension)
65
- extension.type.first.profile&.first
66
- end
67
-
68
- def extension_terminology_bindings
69
- extension_profile_elements
70
- .flat_map do |extension_profile_element|
71
- url = extension_profile_url(extension_profile_element)
72
- extension = ig_resources.profile_by_url(url)
73
-
74
- # TODO: Temporaray fix for extension defined out of AU Core. FI-1623
75
- next if extension.nil?
76
-
77
- elements = extension.snapshot.element
78
- elements_with_bindings = elements.select do |element|
79
- element.binding.present? && !element.id.include?('Extension.extension')
80
- end
81
-
82
- elements_with_bindings.map do |element|
83
- {
84
- type: element.type.first.code,
85
- strength: element.binding.strength,
86
- system: element.binding.valueSet&.split('|')&.first,
87
- path: element.path.gsub('[x]', '').gsub('Extension.', ''),
88
- extensions: [url]
89
- }
90
- end + nested_extension_terminology_bindings(elements, url)
91
- end
92
- end
93
-
94
- def nested_extension_terminology_bindings(elements, extension_url)
95
- nested_extensions = elements.select { |element| element.path == 'Extension.extension' }
96
- nested_extensions.flat_map do |nested_extension|
97
- nested_extension_element = elements.find { |element| element.id == "#{nested_extension.id}.url" }
98
- next unless nested_extension_element.present?
99
-
100
- nested_extension_url = nested_extension_element.fixedUri
101
- nested_elements_with_bindings = elements.select do |element|
102
- element.id.include?(nested_extension.id) && element.binding.present?
103
- end
104
-
105
- nested_elements_with_bindings.map do |element|
106
- {
107
- type: element.type.first.code,
108
- strength: element.binding.strength,
109
- system: element.binding.valueSet&.split('|')&.first,
110
- path: element.path.gsub('[x]', '').gsub('Extension.extension.', ''),
111
- extensions: [extension_url, nested_extension_url]
112
- }
113
- end
114
- end
115
- end
116
- end
117
- end
118
- end
@@ -1,142 +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 ValidationTestGenerator
9
- class << self
10
- def generate(ig_metadata, base_output_dir)
11
- ig_metadata.groups
12
- .reject { |group| SpecialCases.exclude_group? group }
13
- .each do |group|
14
- new(group, base_output_dir:).generate
15
- next unless group.resource == 'MedicationRequest'
16
-
17
- # The Medication validation test lives in the MedicationRequest
18
- # group, so we need to pass in that group's metadata
19
- medication_group_metadata = ig_metadata.groups.find { |group| group.resource == 'Medication' }
20
- new(medication_group_metadata, group, base_output_dir:).generate
21
- end
22
- end
23
- end
24
-
25
- attr_accessor :group_metadata, :medication_request_metadata, :base_output_dir
26
-
27
- def initialize(group_metadata, medication_request_metadata = nil, base_output_dir:)
28
- self.group_metadata = group_metadata
29
- self.medication_request_metadata = medication_request_metadata
30
- self.base_output_dir = base_output_dir
31
- end
32
-
33
- def template
34
- @template ||= File.read(File.join(__dir__, 'templates', 'validation.rb.erb'))
35
- end
36
-
37
- def output
38
- @output ||= ERB.new(template).result(binding)
39
- end
40
-
41
- def base_output_file_name
42
- "#{class_name.underscore}.rb"
43
- end
44
-
45
- def output_file_directory
46
- File.join(base_output_dir, directory_name)
47
- end
48
-
49
- def output_file_name
50
- File.join(output_file_directory, base_output_file_name)
51
- end
52
-
53
- def directory_name
54
- Naming.snake_case_for_profile(medication_request_metadata || group_metadata)
55
- end
56
-
57
- def profile_identifier
58
- Naming.snake_case_for_profile(group_metadata)
59
- end
60
-
61
- def profile_url
62
- group_metadata.profile_url
63
- end
64
-
65
- def profile_name
66
- group_metadata.profile_name
67
- end
68
-
69
- def profile_version
70
- group_metadata.profile_version
71
- end
72
-
73
- def test_id
74
- "au_core_#{group_metadata.reformatted_version}_#{profile_identifier}_validation_test"
75
- end
76
-
77
- def class_name
78
- "#{Naming.upper_camel_case_for_profile(group_metadata)}ValidationTest"
79
- end
80
-
81
- def module_name
82
- "AUCore#{group_metadata.reformatted_version.upcase}"
83
- end
84
-
85
- def resource_type
86
- group_metadata.resource
87
- end
88
-
89
- def conformance_expectation
90
- read_interaction[:expectation]
91
- end
92
-
93
- def skip_if_empty
94
- # Return true if a system must demonstrate at least one example of the resource type.
95
- # This drives omit vs. skip result statuses in this test.
96
- resource_type != 'Medication'
97
- end
98
-
99
- def generate
100
- FileUtils.mkdir_p(output_file_directory)
101
- File.open(output_file_name, 'w') { |f| f.write(output) }
102
-
103
- test_metadata = {
104
- id: test_id,
105
- file_name: base_output_file_name
106
- }
107
-
108
- if resource_type == 'Medication'
109
- medication_request_metadata.add_test(**test_metadata)
110
- else
111
- group_metadata.add_test(**test_metadata)
112
- end
113
- end
114
-
115
- def description
116
- <<~DESCRIPTION
117
- #{description_intro}
118
- It verifies the presence of mandatory elements and that elements with
119
- required bindings contain appropriate values. CodeableConcept element
120
- bindings will fail if none of their codings have a code/system belonging
121
- to the bound ValueSet. Quantity, Coding, and code element bindings will
122
- fail if their code/system are not found in the valueset.
123
- DESCRIPTION
124
- end
125
-
126
- def description_intro
127
- if resource_type == 'Medication'
128
- <<~MEDICATION_INTRO
129
- This test verifies resources returned from previous tests conform to
130
- the [#{profile_name}](#{profile_url}).
131
- MEDICATION_INTRO
132
- else
133
- <<~GENERIC_INTRO
134
- This test verifies resources returned from the first search conform to
135
- the [#{profile_name}](#{profile_url}).
136
- If at least one resource from the first search is invalid, the test will fail.
137
- GENERIC_INTRO
138
- end
139
- end
140
- end
141
- end
142
- end
@@ -1,107 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module AUCoreTestKit
4
- class Generator
5
- class ValueExactor
6
- attr_accessor :ig_resources, :resource, :profile_elements
7
-
8
- def initialize(ig_resources, resource, profile_elements)
9
- self.ig_resources = ig_resources
10
- self.resource = resource
11
- self.profile_elements = profile_elements
12
- end
13
-
14
- def values_from_required_binding(profile_element)
15
- return [] unless profile_element&.max == '*'
16
-
17
- profile_elements
18
- .select do |element|
19
- element.path == profile_element.path && element.binding&.strength == 'required'
20
- end
21
- .map { |element| values_from_value_set_binding(element) }
22
- .flatten.compact
23
- end
24
-
25
- def values_from_fixed_codes(profile_element, type)
26
- return [] unless type == 'CodeableConcept'
27
-
28
- profile_elements
29
- .select do |element|
30
- element.path == "#{profile_element.path}.coding.code" && element.fixedCode.present?
31
- end
32
- .map(&:fixedCode)
33
- end
34
-
35
- def values_from_pattern_coding(profile_element, type)
36
- return [] unless type == 'CodeableConcept'
37
-
38
- profile_elements
39
- .select do |element|
40
- element.path == "#{profile_element.path}.coding" && element.patternCoding.present?
41
- end
42
- .map { |element| element.patternCoding.code }
43
- end
44
-
45
- def values_from_pattern_codeable_concept(profile_element, type)
46
- return [] unless type == 'CodeableConcept'
47
-
48
- profile_elements
49
- .select do |element|
50
- element.path == profile_element.path && element.patternCodeableConcept.present? && element.min.positive?
51
- end
52
- .map { |element| element.patternCodeableConcept.coding.first.code }
53
- end
54
-
55
- def value_set_binding(the_element)
56
- the_element&.binding
57
- end
58
-
59
- def value_set(the_element)
60
- ig_resources.value_set_by_url(value_set_binding(the_element)&.valueSet)
61
- end
62
-
63
- def bound_systems(the_element)
64
- bound_systems_from_valueset(value_set(the_element))
65
- end
66
-
67
- def bound_systems_from_valueset(value_set)
68
- value_set&.compose&.include&.map do |include|
69
- if include.concept.present?
70
- include
71
- elsif include.system.present? && include.filter&.empty? # Cannot process intensional value set with filters
72
- ig_resources.code_system_by_url(include.system)
73
- elsif include.valueSet.present?
74
- include.valueSet.map do |vs|
75
- a_value_set = ig_resources.value_set_by_url(vs)
76
- bound_systems_from_valueset(a_value_set)
77
- end
78
- end
79
- end&.flatten&.compact
80
- end
81
-
82
- def values_from_value_set_binding(the_element)
83
- bound_systems = bound_systems(the_element)
84
-
85
- return [] if bound_systems.blank?
86
-
87
- bound_systems.flat_map { |system| system.concept.map(&:code) }.uniq
88
- end
89
-
90
- def fhir_metadata(current_path)
91
- FHIR.const_get(resource)::METADATA[current_path]
92
- end
93
-
94
- def values_from_resource_metadata(paths)
95
- values = []
96
-
97
- paths.each do |current_path|
98
- current_metadata = fhir_metadata(current_path)
99
-
100
- values += current_metadata['valid_codes'].values.flatten if current_metadata&.dig('valid_codes').present?
101
- end
102
-
103
- values
104
- end
105
- end
106
- end
107
- end