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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 568b18da312669c0f601dd37cce2cecd00de51998b9c558b37a56c19a4bcf13d
4
- data.tar.gz: c57425f4370e1c833c2f35dba75504631c0eadce4dae46d59baa1373caf635e5
3
+ metadata.gz: 1b3cdc3b7c526f79be3e7941386187f42a15828d4ef19792aba376268fde1b8a
4
+ data.tar.gz: 7542f67061a8ac32bee0353d336c553d13a7fb2e58ebdcf573ed8957d9afae0b
5
5
  SHA512:
6
- metadata.gz: db660ea998fc0650c7511a6812fa4841fdb6981a2061374abdc449890961bf7d18b8818d94965efc56a9fcf8184f480977da0a787471a8c9950b88b02db0f0fa
7
- data.tar.gz: fae6cacd48c15c8134de7b5b7f3c6c67b3406ac84fd8bba258ae49b4bccfc2d5ae18c4a6198488bf3a7b78694b346cc8511ce4dde9867a2c845804e24b8e4270
6
+ metadata.gz: f6270e60778abe840346f9793143327f9fef4be1d408c317467316ca400faba3538708d66ba1e3c22a36ec6bdb3e77b2608ff03e4dfe44f3a372e8da518c7d05
7
+ data.tar.gz: 4265870ed675a4d105b92ffe6a861cbcb65162c847ef81c3543f5e625d01e3816e56c2523e4ee1b957d164232dfc7b598ad5e2f270e563c79bc988d5582f3ce3
@@ -6,6 +6,7 @@ module CarinForBlueButtonTestKit
6
6
  This test inspects the CapabilityStatement returned by the server to
7
7
  verify that the server instantiates http://hl7.org/fhir/us/carin-bb/CapabilityStatement/c4bb
8
8
  )
9
+ verifies_requirements 'hl7.fhir.us.carin-bb_2.0.0@17'
9
10
 
10
11
  uses_request :capability_statement
11
12
 
@@ -25,6 +25,7 @@ module CarinForBlueButtonTestKit
25
25
  * application/fhir+json
26
26
  )
27
27
  uses_request :capability_statement
28
+ verifies_requirements 'hl7.fhir.us.carin-bb_2.0.0@98'
28
29
 
29
30
  run do
30
31
  assert_resource_type(:capability_statement)
@@ -1,6 +1,6 @@
1
1
  require_relative 'endpoints/resource_api_endpoint'
2
2
  require_relative 'endpoints/token_endpoint'
3
- require_relative 'endpoints/authorize_endpoint'
3
+ require_relative 'endpoints/authorization_endpoint'
4
4
  require_relative 'endpoints/next_page_endpoint'
5
5
  require_relative 'endpoints/resource_id_endpoint'
6
6
 
@@ -9,8 +9,14 @@ require_relative 'mock_server'
9
9
  require_relative 'tags'
10
10
  require_relative 'collection'
11
11
  require_relative 'client_validation_test'
12
+ require_relative 'client_options'
12
13
 
14
+ require_relative 'client_registration_group'
13
15
  require_relative 'initial_wait_test'
16
+ require_relative 'client_auth_smart_alca_group'
17
+ require_relative 'client_auth_smart_alcs_group'
18
+ require_relative 'client_auth_smart_alp_group'
19
+ require_relative 'client_auth_udap_group'
14
20
 
15
21
  require_relative 'claim_data_request_tests/patient_claims_data_request_test'
16
22
  require_relative 'claim_data_request_tests/coverage_claims_data_request_test'
@@ -77,16 +83,50 @@ module CarinForBlueButtonTestKit
77
83
  end
78
84
  end
79
85
 
80
- suite_endpoint :post, TOKEN_PATH, MockAuthorization::TokenEndpoint
81
- suite_endpoint :get, AUTH_PATH, MockAuthorization::AuthorizeEndpoint
82
- suite_endpoint :post, AUTH_PATH, MockAuthorization::AuthorizeEndpoint
86
+ suite_option :client_type,
87
+ title: 'Client Security Type',
88
+ list_options: [
89
+ {
90
+ label: 'SMART App Launch Public Client',
91
+ value: CarinClientOptions::SMART_APP_LAUNCH_PUBLIC
92
+ },
93
+ {
94
+ label: 'SMART App Launch Confidential Symmetric Client',
95
+ value: CarinClientOptions::SMART_APP_LAUNCH_CONFIDENTIAL_SYMMETRIC
96
+ },
97
+ {
98
+ label: 'SMART App Launch Confidential Asymmetric Client',
99
+ value: CarinClientOptions::SMART_APP_LAUNCH_CONFIDENTIAL_ASYMMETRIC
100
+ },
101
+ {
102
+ label: 'UDAP Authorization Code Client',
103
+ value: CarinClientOptions::UDAP_AUTHORIZATION_CODE
104
+ }
105
+ ]
83
106
 
84
- suite_endpoint :get, PATIENT_PATH, ResourceAPIEndpoint
107
+ route(:get, METADATA_PATH, get_metadata)
108
+ route(:get, UDAPSecurityTestKit::UDAP_DISCOVERY_PATH, lambda { |_env|
109
+ UDAPSecurityTestKit::MockUDAPServer.udap_server_metadata(id)
110
+ })
111
+ route(:get, SMARTAppLaunch::SMART_DISCOVERY_PATH, lambda { |_env|
112
+ SMARTAppLaunch::MockSMARTServer.smart_server_metadata(id)
113
+ })
114
+ route(:get, SMARTAppLaunch::OIDC_DISCOVERY_PATH, ->(_env) {SMARTAppLaunch::MockSMARTServer.openid_connect_metadata(id) })
115
+ route(
116
+ :get,
117
+ SMARTAppLaunch::OIDC_JWKS_PATH,
118
+ ->(_env) { [200, { 'Content-Type' => 'application/json' }, [SMARTAppLaunch::OIDCJWKS.jwks_json]] }
119
+ )
120
+
121
+ suite_endpoint :post, UDAPSecurityTestKit::REGISTRATION_PATH,
122
+ UDAPSecurityTestKit::MockUDAPServer::RegistrationEndpoint
123
+ suite_endpoint :post, UDAPSecurityTestKit::TOKEN_PATH, MockUdapSmartServer::TokenEndpoint
124
+ suite_endpoint :get, UDAPSecurityTestKit::AUTHORIZATION_PATH, MockUdapSmartServer::AuthorizationEndpoint
125
+ suite_endpoint :post, UDAPSecurityTestKit::AUTHORIZATION_PATH, MockUdapSmartServer::AuthorizationEndpoint
85
126
 
127
+ suite_endpoint :get, PATIENT_PATH, ResourceAPIEndpoint
86
128
  suite_endpoint :get, RESOURCE_API_PATH, ResourceAPIEndpoint
87
-
88
129
  suite_endpoint :get, RESOURCE_ID_PATH, ResourceIDEndpoint
89
-
90
130
  suite_endpoint :get, BASE_FHIR_PATH, NextPageEndpoint
91
131
 
92
132
  resume_test_route :get, RESUME_CLAIMS_DATA_PATH do |request|
@@ -101,139 +141,164 @@ module CarinForBlueButtonTestKit
101
141
  C4BBV200ClientSuite.extract_token_from_query_params(request)
102
142
  end
103
143
 
104
- route(:get, METADATA_PATH, get_metadata)
105
- route(:get, SMART_CONFIG_PATH, carin_smart_config)
106
- route(:get, JKWS_PATH, MockAuthorization.method(:jwks))
107
-
108
- group do
109
- run_as_group
110
- title 'Wait for Claims Data and Search Requests'
111
- description %(
112
- This test will wait for the client system under test to submit requests for resources for each of the
113
- [CARIN for Blue Button profiles](https://hl7.org/fhir/us/carin-bb/STU2/artifacts.html#structures-resource-profiles),
114
- and for requests including all of the required search parameters for each resource type specified in the
115
- [C4BB CapabilityStatement](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html) and the
116
- [US Core Client CapabilityStatement](https://hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html).
117
- )
118
- id :c4bb_claims_data_wait_test_group
119
-
120
- test from: :c4bb_v200_initial_wait_test
121
- end
144
+ group from: :c4bb_v200_client_registration
122
145
 
123
146
  group do
124
- title 'C4BB Patient Profile claims data and search request tests'
147
+ title 'Verify CARIN for Blue Button Data Access'
125
148
  description %(
126
- These tests look through all the requests sent in from the client system to ensure a request was made that
127
- returned a Patient resource implementing the CARIN for Blue Button [Patient profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Patient.html).
128
- It will also verify that the client made a request using each required search parameter for the Patient resource
129
- specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#patient)
130
- and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html#patient)
131
- Capability Statements.
149
+ During these tests, the client under tests will access data from Inferno's simulated
150
+ CARIN for Blue Button server and then Inferno will check that the entire scope of
151
+ the API defined by the IG has been used.
132
152
  )
133
- id :c4bb_patient_profile_test_group
134
-
135
- test from: :patient_claims_data_request_test
136
- test from: :patient_required_searches
137
- end
138
-
139
- group do
140
- title 'C4BB Coverage Profile claims data and search request tests'
141
- description %(
142
- These tests look through all the requests sent in from the client system to ensure a request was made that
143
- returned a Coverage resource implementing the CARIN for Blue Button [Coverage profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Coverage.html).
144
- It will also verify that the client made a request using each required search parameter for the Coverage
145
- resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#coverage)
146
- and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html)
147
- Capability Statements.
148
- )
149
- id :c4bb_coverage_profile_test_group
153
+ id :c4bb_data_access
154
+ run_as_group
150
155
 
151
- test from: :coverage_claims_data_request_test
152
- test from: :coverage_required_searches
153
- end
156
+ group do
157
+ title 'Wait for Claims Data and Search Requests'
158
+ description %(
159
+ This test will wait for the client system under test to submit requests for resources for each of the
160
+ [CARIN for Blue Button profiles](https://hl7.org/fhir/us/carin-bb/STU2/artifacts.html#structures-resource-profiles),
161
+ and for requests including all of the required search parameters for each resource type specified in the
162
+ [C4BB CapabilityStatement](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html) and the
163
+ [US Core Client CapabilityStatement](https://hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html).
164
+ )
165
+ id :c4bb_claims_data_wait_test_group
166
+
167
+ test from: :c4bb_v200_initial_wait_test
168
+ end
154
169
 
155
- group do
156
- title 'C4BB Organization Profile claims data and search request tests'
157
- description %(
158
- These tests look through all the requests sent in from the client system to ensure a request was made that
159
- returned a Organization resource implementing the CARIN for Blue Button [Organization profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Organization.html).
160
- It will also verify that the client made a request using each required search parameter for the Organization
161
- resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#organization)
162
- and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html#organization)
163
- Capability Statements.
164
- )
165
- id :c4bb_organization_profile_test_group
166
- optional
170
+ group do
171
+ title 'C4BB Patient Profile claims data and search request tests'
172
+ description %(
173
+ These tests look through all the requests sent in from the client system to ensure a request was made that
174
+ returned a Patient resource implementing the CARIN for Blue Button [Patient profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Patient.html).
175
+ It will also verify that the client made a request using each required search parameter for the Patient resource
176
+ specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#patient)
177
+ and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html#patient)
178
+ Capability Statements.
179
+ )
180
+ id :c4bb_patient_profile_test_group
181
+
182
+ test from: :patient_claims_data_request_test
183
+ test from: :patient_required_searches
184
+ end
167
185
 
168
- test from: :organization_claims_data_request_test
169
- test from: :organization_required_searches
170
- end
186
+ group do
187
+ title 'C4BB Coverage Profile claims data and search request tests'
188
+ description %(
189
+ These tests look through all the requests sent in from the client system to ensure a request was made that
190
+ returned a Coverage resource implementing the CARIN for Blue Button [Coverage profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Coverage.html).
191
+ It will also verify that the client made a request using each required search parameter for the Coverage
192
+ resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#coverage)
193
+ and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html)
194
+ Capability Statements.
195
+ )
196
+ id :c4bb_coverage_profile_test_group
197
+
198
+ test from: :coverage_claims_data_request_test
199
+ test from: :coverage_required_searches
200
+ end
171
201
 
172
- group do
173
- title 'C4BB Practitioner Profile claims data and search request tests'
174
- description %(
175
- These tests look through all the requests sent in from the client system to ensure a request was made that
176
- returned a Practitioner resource implementing the CARIN for Blue Button [Practitioner profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Practitioner.html).
177
- It will also verify that the client made a request using each required search parameter for the Practitioner
178
- resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#practitioner)
179
- and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html#practitioner)
180
- Capability Statements.
181
- )
182
- id :c4bb_practitioner_profile_test_group
183
- optional
202
+ group do
203
+ title 'C4BB Organization Profile claims data and search request tests'
204
+ description %(
205
+ These tests look through all the requests sent in from the client system to ensure a request was made that
206
+ returned a Organization resource implementing the CARIN for Blue Button [Organization profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Organization.html).
207
+ It will also verify that the client made a request using each required search parameter for the Organization
208
+ resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#organization)
209
+ and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html#organization)
210
+ Capability Statements.
211
+ )
212
+ id :c4bb_organization_profile_test_group
213
+ optional
214
+
215
+ test from: :organization_claims_data_request_test
216
+ test from: :organization_required_searches
217
+ end
184
218
 
185
- test from: :practitioner_claims_data_request_test
186
- test from: :practitioner_required_searches
187
- end
219
+ group do
220
+ title 'C4BB Practitioner Profile claims data and search request tests'
221
+ description %(
222
+ These tests look through all the requests sent in from the client system to ensure a request was made that
223
+ returned a Practitioner resource implementing the CARIN for Blue Button [Practitioner profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-Practitioner.html).
224
+ It will also verify that the client made a request using each required search parameter for the Practitioner
225
+ resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#practitioner)
226
+ and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html#practitioner)
227
+ Capability Statements.
228
+ )
229
+ id :c4bb_practitioner_profile_test_group
230
+ optional
231
+
232
+ test from: :practitioner_claims_data_request_test
233
+ test from: :practitioner_required_searches
234
+ end
188
235
 
189
- group do
190
- title 'C4BB RelatedPerson Profile claims data and search request tests'
191
- description %(
192
- These tests look through all the requests sent in from the client system to ensure a request was made that
193
- returned a RelatedPerson resource implementing the CARIN for Blue Button [RelatedPerson profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-RelatedPerson.html).
194
- It will also verify that the client made a request using each required search parameter for the RelatedPerson
195
- resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#relatedperson)
196
- and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html)
197
- Capability Statements.
198
- )
199
- id :c4bb_relatedperson_profile_test_group
200
- optional
236
+ group do
237
+ title 'C4BB RelatedPerson Profile claims data and search request tests'
238
+ description %(
239
+ These tests look through all the requests sent in from the client system to ensure a request was made that
240
+ returned a RelatedPerson resource implementing the CARIN for Blue Button [RelatedPerson profile](https://hl7.org/fhir/us/carin-bb/STU2/StructureDefinition-C4BB-RelatedPerson.html).
241
+ It will also verify that the client made a request using each required search parameter for the RelatedPerson
242
+ resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#relatedperson)
243
+ and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html)
244
+ Capability Statements.
245
+ )
246
+ id :c4bb_relatedperson_profile_test_group
247
+ optional
248
+
249
+ test from: :relatedperson_claims_data_request_test
250
+ test from: :relatedperson_required_searches
251
+ end
201
252
 
202
- test from: :relatedperson_claims_data_request_test
203
- test from: :relatedperson_required_searches
204
- end
253
+ group do
254
+ title 'C4BB ExplanationOfBenefit Profiles claims data and search request tests'
255
+ description %(
256
+ These tests look through all the requests sent in from the client system to ensure a request was made that
257
+ returned ExplanationOfBenefit resources implementing each of the
258
+ CARIN for Blue Button [ExplanationOfBenefit profiles](https://hl7.org/fhir/us/carin-bb/STU2/artifacts.html#structures-resource-profiles).
259
+ It will also verify that the client made a request using each required search parameter for the
260
+ ExplanationOfBenefit resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#explanationofbenefit)
261
+ and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html)
262
+ Capability Statements.
263
+ )
264
+ id :c4bb_explanationofbenefit_profiles_test_group
265
+
266
+ test from: :eob_inpatient_claims_data_request_test
267
+ test from: :eob_outpatient_claims_data_request_test
268
+ test from: :eob_oral_claims_data_request_test
269
+ test from: :eob_pharmacy_claims_data_request_test
270
+ test from: :eob_professional_claims_data_request_test
271
+ test from: :eob_required_searches
272
+ end
205
273
 
206
- group do
207
- title 'C4BB ExplanationOfBenefit Profiles claims data and search request tests'
208
- description %(
209
- These tests look through all the requests sent in from the client system to ensure a request was made that
210
- returned ExplanationOfBenefit resources implementing each of the
211
- CARIN for Blue Button [ExplanationOfBenefit profiles](https://hl7.org/fhir/us/carin-bb/STU2/artifacts.html#structures-resource-profiles).
212
- It will also verify that the client made a request using each required search parameter for the
213
- ExplanationOfBenefit resource specified in the [CARIN IG for Blue Button](https://hl7.org/fhir/us/carin-bb/STU2/CapabilityStatement-c4bb.html#explanationofbenefit)
214
- and the [US Core Client](https://www.hl7.org/fhir/us/core/STU3.1.1/CapabilityStatement-us-core-client.html)
215
- Capability Statements.
216
- )
217
- id :c4bb_explanationofbenefit_profiles_test_group
218
-
219
- test from: :eob_inpatient_claims_data_request_test
220
- test from: :eob_outpatient_claims_data_request_test
221
- test from: :eob_oral_claims_data_request_test
222
- test from: :eob_pharmacy_claims_data_request_test
223
- test from: :eob_professional_claims_data_request_test
224
- test from: :eob_required_searches
225
- end
274
+ group do
275
+ run_as_group
276
+ title 'CARIN For Blue Button Client Attestation'
277
+ description %(
278
+ Attest that the client system under test was able to sucessfully process all of the requested resources for
279
+ each of the CARIN for Blue Button profiles.
280
+ )
281
+ id :c4bb_client_attestation_test_group
226
282
 
227
- group do
228
- run_as_group
229
- title 'CARIN For Blue Button Client Attestation'
230
- description %(
231
- Attest that the client system under test was able to sucessfully process all of the requested resources for
232
- each of the CARIN for Blue Button profiles.
233
- )
234
- id :c4bb_client_attestation_test_group
283
+ test from: :client_claims_data_attestation
284
+ end
235
285
 
236
- test from: :client_claims_data_attestation
286
+ group from: :c4bb_v200_client_auth_smart_alca,
287
+ required_suite_options: {
288
+ client_type: CarinClientOptions::SMART_APP_LAUNCH_CONFIDENTIAL_ASYMMETRIC
289
+ }
290
+ group from: :c4bb_v200_client_auth_smart_alcs,
291
+ required_suite_options: {
292
+ client_type: CarinClientOptions::SMART_APP_LAUNCH_CONFIDENTIAL_SYMMETRIC
293
+ }
294
+ group from: :c4bb_v200_client_auth_smart_alp,
295
+ required_suite_options: {
296
+ client_type: CarinClientOptions::SMART_APP_LAUNCH_PUBLIC
297
+ }
298
+ group from: :c4bb_v200_client_auth_udap,
299
+ required_suite_options: {
300
+ client_type: CarinClientOptions::UDAP_AUTHORIZATION_CODE
301
+ }
237
302
  end
238
303
  end
239
304
  end
@@ -0,0 +1,30 @@
1
+ require 'smart_app_launch_test_kit'
2
+
3
+ module CarinForBlueButtonTestKit
4
+ class C4BBV200ClientAuthSMARTConfidentialAsymmetricGroup < Inferno::TestGroup
5
+ id :c4bb_v200_client_auth_smart_alca
6
+ title 'Review Authentication Interactions'
7
+ description %(
8
+ During these tests, Inferno will verify that the client interacted with Inferno's
9
+ simulated SMART authorization server in a conformant manner when requesting access tokens
10
+ and that the client under test was able to use provided access tokens to make CARIN
11
+ requests.
12
+
13
+ Before running these tests, perform the Data Access group so that the client
14
+ will request an access token and use it on a data access request.
15
+ )
16
+ run_as_group
17
+
18
+ # smart auth verification
19
+ test from: :smart_client_authorization_request_verification,
20
+ id: :c4bb_v200_client_authorization_smart_alca_verification,
21
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
22
+ test from: :smart_client_token_request_alca_verification,
23
+ id: :c4bb_v200_client_token_smart_alca_verification,
24
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
25
+ test from: :smart_client_token_use_verification,
26
+ config: {
27
+ options: { access_request_tags: [RESOURCE_ID_TAG, RESOURCE_API_TAG] }
28
+ }
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ require 'smart_app_launch_test_kit'
2
+
3
+ module CarinForBlueButtonTestKit
4
+ class C4BBV200ClientAuthSMARTConfidentialSymmetricGroup < Inferno::TestGroup
5
+ id :c4bb_v200_client_auth_smart_alcs
6
+ title 'Review Authentication Interactions'
7
+ description %(
8
+ During these tests, Inferno will verify that the client interacted with Inferno's
9
+ simulated SMART authorization server in a conformant manner when requesting access tokens
10
+ and that the client under test was able to use provided access tokens to make CARIN
11
+ requests.
12
+
13
+ Before running these tests, perform the Data Access group so that the client
14
+ will request an access token and use it on a data access request.
15
+ )
16
+ run_as_group
17
+
18
+ # smart auth verification
19
+ test from: :smart_client_authorization_request_verification,
20
+ id: :c4bb_v200_client_authorization_smart_alcs_verification,
21
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
22
+ test from: :smart_client_token_request_alcs_verification,
23
+ id: :c4bb_v200_client_token_smart_alcs_verification,
24
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
25
+ test from: :smart_client_token_use_verification,
26
+ config: {
27
+ options: { access_request_tags: [RESOURCE_ID_TAG, RESOURCE_API_TAG] }
28
+ }
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ require 'smart_app_launch_test_kit'
2
+
3
+ module CarinForBlueButtonTestKit
4
+ class C4BBV200ClientAuthSMARTPublicGroup < Inferno::TestGroup
5
+ id :c4bb_v200_client_auth_smart_alp
6
+ title 'Review Authentication Interactions'
7
+ description %(
8
+ During these tests, Inferno will verify that the client interacted with Inferno's
9
+ simulated SMART authorization server in a conformant manner when requesting access tokens
10
+ and that the client under test was able to use provided access tokens to make CARIN
11
+ requests.
12
+
13
+ Before running these tests, perform the Data Access group so that the client
14
+ will request an access token and use it on a data access request.
15
+ )
16
+ run_as_group
17
+
18
+ # smart auth verification
19
+ test from: :smart_client_authorization_request_verification,
20
+ id: :c4bb_v200_client_authorization_smart_alp_verification,
21
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
22
+ test from: :smart_client_token_request_alp_verification,
23
+ id: :c4bb_v200_client_token_smart_alp_verification,
24
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
25
+ test from: :smart_client_token_use_verification,
26
+ config: {
27
+ options: { access_request_tags: [RESOURCE_ID_TAG, RESOURCE_API_TAG] }
28
+ }
29
+ end
30
+ end
@@ -0,0 +1,29 @@
1
+ require 'udap_security_test_kit'
2
+
3
+ module CarinForBlueButtonTestKit
4
+ class C4BBV200ClientAuthUDAPGroup < Inferno::TestGroup
5
+ id :c4bb_v200_client_auth_udap
6
+ title 'Review UDAP Authentication Interactions'
7
+ description %(
8
+ During these tests, Inferno will verify that the client interacted with Inferno's
9
+ simulated UDAP authorization server in a conformant manner when requesting access tokens
10
+ and that the client under test was able to use provided access tokens to make CARIN
11
+ requests.
12
+
13
+ Before running these tests, perform the Data Access group so that the client
14
+ will request an access token and use it on a data access request.
15
+ )
16
+ run_as_group
17
+
18
+ test from: :udap_client_authorization_request_verification,
19
+ id: :c4bb_v200_client_authorization_udap_verification,
20
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
21
+ test from: :udap_client_token_request_ac_verification,
22
+ id: :c4bb_v200_client_token_udap_verification,
23
+ config: { options: { endpoint_suite_id: :c4bb_v200_client } }
24
+ test from: :udap_client_token_use_verification,
25
+ config: {
26
+ options: { access_request_tags: [RESOURCE_ID_TAG, RESOURCE_API_TAG] }
27
+ }
28
+ end
29
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'smart_app_launch_test_kit'
4
+ require 'udap_security_test_kit'
5
+ require_relative 'tags'
6
+
7
+ module CarinForBlueButtonTestKit
8
+ module CarinClientOptions
9
+ SMART_APP_LAUNCH_PUBLIC = SMARTAppLaunch::SMARTClientOptions::SMART_APP_LAUNCH_PUBLIC
10
+ SMART_APP_LAUNCH_CONFIDENTIAL_SYMMETRIC =
11
+ SMARTAppLaunch::SMARTClientOptions::SMART_APP_LAUNCH_CONFIDENTIAL_SYMMETRIC
12
+ SMART_APP_LAUNCH_CONFIDENTIAL_ASYMMETRIC =
13
+ SMARTAppLaunch::SMARTClientOptions::SMART_APP_LAUNCH_CONFIDENTIAL_ASYMMETRIC
14
+ UDAP_AUTHORIZATION_CODE =
15
+ UDAPSecurityTestKit::UDAPClientOptions::UDAP_AUTHORIZATION_CODE
16
+
17
+ def selected_security_ig(suite_options)
18
+ if suite_options[:client_type].include?(UDAPSecurityTestKit::UDAP_TAG)
19
+ UDAPSecurityTestKit::UDAP_TAG
20
+ else
21
+ SMARTAppLaunch::SMART_TAG
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,36 @@
1
+ require_relative '../urls'
2
+
3
+ module CarinForBlueButtonTestKit
4
+ class C4BBV200ClientRegistrationConfigurationSMARTDisplay < Inferno::Test
5
+ include URLs
6
+
7
+ id :c4bb_v200_client_reg_config_smart_display
8
+ title 'Confirm client configuration'
9
+ description %(
10
+ This test provides all the information needed for testers to configure
11
+ the client under test to communicate with Inferno's simulated CARIN server
12
+ including SMART endpoints to obtain access tokens using the SMART App Launch flow.
13
+ )
14
+
15
+ input :client_id
16
+
17
+ run do
18
+ wait(
19
+ identifier: client_id,
20
+ message: %(
21
+ **Inferno Simulated Server Details**:
22
+
23
+ FHIR Base URL: `#{fhir_base_url}`
24
+
25
+ Authentication Details:
26
+ - SMART Client Id: `#{client_id}`
27
+ - Authorization endpoint: `#{authorization_url}`
28
+ - Token endpoint: `#{token_url}`
29
+
30
+ [Click here](#{resume_pass_url}?token=#{client_id}) once you have configured
31
+ the client to connect to Inferno at the above endpoints.
32
+ )
33
+ )
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,36 @@
1
+ require_relative '../urls'
2
+
3
+ module CarinForBlueButtonTestKit
4
+ class C4BBV200ClientRegistrationConfigurationUDAPDisplay < Inferno::Test
5
+ include URLs
6
+
7
+ id :c4bb_v200_client_reg_config_udap_display
8
+ title 'Confirm client configuration'
9
+ description %(
10
+ This test provides all the information needed for testers to configure
11
+ the client under test to communicate with Inferno's simulated CARIN server
12
+ including UDAP endpoints to obtain access tokens using the authorization_code flow.
13
+ )
14
+
15
+ input :client_id
16
+
17
+ run do
18
+ wait(
19
+ identifier: client_id,
20
+ message: %(
21
+ **Inferno Simulated Server Details**:
22
+
23
+ FHIR Base URL: `#{fhir_base_url}`
24
+
25
+ Authentication Details:
26
+ - UDAP Client Id: `#{client_id}`
27
+ - Authorization endpoint: `#{authorization_url}`
28
+ - Token endpoint: `#{token_url}`
29
+
30
+ [Click here](#{resume_pass_url}?token=#{client_id}) once you have configured
31
+ the client to connect to Inferno at the above endpoints.
32
+ )
33
+ )
34
+ end
35
+ end
36
+ end