plan_executor 1.0.2

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 (337) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +44 -0
  3. data/.simplecov +16 -0
  4. data/.travis.yml +13 -0
  5. data/Gemfile +26 -0
  6. data/Gemfile.lock +197 -0
  7. data/LICENSE +201 -0
  8. data/README.md +126 -0
  9. data/Rakefile +25 -0
  10. data/fixtures/daf/conformance-daf-query-responder.xml +1471 -0
  11. data/fixtures/diagnostic_order/do-100.xml +64 -0
  12. data/fixtures/diagnostic_order/do-200.xml +121 -0
  13. data/fixtures/diagnostic_order/do-300.xml +91 -0
  14. data/fixtures/diagnostic_order/do-400.xml +88 -0
  15. data/fixtures/diagnostic_report/dr-100.xml +96 -0
  16. data/fixtures/diagnostic_report/dr-200.xml +125 -0
  17. data/fixtures/diagnostic_report/dr-300.xml +132 -0
  18. data/fixtures/diagnostic_report/dr-400.xml +121 -0
  19. data/fixtures/financial/claim-example-average.xml +168 -0
  20. data/fixtures/financial/claim-example-simple.xml +67 -0
  21. data/fixtures/observation/obs-100.xml +58 -0
  22. data/fixtures/observation/obs-101.xml +58 -0
  23. data/fixtures/observation/obs-200.xml +125 -0
  24. data/fixtures/observation/obs-300.xml +106 -0
  25. data/fixtures/observation/obs-301.xml +106 -0
  26. data/fixtures/observation/obs-302.xml +106 -0
  27. data/fixtures/observation/obs-303.xml +106 -0
  28. data/fixtures/observation/obs-304.xml +106 -0
  29. data/fixtures/observation/obs-400.xml +87 -0
  30. data/fixtures/observation/obs-401.xml +95 -0
  31. data/fixtures/observation/obs-402.xml +95 -0
  32. data/fixtures/observation/obs-403.xml +84 -0
  33. data/fixtures/observation/obs-404.xml +84 -0
  34. data/fixtures/observation/obs-405.xml +83 -0
  35. data/fixtures/observation/obs-406.xml +83 -0
  36. data/fixtures/observation/obs-407.xml +70 -0
  37. data/fixtures/observation/obs-408.xml +84 -0
  38. data/fixtures/observation/obs-uslab-example5.xml +102 -0
  39. data/fixtures/order/order-100.xml +61 -0
  40. data/fixtures/order/order-200.xml +61 -0
  41. data/fixtures/order/order-300.xml +61 -0
  42. data/fixtures/order/order-400.xml +61 -0
  43. data/fixtures/order_response/ordresp-100.xml +79 -0
  44. data/fixtures/order_response/ordresp-110.xml +79 -0
  45. data/fixtures/order_response/ordresp-200.xml +79 -0
  46. data/fixtures/order_response/ordresp-210.xml +79 -0
  47. data/fixtures/order_response/ordresp-300.xml +79 -0
  48. data/fixtures/order_response/ordresp-310.xml +79 -0
  49. data/fixtures/order_response/ordresp-400.xml +79 -0
  50. data/fixtures/order_response/ordresp-410.xml +79 -0
  51. data/fixtures/organization/org-uslab-example3.xml +49 -0
  52. data/fixtures/patient/patient-example-updated.xml +140 -0
  53. data/fixtures/patient/patient-example-us-extensions(us01).xml +81 -0
  54. data/fixtures/patient/patient-example.xml +132 -0
  55. data/fixtures/patient/patient-format-example.xml +101 -0
  56. data/fixtures/patient/patient-minimal.xml +9 -0
  57. data/fixtures/patient/patient-uslab-example1.xml +44 -0
  58. data/fixtures/practitioner/pract-uslab-example1.xml +18 -0
  59. data/fixtures/practitioner/pract-uslab-example3.xml +36 -0
  60. data/fixtures/record/condition-example-f201-fever.xml +63 -0
  61. data/fixtures/record/condition-example-f205-infection.xml +20 -0
  62. data/fixtures/record/diagnosticreport-example-f201-brainct.xml +18 -0
  63. data/fixtures/record/encounter-example-f201-20130404.xml +17 -0
  64. data/fixtures/record/encounter-example-f202-20130128.xml +17 -0
  65. data/fixtures/record/observation-example-f202-temperature.xml +60 -0
  66. data/fixtures/record/organization-example-f201-aumc.xml +5 -0
  67. data/fixtures/record/organization-example-f203-bumc.xml +5 -0
  68. data/fixtures/record/patient-example-f201-roel.xml +16 -0
  69. data/fixtures/record/practitioner-example-f201-ab.xml +14 -0
  70. data/fixtures/record/procedure-example-f201-tpf.xml +23 -0
  71. data/fixtures/scheduling/appointment-simple.xml +24 -0
  72. data/fixtures/scheduling/appointmentresponse-patient-simple.xml +12 -0
  73. data/fixtures/scheduling/appointmentresponse-practitioner-simple.xml +12 -0
  74. data/fixtures/scheduling/practitioner-simple.xml +10 -0
  75. data/fixtures/scheduling/schedule-simple.xml +12 -0
  76. data/fixtures/scheduling/slot-simple.xml +10 -0
  77. data/fixtures/specimen/spec-100.xml +65 -0
  78. data/fixtures/specimen/spec-400.xml +70 -0
  79. data/fixtures/specimen/spec-uslab-example1.xml +82 -0
  80. data/fixtures/validation/observation.profile.xml +2045 -0
  81. data/fixtures/validation/observations/observation-example(example).xml +50 -0
  82. data/lib/FHIR_structure.json +529 -0
  83. data/lib/daf_resource_generator.rb +94 -0
  84. data/lib/data/fhir_structure.rb +8 -0
  85. data/lib/data/resources.rb +138 -0
  86. data/lib/executor.rb +56 -0
  87. data/lib/ext/client.rb +27 -0
  88. data/lib/ext/client_reply.rb +19 -0
  89. data/lib/plan_executor.rb +31 -0
  90. data/lib/resource_generator.rb +656 -0
  91. data/lib/tasks/tasks.rake +329 -0
  92. data/lib/tasks/templates/summary.html.erb +163 -0
  93. data/lib/test_result.rb +69 -0
  94. data/lib/tests/assertions.rb +261 -0
  95. data/lib/tests/base_test.rb +117 -0
  96. data/lib/tests/suites/argonaut_resprint_1_test.rb +260 -0
  97. data/lib/tests/suites/argonaut_resprint_2_test.rb +369 -0
  98. data/lib/tests/suites/argonaut_resprint_3_test.rb +309 -0
  99. data/lib/tests/suites/argonaut_sprint_1_test.rb +187 -0
  100. data/lib/tests/suites/argonaut_sprint_2_test.rb +115 -0
  101. data/lib/tests/suites/argonaut_sprint_3_test.rb +208 -0
  102. data/lib/tests/suites/argonaut_sprint_4_test.rb +335 -0
  103. data/lib/tests/suites/argonaut_sprint_5_test.rb +196 -0
  104. data/lib/tests/suites/argonaut_sprint_6_test.rb +243 -0
  105. data/lib/tests/suites/argonaut_sprint_7_test.rb +161 -0
  106. data/lib/tests/suites/base_suite.rb +116 -0
  107. data/lib/tests/suites/connectathon_audit_track.rb +354 -0
  108. data/lib/tests/suites/connectathon_fetch_patient_record.rb +443 -0
  109. data/lib/tests/suites/connectathon_financial_track.rb +380 -0
  110. data/lib/tests/suites/connectathon_lab_order_track.rb +239 -0
  111. data/lib/tests/suites/connectathon_patient_track.rb +364 -0
  112. data/lib/tests/suites/connectathon_profile_validation.rb +101 -0
  113. data/lib/tests/suites/connectathon_scheduling_track.rb +266 -0
  114. data/lib/tests/suites/connectathon_terminology_track.rb +242 -0
  115. data/lib/tests/suites/daf_profiles_test.rb +431 -0
  116. data/lib/tests/suites/format_test.rb +453 -0
  117. data/lib/tests/suites/history_test.rb +311 -0
  118. data/lib/tests/suites/read_test.rb +104 -0
  119. data/lib/tests/suites/resource_test.rb +553 -0
  120. data/lib/tests/suites/search_test.rb +219 -0
  121. data/lib/tests/suites/search_test_robust.rb +172 -0
  122. data/lib/tests/suites/sprinkler_search_test.rb +660 -0
  123. data/lib/tests/suites/suite_engine.rb +114 -0
  124. data/lib/tests/suites/transaction_test.rb +571 -0
  125. data/lib/tests/testscripts/base_testscript.rb +480 -0
  126. data/lib/tests/testscripts/testscript_engine.rb +81 -0
  127. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Client Assigned Id/track1-patient-base-client-id-json.xml +348 -0
  128. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Client Assigned Id/track1-patient-base-client-id-xml.xml +348 -0
  129. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Client Assigned Id/track1-patient-bonus-client-id-json.xml +420 -0
  130. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Client Assigned Id/track1-patient-bonus-client-id-xml.xml +420 -0
  131. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/README.html +68 -0
  132. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Server Assigned Id/track1-patient-base-server-id-json.xml +352 -0
  133. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Server Assigned Id/track1-patient-base-server-id-xml.xml +352 -0
  134. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Server Assigned Id/track1-patient-bonus-server-id-json.xml +421 -0
  135. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/Server Assigned Id/track1-patient-bonus-server-id-xml.xml +421 -0
  136. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/conformance/PatientConformance.xml +34 -0
  137. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-PeterChalmers-min.json +45 -0
  138. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-PeterChalmers-min.xml +26 -0
  139. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-PeterChalmers.json +100 -0
  140. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-PeterChalmers.xml +102 -0
  141. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-bonus-PeterChalmers-min.json +53 -0
  142. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-bonus-PeterChalmers-min.xml +30 -0
  143. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-bonus-PeterChalmers.json +108 -0
  144. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-create-bonus-PeterChalmers.xml +108 -0
  145. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-PeterChalmers-min.json +45 -0
  146. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-PeterChalmers-min.xml +26 -0
  147. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-PeterChalmers.json +100 -0
  148. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-PeterChalmers.xml +102 -0
  149. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus1-PeterChalmers-min.json +53 -0
  150. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus1-PeterChalmers-min.xml +30 -0
  151. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus1-PeterChalmers.json +108 -0
  152. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus1-PeterChalmers.xml +107 -0
  153. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus2-PeterChalmers-min.json +53 -0
  154. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus2-PeterChalmers-min.xml +31 -0
  155. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus2-PeterChalmers.json +108 -0
  156. data/lib/tests/testscripts/xml/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus2-PeterChalmers.xml +106 -0
  157. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/C-CDA_R2-1_CCD-ussg.xml +3414 -0
  158. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-A1-empty-on-instance.xml +9 -0
  159. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-A2-empty-by-ref.xml +15 -0
  160. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-A3-empty-by-identifier.xml +13 -0
  161. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-A4-empty-by-contained.xml +15 -0
  162. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-B1-CCDA-on-instance.xml +15 -0
  163. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-B2-CCDA-by-ref.xml +21 -0
  164. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-B3-CCDA-by-identifier.xml +19 -0
  165. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/parameters-B4-CCDA-by-contained.xml +21 -0
  166. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/questionnaire-sdc-profile-example-ussg-fht.xml +3905 -0
  167. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/questionnaireresponse-expected-ussg-fht-CCDA.xml +190 -0
  168. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/_reference/resources/questionnaireresponse-expected-ussg-fht-empty.xml +177 -0
  169. data/lib/tests/testscripts/xml/Connectathon11/Track11-SDC/track11-sdc-prepop-xml.xml +142 -0
  170. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Expand/Client Assigned Id/track2-ts-suite1-expand-client-id.xml +925 -0
  171. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Expand/Client Assigned Id/track2-ts-suite2-expand-filter-client-id.xml +930 -0
  172. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Expand/Server Assigned Id/track2-ts-suite1-expand-server-id.xml +953 -0
  173. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Expand/Server Assigned Id/track2-ts-suite2-expand-filter-server-id.xml +958 -0
  174. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Lookup/track2-ts-suite5-loinc-lookup-xml.xml +224 -0
  175. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Lookup/track2-ts-suite5-snomed-lookup-xml.xml +224 -0
  176. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/README.html +85 -0
  177. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Translate/track2-ts-suite6-translate-xml.xml +224 -0
  178. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Validate-code/Client Assigned Id/track2-ts-suite3-validate-code-client-id.xml +1807 -0
  179. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Validate-code/Client Assigned Id/track2-ts-suite4-validate-code-client-id.xml +714 -0
  180. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Validate-code/Server Assigned Id/track2-ts-suite3-validate-code-server-id.xml +1835 -0
  181. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/Validate-code/Server Assigned Id/track2-ts-suite4-validate-code-server-id.xml +742 -0
  182. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/conformance/ConceptMapSuite6Conformance.xml +11 -0
  183. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/conformance/ValueSetSuite1Conformance.xml +17 -0
  184. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/conformance/ValueSetSuite2Conformance.xml +17 -0
  185. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/conformance/ValueSetSuite3Conformance.xml +14 -0
  186. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/conformance/ValueSetSuite4Conformance.xml +14 -0
  187. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/conformance/ValueSetSuite5Conformance.xml +11 -0
  188. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/extensional-case-1-input-4-2-a.xml +11 -0
  189. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/extensional-case-1-input-4-2-b.xml +11 -0
  190. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/extensional-case-1-input-4-3-a.xml +13 -0
  191. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/extensional-case-1-input-4-3-b.xml +13 -0
  192. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/extensional-case-1-input-4-4-a.xml +15 -0
  193. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/extensional-case-1-input-4-4-b.xml +15 -0
  194. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/lookup-loinc-input-5-2.xml +10 -0
  195. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/lookup-loinc-input-5-3.xml +11 -0
  196. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/lookup-snomed-input-5-2.xml +10 -0
  197. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/lookup-snomed-input-5-3.xml +11 -0
  198. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/translate-conceptmap-input-6-2.xml +14 -0
  199. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/input/translate-conceptmap-input-6-3.xml +15 -0
  200. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-1-expand-min.xml +47 -0
  201. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-1-filter-min.xml +23 -0
  202. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-2-expand-min.xml +132 -0
  203. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-2-filter-min.xml +38 -0
  204. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-3-expand-min.xml +252 -0
  205. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-3-filter-min.xml +58 -0
  206. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-4-expand-min.xml +57 -0
  207. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/extensional-case-4-filter-min.xml +28 -0
  208. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/intensional-case-1-expand-min.xml +347 -0
  209. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/intensional-case-1-filter-min.xml +33 -0
  210. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/intensional-case-2-expand-min.xml +637 -0
  211. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/intensional-case-2-filter-min.xml +33 -0
  212. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/intensional-case-3-filter-min.xml +58 -0
  213. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/lookup-loinc-min.xml +11 -0
  214. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/lookup-snomed-min.xml +11 -0
  215. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/suite3-invalid-min.xml +10 -0
  216. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/suite3-valid-min.xml +7 -0
  217. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/suite4-invalid-min.xml +10 -0
  218. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/suite4-valid-min.xml +7 -0
  219. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/output/translate-conceptmap-min.xml +17 -0
  220. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/extensional-case-1.xml +55 -0
  221. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/extensional-case-2.xml +122 -0
  222. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/extensional-case-3.xml +222 -0
  223. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/extensional-case-4.xml +65 -0
  224. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/intensional-case-1.xml +31 -0
  225. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/intensional-case-2.xml +31 -0
  226. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/intensional-case-3.xml +31 -0
  227. data/lib/tests/testscripts/xml/Connectathon11/Track2-Terminology/_reference/resources/translate-conceptmap-case-1.xml +145 -0
  228. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/conformance/DecisionSupportServiceModule-Evaluate.xml +17 -0
  229. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-incomplete-request-payload.xml +26 -0
  230. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-incomplete-response-min-payload.xml +7 -0
  231. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-incomplete-response-payload.xml +332 -0
  232. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-malformed-request-payload.xml +28 -0
  233. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-malformed-response-min-payload.xml +7 -0
  234. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-malformed-response-payload.xml +20 -0
  235. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-request-payload.xml +28 -0
  236. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-response-min-payload.xml +7 -0
  237. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-response-payload.xml +332 -0
  238. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-unauthorized-request-payload.xml +28 -0
  239. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-unauthorized-response-min-payload.xml +7 -0
  240. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/ecrs-fhir-cdc-immunizations-unauthorized-response-payload.xml +8 -0
  241. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/gao-assessment-request-payload.xml +176 -0
  242. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/gao-assessment-response-payload-min.xml +32 -0
  243. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/_reference/resources/gao-assessment-response-payload.xml +80 -0
  244. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/track3-cds-evaluate-cdc-immunization.xml +290 -0
  245. data/lib/tests/testscripts/xml/Connectathon11/Track3-CDS-on-FHIR/track3-cds-evaluate-gao-profile.xml +110 -0
  246. data/lib/tests/testscripts/xml/Connectathon11/Track6-FHIR-Genomics/Client_Assigned_Id/TestScript_FHIR-Genomics.xml +170 -0
  247. data/lib/tests/testscripts/xml/Connectathon11/Track6-FHIR-Genomics/_reference/resources/sequence-example-1.xml +31 -0
  248. data/lib/tests/testscripts/xml/Connectathon11/Track6-FHIR-Genomics/_reference/resources/sequence-example-2.xml +31 -0
  249. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Actors.png +0 -0
  250. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Client_Assigned_Id/track7-laborder100-xml.xml +590 -0
  251. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Client_Assigned_Id/track7-laborder200-xml.xml +587 -0
  252. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Client_Assigned_Id/track7-laborder300-xml.xml +612 -0
  253. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Client_Assigned_Id/track7-laborder400-xml.xml +635 -0
  254. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Peer-to-Peer/track7-laborder100-peer2peer-xml.xml +752 -0
  255. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/Thumbs.db +0 -0
  256. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/conformance/LabOrderLabReport-CreateDeleteReadUpdate.xml +187 -0
  257. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/conformance/html.xslt +45 -0
  258. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-100-update.xml +64 -0
  259. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-100.xml +64 -0
  260. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-200-update.xml +121 -0
  261. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-200.xml +121 -0
  262. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-300-update.xml +91 -0
  263. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-300.xml +91 -0
  264. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-400-update.xml +88 -0
  265. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticOrder/do-400.xml +88 -0
  266. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticReport/dr-100.xml +96 -0
  267. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticReport/dr-200.xml +125 -0
  268. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticReport/dr-300.xml +132 -0
  269. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/DiagnosticReport/dr-400.xml +121 -0
  270. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-100.xml +58 -0
  271. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-101.xml +58 -0
  272. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-200.xml +125 -0
  273. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-300.xml +106 -0
  274. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-301.xml +106 -0
  275. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-302.xml +106 -0
  276. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-303.xml +106 -0
  277. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-304.xml +106 -0
  278. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-400.xml +87 -0
  279. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-401.xml +95 -0
  280. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-402.xml +95 -0
  281. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-403.xml +84 -0
  282. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-404.xml +84 -0
  283. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-405.xml +83 -0
  284. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-406.xml +83 -0
  285. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-407.xml +70 -0
  286. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-408.xml +84 -0
  287. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Observation/obs-uslab-example5.xml +102 -0
  288. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Order/order-100.xml +61 -0
  289. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Order/order-200.xml +61 -0
  290. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Order/order-300.xml +61 -0
  291. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Order/order-400.xml +61 -0
  292. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-100.xml +79 -0
  293. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-110.xml +79 -0
  294. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-200.xml +79 -0
  295. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-210.xml +79 -0
  296. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-300.xml +79 -0
  297. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-310.xml +79 -0
  298. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-400.xml +79 -0
  299. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/OrderResponse/ordresp-410.xml +79 -0
  300. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Organization/org-uslab-example3.xml +49 -0
  301. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Patient/patient-uslab-example1.xml +44 -0
  302. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Practitioner/pract-uslab-example1.xml +18 -0
  303. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Practitioner/pract-uslab-example3.xml +36 -0
  304. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Specimen/Thumbs.db +0 -0
  305. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Specimen/spec-100.xml +65 -0
  306. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Specimen/spec-400.xml +70 -0
  307. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Specimen/spec-uslab-example1.xml +82 -0
  308. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Testscript 1 Document.txt +122 -0
  309. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Testscript 2 Document.txt +103 -0
  310. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Testscript 3 Document.txt +201 -0
  311. data/lib/tests/testscripts/xml/Connectathon11/Track7-LabOrderLabReport/_reference/resources/Testscript 4 Document.txt +310 -0
  312. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/_reference/conformance/MedicationStatementCreate.xml +11 -0
  313. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/_reference/conformance/PatientSearchType.xml +15 -0
  314. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/_reference/resources/medicationstatement-create.json +39 -0
  315. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/_reference/resources/medicationstatement-patch.json +3 -0
  316. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/track9-patch-medicationstatement-json-if-match.xml +321 -0
  317. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/track9-patch-medicationstatement-json.xml +303 -0
  318. data/lib/tests/testscripts/xml/Connectathon11/Track9-Patch/track9-patch-peer2peer-patient-json.xml +235 -0
  319. data/plan_executor.gemspec +14 -0
  320. data/test/fixtures/diagnostic_bundle.xml +51 -0
  321. data/test/fixtures/lab_results_bundle.xml +49 -0
  322. data/test/fixtures/observation_bundle.json +61 -0
  323. data/test/fixtures/testscript-example.xml +202 -0
  324. data/test/fixtures/testscript-history.xml +143 -0
  325. data/test/fixtures/testscript-readtest.xml +272 -0
  326. data/test/fixtures/testscript-search.xml +282 -0
  327. data/test/fixtures/testscript-update.xml +147 -0
  328. data/test/fixtures/vital_signs_bundle.xml +117 -0
  329. data/test/test_helper.rb +8 -0
  330. data/test/unit/argonaut_sprint6_test.rb +31 -0
  331. data/test/unit/argonaut_sprint7_test.rb +21 -0
  332. data/test/unit/basic_test.rb +27 -0
  333. data/test/unit/fetch_patient_record_test.rb +357 -0
  334. data/test/unit/financial_test.rb +41 -0
  335. data/test/unit/fixtures_test.rb +45 -0
  336. data/test/unit/metadata_test.rb +33 -0
  337. metadata +394 -0
@@ -0,0 +1,420 @@
1
+ <TestScript xmlns="http://hl7.org/fhir">
2
+ <id value="track1-patient-bonus-client-id-xml"/>
3
+
4
+ <url value="http://wildfhir.aegis.net/fhir/TestScript/track1-patient-bonus-client-id-xml"/>
5
+ <name value="FHIR Connectathon 11 - Track 1 - Patient - Register a new patient (Bonus)"/>
6
+ <status value="draft"/>
7
+ <publisher value="AEGIS.net, Inc."/>
8
+ <contact>
9
+ <name value="Touchstone Support"/>
10
+ <telecom>
11
+ <system value="email"/>
12
+ <value value="Touchstone_Support@aegis.net"/>
13
+ <use value="work"/>
14
+ </telecom>
15
+ </contact>
16
+ <date value="2015-12-30"/>
17
+ <description value="FHIR Connectathon 11 - Track 1 - Patient - XML Format - Baseline (Bonus) tests to create, update, retrieve history and search a patient, with extensions and client assigned resource id."/>
18
+ <useContext>
19
+ <coding>
20
+ <system value="urn:iso:std:iso:3166"/>
21
+ <code value="US"/>
22
+ <display value="United States of America (the)"/>
23
+ </coding>
24
+ </useContext>
25
+ <requirements value="Patient Create, Read, Update, Delete, and History Instance Operations"/>
26
+ <copyright value="© AEGIS.net, Inc. 2015+"/>
27
+
28
+ <metadata>
29
+ <capability>
30
+ <required value="true"/>
31
+ <description value="Patient create, read, update, delete, history-instance and search-type operations"/>
32
+ <link value="http://hl7.org/fhir/2016Jan/http.html#create"/>
33
+ <link value="http://hl7.org/fhir/2016Jan/http.html#read"/>
34
+ <link value="http://hl7.org/fhir/2016Jan/http.html#update"/>
35
+ <link value="http://hl7.org/fhir/2016Jan/http.html#delete"/>
36
+ <link value="http://hl7.org/fhir/2016Jan/http.html#history"/>
37
+ <link value="http://hl7.org/fhir/2016Jan/http.html#search"/>
38
+ <link value="http://hl7.org/fhir/2016Jan/patient.html"/>
39
+ <conformance>
40
+ <reference value="/Connectathon11/Track1-Patient/_reference/conformance/PatientConformance.xml" />
41
+ </conformance>
42
+ </capability>
43
+ </metadata>
44
+
45
+ <fixture id="patient-create-bonus-PeterChalmers">
46
+ <resource>
47
+ <reference value="/Connectathon11/Track1-Patient/_reference/resources/patient-create-bonus-PeterChalmers.xml"/>
48
+ </resource>
49
+ </fixture>
50
+ <fixture id="patient-create-bonus-PeterChalmers-min">
51
+ <resource>
52
+ <reference value="/Connectathon11/Track1-Patient/_reference/resources/patient-create-bonus-PeterChalmers-min.xml"/>
53
+ </resource>
54
+ </fixture>
55
+
56
+ <fixture id="patient-update-bonus1-PeterChalmers">
57
+ <resource>
58
+ <reference value="/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus1-PeterChalmers.xml"/>
59
+ </resource>
60
+ </fixture>
61
+ <fixture id="patient-update-bonus1-PeterChalmers-min">
62
+ <resource>
63
+ <reference value="/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus1-PeterChalmers-min.xml"/>
64
+ </resource>
65
+ </fixture>
66
+ <fixture id="patient-update-bonus2-PeterChalmers">
67
+ <resource>
68
+ <reference value="/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus2-PeterChalmers.xml"/>
69
+ </resource>
70
+ </fixture>
71
+ <fixture id="patient-update-bonus2-PeterChalmers-min">
72
+ <resource>
73
+ <reference value="/Connectathon11/Track1-Patient/_reference/resources/patient-update-bonus2-PeterChalmers-min.xml"/>
74
+ </resource>
75
+ </fixture>
76
+
77
+ <profile id="bundle-profile">
78
+ <reference value="http://hl7.org/fhir/StructureDefinition/Bundle"/>
79
+ </profile>
80
+ <profile id="patient-profile">
81
+ <reference value="http://hl7.org/fhir/StructureDefinition/Patient"/>
82
+ </profile>
83
+
84
+ <variable>
85
+ <name value="createIdentifier"/>
86
+ <path value="Patient/identifier/value"/>
87
+ <sourceId value="patient-create-bonus-PeterChalmers"/>
88
+ </variable>
89
+ <variable>
90
+ <name value="searchFamilyName"/>
91
+ <path value="Patient/name/family"/>
92
+ <sourceId value="patient-create-bonus-PeterChalmers"/>
93
+ </variable>
94
+ <variable>
95
+ <name value="searchGivenName"/>
96
+ <path value="Patient/name/given"/>
97
+ <sourceId value="patient-create-bonus-PeterChalmers"/>
98
+ </variable>
99
+
100
+ <setup>
101
+ <action>
102
+ <operation>
103
+ <type>
104
+ <code value="delete"/>
105
+ </type>
106
+ <resource value="Patient"/>
107
+ <description value="Use a conditional delete operation to insure the patient does not exist on the server."/>
108
+ <accept value="xml"/>
109
+ <contentType value="xml"/>
110
+ <params value="?given=${searchGivenName}&amp;family=${searchFamilyName}"/>
111
+ </operation>
112
+ </action>
113
+ </setup>
114
+
115
+ <test id="Step1-RegisterNewPatient">
116
+ <name value="RegisterNewPatient"/>
117
+ <description value="Create a new patient, with extensions where the client assigns the resource id using XML."/>
118
+
119
+ <action>
120
+ <operation>
121
+ <type>
122
+ <code value="update"/>
123
+ </type>
124
+ <resource value="Patient"/>
125
+ <description value="Create patient with client assigned resource id."/>
126
+ <accept value="xml"/>
127
+ <contentType value="xml"/>
128
+ <params value="/${createIdentifier}"/>
129
+ <responseId value="create-bonus-response" />
130
+ <sourceId value="patient-create-bonus-PeterChalmers"/>
131
+ </operation>
132
+ </action>
133
+ <action>
134
+ <assert>
135
+ <operator value="in"/>
136
+ <responseCode value="200,201"/>
137
+ </assert>
138
+ </action>
139
+ <action>
140
+ <assert>
141
+ <contentType value="xml"/>
142
+ <warningOnly value="true"/>
143
+ </assert>
144
+ </action>
145
+
146
+ <action>
147
+ <operation>
148
+ <type>
149
+ <code value="read"/>
150
+ </type>
151
+ <resource value="Patient"/>
152
+ <description value="Read using params element"/>
153
+ <accept value="xml"/>
154
+ <contentType value="xml"/>
155
+ <params value="/${createIdentifier}"/>
156
+ </operation>
157
+ </action>
158
+ <action>
159
+ <assert>
160
+ <validateProfileId value="patient-profile"/>
161
+ <warningOnly value="true"/>
162
+ </assert>
163
+ </action>
164
+ <action>
165
+ <assert>
166
+ <description value="Confirm that the response contains the created version of the patient."/>
167
+ <minimumId value="patient-create-bonus-PeterChalmers-min"/>
168
+ </assert>
169
+ </action>
170
+ <action>
171
+ <assert>
172
+ <description value="Confirm that version of resource is 1 after the create. Warning only as the server may re-establish this resource id from a previous deletion."/>
173
+ <path value="Patient/meta/versionId"/>
174
+ <value value="1"/>
175
+ <warningOnly value="true"/>
176
+ </assert>
177
+ </action>
178
+ </test>
179
+
180
+ <test id="Step2a-Bonus1-UpdatePatient">
181
+ <name value="Step2a-Bonus1-UpdatePatient"/>
182
+ <description value="Update the patient's address city, the birth datetime extension remains unchanged."/>
183
+
184
+ <action>
185
+ <operation>
186
+ <type>
187
+ <code value="update"/>
188
+ </type>
189
+ <resource value="Patient"/>
190
+ <accept value="xml"/>
191
+ <contentType value="xml"/>
192
+ <params value="/${createIdentifier}"/>
193
+ <responseId value="update-bonus1-response" />
194
+ <sourceId value="patient-update-bonus1-PeterChalmers"/>
195
+ </operation>
196
+ </action>
197
+ <action>
198
+ <assert>
199
+ <operator value="in"/>
200
+ <responseCode value="200,201"/>
201
+ </assert>
202
+ </action>
203
+ <action>
204
+ <assert>
205
+ <headerField value="Location"/>
206
+ <operator value="notEmpty"/>
207
+ <warningOnly value="true"/>
208
+ </assert>
209
+ </action>
210
+
211
+ <action>
212
+ <operation>
213
+ <type>
214
+ <code value="read"/>
215
+ </type>
216
+ <resource value="Patient"/>
217
+ <accept value="xml"/>
218
+ <contentType value="xml"/>
219
+ <params value="/${createIdentifier}"/>
220
+ <responseId value="read-update-bonus1-response"/>
221
+ </operation>
222
+ </action>
223
+ <action>
224
+ <assert>
225
+ <validateProfileId value="patient-profile"/>
226
+ <warningOnly value="true"/>
227
+ </assert>
228
+ </action>
229
+ <action>
230
+ <assert>
231
+ <description value="Confirm that read returns updated version and that update did not delete previously created fields."/>
232
+ <minimumId value="patient-update-bonus1-PeterChalmers-min"/>
233
+ <sourceId value="read-update-bonus1-response"/>
234
+ </assert>
235
+ </action>
236
+ <action>
237
+ <assert>
238
+ <description value="Confirm that version of resource is 2 after the update. Warning only as the server may have re-established this resource id from a previous deletion."/>
239
+ <path value="Patient/meta/versionId"/>
240
+ <sourceId value="read-update-bonus1-response"/>
241
+ <value value="2"/>
242
+ <warningOnly value="true"/>
243
+ </assert>
244
+ </action>
245
+ </test>
246
+
247
+ <test id="Step2b-Bonus2-UpdatePatient">
248
+ <name value="Step2b-Bonus2-UpdatePatient"/>
249
+ <description value="Update the patient's birth datetime as an extension."/>
250
+
251
+ <action>
252
+ <operation>
253
+ <type>
254
+ <code value="update"/>
255
+ </type>
256
+ <resource value="Patient"/>
257
+ <accept value="xml"/>
258
+ <contentType value="xml"/>
259
+ <params value="/${createIdentifier}"/>
260
+ <responseId value="update-bonus2-response" />
261
+ <sourceId value="patient-update-bonus2-PeterChalmers"/>
262
+ </operation>
263
+ </action>
264
+ <action>
265
+ <assert>
266
+ <operator value="in"/>
267
+ <responseCode value="200,201"/>
268
+ </assert>
269
+ </action>
270
+ <action>
271
+ <assert>
272
+ <headerField value="Location"/>
273
+ <operator value="notEmpty"/>
274
+ <warningOnly value="true"/>
275
+ </assert>
276
+ </action>
277
+
278
+ <action>
279
+ <operation>
280
+ <type>
281
+ <code value="read"/>
282
+ </type>
283
+ <resource value="Patient"/>
284
+ <accept value="xml"/>
285
+ <contentType value="xml"/>
286
+ <params value="/${createIdentifier}"/>
287
+ <responseId value="read-update-bonus2-response"/>
288
+ </operation>
289
+ </action>
290
+ <action>
291
+ <assert>
292
+ <validateProfileId value="patient-profile"/>
293
+ <warningOnly value="true"/>
294
+ </assert>
295
+ </action>
296
+ <action>
297
+ <assert>
298
+ <description value="Confirm that read returns updated version and that update did not delete previously created fields."/>
299
+ <minimumId value="patient-update-bonus2-PeterChalmers-min"/>
300
+ <sourceId value="read-update-bonus2-response"/>
301
+ </assert>
302
+ </action>
303
+ <action>
304
+ <assert>
305
+ <description value="Confirm that version of resource is 3 after the update. Warning only as the server may have re-established this resource id from a previous deletion."/>
306
+ <path value="Patient/meta/versionId"/>
307
+ <sourceId value="read-update-bonus2-response"/>
308
+ <value value="3"/>
309
+ <warningOnly value="true"/>
310
+ </assert>
311
+ </action>
312
+ </test>
313
+
314
+ <test id="Step3-PatientHistory">
315
+ <name value="Step3-PatientHistory"/>
316
+ <description value="Retrieve the patient's history."/>
317
+
318
+ <action>
319
+ <operation>
320
+ <resource value="Patient"/>
321
+ <description value="Retrieve the history for a single, known patient using the known identifier."/>
322
+ <accept value="xml"/>
323
+ <contentType value="xml"/>
324
+ <params value="/${createIdentifier}/_history"/>
325
+ </operation>
326
+ </action>
327
+ <action>
328
+ <assert>
329
+ <response value="okay"/>
330
+ </assert>
331
+ </action>
332
+ <action>
333
+ <assert>
334
+ <contentType value="xml"/>
335
+ </assert>
336
+ </action>
337
+ <action>
338
+ <assert>
339
+ <resource value="Bundle"/>
340
+ </assert>
341
+ </action>
342
+ <action>
343
+ <assert>
344
+ <description value="Confirm that there are more than two records returned."/>
345
+ <operator value="greaterThan"/>
346
+ <path value="/Bundle/total"/>
347
+ <value value="2"/>
348
+ <warningOnly value="true"/>
349
+ </assert>
350
+ </action>
351
+ <action>
352
+ <assert>
353
+ <description value="Confirm that bundle contains the bonus 2 updated version of the patient."/>
354
+ <minimumId value="patient-update-bonus2-PeterChalmers-min"/>
355
+ <warningOnly value="true"/>
356
+ </assert>
357
+ </action>
358
+ </test>
359
+
360
+ <test id="Step4-PatientSearch">
361
+ <name value="Step4-PatientSearch"/>
362
+ <description value="Search for a patient with the name 'James Chalmers'."/>
363
+
364
+ <action>
365
+ <operation>
366
+ <type>
367
+ <code value="search"/>
368
+ </type>
369
+ <resource value="Patient"/>
370
+ <description value="Search for the patient James Chalmers."/>
371
+ <accept value="xml"/>
372
+ <contentType value="xml"/>
373
+ <params value="?given=${searchGivenName}&amp;family=${searchFamilyName}"/>
374
+ </operation>
375
+ </action>
376
+ <action>
377
+ <assert>
378
+ <response value="okay"/>
379
+ </assert>
380
+ </action>
381
+ <action>
382
+ <assert>
383
+ <contentType value="xml"/>
384
+ </assert>
385
+ </action>
386
+ <action>
387
+ <assert>
388
+ <resource value="Bundle"/>
389
+ </assert>
390
+ </action>
391
+ <action>
392
+ <assert>
393
+ <description value="Confirm that there is at least one record returned. There could be other patient records returned."/>
394
+ <operator value="greaterThan"/>
395
+ <path value="/Bundle/total"/>
396
+ <value value="0"/>
397
+ <warningOnly value="true"/>
398
+ </assert>
399
+ </action>
400
+ <action>
401
+ <assert>
402
+ <description value="Confirm that bundle contains the most recent updated version of the patient."/>
403
+ <minimumId value="patient-update-bonus2-PeterChalmers-min"/>
404
+ <warningOnly value="true"/>
405
+ </assert>
406
+ </action>
407
+ </test>
408
+
409
+ <teardown>
410
+ <action>
411
+ <operation>
412
+ <type>
413
+ <code value="delete"/>
414
+ </type>
415
+ <resource value="Patient"/>
416
+ <params value="/${createIdentifier}"/>
417
+ </operation>
418
+ </action>
419
+ </teardown>
420
+ </TestScript>
@@ -0,0 +1,68 @@
1
+ <html>
2
+ <head>
3
+ <title>FHIR Connectathon 11 Testing - Track 1 - Patient</title>
4
+ </head>
5
+ <body style="font-family:arial">
6
+ <h1>FHIR Connectathon 11 Testing - Track 1 - Patient</h1>
7
+ <h2>FHIR DSTU2 TestScript - Execution Details</h2>
8
+ <h3>Conventions Used</h3>
9
+ <p>
10
+ The execution of the TestScript resources contained in this folder are constrained by the following
11
+ conventions:
12
+ </p>
13
+ <ul>
14
+ <li>
15
+ <b>Fixtures</b> - All resource reference values can be either url paths or local local file system
16
+ paths. The convention for these TestScript resources use local file system paths where the
17
+ execution engine is expected to resolve this path based on the following:
18
+ <ul>
19
+ <li>
20
+ Leading '/' character - this is resolved as an absolute path based on a known root path
21
+ </li>
22
+ <li>
23
+ No leading '/' character - this is resolved as a relative path based on the location of the
24
+ TestScript resource file
25
+ </li>
26
+ </ul>
27
+ </li>
28
+ </ul>
29
+
30
+ <hr width="100%"></hr>
31
+
32
+ <h2>FHIR Connectathon 11 Testing - Orlando, FL - January 2016</h2>
33
+ <h3>Track 1 - Patient</h3>
34
+ <p>
35
+ The TestScript resources in this folder represent all of the possible variations** within the tests; i.e.
36
+ JSON vs. XML content, client vs. server resource id assignment, and bonus vs. no bonus features.
37
+ </p>
38
+ <p>
39
+ Based on these testing variations, the following TestScript definitions are available - one for each
40
+ variation:
41
+ </p>
42
+ <h4>FHIR Resource ID Assigned by the Client</h4>
43
+ <table border="1" cellpadding="3" cellspacing="1">
44
+ <tr style="background-color:lightgray"><td><b>TestScript Name</b></td><td><b>Description</b></td></tr>
45
+ <tr><td>track1-patient-base-client-id-json</td><td>JSON Format - Baseline tests to create, update, retrieve history and search a patient, no extensions with client assigned resource id.</td></tr>
46
+ <tr><td>track1-patient-base-client-id-xml</td><td>XML Format - Baseline tests to create, update, retrieve history and search a patient, no extensions with client assigned resource id.</td></tr>
47
+ <tr><td>track1-patient-bonus-client-id-json</td><td>JSON Format - Baseline (Bonus) tests to create, update, retrieve history and search a patient, with extensions and client assigned resource id.</td></tr>
48
+ <tr><td>track1-patient-bonus-client-id-xml</td><td>XML Format - Baseline (Bonus) tests to create, update, retrieve history and search a patient, with extensions and client assigned resource id.</td></tr>
49
+ </table>
50
+ <h4>FHIR Resource ID Assigned by the Server</h4>
51
+ <table border="1" cellpadding="3" cellspacing="1">
52
+ <tr style="background-color:lightgray"><td><b>TestScript Name</b></td><td><b>Description</b></td></tr>
53
+ <tr><td>track1-patient-base-server-id-json</td><td>JSON Format - Baseline tests to create, update, retrieve history and search a patient, no extensions with server assigned resource id.</td></tr>
54
+ <tr><td>track1-patient-base-server-id-xml</td><td>XML Format - Baseline tests to create, update, retrieve history and search a patient, no extensions with server assigned resource id.</td></tr>
55
+ <tr><td>track1-patient-bonus-server-id-json</td><td>JSON Format - Baseline (Bonus) tests to create, update, retrieve history and search a patient, with extensions and server assigned resource id.</td></tr>
56
+ <tr><td>track1-patient-bonus-server-id-xml</td><td>XML Format - Baseline (Bonus) tests to create, update, retrieve history and search a patient, with extensions and server assigned resource id.</td></tr>
57
+ </table>
58
+ <p>
59
+ <b>**</b> <i>This representation of the Track 1 - Patient tests is not meant to be diffinitive and complete. This is
60
+ one example of how these tests can be defined in the current DSTU-2 format of the TestScript resource.
61
+ Constructive feedback, suggestions and critisms are welcome.</i>
62
+ </p>
63
+ <p>
64
+ Richard Ettema, AEGIS.net</br>
65
+ <a href="mailto:richard.ettema@aegis.net">richard.ettema@aegis.net</a>
66
+ </p>
67
+ </body>
68
+ </html>