davinci_pas_test_kit 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
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