davinci_pas_test_kit 0.9.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 (168) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/lib/davinci_pas_test_kit/client_suite.rb +289 -0
  4. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/claim_status/pas_claim_status_test.rb +109 -0
  5. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_approval_submit_response_attest.rb +39 -0
  6. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_approval_submit_test.rb +38 -0
  7. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_denial_submit_response_attest.rb +38 -0
  8. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_denial_submit_test.rb +43 -0
  9. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_inquire_must_support_test.rb +51 -0
  10. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_inquire_response_attest.rb +39 -0
  11. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_inquire_test.rb +35 -0
  12. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_submit_response_attest.rb +39 -0
  13. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_pended_submit_test.rb +43 -0
  14. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_submit_must_support_test.rb +57 -0
  15. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_token_request_test.rb +31 -0
  16. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/client_tests/pas_client_token_validation_test.rb +18 -0
  17. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/error_tests/nonconformant_pas_bundle.json +16 -0
  18. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/error_tests/pas_inquiry_error_test.rb +38 -0
  19. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/error_tests/pas_submission_error_test.rb +56 -0
  20. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/must_support/device_request_metadata.yml +112 -0
  21. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/must_support/medication_request_metadata.yml +183 -0
  22. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/must_support/nutrition_order_metadata.yml +109 -0
  23. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/must_support/pas_client_must_support_requirement_test.rb +117 -0
  24. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/must_support/pas_server_must_support_requirement_test.rb +116 -0
  25. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/must_support/service_request_metadata.yml +148 -0
  26. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_approval_group.rb +26 -0
  27. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_authentication_group.rb +49 -0
  28. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_denial_group.rb +41 -0
  29. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_client_pended_group.rb +56 -0
  30. data/lib/davinci_pas_test_kit/custom_groups/v2.0.1/pas_error_group.rb +20 -0
  31. data/lib/davinci_pas_test_kit/ext/inferno_core/record_response_route.rb +98 -0
  32. data/lib/davinci_pas_test_kit/ext/inferno_core/request.rb +19 -0
  33. data/lib/davinci_pas_test_kit/ext/inferno_core/runnable.rb +18 -0
  34. data/lib/davinci_pas_test_kit/fhir_resource_navigation.rb +72 -0
  35. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/client_inquiry_request_beneficiary_must_support_test.rb +75 -0
  36. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/client_submit_request_beneficiary_must_support_test.rb +75 -0
  37. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/metadata.yml +162 -0
  38. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/server_inquiry_request_beneficiary_must_support_test.rb +75 -0
  39. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/server_inquiry_response_beneficiary_must_support_test.rb +75 -0
  40. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/server_submit_request_beneficiary_must_support_test.rb +75 -0
  41. data/lib/davinci_pas_test_kit/generated/v2.0.1/beneficiary/server_submit_response_beneficiary_must_support_test.rb +75 -0
  42. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim/claim_operation_test.rb +67 -0
  43. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim/metadata.yml +577 -0
  44. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/claim_inquiry_operation_test.rb +57 -0
  45. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/client_inquiry_request_claim_inquiry_must_support_test.rb +95 -0
  46. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/metadata.yml +516 -0
  47. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_inquiry/server_inquiry_request_claim_inquiry_must_support_test.rb +95 -0
  48. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_update/client_submit_request_claim_update_must_support_test.rb +102 -0
  49. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_update/metadata.yml +591 -0
  50. data/lib/davinci_pas_test_kit/generated/v2.0.1/claim_update/server_submit_request_claim_update_must_support_test.rb +102 -0
  51. data/lib/davinci_pas_test_kit/generated/v2.0.1/claiminquiryresponse/metadata.yml +311 -0
  52. data/lib/davinci_pas_test_kit/generated/v2.0.1/claiminquiryresponse/server_inquiry_response_claiminquiryresponse_must_support_test.rb +73 -0
  53. data/lib/davinci_pas_test_kit/generated/v2.0.1/claimresponse/metadata.yml +318 -0
  54. data/lib/davinci_pas_test_kit/generated/v2.0.1/claimresponse/server_submit_response_claimresponse_must_support_test.rb +75 -0
  55. data/lib/davinci_pas_test_kit/generated/v2.0.1/client_tests/client_denial_pas_response_bundle_validation_test.rb +53 -0
  56. data/lib/davinci_pas_test_kit/generated/v2.0.1/client_tests/client_pas_request_bundle_validation_test.rb +55 -0
  57. data/lib/davinci_pas_test_kit/generated/v2.0.1/client_tests/client_pended_pas_inquiry_request_bundle_validation_test.rb +55 -0
  58. data/lib/davinci_pas_test_kit/generated/v2.0.1/client_tests/client_pended_pas_response_bundle_validation_test.rb +53 -0
  59. data/lib/davinci_pas_test_kit/generated/v2.0.1/communication_request/metadata.yml +130 -0
  60. data/lib/davinci_pas_test_kit/generated/v2.0.1/communication_request/server_submit_response_communication_request_must_support_test.rb +58 -0
  61. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/client_inquiry_request_coverage_must_support_test.rb +55 -0
  62. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/client_submit_request_coverage_must_support_test.rb +55 -0
  63. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/metadata.yml +111 -0
  64. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/server_inquiry_request_coverage_must_support_test.rb +55 -0
  65. data/lib/davinci_pas_test_kit/generated/v2.0.1/coverage/server_submit_request_coverage_must_support_test.rb +55 -0
  66. data/lib/davinci_pas_test_kit/generated/v2.0.1/device_request/client_submit_request_device_request_must_support_test.rb +51 -0
  67. data/lib/davinci_pas_test_kit/generated/v2.0.1/device_request/metadata.yml +112 -0
  68. data/lib/davinci_pas_test_kit/generated/v2.0.1/device_request/server_submit_request_device_request_must_support_test.rb +51 -0
  69. data/lib/davinci_pas_test_kit/generated/v2.0.1/encounter/client_submit_request_encounter_must_support_test.rb +67 -0
  70. data/lib/davinci_pas_test_kit/generated/v2.0.1/encounter/metadata.yml +213 -0
  71. data/lib/davinci_pas_test_kit/generated/v2.0.1/encounter/server_submit_request_encounter_must_support_test.rb +67 -0
  72. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/client_inquiry_request_insurer_must_support_test.rb +60 -0
  73. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/client_submit_request_insurer_must_support_test.rb +60 -0
  74. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/metadata.yml +104 -0
  75. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_inquiry_request_insurer_must_support_test.rb +60 -0
  76. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_inquiry_response_insurer_must_support_test.rb +60 -0
  77. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_submit_request_insurer_must_support_test.rb +60 -0
  78. data/lib/davinci_pas_test_kit/generated/v2.0.1/insurer/server_submit_response_insurer_must_support_test.rb +60 -0
  79. data/lib/davinci_pas_test_kit/generated/v2.0.1/medication_request/client_submit_request_medication_request_must_support_test.rb +61 -0
  80. data/lib/davinci_pas_test_kit/generated/v2.0.1/medication_request/metadata.yml +183 -0
  81. data/lib/davinci_pas_test_kit/generated/v2.0.1/medication_request/server_submit_request_medication_request_must_support_test.rb +61 -0
  82. data/lib/davinci_pas_test_kit/generated/v2.0.1/metadata.yml +5253 -0
  83. data/lib/davinci_pas_test_kit/generated/v2.0.1/nutrition_order/client_submit_request_nutrition_order_must_support_test.rb +53 -0
  84. data/lib/davinci_pas_test_kit/generated/v2.0.1/nutrition_order/metadata.yml +109 -0
  85. data/lib/davinci_pas_test_kit/generated/v2.0.1/nutrition_order/server_submit_request_nutrition_order_must_support_test.rb +53 -0
  86. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_client_inquiry_must_support_use_case_group.rb +51 -0
  87. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_client_submit_must_support_use_case_group.rb +61 -0
  88. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/client_inquiry_request_pas_inquiry_request_bundle_must_support_test.rb +53 -0
  89. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/metadata.yml +77 -0
  90. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/server_inquiry_request_pas_inquiry_request_bundle_must_support_test.rb +53 -0
  91. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_request_bundle/server_pas_inquiry_request_bundle_validation_test.rb +83 -0
  92. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/metadata.yml +67 -0
  93. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/server_inquiry_response_pas_inquiry_response_bundle_must_support_test.rb +52 -0
  94. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_inquiry_response_bundle/server_pas_inquiry_response_bundle_validation_test.rb +80 -0
  95. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/client_submit_request_pas_request_bundle_must_support_test.rb +53 -0
  96. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/metadata.yml +77 -0
  97. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/server_pas_request_bundle_validation_test.rb +83 -0
  98. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_request_bundle/server_submit_request_pas_request_bundle_must_support_test.rb +53 -0
  99. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/metadata.yml +71 -0
  100. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/server_pas_response_bundle_validation_test.rb +80 -0
  101. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_response_bundle/server_submit_response_pas_response_bundle_must_support_test.rb +52 -0
  102. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_approval_use_case_group.rb +59 -0
  103. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_denial_use_case_group.rb +59 -0
  104. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_must_support_use_case_group.rb +265 -0
  105. data/lib/davinci_pas_test_kit/generated/v2.0.1/pas_server_pended_use_case_group.rb +84 -0
  106. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/client_inquiry_request_practitioner_must_support_test.rb +53 -0
  107. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/client_submit_request_practitioner_must_support_test.rb +53 -0
  108. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/metadata.yml +74 -0
  109. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_inquiry_request_practitioner_must_support_test.rb +53 -0
  110. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_inquiry_response_practitioner_must_support_test.rb +53 -0
  111. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_submit_request_practitioner_must_support_test.rb +53 -0
  112. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner/server_submit_response_practitioner_must_support_test.rb +53 -0
  113. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/client_inquiry_request_practitioner_role_must_support_test.rb +49 -0
  114. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/client_submit_request_practitioner_role_must_support_test.rb +49 -0
  115. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/metadata.yml +81 -0
  116. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_inquiry_request_practitioner_role_must_support_test.rb +49 -0
  117. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_inquiry_response_practitioner_role_must_support_test.rb +49 -0
  118. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_submit_request_practitioner_role_must_support_test.rb +49 -0
  119. data/lib/davinci_pas_test_kit/generated/v2.0.1/practitioner_role/server_submit_response_practitioner_role_must_support_test.rb +49 -0
  120. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/client_inquiry_request_requestor_must_support_test.rb +63 -0
  121. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/client_submit_request_requestor_must_support_test.rb +63 -0
  122. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/metadata.yml +107 -0
  123. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/server_inquiry_request_requestor_must_support_test.rb +63 -0
  124. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/server_inquiry_response_requestor_must_support_test.rb +63 -0
  125. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/server_submit_request_requestor_must_support_test.rb +63 -0
  126. data/lib/davinci_pas_test_kit/generated/v2.0.1/requestor/server_submit_response_requestor_must_support_test.rb +63 -0
  127. data/lib/davinci_pas_test_kit/generated/v2.0.1/resource_list.rb +54 -0
  128. data/lib/davinci_pas_test_kit/generated/v2.0.1/server_suite.rb +236 -0
  129. data/lib/davinci_pas_test_kit/generated/v2.0.1/service_request/client_submit_request_service_request_must_support_test.rb +53 -0
  130. data/lib/davinci_pas_test_kit/generated/v2.0.1/service_request/metadata.yml +148 -0
  131. data/lib/davinci_pas_test_kit/generated/v2.0.1/service_request/server_submit_request_service_request_must_support_test.rb +53 -0
  132. data/lib/davinci_pas_test_kit/generated/v2.0.1/subscriber/client_inquiry_request_subscriber_must_support_test.rb +74 -0
  133. data/lib/davinci_pas_test_kit/generated/v2.0.1/subscriber/client_submit_request_subscriber_must_support_test.rb +74 -0
  134. data/lib/davinci_pas_test_kit/generated/v2.0.1/subscriber/metadata.yml +159 -0
  135. data/lib/davinci_pas_test_kit/generated/v2.0.1/subscriber/server_inquiry_request_subscriber_must_support_test.rb +74 -0
  136. data/lib/davinci_pas_test_kit/generated/v2.0.1/subscriber/server_submit_request_subscriber_must_support_test.rb +74 -0
  137. data/lib/davinci_pas_test_kit/generated/v2.0.1/task/metadata.yml +192 -0
  138. data/lib/davinci_pas_test_kit/generated/v2.0.1/task/server_inquiry_response_task_must_support_test.rb +61 -0
  139. data/lib/davinci_pas_test_kit/generated/v2.0.1/task/server_submit_response_task_must_support_test.rb +61 -0
  140. data/lib/davinci_pas_test_kit/generator/group_generator.rb +440 -0
  141. data/lib/davinci_pas_test_kit/generator/group_metadata.rb +73 -0
  142. data/lib/davinci_pas_test_kit/generator/group_metadata_extractor.rb +244 -0
  143. data/lib/davinci_pas_test_kit/generator/ig_loader.rb +78 -0
  144. data/lib/davinci_pas_test_kit/generator/ig_metadata.rb +66 -0
  145. data/lib/davinci_pas_test_kit/generator/ig_metadata_extractor.rb +54 -0
  146. data/lib/davinci_pas_test_kit/generator/ig_resources.rb +74 -0
  147. data/lib/davinci_pas_test_kit/generator/must_support_check_profiles.rb +86 -0
  148. data/lib/davinci_pas_test_kit/generator/must_support_metadata_extractor.rb +327 -0
  149. data/lib/davinci_pas_test_kit/generator/must_support_test_generator.rb +155 -0
  150. data/lib/davinci_pas_test_kit/generator/naming.rb +50 -0
  151. data/lib/davinci_pas_test_kit/generator/operation_test_generator.rb +136 -0
  152. data/lib/davinci_pas_test_kit/generator/resource_list_generator.rb +59 -0
  153. data/lib/davinci_pas_test_kit/generator/suite_generator.rb +94 -0
  154. data/lib/davinci_pas_test_kit/generator/terminology_binding_metadata_extractor.rb +108 -0
  155. data/lib/davinci_pas_test_kit/generator/validation_test_generator.rb +181 -0
  156. data/lib/davinci_pas_test_kit/generator/value_extractor.rb +48 -0
  157. data/lib/davinci_pas_test_kit/generator.rb +80 -0
  158. data/lib/davinci_pas_test_kit/mock_server.rb +189 -0
  159. data/lib/davinci_pas_test_kit/must_support_test.rb +267 -0
  160. data/lib/davinci_pas_test_kit/pas_bundle_validation.rb +568 -0
  161. data/lib/davinci_pas_test_kit/tags.rb +7 -0
  162. data/lib/davinci_pas_test_kit/urls.rb +39 -0
  163. data/lib/davinci_pas_test_kit/user_input_response.rb +32 -0
  164. data/lib/davinci_pas_test_kit/validation_test.rb +58 -0
  165. data/lib/davinci_pas_test_kit/validator_suppressions.rb +143 -0
  166. data/lib/davinci_pas_test_kit/version.rb +5 -0
  167. data/lib/davinci_pas_test_kit.rb +2 -0
  168. metadata +281 -0
@@ -0,0 +1,577 @@
1
+ ---
2
+ :name: profile_claim
3
+ :class_name: ProfileClaimSequence
4
+ :version: v2.0.1
5
+ :reformatted_version: v201
6
+ :resource: Claim
7
+ :profile_url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim
8
+ :profile_name: PAS Claim
9
+ :profile_version: 2.0.1
10
+ :title: Claim
11
+ :short_description: Verify support for the server capabilities required by the PAS
12
+ Claim.
13
+ :interactions: []
14
+ :operations:
15
+ - :code: "$submit"
16
+ :expectation:
17
+ - :code: "$inquire"
18
+ :expectation:
19
+ :required_concepts:
20
+ - careTeam.role
21
+ - careTeam.qualification
22
+ - careTeam.role
23
+ - careTeam.qualification
24
+ - diagnosis.diagnosisCodeableConcept
25
+ - diagnosis.type
26
+ - accident.type
27
+ - item.extension.valueCodeableConcept
28
+ - item.revenue
29
+ - item.category
30
+ - item.productOrService
31
+ - item.modifier
32
+ - item.locationCodeableConcept
33
+ :must_supports:
34
+ :extensions:
35
+ - :id: Claim.extension:levelOfServiceType
36
+ :path: extension
37
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-levelOfServiceCode
38
+ - :id: Claim.extension:encounter
39
+ :path: extension
40
+ :url: http://hl7.org/fhir/5.0/StructureDefinition/extension-Claim.encounter
41
+ - :id: Claim.careTeam.extension:careTeamClaimScope
42
+ :path: careTeam.extension
43
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-careTeamClaimScope
44
+ - :id: Claim.careTeam:OverallClaimMember.extension:careTeamClaimScope
45
+ :path: careTeam.extension
46
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-careTeamClaimScope
47
+ - :id: Claim.careTeam:ItemClaimMember.extension:careTeamClaimScope
48
+ :path: careTeam.extension
49
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-careTeamClaimScope
50
+ - :id: Claim.diagnosis.extension:recordedDate
51
+ :path: diagnosis.extension
52
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-diagnosisRecordedDate
53
+ - :id: Claim.item.extension:itemTraceNumber
54
+ :path: item.extension
55
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-itemTraceNumber
56
+ - :id: Claim.item.extension:authorizationNumber
57
+ :path: item.extension
58
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-authorizationNumber
59
+ - :id: Claim.item.extension:administrationReferenceNumber
60
+ :path: item.extension
61
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-administrationReferenceNumber
62
+ - :id: Claim.item.extension:requestType
63
+ :path: item.extension
64
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-serviceItemRequestType
65
+ - :id: Claim.item.extension:certificationType
66
+ :path: item.extension
67
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-certificationType
68
+ - :id: Claim.item.extension:epsdtIndicator
69
+ :path: item.extension
70
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-epsdtIndicator
71
+ - :id: Claim.item.extension:nursingHomeResidentialStatus
72
+ :path: item.extension
73
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-nursingHomeResidentialStatus
74
+ - :id: Claim.item.extension:nursingHomeLevelOfCare
75
+ :path: item.extension
76
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-nursingHomeLevelOfCare
77
+ - :id: Claim.item.extension:revenueUnitRateLimit
78
+ :path: item.extension
79
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-revenueUnitRateLimit
80
+ - :id: Claim.item.extension:requestedService
81
+ :path: item.extension
82
+ :url: http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-requestedService
83
+ :slices:
84
+ - :name: Claim.supportingInfo:AdditionalInformation
85
+ :path: supportingInfo
86
+ :discriminator:
87
+ :type: value
88
+ :values:
89
+ - :path: category
90
+ :value:
91
+ - :name: Claim.supportingInfo:MessageText
92
+ :path: supportingInfo
93
+ :discriminator:
94
+ :type: value
95
+ :values:
96
+ - :path: category
97
+ :value:
98
+ :elements:
99
+ - :path: identifier
100
+ - :path: insurer
101
+ :types:
102
+ - Reference
103
+ - :path: provider
104
+ :types:
105
+ - Reference
106
+ - :path: careTeam
107
+ - :path: careTeam.sequence
108
+ - :path: careTeam.provider
109
+ :types:
110
+ - Reference
111
+ - :path: careTeam.role
112
+ - :path: careTeam.qualification
113
+ - :path: supportingInfo
114
+ - :path: supportingInfo.category
115
+ - :path: supportingInfo.timing[x]
116
+ - :path: supportingInfo.category.coding.code
117
+ :fixed_value: additionalInformation
118
+ - :path: supportingInfo.sequence
119
+ - :path: supportingInfo.category.coding.code
120
+ :fixed_value: freeFormMessage
121
+ - :path: supportingInfo.value[x]
122
+ - :path: diagnosis
123
+ - :path: diagnosis.sequence
124
+ - :path: diagnosis.diagnosis[x]
125
+ - :path: diagnosis.type
126
+ - :path: insurance
127
+ - :path: insurance.sequence
128
+ - :path: insurance.coverage
129
+ :types:
130
+ - Reference
131
+ - :path: accident
132
+ - :path: accident.date
133
+ - :path: accident.type
134
+ - :path: item
135
+ - :path: item.sequence
136
+ - :path: item.careTeamSequence
137
+ - :path: item.diagnosisSequence
138
+ - :path: item.informationSequence
139
+ - :path: item.revenue
140
+ - :path: item.category
141
+ - :path: item.productOrService
142
+ - :path: item.modifier
143
+ - :path: item.serviced[x]
144
+ - :path: item.location[x]
145
+ - :path: item.quantity
146
+ - :path: item.unitPrice
147
+ :mandatory_elements:
148
+ - Claim.extension.url
149
+ - Claim.extension.value[x]
150
+ - Claim.identifier
151
+ - Claim.status
152
+ - Claim.type
153
+ - Claim.use
154
+ - Claim.patient
155
+ - Claim.created
156
+ - Claim.insurer
157
+ - Claim.provider
158
+ - Claim.priority
159
+ - Claim.payee.type
160
+ - Claim.careTeam.extension
161
+ - Claim.careTeam.sequence
162
+ - Claim.careTeam.provider
163
+ - Claim.careTeam.extension.url
164
+ - Claim.supportingInfo.sequence
165
+ - Claim.supportingInfo.category
166
+ - Claim.supportingInfo.timing[x]
167
+ - Claim.supportingInfo.value[x]
168
+ - Claim.diagnosis.sequence
169
+ - Claim.diagnosis.diagnosis[x]
170
+ - Claim.procedure.sequence
171
+ - Claim.procedure.procedure[x]
172
+ - Claim.insurance
173
+ - Claim.insurance.sequence
174
+ - Claim.insurance.focal
175
+ - Claim.insurance.coverage
176
+ - Claim.accident.date
177
+ - Claim.item
178
+ - Claim.item.extension.url
179
+ - Claim.item.sequence
180
+ - Claim.item.category
181
+ - Claim.item.productOrService
182
+ - Claim.item.detail.sequence
183
+ - Claim.item.detail.productOrService
184
+ - Claim.item.detail.subDetail.sequence
185
+ - Claim.item.detail.subDetail.productOrService
186
+ :bindings:
187
+ - :type: code
188
+ :strength: preferred
189
+ :system: http://hl7.org/fhir/ValueSet/languages
190
+ :path: language
191
+ - :type: code
192
+ :strength: required
193
+ :system: http://hl7.org/fhir/ValueSet/fm-status
194
+ :path: status
195
+ - :type: CodeableConcept
196
+ :strength: extensible
197
+ :system: http://hl7.org/fhir/ValueSet/claim-type
198
+ :path: type
199
+ - :type: CodeableConcept
200
+ :strength: example
201
+ :system: http://hl7.org/fhir/ValueSet/claim-subtype
202
+ :path: subType
203
+ - :type: code
204
+ :strength: required
205
+ :system: http://hl7.org/fhir/ValueSet/claim-use
206
+ :path: use
207
+ - :type: CodeableConcept
208
+ :strength: example
209
+ :system: http://hl7.org/fhir/ValueSet/process-priority
210
+ :path: priority
211
+ - :type: CodeableConcept
212
+ :strength: example
213
+ :system: http://hl7.org/fhir/ValueSet/fundsreserve
214
+ :path: fundsReserve
215
+ - :type: CodeableConcept
216
+ :strength: example
217
+ :system: http://hl7.org/fhir/ValueSet/related-claim-relationship
218
+ :path: related.relationship
219
+ - :type: CodeableConcept
220
+ :strength: example
221
+ :system: http://hl7.org/fhir/ValueSet/payeetype
222
+ :path: payee.type
223
+ - :type: CodeableConcept
224
+ :strength: example
225
+ :system: http://hl7.org/fhir/ValueSet/claim-careteamrole
226
+ :path: careTeam.role
227
+ - :type: CodeableConcept
228
+ :strength: example
229
+ :system: http://hl7.org/fhir/ValueSet/provider-qualification
230
+ :path: careTeam.qualification
231
+ - :type: CodeableConcept
232
+ :strength: required
233
+ :system: https://valueset.x12.org/x217/005010/request/2010EA/NM1/1/01/00/98
234
+ :path: careTeam.role
235
+ - :type: CodeableConcept
236
+ :strength: required
237
+ :system: https://valueset.x12.org/x217/005010/request/2010EA/PRV/1/03/00/127
238
+ :path: careTeam.qualification
239
+ - :type: CodeableConcept
240
+ :strength: required
241
+ :system: https://valueset.x12.org/x217/005010/request/2010F/NM1/1/01/00/98
242
+ :path: careTeam.role
243
+ - :type: CodeableConcept
244
+ :strength: required
245
+ :system: https://valueset.x12.org/x217/005010/request/2010F/PRV/1/03/00/127
246
+ :path: careTeam.qualification
247
+ - :type: CodeableConcept
248
+ :strength: extensible
249
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/PASSupportingInfoType
250
+ :path: supportingInfo.category
251
+ - :type: CodeableConcept
252
+ :strength: example
253
+ :system: http://hl7.org/fhir/ValueSet/claim-exception
254
+ :path: supportingInfo.code
255
+ - :type: CodeableConcept
256
+ :strength: example
257
+ :system: http://hl7.org/fhir/ValueSet/missing-tooth-reason
258
+ :path: supportingInfo.reason
259
+ - :type: CodeableConcept
260
+ :strength: example
261
+ :system: http://hl7.org/fhir/ValueSet/claim-informationcategory
262
+ :path: supportingInfo.category
263
+ - :type: CodeableConcept
264
+ :strength: example
265
+ :system: http://hl7.org/fhir/ValueSet/claim-exception
266
+ :path: supportingInfo.code
267
+ - :type: CodeableConcept
268
+ :strength: example
269
+ :system: http://hl7.org/fhir/ValueSet/missing-tooth-reason
270
+ :path: supportingInfo.reason
271
+ - :type: CodeableConcept
272
+ :strength: example
273
+ :system: http://hl7.org/fhir/ValueSet/claim-informationcategory
274
+ :path: supportingInfo.category
275
+ - :type: CodeableConcept
276
+ :strength: example
277
+ :system: http://hl7.org/fhir/ValueSet/claim-exception
278
+ :path: supportingInfo.code
279
+ - :type: CodeableConcept
280
+ :strength: example
281
+ :system: http://hl7.org/fhir/ValueSet/missing-tooth-reason
282
+ :path: supportingInfo.reason
283
+ - :type: CodeableConcept
284
+ :strength: example
285
+ :system: http://hl7.org/fhir/ValueSet/claim-informationcategory
286
+ :path: supportingInfo.category
287
+ - :type: CodeableConcept
288
+ :strength: example
289
+ :system: http://hl7.org/fhir/ValueSet/claim-exception
290
+ :path: supportingInfo.code
291
+ - :type: CodeableConcept
292
+ :strength: example
293
+ :system: http://hl7.org/fhir/ValueSet/missing-tooth-reason
294
+ :path: supportingInfo.reason
295
+ - :type: CodeableConcept
296
+ :strength: extensible
297
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/PASSupportingInfoType
298
+ :path: supportingInfo.category
299
+ - :type: CodeableConcept
300
+ :strength: example
301
+ :system: http://hl7.org/fhir/ValueSet/claim-exception
302
+ :path: supportingInfo.code
303
+ - :type: CodeableConcept
304
+ :strength: example
305
+ :system: http://hl7.org/fhir/ValueSet/missing-tooth-reason
306
+ :path: supportingInfo.reason
307
+ - :type: CodeableConcept
308
+ :strength: extensible
309
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/PASSupportingInfoType
310
+ :path: supportingInfo.category
311
+ - :type: CodeableConcept
312
+ :strength: example
313
+ :system: http://hl7.org/fhir/ValueSet/claim-exception
314
+ :path: supportingInfo.code
315
+ - :type: CodeableConcept
316
+ :strength: example
317
+ :system: http://hl7.org/fhir/ValueSet/missing-tooth-reason
318
+ :path: supportingInfo.reason
319
+ - :type: CodeableConcept
320
+ :strength: required
321
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278DiagnosisCodes
322
+ :path: diagnosis.diagnosis
323
+ - :type: CodeableConcept
324
+ :strength: required
325
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278DiagnosisType
326
+ :path: diagnosis.type
327
+ - :type: CodeableConcept
328
+ :strength: example
329
+ :system: http://hl7.org/fhir/ValueSet/ex-diagnosis-on-admission
330
+ :path: diagnosis.onAdmission
331
+ - :type: CodeableConcept
332
+ :strength: example
333
+ :system: http://hl7.org/fhir/ValueSet/ex-diagnosisrelatedgroup
334
+ :path: diagnosis.packageCode
335
+ - :type: CodeableConcept
336
+ :strength: example
337
+ :system: http://hl7.org/fhir/ValueSet/ex-procedure-type
338
+ :path: procedure.type
339
+ - :type: CodeableConcept
340
+ :strength: example
341
+ :system: http://hl7.org/fhir/ValueSet/icd-10-procedures
342
+ :path: procedure.procedure
343
+ - :type: CodeableConcept
344
+ :strength: required
345
+ :system: https://valueset.x12.org/x217/005010/request/2000E/UM/1/05/01/1362
346
+ :path: accident.type
347
+ - :type: CodeableConcept
348
+ :strength: required
349
+ :system: https://valueset.x12.org/x217/005010/request/2000F/SV2/1/09/00/1345
350
+ :path: item.extension.value
351
+ - :type: CodeableConcept
352
+ :strength: required
353
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/AHANUBCRevenueCodes
354
+ :path: item.revenue
355
+ - :type: CodeableConcept
356
+ :strength: required
357
+ :system: https://valueset.x12.org/x217/005010/request/2000F/UM/1/03/00/1365
358
+ :path: item.category
359
+ - :type: CodeableConcept
360
+ :strength: required
361
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278RequestedServiceType
362
+ :path: item.productOrService
363
+ - :type: CodeableConcept
364
+ :strength: required
365
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278RequestedServiceModifierType
366
+ :path: item.modifier
367
+ - :type: CodeableConcept
368
+ :strength: example
369
+ :system: http://hl7.org/fhir/ValueSet/ex-program-code
370
+ :path: item.programCode
371
+ - :type: CodeableConcept
372
+ :strength: required
373
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278LocationType
374
+ :path: item.location
375
+ - :type: CodeableConcept
376
+ :strength: example
377
+ :system: http://hl7.org/fhir/ValueSet/tooth
378
+ :path: item.bodySite
379
+ - :type: CodeableConcept
380
+ :strength: example
381
+ :system: http://hl7.org/fhir/ValueSet/surface
382
+ :path: item.subSite
383
+ - :type: CodeableConcept
384
+ :strength: example
385
+ :system: http://hl7.org/fhir/ValueSet/ex-revenue-center
386
+ :path: item.detail.revenue
387
+ - :type: CodeableConcept
388
+ :strength: example
389
+ :system: http://hl7.org/fhir/ValueSet/ex-benefitcategory
390
+ :path: item.detail.category
391
+ - :type: CodeableConcept
392
+ :strength: example
393
+ :system: http://hl7.org/fhir/ValueSet/service-uscls
394
+ :path: item.detail.productOrService
395
+ - :type: CodeableConcept
396
+ :strength: example
397
+ :system: http://hl7.org/fhir/ValueSet/claim-modifiers
398
+ :path: item.detail.modifier
399
+ - :type: CodeableConcept
400
+ :strength: example
401
+ :system: http://hl7.org/fhir/ValueSet/ex-program-code
402
+ :path: item.detail.programCode
403
+ - :type: CodeableConcept
404
+ :strength: example
405
+ :system: http://hl7.org/fhir/ValueSet/ex-revenue-center
406
+ :path: item.detail.subDetail.revenue
407
+ - :type: CodeableConcept
408
+ :strength: example
409
+ :system: http://hl7.org/fhir/ValueSet/ex-benefitcategory
410
+ :path: item.detail.subDetail.category
411
+ - :type: CodeableConcept
412
+ :strength: example
413
+ :system: http://hl7.org/fhir/ValueSet/service-uscls
414
+ :path: item.detail.subDetail.productOrService
415
+ - :type: CodeableConcept
416
+ :strength: example
417
+ :system: http://hl7.org/fhir/ValueSet/claim-modifiers
418
+ :path: item.detail.subDetail.modifier
419
+ - :type: CodeableConcept
420
+ :strength: example
421
+ :system: http://hl7.org/fhir/ValueSet/ex-program-code
422
+ :path: item.detail.subDetail.programCode
423
+ - :type: CodeableConcept
424
+ :strength: required
425
+ :system: https://valueset.x12.org/x217/005010/request/2000E/UM/1/06/00/1338
426
+ :path: value
427
+ :extensions:
428
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-levelOfServiceCode
429
+ - :type: CodeableConcept
430
+ :strength: required
431
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278ConditionCategory
432
+ :path: value
433
+ :extensions:
434
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-conditionCode
435
+ - category
436
+ - :type: CodeableConcept
437
+ :strength: required
438
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278ConditionCode
439
+ :path: value
440
+ :extensions:
441
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-conditionCode
442
+ - code
443
+ - :type: CodeableConcept
444
+ :strength: required
445
+ :system: https://valueset.x12.org/x217/005010/request/2000E/CR6/1/01/00/923
446
+ :path: value
447
+ :extensions:
448
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-homeHealthCareInformation
449
+ - prognosis
450
+ - :type: CodeableConcept
451
+ :strength: required
452
+ :system: https://valueset.x12.org/x217/005010/request/2000E/UM/1/01/00/1525
453
+ :path: value
454
+ :extensions:
455
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-serviceItemRequestType
456
+ - :type: CodeableConcept
457
+ :strength: required
458
+ :system: https://valueset.x12.org/x217/005010/request/2000F/UM/1/02/00/1322
459
+ :path: value
460
+ :extensions:
461
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-certificationType
462
+ - :type: CodeableConcept
463
+ :strength: required
464
+ :system: http://hl7.org/fhir/us/davinci-pas/ValueSet/X12278RequestedServiceType
465
+ :path: value
466
+ :extensions:
467
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-productOrServiceCodeEnd
468
+ - :type: CodeableConcept
469
+ :strength: required
470
+ :system: https://valueset.x12.org/x217/005010/request/2000F/SV1/1/20/00/1337
471
+ :path: value
472
+ :extensions:
473
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/extension-nursingHomeLevelOfCare
474
+ :references:
475
+ - :path: Claim.extension.value[x]
476
+ :profiles:
477
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-encounter
478
+ - :path: Claim.patient
479
+ :profiles:
480
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary
481
+ - :path: Claim.enterer
482
+ :profiles:
483
+ - http://hl7.org/fhir/StructureDefinition/Practitioner
484
+ - http://hl7.org/fhir/StructureDefinition/PractitionerRole
485
+ - :path: Claim.insurer
486
+ :profiles:
487
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer
488
+ - :path: Claim.provider
489
+ :profiles:
490
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor
491
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-practitionerrole
492
+ - :path: Claim.related.claim
493
+ :profiles:
494
+ - http://hl7.org/fhir/StructureDefinition/Claim
495
+ - :path: Claim.prescription
496
+ :profiles:
497
+ - http://hl7.org/fhir/StructureDefinition/DeviceRequest
498
+ - http://hl7.org/fhir/StructureDefinition/MedicationRequest
499
+ - http://hl7.org/fhir/StructureDefinition/VisionPrescription
500
+ - :path: Claim.originalPrescription
501
+ :profiles:
502
+ - http://hl7.org/fhir/StructureDefinition/DeviceRequest
503
+ - http://hl7.org/fhir/StructureDefinition/MedicationRequest
504
+ - http://hl7.org/fhir/StructureDefinition/VisionPrescription
505
+ - :path: Claim.payee.party
506
+ :profiles:
507
+ - http://hl7.org/fhir/StructureDefinition/Practitioner
508
+ - http://hl7.org/fhir/StructureDefinition/PractitionerRole
509
+ - http://hl7.org/fhir/StructureDefinition/Organization
510
+ - http://hl7.org/fhir/StructureDefinition/Patient
511
+ - http://hl7.org/fhir/StructureDefinition/RelatedPerson
512
+ - :path: Claim.referral
513
+ :profiles:
514
+ - http://hl7.org/fhir/StructureDefinition/ServiceRequest
515
+ - :path: Claim.facility
516
+ :profiles:
517
+ - http://hl7.org/fhir/StructureDefinition/Location
518
+ - :path: Claim.careTeam.provider
519
+ :profiles:
520
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-organization
521
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-practitionerrole
522
+ - :path: Claim.careTeam.provider
523
+ :profiles:
524
+ - http://hl7.org/fhir/StructureDefinition/Practitioner
525
+ - http://hl7.org/fhir/StructureDefinition/PractitionerRole
526
+ - http://hl7.org/fhir/StructureDefinition/Organization
527
+ - :path: Claim.careTeam.provider
528
+ :profiles:
529
+ - http://hl7.org/fhir/StructureDefinition/Practitioner
530
+ - http://hl7.org/fhir/StructureDefinition/PractitionerRole
531
+ - http://hl7.org/fhir/StructureDefinition/Organization
532
+ - :path: Claim.supportingInfo.value[x]
533
+ :profiles:
534
+ - http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference
535
+ - http://hl7.org/fhir/StructureDefinition/Resource
536
+ - :path: Claim.procedure.udi
537
+ :profiles:
538
+ - http://hl7.org/fhir/StructureDefinition/Device
539
+ - :path: Claim.insurance.coverage
540
+ :profiles:
541
+ - http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-coverage
542
+ - :path: Claim.insurance.claimResponse
543
+ :profiles:
544
+ - http://hl7.org/fhir/StructureDefinition/ClaimResponse
545
+ - :path: Claim.item.udi
546
+ :profiles:
547
+ - http://hl7.org/fhir/StructureDefinition/Device
548
+ - :path: Claim.item.encounter
549
+ :profiles:
550
+ - http://hl7.org/fhir/StructureDefinition/Encounter
551
+ - :path: Claim.item.detail.udi
552
+ :profiles:
553
+ - http://hl7.org/fhir/StructureDefinition/Device
554
+ - :path: Claim.item.detail.subDetail.udi
555
+ :profiles:
556
+ - http://hl7.org/fhir/StructureDefinition/Device
557
+ :tests:
558
+ - :id: pas_v201_claim_operation_test
559
+ :file_name: claim_operation_test.rb
560
+ :delayed_references:
561
+ - :path: extension.value[x]
562
+ :resources:
563
+ - Encounter
564
+ - :path: insurer
565
+ :resources:
566
+ - Organization
567
+ - :path: provider
568
+ :resources:
569
+ - Organization
570
+ - PractitionerRole
571
+ - :path: careTeam.provider
572
+ :resources:
573
+ - Organization
574
+ - PractitionerRole
575
+ - :path: insurance.coverage
576
+ :resources:
577
+ - Coverage
@@ -0,0 +1,57 @@
1
+ module DaVinciPASTestKit
2
+ module DaVinciPASV201
3
+ class ClaimInquiryOperationTest < Inferno::Test
4
+
5
+ id :pas_v201_claim_inquiry_operation_test
6
+ title 'Claim/$inquire Operation Test'
7
+ description %(
8
+ Server SHALL support PAS Inquiry requests: a POST interaction to
9
+ the /Claim/$inquire endpoint.
10
+ This test submits a Prior Authorization Inquiry request to the server and verifies that a
11
+ response is returned with HTTP status 2XX.
12
+
13
+
14
+ )
15
+
16
+ input :pa_inquire_request_payload,
17
+ title: 'PAS Inquire Request Payload',
18
+ description: 'Insert Bundle to be sent for PAS Inquire Request',
19
+ type: 'textarea',
20
+ optional: true
21
+ input_order :server_endpoint, :smart_credentials
22
+
23
+ makes_request :pa_inquire
24
+
25
+ def scratch_resources
26
+ scratch[:inquire_request_response_pair] ||= {}
27
+ end
28
+
29
+ def request_bundles
30
+ parsed_payload = JSON.parse(pa_inquire_request_payload)
31
+ [parsed_payload].flatten.compact.uniq
32
+ end
33
+
34
+ def perform_operation(request_payload)
35
+
36
+ fhir_operation('/Claim/$inquire', body: request_payload, name: :pa_inquire)
37
+
38
+ assert_response_status([200, 201])
39
+ assert_valid_json(request.response_body)
40
+
41
+ # Save request/response pair
42
+ scratch_resources[:all] ||= []
43
+ scratch_resources[:all] << {request_bundle: request.request_body, response_bundle: resource}
44
+
45
+ end
46
+
47
+ run do
48
+ skip_if pa_inquire_request_payload.blank?, 'No bundle request provided to perform the inquire operation'
49
+ assert_valid_json(pa_inquire_request_payload)
50
+
51
+ request_bundles.each do |bundle|
52
+ perform_operation(bundle)
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end