carin_for_blue_button_test_kit 0.15.0 → 0.15.1

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 (322) hide show
  1. checksums.yaml +4 -4
  2. data/lib/carin_for_blue_button_test_kit/capability_statement/tests/instantiates_test.rb +1 -0
  3. data/lib/carin_for_blue_button_test_kit/capability_statement/tests/json_support_test.rb +1 -0
  4. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/c4bb_client_test_suite.rb +191 -126
  5. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_auth_smart_alca_group.rb +30 -0
  6. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_auth_smart_alcs_group.rb +30 -0
  7. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_auth_smart_alp_group.rb +30 -0
  8. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_auth_udap_group.rb +29 -0
  9. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_options.rb +25 -0
  10. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_registration/configuration_display_smart_test.rb +36 -0
  11. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_registration/configuration_display_udap_test.rb +36 -0
  12. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_registration_group.rb +65 -0
  13. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/client_validation_test.rb +1 -1
  14. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/endpoints/authorization_endpoint.rb +51 -0
  15. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/endpoints/next_page_endpoint.rb +4 -3
  16. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/endpoints/resource_api_endpoint.rb +4 -3
  17. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/endpoints/resource_id_endpoint.rb +4 -3
  18. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/endpoints/token_endpoint.rb +60 -62
  19. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/initial_wait_test.rb +33 -33
  20. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/metadata/mock_capability_statement.json.erb +3 -4
  21. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/mock_server.rb +12 -30
  22. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/required_searches_tests/coverage_required_searches.rb +6 -0
  23. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/required_searches_tests/eob_required_searches.rb +6 -0
  24. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/required_searches_tests/organization_required_searches.rb +6 -0
  25. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/required_searches_tests/patient_required_searches.rb +6 -0
  26. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/required_searches_tests/practitioner_required_searches.rb +6 -0
  27. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/required_searches_tests/relatedperson_required_searches.rb +6 -0
  28. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/tags.rb +2 -5
  29. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/urls.rb +11 -7
  30. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0/c4bb_smart_launch_group.rb +9 -0
  31. data/lib/carin_for_blue_button_test_kit/docs/carin_for_blue_button_v2.0.0_client_suite_description.md +136 -30
  32. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage/metadata.yml +12 -4
  33. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage/must_support_test.rb +4 -2
  34. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/metadata.yml +6 -0
  35. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/patient_search_test.rb +6 -2
  36. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/metadata.yml +155 -91
  37. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/must_support_test.rb +23 -9
  38. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/patient_search_test.rb +6 -2
  39. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/metadata.yml +155 -91
  40. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/must_support_test.rb +21 -10
  41. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/patient_search_test.rb +6 -2
  42. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/metadata.yml +114 -68
  43. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/must_support_test.rb +22 -7
  44. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/patient_search_test.rb +6 -2
  45. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/metadata.yml +103 -60
  46. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/must_support_test.rb +13 -6
  47. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/patient_search_test.rb +6 -2
  48. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/metadata.yml +568 -314
  49. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/organization/metadata.yml +8 -4
  50. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient/metadata.yml +11 -2
  51. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient/must_support_test.rb +4 -0
  52. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/practitioner/metadata.yml +4 -2
  53. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/id_search_test.rb +11 -6
  54. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/lastupdated_search_test.rb +1 -0
  55. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/metadata.yml +12 -4
  56. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/must_support_test.rb +5 -2
  57. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/validation_test.rb +1 -0
  58. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage_group.rb +1 -0
  59. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/billable_period_start_search_test.rb +1 -0
  60. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/id_search_test.rb +1 -0
  61. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/identifier_search_test.rb +1 -0
  62. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/lastupdated_search_test.rb +1 -0
  63. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/metadata.yml +9 -2
  64. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/must_support_test.rb +2 -1
  65. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/patient_search_test.rb +7 -2
  66. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/service_date_search_test.rb +1 -0
  67. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/service_start_date_search_test.rb +1 -0
  68. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/type_search_test.rb +1 -0
  69. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/validation_test.rb +2 -0
  70. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_group.rb +1 -0
  71. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/billable_period_start_search_test.rb +1 -0
  72. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/id_search_test.rb +1 -0
  73. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/identifier_search_test.rb +1 -0
  74. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/lastupdated_search_test.rb +1 -0
  75. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/metadata.yml +164 -94
  76. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/must_support_test.rb +25 -10
  77. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/patient_search_test.rb +7 -2
  78. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/service_date_search_test.rb +1 -0
  79. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/service_start_date_search_test.rb +1 -0
  80. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/type_search_test.rb +1 -0
  81. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/validation_test.rb +3 -0
  82. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/billable_period_start_search_test.rb +1 -0
  83. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/id_search_test.rb +1 -0
  84. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/identifier_search_test.rb +1 -0
  85. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/lastupdated_search_test.rb +1 -0
  86. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/metadata.yml +129 -77
  87. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/must_support_test.rb +24 -10
  88. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/patient_search_test.rb +7 -2
  89. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/service_date_search_test.rb +1 -0
  90. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/service_start_date_search_test.rb +1 -0
  91. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/type_search_test.rb +1 -0
  92. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/validation_test.rb +1 -0
  93. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/billable_period_start_search_test.rb +1 -0
  94. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/id_search_test.rb +1 -0
  95. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/identifier_search_test.rb +1 -0
  96. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/lastupdated_search_test.rb +1 -0
  97. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/metadata.yml +164 -94
  98. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/must_support_test.rb +23 -11
  99. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/patient_search_test.rb +7 -2
  100. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/service_date_search_test.rb +1 -0
  101. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/service_start_date_search_test.rb +1 -0
  102. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/type_search_test.rb +1 -0
  103. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/validation_test.rb +1 -0
  104. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/billable_period_start_search_test.rb +1 -0
  105. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/id_search_test.rb +1 -0
  106. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/identifier_search_test.rb +1 -0
  107. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/lastupdated_search_test.rb +1 -0
  108. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/metadata.yml +128 -78
  109. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/must_support_test.rb +25 -9
  110. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/patient_search_test.rb +7 -2
  111. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/service_date_search_test.rb +1 -0
  112. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/service_start_date_search_test.rb +1 -0
  113. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/type_search_test.rb +1 -0
  114. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/validation_test.rb +1 -0
  115. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/billable_period_start_search_test.rb +1 -0
  116. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/id_search_test.rb +1 -0
  117. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/identifier_search_test.rb +1 -0
  118. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/lastupdated_search_test.rb +1 -0
  119. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/metadata.yml +121 -68
  120. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/must_support_test.rb +14 -7
  121. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/patient_search_test.rb +7 -2
  122. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/service_date_search_test.rb +1 -0
  123. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/service_start_date_search_test.rb +1 -0
  124. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/type_search_test.rb +1 -0
  125. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/validation_test.rb +1 -0
  126. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/metadata.yml +752 -415
  127. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/id_search_test.rb +11 -6
  128. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/lastupdated_search_test.rb +1 -0
  129. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/metadata.yml +8 -4
  130. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/must_support_test.rb +1 -0
  131. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/validation_test.rb +1 -0
  132. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization_group.rb +1 -0
  133. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/id_search_test.rb +7 -2
  134. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/lastupdated_search_test.rb +1 -0
  135. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/metadata.yml +11 -2
  136. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/must_support_test.rb +5 -0
  137. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/validation_test.rb +1 -0
  138. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient_group.rb +1 -0
  139. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/id_search_test.rb +11 -6
  140. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/lastupdated_search_test.rb +1 -0
  141. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/metadata.yml +4 -2
  142. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/must_support_test.rb +1 -0
  143. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/validation_test.rb +1 -0
  144. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner_group.rb +1 -0
  145. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/id_search_test.rb +11 -6
  146. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/lastupdated_search_test.rb +1 -0
  147. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/metadata.yml +2 -0
  148. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/must_support_test.rb +1 -0
  149. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/validation_test.rb +1 -0
  150. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person_group.rb +1 -0
  151. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/id_search_test.rb +11 -6
  152. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/lastupdated_search_test.rb +1 -0
  153. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/metadata.yml +12 -4
  154. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/must_support_test.rb +5 -2
  155. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/validation_test.rb +1 -0
  156. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage_group.rb +1 -0
  157. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/billable_period_start_search_test.rb +1 -0
  158. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/id_search_test.rb +1 -0
  159. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/identifier_search_test.rb +1 -0
  160. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/lastupdated_search_test.rb +1 -0
  161. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/metadata.yml +9 -2
  162. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/must_support_test.rb +2 -1
  163. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/patient_search_test.rb +7 -2
  164. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/service_date_search_test.rb +1 -0
  165. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/service_start_date_search_test.rb +1 -0
  166. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/type_search_test.rb +1 -0
  167. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/validation_test.rb +1 -0
  168. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_group.rb +1 -0
  169. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/billable_period_start_search_test.rb +1 -0
  170. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/id_search_test.rb +1 -0
  171. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/identifier_search_test.rb +1 -0
  172. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/lastupdated_search_test.rb +1 -0
  173. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/metadata.yml +164 -94
  174. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/must_support_test.rb +25 -10
  175. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/patient_search_test.rb +7 -2
  176. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/service_date_search_test.rb +1 -0
  177. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/service_start_date_search_test.rb +1 -0
  178. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/type_search_test.rb +1 -0
  179. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/validation_test.rb +1 -0
  180. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/billable_period_start_search_test.rb +1 -0
  181. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/id_search_test.rb +1 -0
  182. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/identifier_search_test.rb +1 -0
  183. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/lastupdated_search_test.rb +1 -0
  184. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/metadata.yml +59 -41
  185. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/must_support_test.rb +22 -8
  186. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/patient_search_test.rb +7 -2
  187. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/service_date_search_test.rb +1 -0
  188. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/service_start_date_search_test.rb +1 -0
  189. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/type_search_test.rb +1 -0
  190. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/validation_test.rb +1 -0
  191. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/billable_period_start_search_test.rb +1 -0
  192. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/id_search_test.rb +1 -0
  193. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/identifier_search_test.rb +1 -0
  194. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/lastupdated_search_test.rb +1 -0
  195. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/metadata.yml +129 -77
  196. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/must_support_test.rb +24 -10
  197. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/patient_search_test.rb +7 -2
  198. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/service_date_search_test.rb +1 -0
  199. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/service_start_date_search_test.rb +1 -0
  200. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/type_search_test.rb +1 -0
  201. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/validation_test.rb +1 -0
  202. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/billable_period_start_search_test.rb +1 -0
  203. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/id_search_test.rb +1 -0
  204. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/identifier_search_test.rb +1 -0
  205. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/lastupdated_search_test.rb +1 -0
  206. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/metadata.yml +59 -42
  207. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/must_support_test.rb +22 -9
  208. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/patient_search_test.rb +7 -2
  209. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/service_date_search_test.rb +1 -0
  210. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/service_start_date_search_test.rb +1 -0
  211. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/type_search_test.rb +1 -0
  212. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/validation_test.rb +1 -0
  213. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/billable_period_start_search_test.rb +1 -0
  214. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/id_search_test.rb +1 -0
  215. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/identifier_search_test.rb +1 -0
  216. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/lastupdated_search_test.rb +1 -0
  217. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/metadata.yml +164 -94
  218. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/must_support_test.rb +23 -11
  219. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/patient_search_test.rb +7 -2
  220. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/service_date_search_test.rb +1 -0
  221. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/service_start_date_search_test.rb +1 -0
  222. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/type_search_test.rb +1 -0
  223. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/validation_test.rb +1 -0
  224. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/billable_period_start_search_test.rb +1 -0
  225. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/id_search_test.rb +1 -0
  226. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/identifier_search_test.rb +1 -0
  227. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/lastupdated_search_test.rb +1 -0
  228. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/metadata.yml +58 -40
  229. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/must_support_test.rb +19 -8
  230. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/patient_search_test.rb +7 -2
  231. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/service_date_search_test.rb +1 -0
  232. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/service_start_date_search_test.rb +1 -0
  233. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/type_search_test.rb +1 -0
  234. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/validation_test.rb +1 -0
  235. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/billable_period_start_search_test.rb +1 -0
  236. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/id_search_test.rb +1 -0
  237. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/identifier_search_test.rb +1 -0
  238. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/lastupdated_search_test.rb +1 -0
  239. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/metadata.yml +127 -78
  240. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/must_support_test.rb +24 -9
  241. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/patient_search_test.rb +7 -2
  242. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/service_date_search_test.rb +1 -0
  243. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/service_start_date_search_test.rb +1 -0
  244. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/type_search_test.rb +1 -0
  245. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/validation_test.rb +1 -0
  246. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/billable_period_start_search_test.rb +1 -0
  247. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/id_search_test.rb +1 -0
  248. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/identifier_search_test.rb +1 -0
  249. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/lastupdated_search_test.rb +1 -0
  250. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/metadata.yml +57 -43
  251. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/must_support_test.rb +22 -8
  252. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/patient_search_test.rb +7 -2
  253. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/service_date_search_test.rb +1 -0
  254. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/service_start_date_search_test.rb +1 -0
  255. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/type_search_test.rb +1 -0
  256. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/validation_test.rb +1 -0
  257. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/billable_period_start_search_test.rb +1 -0
  258. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/id_search_test.rb +1 -0
  259. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/identifier_search_test.rb +1 -0
  260. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/lastupdated_search_test.rb +1 -0
  261. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/metadata.yml +121 -68
  262. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/must_support_test.rb +14 -7
  263. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/patient_search_test.rb +7 -2
  264. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/service_date_search_test.rb +1 -0
  265. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/service_start_date_search_test.rb +1 -0
  266. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/type_search_test.rb +1 -0
  267. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/validation_test.rb +1 -0
  268. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/billable_period_start_search_test.rb +1 -0
  269. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/id_search_test.rb +1 -0
  270. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/identifier_search_test.rb +1 -0
  271. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/lastupdated_search_test.rb +1 -0
  272. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/metadata.yml +51 -33
  273. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/must_support_test.rb +12 -6
  274. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/patient_search_test.rb +7 -2
  275. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/service_date_search_test.rb +1 -0
  276. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/service_start_date_search_test.rb +1 -0
  277. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/type_search_test.rb +1 -0
  278. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/validation_test.rb +1 -0
  279. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/metadata.yml +1035 -604
  280. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/id_search_test.rb +11 -6
  281. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/lastupdated_search_test.rb +1 -0
  282. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/metadata.yml +8 -4
  283. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/must_support_test.rb +1 -0
  284. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/validation_test.rb +1 -0
  285. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization_group.rb +1 -0
  286. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/id_search_test.rb +7 -2
  287. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/lastupdated_search_test.rb +1 -0
  288. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/metadata.yml +11 -2
  289. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/must_support_test.rb +5 -0
  290. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/validation_test.rb +1 -0
  291. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient_group.rb +1 -0
  292. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/id_search_test.rb +11 -6
  293. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/lastupdated_search_test.rb +1 -0
  294. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/metadata.yml +4 -2
  295. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/must_support_test.rb +1 -0
  296. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/validation_test.rb +1 -0
  297. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner_group.rb +1 -0
  298. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/id_search_test.rb +11 -6
  299. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/lastupdated_search_test.rb +1 -0
  300. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/metadata.yml +2 -0
  301. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/must_support_test.rb +1 -0
  302. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/validation_test.rb +1 -0
  303. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person_group.rb +1 -0
  304. data/lib/carin_for_blue_button_test_kit/generator/group_generator.rb +2 -2
  305. data/lib/carin_for_blue_button_test_kit/generator/group_metadata_extractor.rb +2 -3
  306. data/lib/carin_for_blue_button_test_kit/generator/must_support_test_generator.rb +2 -2
  307. data/lib/carin_for_blue_button_test_kit/generator/search_test_generator.rb +1 -1
  308. data/lib/carin_for_blue_button_test_kit/generator/templates/group.rb.erb +5 -0
  309. data/lib/carin_for_blue_button_test_kit/generator/templates/must_support.rb.erb +3 -0
  310. data/lib/carin_for_blue_button_test_kit/generator/templates/search.rb.erb +6 -1
  311. data/lib/carin_for_blue_button_test_kit/generator/templates/validation.rb.erb +10 -0
  312. data/lib/carin_for_blue_button_test_kit/generator/validation_test_generator.rb +1 -1
  313. data/lib/carin_for_blue_button_test_kit/must_support_test.rb +1 -192
  314. data/lib/carin_for_blue_button_test_kit/requirements/carin-for-blue-button-test-kit_out_of_scope_requirements.csv +15 -0
  315. data/lib/carin_for_blue_button_test_kit/requirements/carin-for-blue-button-test-kit_requirements.csv +80 -85
  316. data/lib/carin_for_blue_button_test_kit/requirements/generated/carin-for-blue-button-test-kit_requirements_coverage.csv +183 -240
  317. data/lib/carin_for_blue_button_test_kit/version.rb +2 -2
  318. data/lib/requirements_config.yaml +3 -0
  319. metadata +29 -9
  320. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/endpoints/authorize_endpoint.rb +0 -32
  321. data/lib/carin_for_blue_button_test_kit/client/v2.0.0/mock_authorization.rb +0 -35
  322. data/lib/carin_for_blue_button_test_kit/generator/must_support_metadata_extractor.rb +0 -326
@@ -14,198 +14,7 @@ module CarinForBlueButtonTestKit
14
14
  def perform_must_support_test(resources)
15
15
  skip_if resources.blank?, "No #{resource_type} resources were found"
16
16
 
17
- missing_elements(resources)
18
- missing_slices(resources)
19
- missing_extensions(resources)
20
-
21
- handle_must_support_choices if metadata.must_supports[:choices].present?
22
-
23
- if (missing_elements + missing_slices + missing_extensions).length.zero?
24
- pass
25
- end
26
-
27
- skip "Could not find #{missing_must_support_strings.join(', ')} in the #{resources.length} " \
28
- "provided #{resource_type} resource(s)"
29
- end
30
-
31
- def handle_must_support_choices
32
- missing_elements.delete_if do |element|
33
- choices = metadata.must_supports[:choices].find { |choice| choice[:paths]&.include?(element[:path]) }
34
- is_any_choice_supported?(choices)
35
- end
36
-
37
- missing_extensions.delete_if do |extension|
38
- choices = metadata.must_supports[:choices].find { |choice| choice[:extension_ids]&.include?(extension[:id]) }
39
- is_any_choice_supported?(choices)
40
- end
41
-
42
- missing_slices.delete_if do |slice|
43
- choices = metadata.must_supports[:choices].find { |choice| choice[:slice_names]&.include?(slice[:name]) }
44
- is_any_choice_supported?(choices)
45
- end
46
- end
47
-
48
- def is_any_choice_supported? (choices)
49
- choices.present? &&
50
- (
51
- choices[:paths]&.any? { |path| missing_elements.none? { |element| element[:path] == path } } ||
52
- choices[:extension_ids]&.any? { |extension_id| missing_extensions.none? { |extension| extension[:id] == extension_id} } ||
53
- choices[:slice_names]&.any? { |slice_name| missing_slices.none? { |slice| slice[:name] == slice_name} }
54
- )
55
- end
56
-
57
- def missing_must_support_strings
58
- missing_elements.map { |element_definition| missing_element_string(element_definition) } +
59
- missing_slices.map { |slice_definition| slice_definition[:name] } +
60
- missing_extensions.map { |extension_definition| extension_definition[:id] }
61
- end
62
-
63
- def missing_element_string(element_definition)
64
- if element_definition[:fixed_value].present?
65
- "#{element_definition[:path]}:#{element_definition[:fixed_value]}"
66
- else
67
- element_definition[:path]
68
- end
69
- end
70
-
71
- def exclude_uscdi_only_test?
72
- config.options[:exclude_uscdi_only_test] == true
73
- end
74
-
75
- def must_support_extensions
76
- if exclude_uscdi_only_test?
77
- metadata.must_supports[:extensions].reject{ |extension| extension[:uscdi_only] }
78
- else
79
- metadata.must_supports[:extensions]
80
- end
81
- end
82
-
83
- def missing_extensions(resources = [])
84
- @missing_extensions ||=
85
- must_support_extensions.select do |extension_definition|
86
- resources.none? do |resource|
87
- resource.extension.any? { |extension| extension.url == extension_definition[:url] }
88
- end
89
- end
90
- end
91
-
92
- def must_support_elements
93
- if exclude_uscdi_only_test?
94
- metadata.must_supports[:elements].reject{ |element| element[:uscdi_only] }
95
- else
96
- metadata.must_supports[:elements]
97
- end
98
- end
99
-
100
- def missing_elements(resources = [])
101
- @missing_elements ||=
102
- must_support_elements.select do |element_definition|
103
- resources.none? do |resource|
104
- path = element_definition[:path] #.delete_suffix('[x]')
105
- value_found = find_a_value_at(resource, path) do |value|
106
- value_without_extensions =
107
- value.respond_to?(:to_hash) ? value.to_hash.reject { |key, _| key == 'extension' } : value
108
-
109
- (value_without_extensions.present? || value_without_extensions == false) &&
110
- (element_definition[:fixed_value].blank? || value.try(:source_hash) == element_definition[:fixed_value] || value == element_definition[:fixed_value])
111
-
112
- end
113
-
114
- # Note that false.present? => false, which is why we need to add this extra check
115
- value_found.present? || value_found == false
116
- end
117
- end
118
-
119
- @missing_elements
120
- end
121
-
122
- def must_support_slices
123
- if exclude_uscdi_only_test?
124
- metadata.must_supports[:slices].reject{ |slice| slice[:uscdi_only] }
125
- else
126
- metadata.must_supports[:slices]
127
- end
128
- end
129
-
130
- def missing_slices(resources = [])
131
- @missing_slices ||=
132
- must_support_slices.select do |slice|
133
- resources.none? do |resource|
134
- path = slice[:path] # .delete_suffix('[x]')
135
- find_slice(resource, path, slice[:discriminator]).present?
136
- end
137
- end
138
- end
139
-
140
- def find_slice(resource, path, discriminator)
141
- find_a_value_at(resource, path) do |element|
142
- case discriminator[:type]
143
- when 'patternCodeableConcept'
144
- coding_path = discriminator[:path].present? ? "#{discriminator[:path]}.coding" : 'coding'
145
- find_a_value_at(element, coding_path) do |coding|
146
- coding.code == discriminator[:code] && coding.system == discriminator[:system]
147
- end
148
- when 'patternCoding'
149
- coding_path = discriminator[:path].present? ? discriminator[:path] : ''
150
- find_a_value_at(element, coding_path) do |coding|
151
- coding.code == discriminator[:code] && coding.system == discriminator[:system]
152
- end
153
- when 'patternIdentifier'
154
- find_a_value_at(element, discriminator[:path]) { |identifier| identifier.system == discriminator[:system] }
155
- when 'value'
156
- values = discriminator[:values].map { |value| value.merge(path: value[:path].split('.')) }
157
- find_slice_by_values(element, values)
158
- when 'type'
159
- case discriminator[:code]
160
- when 'Date'
161
- begin
162
- Date.parse(element)
163
- rescue ArgumentError
164
- false
165
- end
166
- when 'DateTime'
167
- begin
168
- DateTime.parse(element)
169
- rescue ArgumentError
170
- false
171
- end
172
- when 'String'
173
- element.is_a? String
174
- else
175
- element.is_a? FHIR.const_get(discriminator[:code])
176
- end
177
- when 'requiredBinding'
178
- coding_path = discriminator[:path].present? ? "#{discriminator[:path]}.coding" : 'coding'
179
- find_a_value_at(element, coding_path) {|coding| discriminator[:values].include?(coding.code) }
180
- end
181
- end
182
- end
183
-
184
- def find_slice_by_values(element, value_definitions)
185
- path_prefixes = value_definitions.map { |value_definition| value_definition[:path].first }.uniq
186
- Array.wrap(element).find do |el|
187
- path_prefixes.all? do |path_prefix|
188
- value_definitions_for_path =
189
- value_definitions
190
- .select { |value_definition| value_definition[:path].first == path_prefix }
191
- .each { |value_definition| value_definition[:path].shift }
192
-
193
- find_a_value_at(el, path_prefix) do |el_found|
194
- child_element_value_definitions, current_element_value_definitions =
195
- value_definitions_for_path.partition { |value_definition| value_definition[:path].present? }
196
-
197
- current_element_values_match =
198
- current_element_value_definitions
199
- .all? { |value_definition| value_definition[:value] == el_found }
200
-
201
- child_element_values_match =
202
- child_element_value_definitions.present? ?
203
- find_slice_by_values(el_found, child_element_value_definitions) : true
204
-
205
- current_element_values_match && child_element_values_match
206
- end
207
- end
208
- end
17
+ skip { assert_must_support_elements_present(resources, nil, metadata:) }
209
18
  end
210
19
  end
211
20
  end
@@ -28,16 +28,24 @@ hl7.fhir.us.carin-bb_2.0.0,96,Not Verifiable,Overly broad
28
28
  hl7.fhir.us.carin-bb_2.0.0,104,Not Verifiable,There's no point in checking that maybe something exists that could exist.
29
29
  hl7.fhir.us.carin-bb_2.0.0,106,Not Verifiable,There's no point in checking that maybe something exists that could exist.
30
30
  hl7.fhir.us.carin-bb_2.0.0,107,Not Verifiable,MAY requirement
31
+ hl7.fhir.us.carin-bb_2.0.0,118,Not Verifiable,Can't know externally if the explanationofbenefit adjusts a prior explanationofbenefit
32
+ hl7.fhir.us.carin-bb_2.0.0,119,Not Verifiable,Can't know externally if this explanationofbenefit has been adjusted by another
33
+ hl7.fhir.us.carin-bb_2.0.0,120,Not Verifiable,Can't externally know the order of explanationofbenefit adjustments
31
34
  hl7.fhir.us.carin-bb_2.0.0,121,Not Verifiable,Cannot test how client apps do look ups
32
35
  hl7.fhir.us.carin-bb_2.0.0,122,Not Verifiable,Cannot confirm if client apps assign value to something
33
36
  hl7.fhir.us.carin-bb_2.0.0,123,Not Verifiable,There's no point in checking that maybe something exists that could exist.
34
37
  hl7.fhir.us.carin-bb_2.0.0,126,Not Verifiable,There's no point in checking that maybe something exists that could exist.
38
+ hl7.fhir.us.carin-bb_2.0.0,130,Not Verifiable,Cannot know if a payer has line item amoutns
39
+ hl7.fhir.us.carin-bb_2.0.0,131,Not Verifiable,Cannot know if a payer has line item amoutns
40
+ hl7.fhir.us.carin-bb_2.0.0,132,Not Verifiable,Cannot know if a payer has line item amoutns
35
41
  hl7.fhir.us.carin-bb_2.0.0,137,Not Verifiable,Cannot confirm if client apps assign value to something
36
42
  hl7.fhir.us.carin-bb_2.0.0,138,Not Verifiable,Cannot confirm how a client uses values
37
43
  hl7.fhir.us.carin-bb_2.0.0,139,Not Verifiable,Cannot confirm if client apps assign value to something
38
44
  hl7.fhir.us.carin-bb_2.0.0,140,Not Verifiable,Cannot confirm how a client uses values
39
45
  hl7.fhir.us.carin-bb_2.0.0,143,Not Verifiable,Appears to be business logic not a calculation that we can confirm
40
46
  hl7.fhir.us.carin-bb_2.0.0,147,Not Verifiable,Cannot confirm how a client uses values
47
+ hl7.fhir.us.carin-bb_2.0.0,148,Not Verifiable,Service facility is an organization. Provider and care team are practitioners. They definitely won't be referencing the same objects. Can't compare `id`s as these are internal identifiers. More global identifiers like NPI are not required. So we don't have a way to compare these fields.
48
+ hl7.fhir.us.carin-bb_2.0.0,149,Not Verifiable,There's no `.diagnosisSequence` on `.item`. This is likely a typo.
41
49
  hl7.fhir.us.carin-bb_2.0.0,154,Not Verifiable,Appears to be business logic not a calculation that we can confirm
42
50
  hl7.fhir.us.carin-bb_2.0.0,155,Not Verifiable,Appears to be business logic not a calculation that we can confirm
43
51
  hl7.fhir.us.carin-bb_2.0.0,166,Not Verifiable,Cannot know how clients interpret data.
@@ -51,3 +59,10 @@ hl7.fhir.us.carin-bb_2.0.0,182,Not Verifiable,Cannot know
51
59
  hl7.fhir.us.carin-bb_2.0.0,184,Not Verifiable,Cannot confirm how a client uses values
52
60
  hl7.fhir.us.carin-bb_2.0.0,185,Not Verifiable,Cannot know
53
61
  hl7.fhir.us.carin-bb_2.0.0,188,Not Verifiable,Cannot confirm how a client uses values
62
+ hl7.fhir.us.carin-bb_2.0.0,190,Not Verifiable,Appears to be business logic not a calculation that we can confirm
63
+ hl7.fhir.us.carin-bb_2.0.0,191,Not Verifiable,Appears to be business logic not a calculation that we can confirm
64
+ hl7.fhir.us.carin-bb_2.0.0,192,Not Verifiable,Appears to be business logic not a calculation that we can confirm
65
+ hl7.fhir.us.carin-bb_2.0.0,193,Not Verifiable,Appears to be business logic not a calculation that we can confirm
66
+ hl7.fhir.us.carin-bb_2.0.0,194,Not Verifiable,Appears to be business logic not a calculation that we can confirm
67
+ hl7.fhir.us.carin-bb_2.0.0,195,Not Verifiable,Appears to be business logic not a calculation that we can confirm
68
+ hl7.fhir.us.carin-bb_2.0.0,196,Not Verifiable,Appears to be business logic not a calculation that we can confirm