davinci_pas_test_kit 0.14.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (461) hide show
  1. checksums.yaml +4 -4
  2. data/config/presets/pas_client_v201_run_against_pas_server.json +39 -0
  3. data/config/presets/pas_client_v221_run_against_pas_server.json +85 -0
  4. data/config/presets/pas_ri.json +2 -2
  5. data/config/presets/pas_server_v201_run_against_pas_client.json.erb +76 -0
  6. data/config/presets/pas_server_v221_run_against_pas_client.json.erb +104 -0
  7. data/lib/davinci_pas_test_kit/client/abstract_approval_submit_test.rb +75 -0
  8. data/lib/davinci_pas_test_kit/client/abstract_denial_submit_test.rb +74 -0
  9. data/lib/davinci_pas_test_kit/client/abstract_gather_must_support_test.rb +160 -0
  10. data/lib/davinci_pas_test_kit/client/abstract_modification_submit_test.rb +78 -0
  11. data/lib/davinci_pas_test_kit/client/abstract_response_attest.rb +64 -0
  12. data/lib/davinci_pas_test_kit/client/abstract_subscription_create_test.rb +57 -0
  13. data/lib/davinci_pas_test_kit/{urls.rb → client/client_urls.rb} +7 -23
  14. data/lib/davinci_pas_test_kit/client/endpoints/claim_endpoint.rb +303 -0
  15. data/lib/davinci_pas_test_kit/{endpoints → client/endpoints}/subscription_create_endpoint.rb +1 -1
  16. data/lib/davinci_pas_test_kit/{endpoints → client/endpoints}/subscription_status_endpoint.rb +1 -1
  17. data/lib/davinci_pas_test_kit/{endpoints → client/endpoints}/token_endpoint.rb +1 -2
  18. data/lib/davinci_pas_test_kit/{generated/v2.0.1/beneficiary/client_submit_request_beneficiary_must_support_test.rb → client/generated/v2.0.1/beneficiary/client_inquire_request_must_support_beneficiary_test.rb} +14 -35
  19. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/beneficiary/client_inquire_response_must_support_beneficiary_test.rb +59 -0
  20. data/lib/davinci_pas_test_kit/{generated/v2.0.1/beneficiary/client_inquire_request_beneficiary_must_support_test.rb → client/generated/v2.0.1/beneficiary/client_submit_request_must_support_beneficiary_test.rb} +14 -35
  21. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/beneficiary/client_submit_response_must_support_beneficiary_test.rb +59 -0
  22. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claim_inquiry/client_inquire_request_claim_inquiry_must_support_test.rb → client/generated/v2.0.1/claim_inquiry/client_inquire_request_must_support_claim_inquiry_test.rb} +19 -35
  23. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claim_update/client_submit_request_claim_update_must_support_test.rb → client/generated/v2.0.1/claim_update/client_submit_request_must_support_claim_update_test.rb} +19 -35
  24. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/claiminquiryresponse/client_inquire_response_must_support_claiminquiryresponse_test.rb +57 -0
  25. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/claimresponse/client_submit_response_must_support_claimresponse_test.rb +59 -0
  26. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/communication_request/client_submit_response_must_support_communication_request_test.rb +42 -0
  27. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/coverage/client_inquire_request_must_support_coverage_test.rb +39 -0
  28. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/coverage/client_submit_request_must_support_coverage_test.rb +39 -0
  29. data/lib/davinci_pas_test_kit/{generated/v2.0.1/encounter/client_submit_request_encounter_must_support_test.rb → client/generated/v2.0.1/encounter/client_submit_request_must_support_encounter_test.rb} +14 -35
  30. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_inquire_request_must_support_insurer_test.rb +44 -0
  31. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_inquire_response_must_support_insurer_test.rb +44 -0
  32. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_submit_request_must_support_insurer_test.rb +44 -0
  33. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_submit_response_must_support_insurer_test.rb +44 -0
  34. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_inquire_must_support_group.rb +48 -0
  35. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_inquire_response_must_support_group.rb +79 -0
  36. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_submit_must_support_group.rb +58 -0
  37. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_submit_response_must_support_group.rb +84 -0
  38. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_inquiry_request_bundle/client_inquire_request_must_support_pas_inquiry_request_bundle_test.rb +37 -0
  39. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_inquiry_response_bundle/client_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +36 -0
  40. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_request_bundle/client_submit_request_must_support_pas_request_bundle_test.rb +37 -0
  41. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_response_bundle/client_submit_response_must_support_pas_response_bundle_test.rb +36 -0
  42. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_inquire_request_must_support_practitioner_test.rb +37 -0
  43. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_inquire_response_must_support_practitioner_test.rb +37 -0
  44. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_submit_request_must_support_practitioner_test.rb +37 -0
  45. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_submit_response_must_support_practitioner_test.rb +37 -0
  46. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_inquire_request_must_support_practitioner_role_test.rb +33 -0
  47. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_inquire_response_must_support_practitioner_role_test.rb +33 -0
  48. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_submit_request_must_support_practitioner_role_test.rb +33 -0
  49. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_submit_response_must_support_practitioner_role_test.rb +33 -0
  50. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_inquire_request_must_support_requestor_test.rb +47 -0
  51. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_inquire_response_must_support_requestor_test.rb +47 -0
  52. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_submit_request_must_support_requestor_test.rb +47 -0
  53. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_submit_response_must_support_requestor_test.rb +47 -0
  54. data/lib/davinci_pas_test_kit/{generated/v2.0.1/subscriber/client_inquire_request_subscriber_must_support_test.rb → client/generated/v2.0.1/subscriber/client_inquire_request_must_support_subscriber_test.rb} +14 -35
  55. data/lib/davinci_pas_test_kit/{generated/v2.0.1/subscriber/client_submit_request_subscriber_must_support_test.rb → client/generated/v2.0.1/subscriber/client_submit_request_must_support_subscriber_test.rb} +14 -35
  56. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/task/client_inquire_response_must_support_task_test.rb +45 -0
  57. data/lib/davinci_pas_test_kit/client/generated/v2.0.1/task/client_submit_response_must_support_task_test.rb +45 -0
  58. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/beneficiary/client_inquire_response_must_support_beneficiary_test.rb +53 -0
  59. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/beneficiary/client_submit_response_must_support_beneficiary_test.rb +53 -0
  60. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claim_inquiry/client_inquire_request_must_support_claim_inquiry_test.rb +123 -0
  61. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claim_update/client_submit_request_must_support_claim_update_test.rb +143 -0
  62. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claiminquiryresponse/client_inquire_response_must_support_claiminquiryresponse_test.rb +102 -0
  63. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claimresponse/client_submit_response_must_support_claimresponse_test.rb +103 -0
  64. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/communication_request/client_submit_response_must_support_communication_request_test.rb +42 -0
  65. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/insurer/client_inquire_response_must_support_insurer_test.rb +47 -0
  66. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/insurer/client_submit_response_must_support_insurer_test.rb +47 -0
  67. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_inquire_must_support_group.rb +60 -0
  68. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_inquire_response_must_support_group.rb +79 -0
  69. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_submit_must_support_group.rb +89 -0
  70. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_submit_response_must_support_group.rb +84 -0
  71. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_inquiry_response_bundle/client_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +38 -0
  72. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_response_bundle/client_submit_response_must_support_pas_response_bundle_test.rb +39 -0
  73. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner/client_inquire_response_must_support_practitioner_test.rb +44 -0
  74. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner/client_submit_response_must_support_practitioner_test.rb +44 -0
  75. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner_role/client_inquire_response_must_support_practitioner_role_test.rb +40 -0
  76. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner_role/client_submit_response_must_support_practitioner_role_test.rb +40 -0
  77. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/requestor/client_inquire_response_must_support_requestor_test.rb +50 -0
  78. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/requestor/client_submit_response_must_support_requestor_test.rb +50 -0
  79. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/task/client_inquire_response_must_support_task_test.rb +55 -0
  80. data/lib/davinci_pas_test_kit/client/generated/v2.2.1/task/client_submit_response_must_support_task_test.rb +55 -0
  81. data/lib/davinci_pas_test_kit/{jobs → client/jobs}/send_pas_subscription_notification.rb +12 -7
  82. data/lib/davinci_pas_test_kit/{jobs → client/jobs}/send_subscription_handshake.rb +1 -1
  83. data/lib/davinci_pas_test_kit/client/metadata/mock_pas_server.rb +26 -0
  84. data/lib/davinci_pas_test_kit/client/metadata/pas_server_capability_statement.json +60 -0
  85. data/lib/davinci_pas_test_kit/client/pas_client_options.rb +23 -0
  86. data/lib/davinci_pas_test_kit/client/pas_client_subscription_pas_conformance_test.rb +33 -0
  87. data/lib/davinci_pas_test_kit/client/registration/abstract_configuration_other_display_test.rb +45 -0
  88. data/lib/davinci_pas_test_kit/client/registration/abstract_configuration_smart_display_test.rb +37 -0
  89. data/lib/davinci_pas_test_kit/client/registration/abstract_configuration_udap_display_test.rb +37 -0
  90. data/lib/davinci_pas_test_kit/client/registration/abstract_other_auth_attest_test.rb +39 -0
  91. data/lib/davinci_pas_test_kit/{response_generator.rb → client/response_generator.rb} +198 -62
  92. data/lib/davinci_pas_test_kit/{session_identification.rb → client/session_identification.rb} +1 -2
  93. data/lib/davinci_pas_test_kit/client/user_input_response.rb +64 -0
  94. data/lib/davinci_pas_test_kit/{client_suite.rb → client/v2.0.1/client_suite.rb} +33 -16
  95. data/lib/davinci_pas_test_kit/client/v2.0.1/must_support/pas_client_gather_must_support_test.rb +12 -0
  96. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/must_support/pas_client_must_support_requirement_test.rb → client/v2.0.1/must_support/pas_client_must_support_request_profiles_test.rb} +12 -46
  97. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_approval_group.rb +5 -5
  98. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_auth_smart_group.rb +1 -2
  99. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_auth_udap_group.rb +1 -2
  100. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_denial_group.rb +7 -6
  101. data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_must_support_group.rb +96 -0
  102. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_pended_group.rb +13 -10
  103. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_registration_group.rb +5 -6
  104. data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_subscription_setup_group.rb +6 -3
  105. data/lib/davinci_pas_test_kit/client/v2.0.1/registration/configuration_other_display_test.rb +12 -0
  106. data/lib/davinci_pas_test_kit/client/v2.0.1/registration/configuration_smart_display_test.rb +12 -0
  107. data/lib/davinci_pas_test_kit/client/v2.0.1/registration/configuration_udap_display_test.rb +12 -0
  108. data/lib/davinci_pas_test_kit/client/v2.0.1/registration/other_auth_attest_test.rb +12 -0
  109. data/lib/davinci_pas_test_kit/client/v2.0.1/subscription/pas_client_subscription_create_test.rb +15 -0
  110. data/lib/davinci_pas_test_kit/client/v2.0.1/urls.rb +15 -0
  111. data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_approval_submit_test.rb +15 -0
  112. data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_denial_submit_test.rb +15 -0
  113. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/client_tests → client/v2.0.1/workflows}/pas_client_inquire_request_bundle_validation_test.rb +1 -3
  114. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/client_tests → client/v2.0.1/workflows}/pas_client_inquire_response_bundle_validation_test.rb +18 -6
  115. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/client_tests → client/v2.0.1/workflows}/pas_client_pended_submit_test.rb +12 -8
  116. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/client_tests → client/v2.0.1/workflows}/pas_client_request_bundle_validation_test.rb +1 -3
  117. data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_response_attest.rb +12 -0
  118. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/client_tests → client/v2.0.1/workflows}/pas_client_response_bundle_validation_test.rb +10 -5
  119. data/lib/davinci_pas_test_kit/client/v2.2.1/client_suite.rb +240 -0
  120. data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_operation_failure_submit_test.rb +76 -0
  121. data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_operation_outcome_validation_test.rb +38 -0
  122. data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_processing_error_response_validation_test.rb +55 -0
  123. data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_processing_error_submit_test.rb +67 -0
  124. data/lib/davinci_pas_test_kit/client/v2.2.1/must_support/must_support_with_attestation_option.rb +214 -0
  125. data/lib/davinci_pas_test_kit/client/v2.2.1/must_support/pas_client_gather_must_support_test.rb +12 -0
  126. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_approval_group.rb +40 -0
  127. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_auth_smart_group.rb +31 -0
  128. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_auth_udap_group.rb +30 -0
  129. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_claim_updates_group.rb +112 -0
  130. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_denial_group.rb +47 -0
  131. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_error_handling_group.rb +20 -0
  132. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_modification_group.rb +52 -0
  133. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_must_support_group.rb +96 -0
  134. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_operation_failure_group.rb +45 -0
  135. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_pended_group.rb +125 -0
  136. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_processing_error_group.rb +44 -0
  137. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_registration_group.rb +65 -0
  138. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_subscription_setup_group.rb +31 -0
  139. data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_workflows_group.rb +25 -0
  140. data/lib/davinci_pas_test_kit/client/v2.2.1/registration/configuration_other_display_test.rb +12 -0
  141. data/lib/davinci_pas_test_kit/client/v2.2.1/registration/configuration_smart_display_test.rb +12 -0
  142. data/lib/davinci_pas_test_kit/client/v2.2.1/registration/configuration_udap_display_test.rb +12 -0
  143. data/lib/davinci_pas_test_kit/client/v2.2.1/registration/other_auth_attest_test.rb +12 -0
  144. data/lib/davinci_pas_test_kit/client/v2.2.1/subscription/pas_client_subscription_create_test.rb +14 -0
  145. data/lib/davinci_pas_test_kit/client/v2.2.1/urls.rb +15 -0
  146. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_approval_submit_test.rb +12 -0
  147. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_cancel_request_test.rb +33 -0
  148. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_cancelled_entries_test.rb +50 -0
  149. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_cancelled_items_certtype_test.rb +47 -0
  150. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_changed_entries_test.rb +100 -0
  151. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_entries_preserved_test.rb +51 -0
  152. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_grandparent_excluded_test.rb +52 -0
  153. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_referenced_claim_test.rb +46 -0
  154. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_referenced_resources_test.rb +43 -0
  155. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_submit_tests.rb +238 -0
  156. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_validation_utils.rb +183 -0
  157. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_denial_submit_test.rb +12 -0
  158. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_inquire_request_bundle_validation_test.rb +55 -0
  159. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_inquire_response_bundle_validation_test.rb +78 -0
  160. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_modification_submit_test.rb +12 -0
  161. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_modification_verification_test.rb +101 -0
  162. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_pended_submit_test.rb +148 -0
  163. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_request_bundle_validation_test.rb +56 -0
  164. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_response_attest.rb +12 -0
  165. data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_response_bundle_validation_test.rb +84 -0
  166. data/lib/davinci_pas_test_kit/cross_suite/base_urls.rb +27 -0
  167. data/lib/davinci_pas_test_kit/cross_suite/fhirpath_utils.rb +55 -0
  168. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/beneficiary/metadata.yml +19 -13
  169. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/claim_inquiry/metadata.yml +59 -22
  170. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/claim_update/metadata.yml +60 -22
  171. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/claiminquiryresponse/metadata.yml +17 -10
  172. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/claimresponse/metadata.yml +17 -13
  173. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/communication_request/metadata.yml +7 -13
  174. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/coverage/metadata.yml +8 -12
  175. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/device_request/metadata.yml +1 -6
  176. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/encounter/metadata.yml +6 -5
  177. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/insurer/metadata.yml +16 -13
  178. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/medication_request/metadata.yml +1 -6
  179. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/metadata.yml +276 -135
  180. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/nutrition_order/metadata.yml +1 -6
  181. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/pas_inquiry_request_bundle/metadata.yml +5 -7
  182. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/pas_inquiry_response_bundle/metadata.yml +5 -5
  183. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/pas_request_bundle/metadata.yml +5 -7
  184. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/pas_response_bundle/metadata.yml +5 -5
  185. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/practitioner/metadata.yml +16 -13
  186. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/practitioner_role/metadata.yml +16 -19
  187. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/requestor/metadata.yml +16 -13
  188. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/service_request/metadata.yml +2 -6
  189. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/subscriber/metadata.yml +11 -9
  190. data/lib/davinci_pas_test_kit/{generated → cross_suite/generated}/v2.0.1/task/metadata.yml +8 -5
  191. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/beneficiary/metadata.yml +150 -0
  192. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claim → cross_suite/generated/v2.2.1/claim_inquiry}/metadata.yml +199 -192
  193. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claim_update/metadata.yml +733 -0
  194. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claiminquiryresponse/metadata.yml +456 -0
  195. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/claimresponse/metadata.yml +461 -0
  196. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/communication_request/metadata.yml +120 -0
  197. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/coverage/metadata.yml +163 -0
  198. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/must_support/device_request_metadata.yml → cross_suite/generated/v2.2.1/device_request/metadata.yml} +32 -33
  199. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/encounter/metadata.yml +237 -0
  200. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/insurer/metadata.yml +111 -0
  201. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/must_support/medication_request_metadata.yml → cross_suite/generated/v2.2.1/medication_request/metadata.yml} +59 -26
  202. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/metadata.yml +6544 -0
  203. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/must_support/nutrition_order_metadata.yml → cross_suite/generated/v2.2.1/nutrition_order/metadata.yml} +13 -14
  204. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_inquiry_request_bundle/metadata.yml +74 -0
  205. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_inquiry_response_bundle/metadata.yml +70 -0
  206. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_request_bundle/metadata.yml +74 -0
  207. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/pas_response_bundle/metadata.yml +72 -0
  208. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/practitioner/metadata.yml +101 -0
  209. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/practitioner_role/metadata.yml +101 -0
  210. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/requestor/metadata.yml +114 -0
  211. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/must_support/service_request_metadata.yml → cross_suite/generated/v2.2.1/service_request/metadata.yml} +39 -45
  212. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/subscriber/metadata.yml +136 -0
  213. data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/task/metadata.yml +237 -0
  214. data/lib/davinci_pas_test_kit/cross_suite/must_support/must_support_data_gathering.rb +111 -0
  215. data/lib/davinci_pas_test_kit/cross_suite/must_support/must_support_request_type_test.rb +75 -0
  216. data/lib/davinci_pas_test_kit/cross_suite/must_support/must_support_test.rb +67 -0
  217. data/lib/davinci_pas_test_kit/{pas_bundle_validation.rb → cross_suite/pas_bundle_validation.rb} +383 -56
  218. data/lib/davinci_pas_test_kit/cross_suite/pas_constants.rb +31 -0
  219. data/lib/davinci_pas_test_kit/cross_suite/pas_notification_verification.rb +120 -0
  220. data/lib/davinci_pas_test_kit/cross_suite/pas_subscription_verification.rb +72 -0
  221. data/lib/davinci_pas_test_kit/cross_suite/response_selection_utils.rb +88 -0
  222. data/lib/davinci_pas_test_kit/cross_suite/tags.rb +35 -0
  223. data/lib/davinci_pas_test_kit/cross_suite/validation_test.rb +25 -0
  224. data/lib/davinci_pas_test_kit/{validator_suppressions.rb → cross_suite/validator_suppressions.rb} +23 -1
  225. data/lib/davinci_pas_test_kit/ext/inferno_core/runnable.rb +22 -0
  226. data/lib/davinci_pas_test_kit/generator/client_must_support_group_generator.rb +230 -0
  227. data/lib/davinci_pas_test_kit/generator/descriptions.rb +95 -0
  228. data/lib/davinci_pas_test_kit/generator/ig_metadata.rb +45 -38
  229. data/lib/davinci_pas_test_kit/generator/ig_metadata_extractor.rb +3 -5
  230. data/lib/davinci_pas_test_kit/generator/{must_support_check_profiles.rb → must_support_target_profiles.rb} +12 -12
  231. data/lib/davinci_pas_test_kit/generator/must_support_test_generator.rb +63 -83
  232. data/lib/davinci_pas_test_kit/generator/pas_must_support_metadata_extractor.rb +129 -0
  233. data/lib/davinci_pas_test_kit/generator/profile_metadata.rb +86 -0
  234. data/lib/davinci_pas_test_kit/generator/{group_metadata_extractor.rb → profile_metadata_extractor.rb} +11 -78
  235. data/lib/davinci_pas_test_kit/generator/server_must_support_group_generator.rb +166 -0
  236. data/lib/davinci_pas_test_kit/generator/{suite_generator.rb → server_suite_generator.rb} +32 -5
  237. data/lib/davinci_pas_test_kit/generator/templates/client_must_support_group.rb.erb +80 -0
  238. data/lib/davinci_pas_test_kit/generator/templates/client_must_support_response_group.rb.erb +43 -0
  239. data/lib/davinci_pas_test_kit/generator/templates/must_support.rb.erb +14 -35
  240. data/lib/davinci_pas_test_kit/generator/templates/server_must_support_group.rb.erb +121 -0
  241. data/lib/davinci_pas_test_kit/generator/templates/{suite.rb.erb → server_suite.rb.erb} +19 -23
  242. data/lib/davinci_pas_test_kit/generator/templates/use_case_group.rb.erb +181 -0
  243. data/lib/davinci_pas_test_kit/generator/use_case_group_generator.rb +227 -0
  244. data/lib/davinci_pas_test_kit/generator.rb +46 -26
  245. data/lib/davinci_pas_test_kit/igs/davinci_pas_2.2.1.tgz +0 -0
  246. data/lib/davinci_pas_test_kit/metadata.rb +21 -55
  247. data/lib/davinci_pas_test_kit/parameters_helper.rb +18 -0
  248. data/lib/davinci_pas_test_kit/pas_notification_conformance_test.rb +40 -0
  249. data/lib/davinci_pas_test_kit/requirements/davinci_pas_test_kit_requirements.csv +121 -0
  250. data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_client_suite_v201_requirements_coverage.csv +22 -22
  251. data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_client_suite_v221_requirements_coverage.csv +66 -0
  252. data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_server_suite_v201_requirements_coverage.csv +42 -42
  253. data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_server_suite_v221_requirements_coverage.csv +212 -0
  254. data/lib/davinci_pas_test_kit/requirements/hl7.fhir.us.davinci-pas_2.2.1_requirements.xlsx +0 -0
  255. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/notification/pas_subscription_notification_test.rb → server/abstract_pas_subscription_notification_wait_test.rb} +13 -20
  256. data/lib/davinci_pas_test_kit/server/claim_inquire_operation_test.rb +31 -0
  257. data/lib/davinci_pas_test_kit/server/claim_operation_logic.rb +67 -0
  258. data/lib/davinci_pas_test_kit/server/claim_submit_operation_test.rb +32 -0
  259. data/lib/davinci_pas_test_kit/{generated/v2.0.1/beneficiary/server_submit_request_beneficiary_must_support_test.rb → server/generated/v2.0.1/beneficiary/server_inquire_request_must_support_beneficiary_test.rb} +14 -35
  260. data/lib/davinci_pas_test_kit/{generated/v2.0.1/beneficiary/server_submit_response_beneficiary_must_support_test.rb → server/generated/v2.0.1/beneficiary/server_inquire_response_must_support_beneficiary_test.rb} +16 -36
  261. data/lib/davinci_pas_test_kit/{generated/v2.0.1/beneficiary/server_inquire_request_beneficiary_must_support_test.rb → server/generated/v2.0.1/beneficiary/server_submit_request_must_support_beneficiary_test.rb} +14 -35
  262. data/lib/davinci_pas_test_kit/{generated/v2.0.1/beneficiary/server_inquire_response_beneficiary_must_support_test.rb → server/generated/v2.0.1/beneficiary/server_submit_response_must_support_beneficiary_test.rb} +16 -36
  263. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claim_inquiry/server_inquire_request_claim_inquiry_must_support_test.rb → server/generated/v2.0.1/claim_inquiry/server_inquire_request_must_support_claim_inquiry_test.rb} +19 -35
  264. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claim_update/server_submit_request_claim_update_must_support_test.rb → server/generated/v2.0.1/claim_update/server_submit_request_must_support_claim_update_test.rb} +19 -35
  265. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claiminquiryresponse/server_inquire_response_claiminquiryresponse_must_support_test.rb → server/generated/v2.0.1/claiminquiryresponse/server_inquire_response_must_support_claiminquiryresponse_test.rb} +14 -35
  266. data/lib/davinci_pas_test_kit/{generated/v2.0.1/claimresponse/server_submit_response_claimresponse_must_support_test.rb → server/generated/v2.0.1/claimresponse/server_submit_response_must_support_claimresponse_test.rb} +14 -35
  267. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/communication_request/server_submit_response_must_support_communication_request_test.rb +43 -0
  268. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/coverage/server_inquire_request_must_support_coverage_test.rb +41 -0
  269. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/coverage/server_submit_request_must_support_coverage_test.rb +41 -0
  270. data/lib/davinci_pas_test_kit/{generated/v2.0.1/encounter/server_submit_request_encounter_must_support_test.rb → server/generated/v2.0.1/encounter/server_submit_request_must_support_encounter_test.rb} +14 -35
  271. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_inquire_request_must_support_insurer_test.rb +46 -0
  272. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_inquire_response_must_support_insurer_test.rb +45 -0
  273. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_submit_request_must_support_insurer_test.rb +46 -0
  274. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_submit_response_must_support_insurer_test.rb +45 -0
  275. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_inquiry_request_bundle/server_inquire_request_must_support_pas_inquiry_request_bundle_test.rb +39 -0
  276. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_inquiry_response_bundle/server_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +37 -0
  277. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_request_bundle/server_submit_request_must_support_pas_request_bundle_test.rb +39 -0
  278. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_response_bundle/server_submit_response_must_support_pas_response_bundle_test.rb +37 -0
  279. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_approval_use_case_group.rb +145 -0
  280. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_denial_use_case_group.rb +145 -0
  281. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_must_support_group.rb +442 -0
  282. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_pended_use_case_group.rb +280 -0
  283. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_inquire_request_must_support_practitioner_test.rb +39 -0
  284. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_inquire_response_must_support_practitioner_test.rb +38 -0
  285. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_submit_request_must_support_practitioner_test.rb +39 -0
  286. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_submit_response_must_support_practitioner_test.rb +38 -0
  287. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_inquire_request_must_support_practitioner_role_test.rb +35 -0
  288. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_inquire_response_must_support_practitioner_role_test.rb +34 -0
  289. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_submit_request_must_support_practitioner_role_test.rb +35 -0
  290. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_submit_response_must_support_practitioner_role_test.rb +34 -0
  291. data/lib/davinci_pas_test_kit/{generated/v2.0.1/requestor/server_submit_request_requestor_must_support_test.rb → server/generated/v2.0.1/requestor/server_inquire_request_must_support_requestor_test.rb} +14 -35
  292. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/requestor/server_inquire_response_must_support_requestor_test.rb +48 -0
  293. data/lib/davinci_pas_test_kit/{generated/v2.0.1/requestor/server_inquire_request_requestor_must_support_test.rb → server/generated/v2.0.1/requestor/server_submit_request_must_support_requestor_test.rb} +14 -35
  294. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/requestor/server_submit_response_must_support_requestor_test.rb +48 -0
  295. data/lib/davinci_pas_test_kit/{generated → server/generated}/v2.0.1/server_suite.rb +14 -20
  296. data/lib/davinci_pas_test_kit/{generated/v2.0.1/subscriber/server_inquire_request_subscriber_must_support_test.rb → server/generated/v2.0.1/subscriber/server_inquire_request_must_support_subscriber_test.rb} +14 -35
  297. data/lib/davinci_pas_test_kit/{generated/v2.0.1/subscriber/server_submit_request_subscriber_must_support_test.rb → server/generated/v2.0.1/subscriber/server_submit_request_must_support_subscriber_test.rb} +14 -35
  298. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/task/server_inquire_response_must_support_task_test.rb +46 -0
  299. data/lib/davinci_pas_test_kit/server/generated/v2.0.1/task/server_submit_response_must_support_task_test.rb +46 -0
  300. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_inquire_request_must_support_beneficiary_test.rb +55 -0
  301. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_inquire_response_must_support_beneficiary_test.rb +53 -0
  302. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_submit_request_must_support_beneficiary_test.rb +55 -0
  303. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_submit_response_must_support_beneficiary_test.rb +53 -0
  304. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claim_inquiry/server_inquire_request_must_support_claim_inquiry_test.rb +125 -0
  305. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claim_update/server_submit_request_must_support_claim_update_test.rb +145 -0
  306. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claiminquiryresponse/server_inquire_response_must_support_claiminquiryresponse_test.rb +102 -0
  307. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claimresponse/server_submit_response_must_support_claimresponse_test.rb +103 -0
  308. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/communication_request/server_submit_response_must_support_communication_request_test.rb +42 -0
  309. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/coverage/server_inquire_request_must_support_coverage_test.rb +52 -0
  310. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/coverage/server_submit_request_must_support_coverage_test.rb +52 -0
  311. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/encounter/server_submit_request_must_support_encounter_test.rb +58 -0
  312. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_inquire_request_must_support_insurer_test.rb +49 -0
  313. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_inquire_response_must_support_insurer_test.rb +47 -0
  314. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_submit_request_must_support_insurer_test.rb +49 -0
  315. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_submit_response_must_support_insurer_test.rb +47 -0
  316. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_inquiry_request_bundle/server_inquire_request_must_support_pas_inquiry_request_bundle_test.rb +41 -0
  317. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_inquiry_response_bundle/server_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +38 -0
  318. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_request_bundle/server_submit_request_must_support_pas_request_bundle_test.rb +41 -0
  319. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_response_bundle/server_submit_response_must_support_pas_response_bundle_test.rb +39 -0
  320. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_approval_use_case_group.rb +125 -0
  321. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_denial_use_case_group.rb +125 -0
  322. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_must_support_group.rb +403 -0
  323. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_pended_use_case_group.rb +150 -0
  324. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_inquire_request_must_support_practitioner_test.rb +46 -0
  325. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_inquire_response_must_support_practitioner_test.rb +44 -0
  326. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_submit_request_must_support_practitioner_test.rb +46 -0
  327. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_submit_response_must_support_practitioner_test.rb +44 -0
  328. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_inquire_request_must_support_practitioner_role_test.rb +42 -0
  329. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_inquire_response_must_support_practitioner_role_test.rb +40 -0
  330. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_submit_request_must_support_practitioner_role_test.rb +42 -0
  331. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_submit_response_must_support_practitioner_role_test.rb +40 -0
  332. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_inquire_request_must_support_requestor_test.rb +52 -0
  333. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_inquire_response_must_support_requestor_test.rb +50 -0
  334. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_submit_request_must_support_requestor_test.rb +52 -0
  335. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_submit_response_must_support_requestor_test.rb +50 -0
  336. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/server_suite.rb +148 -0
  337. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/subscriber/server_inquire_request_must_support_subscriber_test.rb +54 -0
  338. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/subscriber/server_submit_request_must_support_subscriber_test.rb +54 -0
  339. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/task/server_inquire_response_must_support_task_test.rb +55 -0
  340. data/lib/davinci_pas_test_kit/server/generated/v2.2.1/task/server_submit_response_must_support_task_test.rb +55 -0
  341. data/lib/davinci_pas_test_kit/server/pas_claim_response_decision_test.rb +73 -0
  342. data/lib/davinci_pas_test_kit/server/server_request_bundle_validation_test.rb +64 -0
  343. data/lib/davinci_pas_test_kit/server/server_response_bundle_validation_test.rb +76 -0
  344. data/lib/davinci_pas_test_kit/{custom_groups → server}/v2.0.1/error_tests/pas_inquiry_error_test.rb +2 -2
  345. data/lib/davinci_pas_test_kit/{custom_groups → server}/v2.0.1/error_tests/pas_submission_error_test.rb +2 -2
  346. data/lib/davinci_pas_test_kit/{custom_groups/v2.0.1/must_support/pas_server_must_support_requirement_test.rb → server/v2.0.1/must_support/pas_server_must_support_request_profiles_test.rb} +12 -45
  347. data/lib/davinci_pas_test_kit/{custom_groups → server}/v2.0.1/pas_error_group.rb +3 -3
  348. data/lib/davinci_pas_test_kit/{custom_groups → server}/v2.0.1/pas_server_subscription_input_conformance.rb +5 -3
  349. data/lib/davinci_pas_test_kit/server/v2.0.1/pas_server_subscription_notification_wait_test.rb +12 -0
  350. data/lib/davinci_pas_test_kit/{custom_groups → server}/v2.0.1/pas_server_subscription_setup.rb +5 -3
  351. data/lib/davinci_pas_test_kit/server/v2.0.1/server_urls.rb +13 -0
  352. data/lib/davinci_pas_test_kit/server/v2.2.1/claim_updates/server_claim_update_response_tests.rb +143 -0
  353. data/lib/davinci_pas_test_kit/server/v2.2.1/error_tests/nonconformant_pas_bundle.json +16 -0
  354. data/lib/davinci_pas_test_kit/server/v2.2.1/error_tests/pas_inquiry_error_test.rb +38 -0
  355. data/lib/davinci_pas_test_kit/server/v2.2.1/error_tests/pas_submission_error_test.rb +56 -0
  356. data/lib/davinci_pas_test_kit/server/v2.2.1/must_support/pas_server_must_support_request_profiles_test.rb +86 -0
  357. data/lib/davinci_pas_test_kit/server/v2.2.1/pas_error_group.rb +20 -0
  358. data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_claim_updates_group.rb +104 -0
  359. data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_subscription_input_conformance.rb +48 -0
  360. data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_subscription_notification_wait_test.rb +12 -0
  361. data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_subscription_setup.rb +42 -0
  362. data/lib/davinci_pas_test_kit/server/v2.2.1/server_urls.rb +13 -0
  363. data/lib/davinci_pas_test_kit/version.rb +2 -2
  364. data/lib/davinci_pas_test_kit.rb +5 -2
  365. metadata +386 -190
  366. data/config/presets/pas_server_subscription_creation_against_pas_client.json +0 -32
  367. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/claim_response_decision/pas_claim_response_decision_test.rb +0 -43
  368. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/configuration_other_display_test.rb +0 -46
  369. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/configuration_smart_display_test.rb +0 -37
  370. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/configuration_udap_display_test.rb +0 -37
  371. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_registration/other_auth_attest_test.rb +0 -36
  372. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_approval_submit_test.rb +0 -80
  373. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_denial_submit_test.rb +0 -79
  374. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_inquire_must_support_test.rb +0 -63
  375. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_response_attest.rb +0 -52
  376. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_submit_must_support_test.rb +0 -72
  377. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_subscription_create_test.rb +0 -62
  378. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_subscription_pas_conformance_test.rb +0 -30
  379. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_must_support_group.rb +0 -29
  380. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_options.rb +0 -25
  381. data/lib/davinci_pas_test_kit/endpoints/claim_endpoint.rb +0 -157
  382. data/lib/davinci_pas_test_kit/fhir_resource_navigation.rb +0 -72
  383. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim/claim_operation_test.rb +0 -67
  384. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/claim_inquiry_operation_test.rb +0 -56
  385. data/lib/davinci_pas_test_kit/generated/v2.0.1/communication_request/server_submit_response_communication_request_must_support_test.rb +0 -63
  386. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/client_inquire_request_coverage_must_support_test.rb +0 -60
  387. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/client_submit_request_coverage_must_support_test.rb +0 -60
  388. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/server_inquire_request_coverage_must_support_test.rb +0 -62
  389. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/server_submit_request_coverage_must_support_test.rb +0 -62
  390. data/lib/davinci_pas_test_kit/generated/v2.0.1/device_request/client_submit_request_device_request_must_support_test.rb +0 -56
  391. data/lib/davinci_pas_test_kit/generated/v2.0.1/device_request/server_submit_request_device_request_must_support_test.rb +0 -58
  392. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/client_inquire_request_insurer_must_support_test.rb +0 -65
  393. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/client_submit_request_insurer_must_support_test.rb +0 -65
  394. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_inquire_request_insurer_must_support_test.rb +0 -67
  395. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_inquire_response_insurer_must_support_test.rb +0 -65
  396. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_submit_request_insurer_must_support_test.rb +0 -67
  397. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_submit_response_insurer_must_support_test.rb +0 -65
  398. data/lib/davinci_pas_test_kit/generated/v2.0.1/medication_request/client_submit_request_medication_request_must_support_test.rb +0 -66
  399. data/lib/davinci_pas_test_kit/generated/v2.0.1/medication_request/server_submit_request_medication_request_must_support_test.rb +0 -68
  400. data/lib/davinci_pas_test_kit/generated/v2.0.1/nutrition_order/client_submit_request_nutrition_order_must_support_test.rb +0 -58
  401. data/lib/davinci_pas_test_kit/generated/v2.0.1/nutrition_order/server_submit_request_nutrition_order_must_support_test.rb +0 -60
  402. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_client_inquiry_must_support_use_case_group.rb +0 -51
  403. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_client_submit_must_support_use_case_group.rb +0 -61
  404. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/client_inquire_request_pas_inquiry_request_bundle_must_support_test.rb +0 -58
  405. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/server_inquire_request_pas_inquiry_request_bundle_must_support_test.rb +0 -60
  406. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/server_pas_inquiry_request_bundle_validation_test.rb +0 -95
  407. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/server_inquire_response_pas_inquiry_response_bundle_must_support_test.rb +0 -57
  408. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/server_pas_inquiry_response_bundle_validation_test.rb +0 -89
  409. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/client_submit_request_pas_request_bundle_must_support_test.rb +0 -58
  410. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/server_pas_request_bundle_validation_test.rb +0 -95
  411. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/server_submit_request_pas_request_bundle_must_support_test.rb +0 -60
  412. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/server_pas_response_bundle_validation_test.rb +0 -89
  413. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/server_submit_response_pas_response_bundle_must_support_test.rb +0 -57
  414. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_approval_use_case_group.rb +0 -54
  415. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_denial_use_case_group.rb +0 -54
  416. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_must_support_use_case_group.rb +0 -268
  417. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_pended_use_case_group.rb +0 -90
  418. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/client_inquire_request_practitioner_must_support_test.rb +0 -58
  419. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/client_submit_request_practitioner_must_support_test.rb +0 -58
  420. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_inquire_request_practitioner_must_support_test.rb +0 -60
  421. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_inquire_response_practitioner_must_support_test.rb +0 -58
  422. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_submit_request_practitioner_must_support_test.rb +0 -60
  423. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_submit_response_practitioner_must_support_test.rb +0 -58
  424. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/client_inquire_request_practitioner_role_must_support_test.rb +0 -54
  425. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/client_submit_request_practitioner_role_must_support_test.rb +0 -54
  426. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_inquire_request_practitioner_role_must_support_test.rb +0 -56
  427. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_inquire_response_practitioner_role_must_support_test.rb +0 -54
  428. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_submit_request_practitioner_role_must_support_test.rb +0 -56
  429. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_submit_response_practitioner_role_must_support_test.rb +0 -54
  430. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/client_inquire_request_requestor_must_support_test.rb +0 -68
  431. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/client_submit_request_requestor_must_support_test.rb +0 -68
  432. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/server_inquire_response_requestor_must_support_test.rb +0 -68
  433. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/server_submit_response_requestor_must_support_test.rb +0 -68
  434. data/lib/davinci_pas_test_kit/generated/v2.0.1/resource_list.rb +0 -54
  435. data/lib/davinci_pas_test_kit/generated/v2.0.1/service_request/client_submit_request_service_request_must_support_test.rb +0 -58
  436. data/lib/davinci_pas_test_kit/generated/v2.0.1/service_request/server_submit_request_service_request_must_support_test.rb +0 -60
  437. data/lib/davinci_pas_test_kit/generated/v2.0.1/task/server_inquire_response_task_must_support_test.rb +0 -66
  438. data/lib/davinci_pas_test_kit/generated/v2.0.1/task/server_submit_response_task_must_support_test.rb +0 -66
  439. data/lib/davinci_pas_test_kit/generator/group_generator.rb +0 -470
  440. data/lib/davinci_pas_test_kit/generator/group_metadata.rb +0 -73
  441. data/lib/davinci_pas_test_kit/generator/naming.rb +0 -50
  442. data/lib/davinci_pas_test_kit/generator/operation_test_generator.rb +0 -149
  443. data/lib/davinci_pas_test_kit/generator/resource_list_generator.rb +0 -59
  444. data/lib/davinci_pas_test_kit/generator/templates/group.rb.erb +0 -136
  445. data/lib/davinci_pas_test_kit/generator/templates/operation.rb.erb +0 -65
  446. data/lib/davinci_pas_test_kit/generator/templates/resource_list.rb.erb +0 -13
  447. data/lib/davinci_pas_test_kit/generator/templates/validation.rb.erb +0 -99
  448. data/lib/davinci_pas_test_kit/generator/validation_test_generator.rb +0 -172
  449. data/lib/davinci_pas_test_kit/generator/value_extractor.rb +0 -51
  450. data/lib/davinci_pas_test_kit/must_support_test.rb +0 -71
  451. data/lib/davinci_pas_test_kit/pas_subscription_verification.rb +0 -30
  452. data/lib/davinci_pas_test_kit/tags.rb +0 -17
  453. data/lib/davinci_pas_test_kit/user_input_response.rb +0 -35
  454. data/lib/davinci_pas_test_kit/validation_test.rb +0 -57
  455. /data/lib/davinci_pas_test_kit/{certs → client/certs}/InfernoCA.key +0 -0
  456. /data/lib/davinci_pas_test_kit/{certs → client/certs}/InfernoCA.pem +0 -0
  457. /data/lib/davinci_pas_test_kit/{certs → client/certs}/TestKit.pem +0 -0
  458. /data/lib/davinci_pas_test_kit/{certs → client/certs}/TestKitPrivateKey.key +0 -0
  459. /data/lib/davinci_pas_test_kit/{descriptions.rb → client/client_input_descriptions.rb} +0 -0
  460. /data/lib/davinci_pas_test_kit/{custom_groups → client}/v2.0.1/pas_client_workflows_group.rb +0 -0
  461. /data/lib/davinci_pas_test_kit/{custom_groups → server}/v2.0.1/error_tests/nonconformant_pas_bundle.json +0 -0
@@ -0,0 +1,89 @@
1
+ require_relative '../../v2.2.1/must_support/must_support_with_attestation_option'
2
+ require_relative 'claim_update/client_submit_request_must_support_claim_update_test'
3
+
4
+ module DaVinciPASTestKit
5
+ module DaVinciPASV221
6
+ class PASClientSubmitMustSupportGroup < Inferno::TestGroup
7
+ id :pas_client_v221_submit_must_support
8
+ title '$submit Request Must Support Coverage'
9
+ description %(
10
+ Check that the client can demonstrate `$submit` requests that contain
11
+ all PAS-defined profiles and their must support elements.
12
+
13
+ For `$submit` requests, this includes the following profiles:
14
+
15
+ - [PAS Request Bundle](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-pas-request-bundle.html)
16
+ - [PAS Claim Update](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-claim-update.html)
17
+ - [PAS Coverage](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-coverage.html)
18
+ - [PAS Encounter](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-encounter.html)
19
+ - [PAS Insurer Organization](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-insurer.html)
20
+ - [PAS Requestor Organization](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-requestor.html)
21
+ - [PAS Beneficiary Patient](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-beneficiary.html)
22
+ - [PAS Subscriber Patient](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-subscriber.html)
23
+ - [PAS Practitioner](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-practitioner.html)
24
+ - [PAS PractitionerRole](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-practitionerrole.html)
25
+ - At least one of the following request profiles
26
+ - [PAS Device Request](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-devicerequest.html)
27
+ - [PAS Medication Request](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-medicationrequest.html)
28
+ - [PAS Nutrition Order](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-nutritionorder.html)
29
+ - [PAS Service Request](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-servicerequest.html)
30
+
31
+
32
+
33
+ )
34
+ run_as_group
35
+
36
+ # At least one of the PAS request profiles must be present; unobserved must support
37
+ # elements on the request profiles that are present may be attested as not collected.
38
+ test from: :pas_client_v221_must_support_with_attestation_option do
39
+ id :pas_client_v221_submit_request_profiles_must_support_with_attestation_option
40
+ title 'At least one instance of a request profile (PAS Medication Request, PAS Service Request, PAS Device Request, or PAS Nutrition Order) is observed with all of its must support elements'
41
+ config(
42
+ options: {
43
+ require_one_of: true,
44
+ profiles: [
45
+ { resource_type: 'DeviceRequest', profile_key: 'device_request', title: 'PAS Device Request' },
46
+ { resource_type: 'MedicationRequest', profile_key: 'medication_request', title: 'PAS Medication Request' },
47
+ { resource_type: 'NutritionOrder', profile_key: 'nutrition_order', title: 'PAS Nutrition Order' },
48
+ { resource_type: 'ServiceRequest', profile_key: 'service_request', title: 'PAS Service Request' }
49
+ ],
50
+ ig_version: 'v2.2.1',
51
+ type: 'request',
52
+ operation: 'submit'
53
+ }
54
+ )
55
+ description MustSupportWithAttestationOption.build_description(config.options)
56
+ end
57
+
58
+ # Mandatory - the PAS Claim Update profile must always be demonstrated.
59
+ test from: :pas_client_v221_submit_request_must_support_claim_update
60
+
61
+ # All other submit request profiles - unobserved must support elements may be
62
+ # attested as not collected by the client system.
63
+ test from: :pas_client_v221_must_support_with_attestation_option do
64
+ id :pas_client_v221_submit_request_other_must_support_with_attestation_option
65
+ title 'All must support elements for other profiles referenced by Claim submissions are observed on $submit requests'
66
+ config(
67
+ options: {
68
+ require_one_of: false,
69
+ profiles: [
70
+ { resource_type: 'Bundle', profile_key: 'pas_request_bundle', title: 'PAS Request Bundle' },
71
+ { resource_type: 'Coverage', profile_key: 'coverage', title: 'PAS Coverage' },
72
+ { resource_type: 'Encounter', profile_key: 'encounter', title: 'PAS Encounter' },
73
+ { resource_type: 'Organization', profile_key: 'insurer', title: 'PAS Insurer Organization' },
74
+ { resource_type: 'Organization', profile_key: 'requestor', title: 'PAS Requestor Organization' },
75
+ { resource_type: 'Patient', profile_key: 'beneficiary', title: 'PAS Beneficiary Patient' },
76
+ { resource_type: 'Patient', profile_key: 'subscriber', title: 'PAS Subscriber Patient' },
77
+ { resource_type: 'Practitioner', profile_key: 'practitioner', title: 'PAS Practitioner' },
78
+ { resource_type: 'PractitionerRole', profile_key: 'practitioner_role', title: 'PAS PractitionerRole' }
79
+ ],
80
+ ig_version: 'v2.2.1',
81
+ type: 'request',
82
+ operation: 'submit'
83
+ }
84
+ )
85
+ description MustSupportWithAttestationOption.build_description(config.options)
86
+ end
87
+ end
88
+ end
89
+ end
@@ -0,0 +1,84 @@
1
+ require_relative 'pas_response_bundle/client_submit_response_must_support_pas_response_bundle_test'
2
+ require_relative 'claimresponse/client_submit_response_must_support_claimresponse_test'
3
+ require_relative 'communication_request/client_submit_response_must_support_communication_request_test'
4
+ require_relative 'insurer/client_submit_response_must_support_insurer_test'
5
+ require_relative 'requestor/client_submit_response_must_support_requestor_test'
6
+ require_relative 'beneficiary/client_submit_response_must_support_beneficiary_test'
7
+ require_relative 'practitioner/client_submit_response_must_support_practitioner_test'
8
+ require_relative 'practitioner_role/client_submit_response_must_support_practitioner_role_test'
9
+ require_relative 'task/client_submit_response_must_support_task_test'
10
+ require_relative '../../v2.2.1/workflows/pas_client_response_attest'
11
+
12
+ module DaVinciPASTestKit
13
+ module DaVinciPASV221
14
+ class PASClientSubmitResponseMustSupportGroup < Inferno::TestGroup
15
+ id :pas_client_v221_submit_response_must_support
16
+ title '$submit Response Must Support Coverage'
17
+ description %(
18
+ Check that `$submit` responses provided to the client contain
19
+ all PAS-defined profiles and their must support elements.
20
+
21
+ **USER INPUT VALIDATION**: These tests validate responses provided by the tester,
22
+ not the system under test. Errors will be treated as skips instead of failures.
23
+
24
+ For `$submit` responses, this includes the following profiles:
25
+
26
+ - [PAS Response Bundle](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-pas-response-bundle.html)
27
+ - [PAS Claim Response](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-claimresponse.html)
28
+ - [PAS CommunicationRequest](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-communicationrequest.html)
29
+ - [PAS Insurer Organization](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-insurer.html)
30
+ - [PAS Requestor Organization](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-requestor.html)
31
+ - [PAS Beneficiary Patient](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-beneficiary.html)
32
+ - [PAS Practitioner](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-practitioner.html)
33
+ - [PAS PractitionerRole](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-practitionerrole.html)
34
+ - [PAS Task](https://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-task.html)
35
+
36
+
37
+
38
+ )
39
+ run_as_group
40
+
41
+ test from: :pas_client_v221_submit_response_must_support_pas_response_bundle do
42
+ optional
43
+ end
44
+ test from: :pas_client_v221_submit_response_must_support_claimresponse do
45
+ verifies_requirements 'hl7.fhir.us.davinci-pas_2.2.1@conf-7'
46
+ end
47
+ test from: :pas_client_v221_submit_response_must_support_communication_request do
48
+ optional
49
+ end
50
+ test from: :pas_client_v221_submit_response_must_support_insurer do
51
+ optional
52
+ end
53
+ test from: :pas_client_v221_submit_response_must_support_requestor do
54
+ optional
55
+ end
56
+ test from: :pas_client_v221_submit_response_must_support_beneficiary do
57
+ optional
58
+ end
59
+ test from: :pas_client_v221_submit_response_must_support_practitioner do
60
+ optional
61
+ end
62
+ test from: :pas_client_v221_submit_response_must_support_practitioner_role do
63
+ optional
64
+ end
65
+ test from: :pas_client_v221_submit_response_must_support_task do
66
+ optional
67
+ end
68
+ test from: :pas_client_v221_response_attest,
69
+ title: 'PAS client handled the $submit response must support elements',
70
+ description: %(
71
+ This test provides the tester an opportunity to verify that their client
72
+ correctly processed and used the must support elements present in the
73
+ $submit responses received from Inferno during these tests.
74
+ ),
75
+ config: { options: {
76
+ workflow_tag: MUST_SUPPORT_WORKFLOW_TAG,
77
+ attest_message: "I attest that the client system correctly processed the must support elements " \
78
+ "contained in the $submit responses received from Inferno and did not error."
79
+ } } do
80
+ verifies_requirements 'hl7.fhir.us.davinci-pas_2.2.1@conf-8'
81
+ end
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,38 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientInquireResponseMustSupportPasInquiryResponseBundleTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_inquire_response_must_support_pas_inquiry_response_bundle
7
+ title 'All must support elements for profile PAS Inquiry Response Bundle are observed on $inquire responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Inquiry Response Bundle Profile.
13
+ This test checks all identified instances of the PAS Inquiry Response Bundle
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Bundle.entry
18
+ * Bundle.entry.fullUrl
19
+ * Bundle.entry.resource
20
+ * Bundle.entry:ClaimResponse
21
+ * Bundle.entry:ClaimResponse.fullUrl
22
+ * Bundle.entry:ClaimResponse.resource
23
+ * Bundle.timestamp
24
+ )
25
+
26
+ config(
27
+ options: {
28
+ resource_type: 'Bundle',
29
+ profile_key: 'pas_inquiry_response_bundle',
30
+ user_input_validation: true,
31
+ ig_version: 'v2.2.1',
32
+ type: 'response',
33
+ operation: 'inquire'
34
+ }
35
+ )
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,39 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientSubmitResponseMustSupportPasResponseBundleTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_submit_response_must_support_pas_response_bundle
7
+ title 'All must support elements for profile PAS Response Bundle are observed on $submit responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Response Bundle Profile.
13
+ This test checks all identified instances of the PAS Response Bundle
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Bundle.entry
18
+ * Bundle.entry.fullUrl
19
+ * Bundle.entry.resource
20
+ * Bundle.entry:ClaimResponse
21
+ * Bundle.entry:ClaimResponse.fullUrl
22
+ * Bundle.entry:ClaimResponse.resource
23
+ * Bundle.identifier
24
+ * Bundle.timestamp
25
+ )
26
+
27
+ config(
28
+ options: {
29
+ resource_type: 'Bundle',
30
+ profile_key: 'pas_response_bundle',
31
+ user_input_validation: true,
32
+ ig_version: 'v2.2.1',
33
+ type: 'response',
34
+ operation: 'submit'
35
+ }
36
+ )
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,44 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientInquireResponseMustSupportPractitionerTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_inquire_response_must_support_practitioner
7
+ title 'All must support elements for profile PAS Practitioner are observed on $inquire responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Practitioner Profile.
13
+ This test checks all identified instances of the PAS Practitioner
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Practitioner.address
18
+ * Practitioner.address.city
19
+ * Practitioner.address.country
20
+ * Practitioner.address.line
21
+ * Practitioner.address.postalCode
22
+ * Practitioner.address.state
23
+ * Practitioner.identifier
24
+ * Practitioner.identifier:NPI
25
+ * Practitioner.name
26
+ * Practitioner.name.family
27
+ * Practitioner.telecom
28
+ * Practitioner.telecom.system
29
+ * Practitioner.telecom.value
30
+ )
31
+
32
+ config(
33
+ options: {
34
+ resource_type: 'Practitioner',
35
+ profile_key: 'practitioner',
36
+ user_input_validation: true,
37
+ ig_version: 'v2.2.1',
38
+ type: 'response',
39
+ operation: 'inquire'
40
+ }
41
+ )
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,44 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientSubmitResponseMustSupportPractitionerTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_submit_response_must_support_practitioner
7
+ title 'All must support elements for profile PAS Practitioner are observed on $submit responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Practitioner Profile.
13
+ This test checks all identified instances of the PAS Practitioner
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Practitioner.address
18
+ * Practitioner.address.city
19
+ * Practitioner.address.country
20
+ * Practitioner.address.line
21
+ * Practitioner.address.postalCode
22
+ * Practitioner.address.state
23
+ * Practitioner.identifier
24
+ * Practitioner.identifier:NPI
25
+ * Practitioner.name
26
+ * Practitioner.name.family
27
+ * Practitioner.telecom
28
+ * Practitioner.telecom.system
29
+ * Practitioner.telecom.value
30
+ )
31
+
32
+ config(
33
+ options: {
34
+ resource_type: 'Practitioner',
35
+ profile_key: 'practitioner',
36
+ user_input_validation: true,
37
+ ig_version: 'v2.2.1',
38
+ type: 'response',
39
+ operation: 'submit'
40
+ }
41
+ )
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,40 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientInquireResponseMustSupportPractitionerRoleTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_inquire_response_must_support_practitioner_role
7
+ title 'All must support elements for profile PAS PractitionerRole are observed on $inquire responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS PractitionerRole Profile.
13
+ This test checks all identified instances of the PAS PractitionerRole
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * PractitionerRole.code
18
+ * PractitionerRole.endpoint
19
+ * PractitionerRole.location
20
+ * PractitionerRole.organization
21
+ * PractitionerRole.practitioner
22
+ * PractitionerRole.specialty
23
+ * PractitionerRole.telecom
24
+ * PractitionerRole.telecom.system
25
+ * PractitionerRole.telecom.value
26
+ )
27
+
28
+ config(
29
+ options: {
30
+ resource_type: 'PractitionerRole',
31
+ profile_key: 'practitioner_role',
32
+ user_input_validation: true,
33
+ ig_version: 'v2.2.1',
34
+ type: 'response',
35
+ operation: 'inquire'
36
+ }
37
+ )
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientSubmitResponseMustSupportPractitionerRoleTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_submit_response_must_support_practitioner_role
7
+ title 'All must support elements for profile PAS PractitionerRole are observed on $submit responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS PractitionerRole Profile.
13
+ This test checks all identified instances of the PAS PractitionerRole
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * PractitionerRole.code
18
+ * PractitionerRole.endpoint
19
+ * PractitionerRole.location
20
+ * PractitionerRole.organization
21
+ * PractitionerRole.practitioner
22
+ * PractitionerRole.specialty
23
+ * PractitionerRole.telecom
24
+ * PractitionerRole.telecom.system
25
+ * PractitionerRole.telecom.value
26
+ )
27
+
28
+ config(
29
+ options: {
30
+ resource_type: 'PractitionerRole',
31
+ profile_key: 'practitioner_role',
32
+ user_input_validation: true,
33
+ ig_version: 'v2.2.1',
34
+ type: 'response',
35
+ operation: 'submit'
36
+ }
37
+ )
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,50 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientInquireResponseMustSupportRequestorTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_inquire_response_must_support_requestor
7
+ title 'All must support elements for profile PAS Requestor Organization are observed on $inquire responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Requestor Organization Profile.
13
+ This test checks all identified instances of the PAS Requestor Organization
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Organization.active
18
+ * Organization.address
19
+ * Organization.address.city
20
+ * Organization.address.country
21
+ * Organization.address.line
22
+ * Organization.address.postalCode
23
+ * Organization.address.state
24
+ * Organization.contact
25
+ * Organization.contact.name
26
+ * Organization.contact.telecom
27
+ * Organization.identifier
28
+ * Organization.identifier:NPI
29
+ * Organization.identifier:PI
30
+ * Organization.identifier:TIN
31
+ * Organization.name
32
+ * Organization.telecom
33
+ * Organization.telecom.system
34
+ * Organization.telecom.value
35
+ * Organization.type
36
+ )
37
+
38
+ config(
39
+ options: {
40
+ resource_type: 'Organization',
41
+ profile_key: 'requestor',
42
+ user_input_validation: true,
43
+ ig_version: 'v2.2.1',
44
+ type: 'response',
45
+ operation: 'inquire'
46
+ }
47
+ )
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,50 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientSubmitResponseMustSupportRequestorTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_submit_response_must_support_requestor
7
+ title 'All must support elements for profile PAS Requestor Organization are observed on $submit responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Requestor Organization Profile.
13
+ This test checks all identified instances of the PAS Requestor Organization
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Organization.active
18
+ * Organization.address
19
+ * Organization.address.city
20
+ * Organization.address.country
21
+ * Organization.address.line
22
+ * Organization.address.postalCode
23
+ * Organization.address.state
24
+ * Organization.contact
25
+ * Organization.contact.name
26
+ * Organization.contact.telecom
27
+ * Organization.identifier
28
+ * Organization.identifier:NPI
29
+ * Organization.identifier:PI
30
+ * Organization.identifier:TIN
31
+ * Organization.name
32
+ * Organization.telecom
33
+ * Organization.telecom.system
34
+ * Organization.telecom.value
35
+ * Organization.type
36
+ )
37
+
38
+ config(
39
+ options: {
40
+ resource_type: 'Organization',
41
+ profile_key: 'requestor',
42
+ user_input_validation: true,
43
+ ig_version: 'v2.2.1',
44
+ type: 'response',
45
+ operation: 'submit'
46
+ }
47
+ )
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,55 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientInquireResponseMustSupportTaskTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_inquire_response_must_support_task
7
+ title 'All must support elements for profile PAS Task are observed on $inquire responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Task Profile.
13
+ This test checks all identified instances of the PAS Task
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Task.code
18
+ * Task.for
19
+ * Task.identifier
20
+ * Task.input
21
+ * Task.input:AttachmentsNeeded
22
+ * Task.input:AttachmentsNeeded.extension:contentModifier
23
+ * Task.input:AttachmentsNeeded.extension:paLineNumber
24
+ * Task.input:AttachmentsNeeded.type
25
+ * Task.input:AttachmentsNeeded.value[x]
26
+ * Task.input:PayerURL
27
+ * Task.input:QuestionnaireContext
28
+ * Task.input:QuestionnaireContext.extension:paLineNumber
29
+ * Task.input:QuestionnaireContext.type
30
+ * Task.input:QuestionnaireContext.value[x]
31
+ * Task.intent
32
+ * Task.owner
33
+ * Task.owner.identifier
34
+ * Task.reasonCode.coding.code
35
+ * Task.reasonReference
36
+ * Task.requester
37
+ * Task.requester.identifier
38
+ * Task.restriction.period
39
+ * Task.status
40
+ * Task.statusReason
41
+ )
42
+
43
+ config(
44
+ options: {
45
+ resource_type: 'Task',
46
+ profile_key: 'task',
47
+ user_input_validation: true,
48
+ ig_version: 'v2.2.1',
49
+ type: 'response',
50
+ operation: 'inquire'
51
+ }
52
+ )
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,55 @@
1
+ require_relative '../../../../cross_suite/must_support/must_support_test'
2
+
3
+ module DaVinciPASTestKit
4
+ module DaVinciPASV221
5
+ class ClientSubmitResponseMustSupportTaskTest < DaVinciPASTestKit::MustSupportTest
6
+ id :pas_client_v221_submit_response_must_support_task
7
+ title 'All must support elements for profile PAS Task are observed on $submit responses'
8
+ description %(
9
+
10
+ PAS client systems are required to be able to receive all
11
+ must support elements on instances of all profiles included in
12
+ responses, including instances of the PAS Task Profile.
13
+ This test checks all identified instances of the PAS Task
14
+ Profile on responses sent to the client to ensure that the following
15
+ must support elements are observed:
16
+
17
+ * Task.code
18
+ * Task.for
19
+ * Task.identifier
20
+ * Task.input
21
+ * Task.input:AttachmentsNeeded
22
+ * Task.input:AttachmentsNeeded.extension:contentModifier
23
+ * Task.input:AttachmentsNeeded.extension:paLineNumber
24
+ * Task.input:AttachmentsNeeded.type
25
+ * Task.input:AttachmentsNeeded.value[x]
26
+ * Task.input:PayerURL
27
+ * Task.input:QuestionnaireContext
28
+ * Task.input:QuestionnaireContext.extension:paLineNumber
29
+ * Task.input:QuestionnaireContext.type
30
+ * Task.input:QuestionnaireContext.value[x]
31
+ * Task.intent
32
+ * Task.owner
33
+ * Task.owner.identifier
34
+ * Task.reasonCode.coding.code
35
+ * Task.reasonReference
36
+ * Task.requester
37
+ * Task.requester.identifier
38
+ * Task.restriction.period
39
+ * Task.status
40
+ * Task.statusReason
41
+ )
42
+
43
+ config(
44
+ options: {
45
+ resource_type: 'Task',
46
+ profile_key: 'task',
47
+ user_input_validation: true,
48
+ ig_version: 'v2.2.1',
49
+ type: 'response',
50
+ operation: 'submit'
51
+ }
52
+ )
53
+ end
54
+ end
55
+ end