carin_for_blue_button_test_kit 0.9.1 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (674) hide show
  1. checksums.yaml +4 -4
  2. data/lib/carin_for_blue_button_test_kit/capability_statement/capability_statement_group.rb +6 -5
  3. data/lib/carin_for_blue_button_test_kit/capability_statement/tests/instantiates_test.rb +4 -16
  4. data/lib/carin_for_blue_button_test_kit/carin_search_test.rb +451 -195
  5. data/lib/carin_for_blue_button_test_kit/custom_groups/v1.1.0/c4bb_smart_launch_group.rb +59 -0
  6. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0/c4bb_smart_launch/smart_scopes_test.rb +119 -0
  7. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0/c4bb_smart_launch/well_known_capabilities_test.rb +48 -0
  8. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0/c4bb_smart_launch_group.rb +126 -0
  9. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0-dev-nonfinancial/c4bb_smart_launch/smart_scopes_test.rb +119 -0
  10. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0-dev-nonfinancial/c4bb_smart_launch/well_known_capabilities_test.rb +51 -0
  11. data/lib/carin_for_blue_button_test_kit/custom_groups/v2.0.0-dev-nonfinancial/c4bb_smart_launch_group.rb +129 -0
  12. data/lib/carin_for_blue_button_test_kit/date_search_validator.rb +102 -98
  13. data/lib/carin_for_blue_button_test_kit/fhir_resource_navigation.rb +57 -58
  14. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/c4bb_test_suite.rb +32 -56
  15. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage/metadata.yml +20 -4
  16. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage/{coverage_must_support_test.rb → must_support_test.rb} +2 -2
  17. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage/{coverage_read_test.rb → read_test.rb} +10 -11
  18. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage/{coverage_validation_test.rb → validation_test.rb} +3 -4
  19. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/coverage_group.rb +24 -25
  20. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/id_search_test.rb +40 -0
  21. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_identifier_search_test.rb → eob/identifier_search_test.rb} +8 -16
  22. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/incl_all_search_test.rb +37 -0
  23. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/incl_careteam_search_test.rb +37 -0
  24. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/incl_coverage_search_test.rb +37 -0
  25. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/incl_insurer_search_test.rb +37 -0
  26. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/incl_patient_search_test.rb +37 -0
  27. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/incl_provider_search_test.rb +37 -0
  28. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_lastupdated_search_test.rb → eob/lastupdated_search_test.rb} +7 -15
  29. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit → eob}/metadata.yml +155 -42
  30. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_must_support_test.rb → eob/must_support_test.rb} +5 -5
  31. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_id_search_test.rb → eob/patient_search_test.rb} +22 -19
  32. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob/read_test.rb +32 -0
  33. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_service_date_search_test.rb → eob/service_date_search_test.rb} +7 -15
  34. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_type_search_test.rb → eob/type_search_test.rb} +8 -16
  35. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_validation_test.rb → eob/validation_test.rb} +6 -7
  36. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_group.rb +125 -0
  37. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/id_search_test.rb +40 -0
  38. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_identifier_search_test.rb → eob_inpatient_institutional/identifier_search_test.rb} +8 -16
  39. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/incl_all_search_test.rb +37 -0
  40. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/incl_careteam_search_test.rb +37 -0
  41. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/incl_coverage_search_test.rb +37 -0
  42. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/incl_insurer_search_test.rb +37 -0
  43. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/incl_patient_search_test.rb +37 -0
  44. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/incl_provider_search_test.rb +37 -0
  45. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_lastupdated_search_test.rb → eob_inpatient_institutional/lastupdated_search_test.rb} +7 -15
  46. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_inpatient_institutional → eob_inpatient_institutional}/metadata.yml +155 -42
  47. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_must_support_test.rb → eob_inpatient_institutional/must_support_test.rb} +7 -7
  48. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_id_search_test.rb → eob_inpatient_institutional/patient_search_test.rb} +22 -19
  49. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_inpatient_institutional/read_test.rb +32 -0
  50. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_service_date_search_test.rb → eob_inpatient_institutional/service_date_search_test.rb} +7 -15
  51. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_type_search_test.rb → eob_inpatient_institutional/type_search_test.rb} +8 -16
  52. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_validation_test.rb → eob_inpatient_institutional/validation_test.rb} +6 -7
  53. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit/explanation_of_benefit_patient_search_test.rb → eob_outpatient_institutional/id_search_test.rb} +9 -17
  54. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/identifier_search_test.rb +41 -0
  55. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/incl_all_search_test.rb +37 -0
  56. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/incl_careteam_search_test.rb +37 -0
  57. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/incl_coverage_search_test.rb +37 -0
  58. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/incl_insurer_search_test.rb +37 -0
  59. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/incl_patient_search_test.rb +37 -0
  60. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/incl_provider_search_test.rb +37 -0
  61. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/lastupdated_search_test.rb +40 -0
  62. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_outpatient_institutional → eob_outpatient_institutional}/metadata.yml +155 -42
  63. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_must_support_test.rb → eob_outpatient_institutional/must_support_test.rb} +7 -7
  64. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/patient_search_test.rb +62 -0
  65. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/read_test.rb +32 -0
  66. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/service_date_search_test.rb +40 -0
  67. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_outpatient_institutional/type_search_test.rb +41 -0
  68. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_validation_test.rb → eob_outpatient_institutional/validation_test.rb} +6 -7
  69. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/id_search_test.rb +40 -0
  70. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/identifier_search_test.rb +41 -0
  71. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/incl_all_search_test.rb +37 -0
  72. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/incl_careteam_search_test.rb +37 -0
  73. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/incl_coverage_search_test.rb +37 -0
  74. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/incl_insurer_search_test.rb +37 -0
  75. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/incl_patient_search_test.rb +37 -0
  76. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/incl_provider_search_test.rb +37 -0
  77. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/lastupdated_search_test.rb +40 -0
  78. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy → eob_pharmacy}/metadata.yml +155 -42
  79. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_must_support_test.rb → eob_pharmacy/must_support_test.rb} +7 -7
  80. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_id_search_test.rb → eob_pharmacy/patient_search_test.rb} +22 -19
  81. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/read_test.rb +32 -0
  82. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/service_date_search_test.rb +40 -0
  83. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_pharmacy/type_search_test.rb +41 -0
  84. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_validation_test.rb → eob_pharmacy/validation_test.rb} +6 -7
  85. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_patient_search_test.rb → eob_professional_non_clinician/id_search_test.rb} +9 -17
  86. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/identifier_search_test.rb +41 -0
  87. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/incl_all_search_test.rb +37 -0
  88. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/incl_careteam_search_test.rb +37 -0
  89. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/incl_coverage_search_test.rb +37 -0
  90. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/incl_insurer_search_test.rb +37 -0
  91. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/incl_patient_search_test.rb +37 -0
  92. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/incl_provider_search_test.rb +37 -0
  93. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/lastupdated_search_test.rb +40 -0
  94. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_professional_non_clinician → eob_professional_non_clinician}/metadata.yml +155 -42
  95. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_must_support_test.rb → eob_professional_non_clinician/must_support_test.rb} +7 -7
  96. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/patient_search_test.rb +62 -0
  97. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/read_test.rb +32 -0
  98. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/service_date_search_test.rb +40 -0
  99. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/eob_professional_non_clinician/type_search_test.rb +41 -0
  100. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/{explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_validation_test.rb → eob_professional_non_clinician/validation_test.rb} +6 -7
  101. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/metadata.yml +604 -56
  102. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/organization/metadata.yml +4 -3
  103. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/organization/{organization_must_support_test.rb → must_support_test.rb} +2 -2
  104. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/organization/{organization_read_test.rb → read_test.rb} +10 -11
  105. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/organization/{organization_validation_test.rb → validation_test.rb} +3 -4
  106. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/organization_group.rb +24 -25
  107. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient/metadata.yml +4 -3
  108. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient/{patient_must_support_test.rb → must_support_test.rb} +2 -2
  109. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient/read_test.rb +39 -0
  110. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient/{patient_validation_test.rb → validation_test.rb} +3 -4
  111. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/patient_group.rb +24 -25
  112. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/practitioner/metadata.yml +4 -3
  113. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/practitioner/{practitioner_must_support_test.rb → must_support_test.rb} +2 -2
  114. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/practitioner/{practitioner_read_test.rb → read_test.rb} +10 -11
  115. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/practitioner/{practitioner_validation_test.rb → validation_test.rb} +3 -4
  116. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/practitioner_group.rb +24 -25
  117. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/c4bb_test_suite.rb +33 -59
  118. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/{coverage_id_search_test.rb → id_search_test.rb} +16 -12
  119. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/{coverage_coverage_payor_search_test.rb → incl_payor_search_test.rb} +8 -9
  120. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/{coverage_lastupdated_search_test.rb → lastupdated_search_test.rb} +6 -12
  121. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/metadata.yml +56 -13
  122. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/{coverage_must_support_test.rb → must_support_test.rb} +2 -2
  123. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/{coverage_read_test.rb → read_test.rb} +5 -12
  124. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage/{coverage_validation_test.rb → validation_test.rb} +3 -4
  125. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/coverage_group.rb +30 -31
  126. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_billable_period_start_search_test.rb → eob/billable_period_start_search_test.rb} +7 -15
  127. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/id_search_test.rb +40 -0
  128. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_identifier_search_test.rb → eob/identifier_search_test.rb} +8 -16
  129. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_all_search_test.rb +37 -0
  130. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_careteam_search_test.rb +37 -0
  131. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_coverage_search_test.rb +37 -0
  132. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_insurer_search_test.rb +37 -0
  133. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_patient_search_test.rb +37 -0
  134. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_payee_search_test.rb +37 -0
  135. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/incl_provider_search_test.rb +37 -0
  136. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_lastupdated_search_test.rb → eob/lastupdated_search_test.rb} +7 -15
  137. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit → eob}/metadata.yml +188 -55
  138. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_must_support_test.rb → eob/must_support_test.rb} +5 -5
  139. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_id_search_test.rb → eob/patient_search_test.rb} +22 -19
  140. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob/read_test.rb +32 -0
  141. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_service_date_search_test.rb → eob/service_date_search_test.rb} +7 -15
  142. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_service_start_date_search_test.rb → eob/service_start_date_search_test.rb} +7 -15
  143. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_type_search_test.rb → eob/type_search_test.rb} +8 -16
  144. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_validation_test.rb → eob/validation_test.rb} +6 -7
  145. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_group.rb +137 -0
  146. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_billable_period_start_search_test.rb → eob_inpatient_institutional/billable_period_start_search_test.rb} +7 -15
  147. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/id_search_test.rb +40 -0
  148. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_identifier_search_test.rb → eob_inpatient_institutional/identifier_search_test.rb} +8 -16
  149. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/incl_all_search_test.rb +37 -0
  150. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_careteam_search_test.rb → eob_inpatient_institutional/incl_careteam_search_test.rb} +10 -11
  151. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_coverage_search_test.rb → eob_inpatient_institutional/incl_coverage_search_test.rb} +10 -11
  152. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_insurer_search_test.rb → eob_inpatient_institutional/incl_insurer_search_test.rb} +10 -11
  153. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_patient_search_test.rb → eob_inpatient_institutional/incl_patient_search_test.rb} +10 -11
  154. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_payee_search_test.rb → eob_inpatient_institutional/incl_payee_search_test.rb} +10 -11
  155. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_provider_search_test.rb → eob_inpatient_institutional/incl_provider_search_test.rb} +10 -11
  156. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_lastupdated_search_test.rb → eob_inpatient_institutional/lastupdated_search_test.rb} +7 -15
  157. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_inpatient_institutional → eob_inpatient_institutional}/metadata.yml +188 -55
  158. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_must_support_test.rb → eob_inpatient_institutional/must_support_test.rb} +7 -7
  159. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_id_search_test.rb → eob_inpatient_institutional/patient_search_test.rb} +22 -19
  160. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_inpatient_institutional/read_test.rb +32 -0
  161. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_service_date_search_test.rb → eob_inpatient_institutional/service_date_search_test.rb} +7 -15
  162. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_service_start_date_search_test.rb → eob_inpatient_institutional/service_start_date_search_test.rb} +7 -15
  163. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_type_search_test.rb → eob_inpatient_institutional/type_search_test.rb} +8 -16
  164. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_validation_test.rb → eob_inpatient_institutional/validation_test.rb} +6 -7
  165. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_billable_period_start_search_test.rb → eob_oral/billable_period_start_search_test.rb} +7 -15
  166. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/id_search_test.rb +40 -0
  167. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_identifier_search_test.rb → eob_oral/identifier_search_test.rb} +8 -16
  168. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_all_search_test.rb +37 -0
  169. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_careteam_search_test.rb +37 -0
  170. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_coverage_search_test.rb +37 -0
  171. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_insurer_search_test.rb +37 -0
  172. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_patient_search_test.rb +37 -0
  173. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_payee_search_test.rb +37 -0
  174. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/incl_provider_search_test.rb +37 -0
  175. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_lastupdated_search_test.rb → eob_oral/lastupdated_search_test.rb} +7 -15
  176. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral → eob_oral}/metadata.yml +188 -55
  177. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_must_support_test.rb → eob_oral/must_support_test.rb} +7 -7
  178. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_id_search_test.rb → eob_oral/patient_search_test.rb} +22 -19
  179. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_oral/read_test.rb +32 -0
  180. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_service_date_search_test.rb → eob_oral/service_date_search_test.rb} +7 -15
  181. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_service_start_date_search_test.rb → eob_oral/service_start_date_search_test.rb} +7 -15
  182. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_type_search_test.rb → eob_oral/type_search_test.rb} +8 -16
  183. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_validation_test.rb → eob_oral/validation_test.rb} +6 -7
  184. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/billable_period_start_search_test.rb +40 -0
  185. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_patient_search_test.rb → eob_outpatient_institutional/id_search_test.rb} +9 -17
  186. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/identifier_search_test.rb +41 -0
  187. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_all_search_test.rb +37 -0
  188. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_careteam_search_test.rb +37 -0
  189. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_coverage_search_test.rb +37 -0
  190. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_insurer_search_test.rb +37 -0
  191. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_patient_search_test.rb +37 -0
  192. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_payee_search_test.rb +37 -0
  193. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/incl_provider_search_test.rb +37 -0
  194. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/lastupdated_search_test.rb +40 -0
  195. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_outpatient_institutional → eob_outpatient_institutional}/metadata.yml +188 -55
  196. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_must_support_test.rb → eob_outpatient_institutional/must_support_test.rb} +7 -7
  197. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/patient_search_test.rb +62 -0
  198. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/read_test.rb +32 -0
  199. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/service_date_search_test.rb +40 -0
  200. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/service_start_date_search_test.rb +40 -0
  201. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_outpatient_institutional/type_search_test.rb +41 -0
  202. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_validation_test.rb → eob_outpatient_institutional/validation_test.rb} +6 -7
  203. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/billable_period_start_search_test.rb +40 -0
  204. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/id_search_test.rb +40 -0
  205. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/identifier_search_test.rb +41 -0
  206. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_all_search_test.rb +37 -0
  207. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_careteam_search_test.rb +37 -0
  208. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_coverage_search_test.rb +37 -0
  209. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_insurer_search_test.rb +37 -0
  210. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_patient_search_test.rb +37 -0
  211. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_payee_search_test.rb +37 -0
  212. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/incl_provider_search_test.rb +37 -0
  213. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/lastupdated_search_test.rb +40 -0
  214. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy → eob_pharmacy}/metadata.yml +188 -55
  215. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_must_support_test.rb → eob_pharmacy/must_support_test.rb} +7 -7
  216. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_id_search_test.rb → eob_pharmacy/patient_search_test.rb} +22 -19
  217. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/read_test.rb +32 -0
  218. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/service_date_search_test.rb +40 -0
  219. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/service_start_date_search_test.rb +40 -0
  220. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_pharmacy/type_search_test.rb +41 -0
  221. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_validation_test.rb → eob_pharmacy/validation_test.rb} +6 -7
  222. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/billable_period_start_search_test.rb +40 -0
  223. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_oral/explanation_of_benefit_oral_patient_search_test.rb → eob_professional_non_clinician/id_search_test.rb} +9 -17
  224. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/identifier_search_test.rb +41 -0
  225. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_all_search_test.rb +37 -0
  226. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_careteam_search_test.rb +37 -0
  227. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_coverage_search_test.rb +37 -0
  228. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_insurer_search_test.rb +37 -0
  229. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_patient_search_test.rb +37 -0
  230. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_payee_search_test.rb +37 -0
  231. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/incl_provider_search_test.rb +37 -0
  232. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/lastupdated_search_test.rb +40 -0
  233. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_professional_non_clinician → eob_professional_non_clinician}/metadata.yml +188 -55
  234. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_must_support_test.rb → eob_professional_non_clinician/must_support_test.rb} +7 -7
  235. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/patient_search_test.rb +62 -0
  236. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/read_test.rb +32 -0
  237. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/service_date_search_test.rb +40 -0
  238. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/service_start_date_search_test.rb +40 -0
  239. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/eob_professional_non_clinician/type_search_test.rb +41 -0
  240. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_validation_test.rb → eob_professional_non_clinician/validation_test.rb} +6 -7
  241. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/metadata.yml +1036 -128
  242. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/id_search_test.rb +62 -0
  243. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/lastupdated_search_test.rb +42 -0
  244. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/metadata.yml +39 -7
  245. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/{organization_must_support_test.rb → must_support_test.rb} +2 -2
  246. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/{organization_read_test.rb → read_test.rb} +5 -12
  247. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization/{organization_validation_test.rb → validation_test.rb} +3 -4
  248. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/organization_group.rb +29 -24
  249. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/{explanation_of_benefit/explanation_of_benefit_id_search_test.rb → patient/id_search_test.rb} +16 -19
  250. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/lastupdated_search_test.rb +42 -0
  251. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/metadata.yml +39 -7
  252. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/{patient_must_support_test.rb → must_support_test.rb} +2 -2
  253. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/{patient_read_test.rb → read_test.rb} +5 -12
  254. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient/{patient_validation_test.rb → validation_test.rb} +3 -4
  255. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/patient_group.rb +28 -25
  256. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/id_search_test.rb +62 -0
  257. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/lastupdated_search_test.rb +42 -0
  258. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/metadata.yml +39 -7
  259. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/{practitioner_must_support_test.rb → must_support_test.rb} +2 -2
  260. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/{practitioner_read_test.rb → read_test.rb} +5 -12
  261. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner/{practitioner_validation_test.rb → validation_test.rb} +3 -4
  262. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/practitioner_group.rb +29 -24
  263. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/id_search_test.rb +62 -0
  264. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/lastupdated_search_test.rb +42 -0
  265. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/metadata.yml +39 -7
  266. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/{related_person_must_support_test.rb → must_support_test.rb} +3 -3
  267. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/{related_person_read_test.rb → read_test.rb} +6 -13
  268. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person/{related_person_validation_test.rb → validation_test.rb} +4 -5
  269. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/related_person_group.rb +29 -24
  270. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/c4bb_test_suite.rb +86 -0
  271. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/id_search_test.rb +63 -0
  272. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/incl_payor_search_test.rb +37 -0
  273. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/lastupdated_search_test.rb +42 -0
  274. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/metadata.yml +216 -0
  275. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/must_support_test.rb +53 -0
  276. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/read_test.rb +32 -0
  277. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage/validation_test.rb +42 -0
  278. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/coverage_group.rb +86 -0
  279. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/billable_period_start_search_test.rb +40 -0
  280. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/id_search_test.rb +40 -0
  281. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/identifier_search_test.rb +41 -0
  282. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_all_search_test.rb +37 -0
  283. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_careteam_search_test.rb +37 -0
  284. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_coverage_search_test.rb +37 -0
  285. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_insurer_search_test.rb +37 -0
  286. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_patient_search_test.rb +37 -0
  287. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_payee_search_test.rb +37 -0
  288. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/incl_provider_search_test.rb +37 -0
  289. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/lastupdated_search_test.rb +40 -0
  290. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/metadata.yml +813 -0
  291. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/must_support_test.rb +72 -0
  292. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/patient_search_test.rb +62 -0
  293. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/read_test.rb +32 -0
  294. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/service_date_search_test.rb +40 -0
  295. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/service_start_date_search_test.rb +40 -0
  296. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/type_search_test.rb +41 -0
  297. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob/validation_test.rb +42 -0
  298. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_group.rb +157 -0
  299. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/billable_period_start_search_test.rb +40 -0
  300. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/id_search_test.rb +40 -0
  301. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/identifier_search_test.rb +41 -0
  302. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_all_search_test.rb +37 -0
  303. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_careteam_search_test.rb +37 -0
  304. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_coverage_search_test.rb +37 -0
  305. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_insurer_search_test.rb +37 -0
  306. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_patient_search_test.rb +37 -0
  307. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_payee_search_test.rb +37 -0
  308. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/incl_provider_search_test.rb +37 -0
  309. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/lastupdated_search_test.rb +40 -0
  310. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/metadata.yml +1225 -0
  311. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/must_support_test.rb +121 -0
  312. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/patient_search_test.rb +62 -0
  313. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/read_test.rb +32 -0
  314. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/service_date_search_test.rb +40 -0
  315. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/service_start_date_search_test.rb +40 -0
  316. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/type_search_test.rb +41 -0
  317. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional/validation_test.rb +42 -0
  318. 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 +40 -0
  319. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/id_search_test.rb +40 -0
  320. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/identifier_search_test.rb +41 -0
  321. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_all_search_test.rb +37 -0
  322. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_careteam_search_test.rb +37 -0
  323. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_coverage_search_test.rb +37 -0
  324. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_insurer_search_test.rb +37 -0
  325. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_patient_search_test.rb +37 -0
  326. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_payee_search_test.rb +37 -0
  327. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/incl_provider_search_test.rb +37 -0
  328. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/lastupdated_search_test.rb +40 -0
  329. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/metadata.yml +1129 -0
  330. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/must_support_test.rb +114 -0
  331. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/patient_search_test.rb +62 -0
  332. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/read_test.rb +32 -0
  333. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/service_date_search_test.rb +40 -0
  334. 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 +40 -0
  335. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/type_search_test.rb +41 -0
  336. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_inpatient_institutional_non_financial/validation_test.rb +42 -0
  337. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/billable_period_start_search_test.rb +40 -0
  338. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/id_search_test.rb +40 -0
  339. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/identifier_search_test.rb +41 -0
  340. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_all_search_test.rb +37 -0
  341. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_careteam_search_test.rb +37 -0
  342. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_coverage_search_test.rb +37 -0
  343. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_insurer_search_test.rb +37 -0
  344. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_patient_search_test.rb +37 -0
  345. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_payee_search_test.rb +37 -0
  346. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/incl_provider_search_test.rb +37 -0
  347. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/lastupdated_search_test.rb +40 -0
  348. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/metadata.yml +1199 -0
  349. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/must_support_test.rb +112 -0
  350. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/patient_search_test.rb +62 -0
  351. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/read_test.rb +32 -0
  352. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/service_date_search_test.rb +40 -0
  353. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/service_start_date_search_test.rb +40 -0
  354. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/type_search_test.rb +41 -0
  355. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral/validation_test.rb +42 -0
  356. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/billable_period_start_search_test.rb +40 -0
  357. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/id_search_test.rb +40 -0
  358. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/identifier_search_test.rb +41 -0
  359. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_all_search_test.rb +37 -0
  360. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_careteam_search_test.rb +37 -0
  361. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_coverage_search_test.rb +37 -0
  362. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_insurer_search_test.rb +37 -0
  363. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_patient_search_test.rb +37 -0
  364. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_payee_search_test.rb +37 -0
  365. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/incl_provider_search_test.rb +37 -0
  366. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/lastupdated_search_test.rb +40 -0
  367. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/metadata.yml +1136 -0
  368. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/must_support_test.rb +107 -0
  369. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/patient_search_test.rb +62 -0
  370. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/read_test.rb +32 -0
  371. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/service_date_search_test.rb +40 -0
  372. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/service_start_date_search_test.rb +40 -0
  373. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/type_search_test.rb +41 -0
  374. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_oral_non_financial/validation_test.rb +42 -0
  375. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/billable_period_start_search_test.rb +40 -0
  376. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/id_search_test.rb +40 -0
  377. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/identifier_search_test.rb +41 -0
  378. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_all_search_test.rb +37 -0
  379. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_careteam_search_test.rb +37 -0
  380. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_coverage_search_test.rb +37 -0
  381. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_insurer_search_test.rb +37 -0
  382. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_patient_search_test.rb +37 -0
  383. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_payee_search_test.rb +37 -0
  384. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/incl_provider_search_test.rb +37 -0
  385. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/lastupdated_search_test.rb +40 -0
  386. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/metadata.yml +1178 -0
  387. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/must_support_test.rb +114 -0
  388. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/patient_search_test.rb +62 -0
  389. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/read_test.rb +32 -0
  390. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/service_date_search_test.rb +40 -0
  391. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/service_start_date_search_test.rb +40 -0
  392. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/type_search_test.rb +41 -0
  393. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional/validation_test.rb +42 -0
  394. 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 +40 -0
  395. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/id_search_test.rb +40 -0
  396. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/identifier_search_test.rb +41 -0
  397. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_all_search_test.rb +37 -0
  398. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_careteam_search_test.rb +37 -0
  399. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_coverage_search_test.rb +37 -0
  400. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_insurer_search_test.rb +37 -0
  401. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_patient_search_test.rb +37 -0
  402. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_payee_search_test.rb +37 -0
  403. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/incl_provider_search_test.rb +37 -0
  404. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/lastupdated_search_test.rb +40 -0
  405. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/metadata.yml +1081 -0
  406. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/must_support_test.rb +106 -0
  407. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/patient_search_test.rb +62 -0
  408. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/read_test.rb +32 -0
  409. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/service_date_search_test.rb +40 -0
  410. 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 +40 -0
  411. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/type_search_test.rb +41 -0
  412. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_outpatient_institutional_non_financial/validation_test.rb +42 -0
  413. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/billable_period_start_search_test.rb +40 -0
  414. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/id_search_test.rb +40 -0
  415. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/identifier_search_test.rb +41 -0
  416. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_all_search_test.rb +37 -0
  417. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_careteam_search_test.rb +37 -0
  418. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_coverage_search_test.rb +37 -0
  419. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_insurer_search_test.rb +37 -0
  420. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_patient_search_test.rb +37 -0
  421. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_payee_search_test.rb +37 -0
  422. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/incl_provider_search_test.rb +37 -0
  423. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/lastupdated_search_test.rb +40 -0
  424. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/metadata.yml +1129 -0
  425. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/must_support_test.rb +109 -0
  426. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/patient_search_test.rb +62 -0
  427. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/read_test.rb +32 -0
  428. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/service_date_search_test.rb +40 -0
  429. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/service_start_date_search_test.rb +40 -0
  430. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/type_search_test.rb +41 -0
  431. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy/validation_test.rb +42 -0
  432. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/billable_period_start_search_test.rb +40 -0
  433. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/id_search_test.rb +40 -0
  434. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/identifier_search_test.rb +41 -0
  435. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_all_search_test.rb +37 -0
  436. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_careteam_search_test.rb +37 -0
  437. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_coverage_search_test.rb +37 -0
  438. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_insurer_search_test.rb +37 -0
  439. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_patient_search_test.rb +37 -0
  440. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_payee_search_test.rb +37 -0
  441. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/incl_provider_search_test.rb +37 -0
  442. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/lastupdated_search_test.rb +40 -0
  443. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/metadata.yml +1064 -0
  444. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/must_support_test.rb +103 -0
  445. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/patient_search_test.rb +62 -0
  446. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/read_test.rb +32 -0
  447. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/service_date_search_test.rb +40 -0
  448. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/service_start_date_search_test.rb +40 -0
  449. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/type_search_test.rb +41 -0
  450. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_pharmacy_non_financial/validation_test.rb +42 -0
  451. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/billable_period_start_search_test.rb +40 -0
  452. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/id_search_test.rb +40 -0
  453. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/identifier_search_test.rb +41 -0
  454. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_all_search_test.rb +37 -0
  455. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_careteam_search_test.rb +37 -0
  456. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_coverage_search_test.rb +37 -0
  457. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_insurer_search_test.rb +37 -0
  458. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_patient_search_test.rb +37 -0
  459. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_payee_search_test.rb +37 -0
  460. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/incl_provider_search_test.rb +37 -0
  461. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/lastupdated_search_test.rb +40 -0
  462. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/metadata.yml +1233 -0
  463. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/must_support_test.rb +108 -0
  464. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/patient_search_test.rb +62 -0
  465. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/read_test.rb +32 -0
  466. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/service_date_search_test.rb +40 -0
  467. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/service_start_date_search_test.rb +40 -0
  468. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/type_search_test.rb +41 -0
  469. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician/validation_test.rb +42 -0
  470. 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 +40 -0
  471. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/id_search_test.rb +40 -0
  472. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/identifier_search_test.rb +41 -0
  473. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_all_search_test.rb +37 -0
  474. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_careteam_search_test.rb +37 -0
  475. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_coverage_search_test.rb +37 -0
  476. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_insurer_search_test.rb +37 -0
  477. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_patient_search_test.rb +37 -0
  478. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_payee_search_test.rb +37 -0
  479. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/incl_provider_search_test.rb +37 -0
  480. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/lastupdated_search_test.rb +40 -0
  481. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/metadata.yml +1170 -0
  482. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/must_support_test.rb +103 -0
  483. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/patient_search_test.rb +62 -0
  484. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/read_test.rb +32 -0
  485. 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 +40 -0
  486. 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 +40 -0
  487. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/type_search_test.rb +41 -0
  488. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/eob_professional_non_clinician_non_financial/validation_test.rb +42 -0
  489. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/metadata.yml +12605 -0
  490. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/id_search_test.rb +62 -0
  491. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/lastupdated_search_test.rb +42 -0
  492. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/metadata.yml +168 -0
  493. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/must_support_test.rb +55 -0
  494. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/read_test.rb +32 -0
  495. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization/validation_test.rb +42 -0
  496. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/organization_group.rb +86 -0
  497. data/lib/carin_for_blue_button_test_kit/generated/{v1.1.0/explanation_of_benefit/explanation_of_benefit_id_search_test.rb → v2.0.0-dev-nonfinancial/patient/id_search_test.rb} +18 -21
  498. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/lastupdated_search_test.rb +42 -0
  499. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/metadata.yml +256 -0
  500. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/must_support_test.rb +68 -0
  501. data/lib/carin_for_blue_button_test_kit/generated/{v1.1.0/patient/patient_read_test.rb → v2.0.0-dev-nonfinancial/patient/read_test.rb} +7 -14
  502. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient/validation_test.rb +42 -0
  503. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/patient_group.rb +84 -0
  504. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/id_search_test.rb +62 -0
  505. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/lastupdated_search_test.rb +42 -0
  506. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/metadata.yml +144 -0
  507. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/must_support_test.rb +46 -0
  508. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/read_test.rb +32 -0
  509. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner/validation_test.rb +42 -0
  510. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/practitioner_group.rb +86 -0
  511. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/id_search_test.rb +62 -0
  512. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/lastupdated_search_test.rb +42 -0
  513. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/metadata.yml +133 -0
  514. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/must_support_test.rb +47 -0
  515. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/read_test.rb +32 -0
  516. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person/validation_test.rb +42 -0
  517. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/related_person_group.rb +86 -0
  518. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0-dev-nonfinancial/resource_list.rb +24 -0
  519. data/lib/carin_for_blue_button_test_kit/generator/group_generator.rb +104 -76
  520. data/lib/carin_for_blue_button_test_kit/generator/group_metadata.rb +82 -80
  521. data/lib/carin_for_blue_button_test_kit/generator/group_metadata_extractor.rb +42 -37
  522. data/lib/carin_for_blue_button_test_kit/generator/ig_metadata.rb +13 -10
  523. data/lib/carin_for_blue_button_test_kit/generator/ig_resources.rb +19 -13
  524. data/lib/carin_for_blue_button_test_kit/generator/include_search_test_generator.rb +26 -5
  525. data/lib/carin_for_blue_button_test_kit/generator/must_support_test_generator.rb +9 -6
  526. data/lib/carin_for_blue_button_test_kit/generator/naming.rb +13 -1
  527. data/lib/carin_for_blue_button_test_kit/generator/read_test_generator.rb +50 -15
  528. data/lib/carin_for_blue_button_test_kit/generator/search_definition_metadata_extractor.rb +58 -60
  529. data/lib/carin_for_blue_button_test_kit/generator/search_metadata_extractor.rb +14 -1
  530. data/lib/carin_for_blue_button_test_kit/generator/search_test_generator.rb +79 -37
  531. data/lib/carin_for_blue_button_test_kit/generator/special_cases.rb +0 -4
  532. data/lib/carin_for_blue_button_test_kit/generator/suite_generator.rb +9 -2
  533. data/lib/carin_for_blue_button_test_kit/generator/validation_test_generator.rb +8 -6
  534. data/lib/carin_for_blue_button_test_kit/generator.rb +4 -7
  535. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-110/SearchParameter-Resource-id.json +1 -0
  536. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-110/SearchParameter-Resource-lastUpdated.json +1 -0
  537. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-200/SearchParameter-Resource-id.json +1 -0
  538. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-200/SearchParameter-Resource-lastUpdated.json +1 -0
  539. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-200-dev-nonfinancial-fixed/SearchParameter-Resource-id.json +1 -0
  540. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-200-dev-nonfinancial-fixed/SearchParameter-Resource-lastUpdated.json +1 -0
  541. data/lib/carin_for_blue_button_test_kit/igs/carin4bb-200-dev-nonfinancial-fixed.tgz +0 -0
  542. data/lib/carin_for_blue_button_test_kit/must_support_test.rb +7 -7
  543. data/lib/carin_for_blue_button_test_kit/read_test.rb +56 -45
  544. data/lib/carin_for_blue_button_test_kit/search_test_properties.rb +2 -1
  545. data/lib/carin_for_blue_button_test_kit/version.rb +1 -1
  546. data/lib/carin_for_blue_button_test_kit.rb +1 -0
  547. metadata +499 -237
  548. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_all_search_test.rb +0 -38
  549. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_careteam_search_test.rb +0 -38
  550. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_coverage_search_test.rb +0 -38
  551. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_insurer_search_test.rb +0 -38
  552. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_patient_search_test.rb +0 -38
  553. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_provider_search_test.rb +0 -38
  554. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit/explanation_of_benefit_read_test.rb +0 -39
  555. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_group.rb +0 -110
  556. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_all_search_test.rb +0 -38
  557. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_careteam_search_test.rb +0 -38
  558. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_coverage_search_test.rb +0 -38
  559. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_insurer_search_test.rb +0 -38
  560. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_patient_search_test.rb +0 -38
  561. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_provider_search_test.rb +0 -38
  562. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_identifier_search_test.rb +0 -49
  563. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_lastupdated_search_test.rb +0 -48
  564. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_patient_search_test.rb +0 -48
  565. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_read_test.rb +0 -39
  566. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_service_date_search_test.rb +0 -48
  567. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_type_search_test.rb +0 -49
  568. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_inpatient_institutional_group.rb +0 -58
  569. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_all_search_test.rb +0 -38
  570. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_careteam_search_test.rb +0 -38
  571. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_coverage_search_test.rb +0 -38
  572. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_insurer_search_test.rb +0 -38
  573. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_patient_search_test.rb +0 -38
  574. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_provider_search_test.rb +0 -38
  575. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_identifier_search_test.rb +0 -49
  576. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_lastupdated_search_test.rb +0 -48
  577. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_patient_search_test.rb +0 -48
  578. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_read_test.rb +0 -39
  579. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_service_date_search_test.rb +0 -48
  580. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_type_search_test.rb +0 -49
  581. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_outpatient_institutional_group.rb +0 -58
  582. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_all_search_test.rb +0 -38
  583. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_careteam_search_test.rb +0 -38
  584. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_coverage_search_test.rb +0 -38
  585. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_insurer_search_test.rb +0 -38
  586. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_patient_search_test.rb +0 -38
  587. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_provider_search_test.rb +0 -38
  588. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_read_test.rb +0 -39
  589. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_pharmacy_group.rb +0 -58
  590. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_all_search_test.rb +0 -38
  591. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_careteam_search_test.rb +0 -38
  592. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_coverage_search_test.rb +0 -38
  593. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_insurer_search_test.rb +0 -38
  594. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_patient_search_test.rb +0 -38
  595. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_provider_search_test.rb +0 -38
  596. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_id_search_test.rb +0 -59
  597. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_identifier_search_test.rb +0 -49
  598. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_lastupdated_search_test.rb +0 -48
  599. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_patient_search_test.rb +0 -48
  600. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_read_test.rb +0 -39
  601. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_service_date_search_test.rb +0 -48
  602. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_type_search_test.rb +0 -49
  603. data/lib/carin_for_blue_button_test_kit/generated/v1.1.0/explanation_of_benefit_professional_non_clinician_group.rb +0 -58
  604. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_all_search_test.rb +0 -38
  605. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_careteam_search_test.rb +0 -38
  606. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_coverage_search_test.rb +0 -38
  607. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_insurer_search_test.rb +0 -38
  608. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_patient_search_test.rb +0 -38
  609. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_payee_search_test.rb +0 -38
  610. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_explanation_of_benefit_provider_search_test.rb +0 -38
  611. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit/explanation_of_benefit_read_test.rb +0 -39
  612. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_group.rb +0 -118
  613. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_billable_period_start_search_test.rb +0 -48
  614. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_all_search_test.rb +0 -38
  615. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_careteam_search_test.rb +0 -38
  616. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_coverage_search_test.rb +0 -38
  617. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_insurer_search_test.rb +0 -38
  618. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_patient_search_test.rb +0 -38
  619. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_payee_search_test.rb +0 -38
  620. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_explanation_of_benefit_provider_search_test.rb +0 -38
  621. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_identifier_search_test.rb +0 -49
  622. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_lastupdated_search_test.rb +0 -48
  623. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_patient_search_test.rb +0 -48
  624. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_read_test.rb +0 -39
  625. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_service_date_search_test.rb +0 -48
  626. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_service_start_date_search_test.rb +0 -48
  627. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional/explanation_of_benefit_inpatient_institutional_type_search_test.rb +0 -49
  628. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_inpatient_institutional_group.rb +0 -58
  629. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_oral/explanation_of_benefit_oral_explanation_of_benefit_all_search_test.rb +0 -38
  630. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_oral/explanation_of_benefit_oral_read_test.rb +0 -39
  631. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_oral_group.rb +0 -58
  632. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_billable_period_start_search_test.rb +0 -48
  633. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_all_search_test.rb +0 -38
  634. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_careteam_search_test.rb +0 -38
  635. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_coverage_search_test.rb +0 -38
  636. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_insurer_search_test.rb +0 -38
  637. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_patient_search_test.rb +0 -38
  638. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_payee_search_test.rb +0 -38
  639. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_explanation_of_benefit_provider_search_test.rb +0 -38
  640. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_identifier_search_test.rb +0 -49
  641. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_lastupdated_search_test.rb +0 -48
  642. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_patient_search_test.rb +0 -48
  643. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_read_test.rb +0 -39
  644. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_service_date_search_test.rb +0 -48
  645. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_service_start_date_search_test.rb +0 -48
  646. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional/explanation_of_benefit_outpatient_institutional_type_search_test.rb +0 -49
  647. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_outpatient_institutional_group.rb +0 -58
  648. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_all_search_test.rb +0 -38
  649. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_careteam_search_test.rb +0 -38
  650. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_coverage_search_test.rb +0 -38
  651. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_insurer_search_test.rb +0 -38
  652. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_patient_search_test.rb +0 -38
  653. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_payee_search_test.rb +0 -38
  654. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_explanation_of_benefit_provider_search_test.rb +0 -38
  655. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_patient_search_test.rb +0 -48
  656. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy/explanation_of_benefit_pharmacy_read_test.rb +0 -39
  657. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_pharmacy_group.rb +0 -58
  658. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_billable_period_start_search_test.rb +0 -48
  659. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_all_search_test.rb +0 -38
  660. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_careteam_search_test.rb +0 -38
  661. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_coverage_search_test.rb +0 -38
  662. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_insurer_search_test.rb +0 -38
  663. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_patient_search_test.rb +0 -38
  664. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_payee_search_test.rb +0 -38
  665. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_explanation_of_benefit_provider_search_test.rb +0 -38
  666. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_id_search_test.rb +0 -59
  667. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_identifier_search_test.rb +0 -49
  668. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_lastupdated_search_test.rb +0 -48
  669. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_patient_search_test.rb +0 -48
  670. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_read_test.rb +0 -39
  671. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_service_date_search_test.rb +0 -48
  672. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_service_start_date_search_test.rb +0 -48
  673. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician/explanation_of_benefit_professional_non_clinician_type_search_test.rb +0 -49
  674. data/lib/carin_for_blue_button_test_kit/generated/v2.0.0/explanation_of_benefit_professional_non_clinician_group.rb +0 -58
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CarinForBlueButtonTestKit
4
+ module CARIN4BBV110
5
+ class C4BBSMARTLaunchGroup < Inferno::TestGroup
6
+ id :c4bb_v110_smart_launch
7
+ title 'SMART App Launch'
8
+ description %(
9
+ # Background
10
+ Applications authorize to gain access to a patient record using the
11
+ [SMART App Launch
12
+ Protocol](http://hl7.org/fhir/smart-app-launch/1.0.0/)'s standalone
13
+ launch sequence.
14
+
15
+ # Testing Methodology
16
+ These tests first access the server's SMART discovery endpoints and
17
+ verify that they are available and that the server advertises support
18
+ for the required SMART capabilities and required authorization scopes.
19
+ They then perform a standalone launch to obtain an access token which
20
+ can be used by the remaining tests to access patient data.
21
+ )
22
+
23
+ group from: :smart_discovery,
24
+ run_as_group: true
25
+
26
+ group from: :smart_standalone_launch,
27
+ run_as_group: true,
28
+ config: {
29
+ outputs: {
30
+ patient_id: { name: :patient_ids },
31
+ smart_credentials: { name: :smart_credentials }
32
+ }
33
+ },
34
+ description: %(
35
+ # Background
36
+
37
+ The [Standalone
38
+ Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
39
+ allows an app, like Inferno, to be launched independent of an
40
+ existing EHR session. It is one of the two launch methods described in
41
+ the SMART App Launch Framework alongside EHR Launch. The app will
42
+ request authorization for the provided scope from the authorization
43
+ endpoint, ultimately receiving an authorization token which can be used
44
+ to gain access to resources on the FHIR server.
45
+
46
+ # Test Methodology
47
+
48
+ Inferno will redirect the user to the authorization endpoint so that
49
+ they can provide any required credentials and authorize the application.
50
+ Upon successful authorization, Inferno will exchange the authorization
51
+ code provided for an access token.
52
+
53
+ For more information on the #{title}:
54
+
55
+ * [Standalone Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
56
+ )
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,119 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CarinForBlueButtonTestKit
4
+ module CARIN4BBV200
5
+ class SmartScopesTest < Inferno::Test
6
+ id :c4bb_v200_smart_scopes
7
+ title 'Server supports the required authorization scopes.'
8
+ description %(
9
+ All required scopes requested are expected to be granted.
10
+ Server SHALL support, at a minimum, the following requested authorization scopes:
11
+ * `openid`
12
+ * `fhirUser`
13
+ * `launch/patient`
14
+ * `patient/ExplanationOfBenefit.read`
15
+ * `patient/Coverage.read`
16
+ * `patient/Patient.read`
17
+ * `patient/Organization.read`
18
+ * `patient/Practitioner.read`
19
+ * `user/ExplanationOfBenefit.read`
20
+ * `user/Coverage.read`
21
+ * `user/Patient.read`
22
+ * `user/Organization.read`
23
+ * `user/Practitioner.read`
24
+ )
25
+ input :requested_scopes, :received_scopes
26
+ uses_request :token
27
+
28
+ PATIENT_COMPARTMENT_RESOURCE_TYPES = %w[
29
+ Patient
30
+ ExplanationOfBenefit
31
+ Coverage
32
+ Organization
33
+ Practitioner
34
+ ].freeze
35
+
36
+ def patient_compartment_resource_types
37
+ PATIENT_COMPARTMENT_RESOURCE_TYPES
38
+ end
39
+
40
+ def required_scopes
41
+ config.options[:required_scopes]
42
+ end
43
+
44
+ def access_level_regex
45
+ /\A(\*|\b(read|c?ru?d?s?)\b)/
46
+ end
47
+
48
+ def received_scope_test(scopes)
49
+ # check if openid, fhirUser, & launch/patient was granted
50
+ scope_subset = scopes - ['openid', 'fhirUser', 'launch/patient']
51
+ assert scope_subset.length == scopes.length - 3,
52
+ 'openid, fhirUser, & launch/patient scopes must be supported. Received scopes: ' \
53
+ "#{scope_subset.join(', ')}."
54
+
55
+ granted_patient_level_resource_types = []
56
+ granted_user_level_resource_types = []
57
+
58
+ scope_subset.each do |scope|
59
+ scope_pieces = scope.split('/')
60
+ next unless scope_pieces.length == 2
61
+
62
+ scope_type, resource_scope = scope_pieces
63
+ next unless %w[patient user].include?(scope_type)
64
+
65
+ resource_scope_parts = resource_scope.split('.')
66
+ next unless resource_scope_parts.length == 2
67
+
68
+ resource_type, access_level = resource_scope_parts
69
+ next unless access_level =~ access_level_regex
70
+
71
+ if scope_type == 'patient'
72
+ granted_patient_level_resource_types << resource_type
73
+ else
74
+ granted_user_level_resource_types << resource_type
75
+ end
76
+ end
77
+
78
+ # Check if the required patient and user level scopes are granted
79
+ missing_patient_level_resource_types = patient_compartment_resource_types - granted_patient_level_resource_types
80
+ missing_patient_level_resource_types = [] if granted_patient_level_resource_types.include?('*')
81
+
82
+ assert missing_patient_level_resource_types.empty?,
83
+ "Requested patient-level scopes #{missing_patient_level_resource_types.join(', ')} " \
84
+ 'were not granted by authorization server.'
85
+
86
+ missing_user_level_resource_types = patient_compartment_resource_types - granted_user_level_resource_types
87
+ missing_user_level_resource_types = [] if granted_user_level_resource_types.include?('*')
88
+ assert missing_user_level_resource_types.empty?,
89
+ "Requested user-level scopes #{missing_user_level_resource_types.join(', ')} " \
90
+ 'were not granted by authorization server.'
91
+ end
92
+
93
+ run do
94
+ skip_if request.status != 200, 'Token exchange was unsuccessful'
95
+ [
96
+ {
97
+ scopes: requested_scopes,
98
+ received_or_requested: 'requested'
99
+ },
100
+ {
101
+ scopes: received_scopes,
102
+ received_or_requested: 'received'
103
+ }
104
+ ].each do |metadata|
105
+ scopes = metadata[:scopes].split
106
+ received_or_requested = metadata[:received_or_requested]
107
+ missing_scopes = required_scopes - scopes
108
+
109
+ if received_or_requested == 'requested'
110
+ assert missing_scopes.empty?,
111
+ "Required scopes were not #{received_or_requested}: #{missing_scopes.join(', ')}"
112
+ else
113
+ received_scope_test(scopes)
114
+ end
115
+ end
116
+ end
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CarinForBlueButtonTestKit
4
+ module CARIN4BBV200
5
+ class WellKnownCapabilitiesTest < Inferno::Test
6
+ id :c4bb_v200_smart_capabilities
7
+ title 'Server Well-known configuration declares support for the required SMART capabilities'
8
+ description %(
9
+ Servers SHALL support the following [SMART on FHIR
10
+ capabilities](https://hl7.org/fhir/us/carin-bb/Security_And_Privacy_Considerations.html#authentication-and-authorization-requirements):
11
+
12
+ * `launch-standalone`
13
+ * `client-public`
14
+ * `client-confidential-symmetric`
15
+ * `sso-openid-connect`
16
+ * `context-standalone-patient`
17
+ * `permission-offline`
18
+ * `permission-patient`
19
+ * `permission-user`
20
+ )
21
+
22
+ input :well_known_configuration
23
+
24
+ run do
25
+ skip_if well_known_configuration.blank?, 'No SMART well-known configuration received'
26
+
27
+ assert_valid_json(well_known_configuration)
28
+
29
+ advertised_capabilities = JSON.parse(well_known_configuration)['capabilities']
30
+
31
+ assert advertised_capabilities.is_a?(Array),
32
+ "Expected `capabilities` field to be an Array, but found #{advertised_capabilities.class.name}"
33
+
34
+ required_capabilities = config.options[:required_capabilities] || []
35
+
36
+ missing_capabilities = required_capabilities - advertised_capabilities
37
+
38
+ missing_capabilities_string =
39
+ missing_capabilities
40
+ .map { |capability| "\n* `#{capability}`" }
41
+ .join
42
+
43
+ assert missing_capabilities.empty?,
44
+ "Server did not advertise support for the following required capabilities: #{missing_capabilities_string}"
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,126 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'c4bb_smart_launch/well_known_capabilities_test'
4
+ require_relative 'c4bb_smart_launch/smart_scopes_test'
5
+
6
+ module CarinForBlueButtonTestKit
7
+ module CARIN4BBV200
8
+ class C4BBSMARTLaunchGroup < Inferno::TestGroup
9
+ id :c4bb_v200_smart_launch
10
+ title 'SMART App Launch'
11
+ description %(
12
+ # Background
13
+ Applications authorize to gain access to a patient record using the
14
+ [SMART App Launch
15
+ Protocol](http://hl7.org/fhir/smart-app-launch/1.0.0/)'s standalone
16
+ launch sequence.
17
+
18
+ # Testing Methodology
19
+ These tests first access the server's SMART discovery endpoints and
20
+ verify that they are available and that the server advertises support
21
+ for the required SMART capabilities and required authorization scopes.
22
+ They then perform a standalone launch to obtain an access token which
23
+ can be used by the remaining tests to access patient data.
24
+ )
25
+ input_order :url,
26
+ :standalone_client_id,
27
+ :standalone_client_secret,
28
+ :standalone_requested_scopes,
29
+ :use_pkce,
30
+ :pkce_code_challenge_method
31
+
32
+ group from: :smart_discovery do
33
+ run_as_group
34
+
35
+ test from: :c4bb_v200_smart_capabilities do
36
+ config(
37
+ options: {
38
+ required_capabilities: %w[
39
+ launch-standalone
40
+ client-public
41
+ client-confidential-symmetric
42
+ sso-openid-connect
43
+ context-standalone-patient
44
+ permission-offline
45
+ permission-patient
46
+ permission-user
47
+ ]
48
+ }
49
+ )
50
+ end
51
+ end
52
+
53
+ group from: :smart_standalone_launch do
54
+ run_as_group
55
+ description %(
56
+ # Background
57
+
58
+ The [Standalone
59
+ Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
60
+ allows an app, like Inferno, to be launched independent of an
61
+ existing EHR session. It is one of the two launch methods described in
62
+ the SMART App Launch Framework alongside EHR Launch. The app will
63
+ request authorization for the provided scope from the authorization
64
+ endpoint, ultimately receiving an authorization token which can be used
65
+ to gain access to resources on the FHIR server.
66
+
67
+ # Test Methodology
68
+
69
+ Inferno will redirect the user to the authorization endpoint so that
70
+ they can provide any required credentials and authorize the application.
71
+ Upon successful authorization, Inferno will exchange the authorization
72
+ code provided for an access token.
73
+
74
+ For more information on the #{title}:
75
+
76
+ * [Standalone Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
77
+ )
78
+
79
+ config(
80
+ inputs: {
81
+ requested_scopes: {
82
+ default: %(
83
+ launch/patient openid fhirUser
84
+ patient/ExplanationOfBenefit.read patient/Coverage.read
85
+ patient/Patient.read patient/Organization.read
86
+ patient/Practitioner.read user/ExplanationOfBenefit.read
87
+ user/Coverage.read user/Patient.read
88
+ user/Organization.read user/Practitioner.read
89
+ ).gsub(/\s{2,}/, ' ').strip
90
+ }
91
+ },
92
+ outputs: {
93
+ patient_id: { name: :patient_ids },
94
+ smart_credentials: { name: :smart_credentials }
95
+ }
96
+ )
97
+
98
+ test from: :c4bb_v200_smart_scopes do
99
+ config(
100
+ inputs: {
101
+ requested_scopes: { name: :standalone_requested_scopes },
102
+ received_scopes: { name: :standalone_received_scopes }
103
+ },
104
+ options: {
105
+ required_scopes: %w[
106
+ openid
107
+ fhirUser
108
+ launch/patient
109
+ patient/ExplanationOfBenefit.read
110
+ patient/Coverage.read
111
+ patient/Patient.read
112
+ patient/Organization.read
113
+ patient/Practitioner.read
114
+ user/ExplanationOfBenefit.read
115
+ user/Coverage.read
116
+ user/Patient.read
117
+ user/Organization.read
118
+ user/Practitioner.read
119
+ ]
120
+ }
121
+ )
122
+ end
123
+ end
124
+ end
125
+ end
126
+ end
@@ -0,0 +1,119 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CarinForBlueButtonTestKit
4
+ module CARIN4BBV200DEVNONFINANCIAL
5
+ class SmartScopesTest < Inferno::Test
6
+ id :c4bb_v200devnonfinancial_smart_scopes
7
+ title 'Server supports the required authorization scopes.'
8
+ description %(
9
+ All required scopes requested are expected to be granted.
10
+ Server SHALL support, at a minimum, the following requested authorization scopes:
11
+ * `openid`
12
+ * `fhirUser`
13
+ * `launch/patient`
14
+ * `patient/ExplanationOfBenefit.read`
15
+ * `patient/Coverage.read`
16
+ * `patient/Patient.read`
17
+ * `patient/Organization.read`
18
+ * `patient/Practitioner.read`
19
+ * `user/ExplanationOfBenefit.read`
20
+ * `user/Coverage.read`
21
+ * `user/Patient.read`
22
+ * `user/Organization.read`
23
+ * `user/Practitioner.read`
24
+ )
25
+ input :requested_scopes, :received_scopes
26
+ uses_request :token
27
+
28
+ PATIENT_COMPARTMENT_RESOURCE_TYPES = %w[
29
+ Patient
30
+ ExplanationOfBenefit
31
+ Coverage
32
+ Organization
33
+ Practitioner
34
+ ].freeze
35
+
36
+ def patient_compartment_resource_types
37
+ PATIENT_COMPARTMENT_RESOURCE_TYPES
38
+ end
39
+
40
+ def required_scopes
41
+ config.options[:required_scopes]
42
+ end
43
+
44
+ def access_level_regex
45
+ /\A(\*|\b(read|c?ru?d?s?)\b)/
46
+ end
47
+
48
+ def received_scope_test(scopes)
49
+ # check if openid, fhirUser, & launch/patient was granted
50
+ scope_subset = scopes - ['openid', 'fhirUser', 'launch/patient']
51
+ assert scope_subset.length == scopes.length - 3,
52
+ 'openid, fhirUser, & launch/patient scopes must be supported. Received scopes: ' \
53
+ "#{scope_subset.join(', ')}."
54
+
55
+ granted_patient_level_resource_types = []
56
+ granted_user_level_resource_types = []
57
+
58
+ scope_subset.each do |scope|
59
+ scope_pieces = scope.split('/')
60
+ next unless scope_pieces.length == 2
61
+
62
+ scope_type, resource_scope = scope_pieces
63
+ next unless %w[patient user].include?(scope_type)
64
+
65
+ resource_scope_parts = resource_scope.split('.')
66
+ next unless resource_scope_parts.length == 2
67
+
68
+ resource_type, access_level = resource_scope_parts
69
+ next unless access_level =~ access_level_regex
70
+
71
+ if scope_type == 'patient'
72
+ granted_patient_level_resource_types << resource_type
73
+ else
74
+ granted_user_level_resource_types << resource_type
75
+ end
76
+ end
77
+
78
+ # Check if the required patient and user level scopes are granted
79
+ missing_patient_level_resource_types = patient_compartment_resource_types - granted_patient_level_resource_types
80
+ missing_patient_level_resource_types = [] if granted_patient_level_resource_types.include?('*')
81
+
82
+ assert missing_patient_level_resource_types.empty?,
83
+ "Requested patient-level scopes #{missing_patient_level_resource_types.join(', ')} " \
84
+ 'were not granted by authorization server.'
85
+
86
+ missing_user_level_resource_types = patient_compartment_resource_types - granted_user_level_resource_types
87
+ missing_user_level_resource_types = [] if granted_user_level_resource_types.include?('*')
88
+ assert missing_user_level_resource_types.empty?,
89
+ "Requested user-level scopes #{missing_user_level_resource_types.join(', ')} " \
90
+ 'were not granted by authorization server.'
91
+ end
92
+
93
+ run do
94
+ skip_if request.status != 200, 'Token exchange was unsuccessful'
95
+ [
96
+ {
97
+ scopes: requested_scopes,
98
+ received_or_requested: 'requested'
99
+ },
100
+ {
101
+ scopes: received_scopes,
102
+ received_or_requested: 'received'
103
+ }
104
+ ].each do |metadata|
105
+ scopes = metadata[:scopes].split
106
+ received_or_requested = metadata[:received_or_requested]
107
+ missing_scopes = required_scopes - scopes
108
+
109
+ if received_or_requested == 'requested'
110
+ assert missing_scopes.empty?,
111
+ "Required scopes were not #{received_or_requested}: #{missing_scopes.join(', ')}"
112
+ else
113
+ received_scope_test(scopes)
114
+ end
115
+ end
116
+ end
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CarinForBlueButtonTestKit
4
+ module CARIN4BBV200DEVNONFINANCIAL
5
+ class WellKnownCapabilitiesTest < Inferno::Test
6
+ id :c4bb_v200devnonfinancial_smart_capabilities
7
+ title 'Server Well-known configuration declares support for the required SMART capabilities'
8
+ description %(
9
+ Servers SHALL support the following [SMART on FHIR
10
+ capabilities](https://hl7.org/fhir/us/carin-bb/Security_And_Privacy_Considerations.html#authentication-and-authorization-requirements):
11
+
12
+ * `launch-standalone`
13
+ * `client-public`
14
+ * `client-confidential-symmetric`
15
+ * `sso-openid-connect`
16
+ * `context-standalone-patient`
17
+ * `permission-offline`
18
+ * `permission-patient`
19
+ * `permission-user`
20
+ )
21
+
22
+ input :well_known_configuration
23
+
24
+ run do
25
+ skip_if well_known_configuration.blank?, 'No SMART well-known configuration received'
26
+
27
+ assert_valid_json(well_known_configuration)
28
+
29
+ advertised_capabilities = JSON.parse(well_known_configuration)['capabilities']
30
+
31
+ assert advertised_capabilities.is_a?(Array),
32
+ "Expected `capabilities` field to be an Array, but found #{advertised_capabilities.class.name}"
33
+
34
+ required_capabilities = config.options[:required_capabilities] || []
35
+
36
+ missing_capabilities = required_capabilities - advertised_capabilities
37
+
38
+ missing_capabilities_string =
39
+ missing_capabilities
40
+ .map { |capability| "\n* `#{capability}`" }
41
+ .join
42
+
43
+ assert missing_capabilities.empty?,
44
+ "
45
+ Server did not advertise support for the following required capabilities:
46
+ #{missing_capabilities_string}
47
+ "
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,129 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'c4bb_smart_launch/well_known_capabilities_test'
4
+ require_relative 'c4bb_smart_launch/smart_scopes_test'
5
+
6
+ module CarinForBlueButtonTestKit
7
+ module CARIN4BBV200DEVNONFINANCIAL
8
+ class C4BBSMARTLaunchGroup < Inferno::TestGroup
9
+ id :c4bb_v200devnonfinancial_smart_launch
10
+ title 'SMART App Launch'
11
+ description %(
12
+ # Background
13
+ Applications authorize to gain access to a patient record using the
14
+ [SMART App Launch
15
+ Protocol](http://hl7.org/fhir/smart-app-launch/1.0.0/)'s standalone
16
+ launch sequence.
17
+
18
+ # Testing Methodology
19
+ These tests first access the server's SMART discovery endpoints and
20
+ verify that they are available and that the server advertises support
21
+ for the required SMART capabilities and required authorization scopes.
22
+ They then perform a standalone launch to obtain an access token which
23
+ can be used by the remaining tests to access patient data.
24
+ )
25
+ input_order :url,
26
+ :standalone_client_id,
27
+ :standalone_client_secret,
28
+ :standalone_requested_scopes,
29
+ :use_pkce,
30
+ :pkce_code_challenge_method,
31
+ :standalone_authorization_method,
32
+ :client_auth_type,
33
+ :client_auth_encryption_method
34
+
35
+ group from: :smart_discovery do
36
+ run_as_group
37
+
38
+ test from: :c4bb_v200devnonfinancial_smart_capabilities do
39
+ config(
40
+ options: {
41
+ required_capabilities: %w[
42
+ launch-standalone
43
+ client-public
44
+ client-confidential-symmetric
45
+ sso-openid-connect
46
+ context-standalone-patient
47
+ permission-offline
48
+ permission-patient
49
+ permission-user
50
+ ]
51
+ }
52
+ )
53
+ end
54
+ end
55
+
56
+ group from: :smart_standalone_launch do
57
+ run_as_group
58
+ description %(
59
+ # Background
60
+
61
+ The [Standalone
62
+ Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
63
+ allows an app, like Inferno, to be launched independent of an
64
+ existing EHR session. It is one of the two launch methods described in
65
+ the SMART App Launch Framework alongside EHR Launch. The app will
66
+ request authorization for the provided scope from the authorization
67
+ endpoint, ultimately receiving an authorization token which can be used
68
+ to gain access to resources on the FHIR server.
69
+
70
+ # Test Methodology
71
+
72
+ Inferno will redirect the user to the authorization endpoint so that
73
+ they can provide any required credentials and authorize the application.
74
+ Upon successful authorization, Inferno will exchange the authorization
75
+ code provided for an access token.
76
+
77
+ For more information on the #{title}:
78
+
79
+ * [Standalone Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
80
+ )
81
+
82
+ config(
83
+ inputs: {
84
+ requested_scopes: {
85
+ default: %(
86
+ launch/patient openid fhirUser
87
+ patient/ExplanationOfBenefit.read patient/Coverage.read
88
+ patient/Patient.read patient/Organization.read
89
+ patient/Practitioner.read user/ExplanationOfBenefit.read
90
+ user/Coverage.read user/Patient.read
91
+ user/Organization.read user/Practitioner.read
92
+ ).gsub(/\s{2,}/, ' ').strip
93
+ }
94
+ },
95
+ outputs: {
96
+ patient_id: { name: :patient_ids },
97
+ smart_credentials: { name: :smart_credentials }
98
+ }
99
+ )
100
+
101
+ test from: :c4bb_v200devnonfinancial_smart_scopes do
102
+ config(
103
+ inputs: {
104
+ requested_scopes: { name: :standalone_requested_scopes },
105
+ received_scopes: { name: :standalone_received_scopes }
106
+ },
107
+ options: {
108
+ required_scopes: %w[
109
+ openid
110
+ fhirUser
111
+ launch/patient
112
+ patient/ExplanationOfBenefit.read
113
+ patient/Coverage.read
114
+ patient/Patient.read
115
+ patient/Organization.read
116
+ patient/Practitioner.read
117
+ user/ExplanationOfBenefit.read
118
+ user/Coverage.read
119
+ user/Patient.read
120
+ user/Organization.read
121
+ user/Practitioner.read
122
+ ]
123
+ }
124
+ )
125
+ end
126
+ end
127
+ end
128
+ end
129
+ end