davinci_dtr_test_kit 0.14.1 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/config/presets/full_ehr_postman_dinner_order_example_postman.json +19 -0
- data/config/presets/full_ehr_postman_respiratory_device_example.json +15 -0
- data/config/presets/light_ehr_ref_server_local.json +105 -0
- data/config/presets/light_ehr_ref_server_prod.json +85 -0
- data/config/presets/payer_server_adaptive_client_flow.json +37 -0
- data/config/presets/payer_server_adaptive_manual_flow.json +44 -0
- data/config/presets/payer_server_run_against_smart_app_tests.json +35 -0
- data/config/presets/smart_app_postman_dinner_order_example.json +44 -0
- data/config/presets/smart_app_postman_respiratory_device_example.json +43 -0
- data/lib/davinci_dtr_test_kit/auth_groups/token_validation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/custom_static/dtr_custom_questionnaire_expressions_test.rb +22 -0
- data/lib/davinci_dtr_test_kit/client_groups/custom_static/dtr_custom_questionnaire_extensions_test.rb +19 -0
- data/lib/davinci_dtr_test_kit/client_groups/custom_static/dtr_custom_questionnaire_libraries_test.rb +21 -0
- data/lib/davinci_dtr_test_kit/client_groups/custom_static/dtr_custom_questionnaire_package_validation_test.rb +39 -0
- data/lib/davinci_dtr_test_kit/client_groups/custom_static/dtr_full_ehr_custom_static_workflow_group.rb +121 -0
- data/lib/davinci_dtr_test_kit/client_groups/custom_static/dtr_smart_app_custom_static_workflow_group.rb +91 -0
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_adaptive_questionnaire_completion_group.rb → dtr_adaptive_completion_group.rb} +4 -4
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_adaptive_questionnaire_followup_questions_group.rb → dtr_adaptive_followup_questions_group.rb} +4 -4
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_adaptive_questionnaire_next_question_request_test.rb → dtr_adaptive_next_question_request_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_adaptive_questionnaire_next_question_request_validation_test.rb → dtr_adaptive_next_question_request_validation_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_adaptive_questionnaire_next_question_retrieval_group.rb → dtr_adaptive_next_question_retrieval_group.rb} +8 -8
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_adaptive_questionnaire_response_validation_test.rb → dtr_adaptive_response_validation_test.rb} +3 -3
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_full_ehr_adaptive_dinner_questionnaire_workflow_group.rb → dtr_full_ehr_adaptive_dinner_workflow_group.rb} +12 -12
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_full_ehr_adaptive_questionnaire_initial_retrieval_group.rb → dtr_full_ehr_adaptive_initial_retrieval_group.rb} +10 -10
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_full_ehr_adaptive_questionnaire_request_test.rb → dtr_full_ehr_adaptive_request_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_smart_app_questionnaire_workflow_group.rb → dtr_smart_app_adaptive_dinner_workflow_group.rb} +24 -18
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/dtr_smart_app_adaptive_initial_retrieval_group.rb +24 -0
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/{dtr_smart_app_adaptive_questionnaire_request_test.rb → dtr_smart_app_adaptive_request_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/dinner_static/{dtr_full_ehr_questionnaire_workflow_group.rb → dtr_full_ehr_static_dinner_workflow_group.rb} +13 -13
- data/lib/davinci_dtr_test_kit/client_groups/dinner_static/{dtr_smart_app_questionnaire_workflow_group.rb → dtr_smart_app_static_dinner_workflow_group.rb} +18 -13
- data/lib/davinci_dtr_test_kit/client_groups/{full_ehr/dtr_full_ehr_rendering_enabled_questions_attestation_test.rb → dinner_static/dtr_static_dinner_enabled_questions_attestation_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_launch_attestation_test.rb +8 -3
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_prepopulation_attestation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_prepopulation_override_attestation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_questionnaire_package_request_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_questionnaire_response_conformance_test.rb +6 -1
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_questionnaire_response_correctness_test.rb +10 -22
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_saving_questionnaire_response_group.rb +4 -4
- data/lib/davinci_dtr_test_kit/client_groups/full_ehr/dtr_full_ehr_store_attestation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/light_ehr/dtr_smart_ehr_launch.rb +18 -0
- data/lib/davinci_dtr_test_kit/client_groups/light_ehr/fhir_context_coverage_test.rb +42 -0
- data/lib/davinci_dtr_test_kit/client_groups/light_ehr/fhir_context_references_test.rb +60 -0
- data/lib/davinci_dtr_test_kit/client_groups/light_ehr/fhir_launch_context_test.rb +23 -0
- data/lib/davinci_dtr_test_kit/client_groups/{resp_assist_device/dtr_questionnaire_package_group.rb → respiratory/dtr_respiratory_questionnaire_package_group.rb} +5 -5
- data/lib/davinci_dtr_test_kit/client_groups/{resp_assist_device/dtr_resp_questionnaire_package_request_test.rb → respiratory/dtr_respiratory_questionnaire_package_request_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/{resp_assist_device/dtr_questionnaire_response_group.rb → respiratory/dtr_respiratory_questionnaire_response_group.rb} +7 -7
- data/lib/davinci_dtr_test_kit/client_groups/{resp_assist_device/dtr_questionnaire_response_save_test.rb → respiratory/dtr_respiratory_questionnaire_response_save_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/{resp_assist_device/dtr_questionnaire_rendering_attestation_test.rb → respiratory/dtr_respiratory_rendering_attestation_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/respiratory/dtr_respiratory_rendering_group.rb +14 -0
- data/lib/davinci_dtr_test_kit/client_groups/{resp_assist_device/dtr_smart_app_questionnaire_workflow_group.rb → respiratory/dtr_smart_app_respiratory_workflow_group.rb} +8 -8
- data/lib/davinci_dtr_test_kit/client_groups/shared/dtr_prepopulation_attestation_test.rb +31 -0
- data/lib/davinci_dtr_test_kit/client_groups/shared/dtr_prepopulation_override_attestation_test.rb +35 -0
- data/lib/davinci_dtr_test_kit/client_groups/shared/dtr_questionnaire_package_request_validation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/shared/dtr_questionnaire_response_basic_conformance_test.rb +8 -4
- data/lib/davinci_dtr_test_kit/client_groups/shared/{dtr_questionnaire_response_pre_population_test.rb → dtr_questionnaire_response_prepopulation_test.rb} +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/shared/dtr_rendering_attestation_test.rb +30 -0
- data/lib/davinci_dtr_test_kit/client_groups/smart_app/dtr_smart_app_prepopulation_attestation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/smart_app/dtr_smart_app_prepopulation_override_attestation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/client_groups/{dinner_static/dtr_smart_app_dinner_questionnaire_package_request_test.rb → smart_app/dtr_smart_app_questionnaire_package_request_test.rb} +6 -6
- data/lib/davinci_dtr_test_kit/client_groups/smart_app/dtr_smart_app_questionnaire_response_correctness_test.rb +28 -0
- data/lib/davinci_dtr_test_kit/client_groups/smart_app/dtr_smart_app_questionnaire_response_save_test.rb +2 -2
- data/lib/davinci_dtr_test_kit/client_groups/smart_app/dtr_smart_app_saving_questionnaire_response_group.rb +3 -7
- data/lib/davinci_dtr_test_kit/cql_test.rb +58 -0
- data/lib/davinci_dtr_test_kit/docs/dtr_light_ehr_suite_description_v201.md +9 -6
- data/lib/davinci_dtr_test_kit/dtr_full_ehr_suite.rb +19 -6
- data/lib/davinci_dtr_test_kit/dtr_light_ehr_suite.rb +42 -36
- data/lib/davinci_dtr_test_kit/dtr_payer_server_suite.rb +0 -2
- data/lib/davinci_dtr_test_kit/dtr_questionnaire_response_validation.rb +50 -4
- data/lib/davinci_dtr_test_kit/dtr_smart_app_suite.rb +9 -9
- data/lib/davinci_dtr_test_kit/endpoints/mock_authorization.rb +10 -2
- data/lib/davinci_dtr_test_kit/endpoints/mock_ehr.rb +17 -1
- data/lib/davinci_dtr_test_kit/endpoints/mock_payer/questionnaire_package_endpoint.rb +7 -1
- data/lib/davinci_dtr_test_kit/fixtures.rb +6 -6
- data/lib/davinci_dtr_test_kit/igs/davinci_dtr_2.0.1.tgz +0 -0
- data/lib/davinci_dtr_test_kit/metadata.rb +104 -0
- data/lib/davinci_dtr_test_kit/payer_server_groups/adaptive_form_libraries_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/adaptive_form_questionnaire_expressions_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/adaptive_form_questionnaire_extensions_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/payer_server_adaptive_response_bundles_validation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/payer_server_adaptive_response_search_validation_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/payer_server_adaptive_response_validation_test.rb +4 -15
- data/lib/davinci_dtr_test_kit/payer_server_groups/payer_server_static_group.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/static_form_libraries_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/static_form_questionnaire_expressions_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/static_form_questionnaire_extensions_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/static_form_request_test.rb +1 -1
- data/lib/davinci_dtr_test_kit/payer_server_groups/static_form_response_validation_test.rb +4 -15
- data/lib/davinci_dtr_test_kit/profiles/communication_request/communication_request_must_support_test.rb +46 -0
- data/lib/davinci_dtr_test_kit/profiles/communication_request/communication_request_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/communication_request/communication_request_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/communication_request/metadata.yml +135 -0
- data/lib/davinci_dtr_test_kit/profiles/communication_request_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/profiles/coverage/coverage_must_support_test.rb +54 -0
- data/lib/davinci_dtr_test_kit/profiles/coverage/coverage_read.rb +5 -3
- data/lib/davinci_dtr_test_kit/profiles/coverage/coverage_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/coverage/metadata.yml +133 -0
- data/lib/davinci_dtr_test_kit/profiles/coverage_group.rb +8 -0
- data/lib/davinci_dtr_test_kit/profiles/device_request/device_request_must_support_test.rb +45 -0
- data/lib/davinci_dtr_test_kit/profiles/device_request/device_request_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/device_request/device_request_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/device_request/metadata.yml +130 -0
- data/lib/davinci_dtr_test_kit/profiles/device_request_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/profiles/encounter/encounter_must_support_test.rb +58 -0
- data/lib/davinci_dtr_test_kit/profiles/encounter/encounter_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/encounter/encounter_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/encounter/metadata.yml +169 -0
- data/lib/davinci_dtr_test_kit/profiles/encounter_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/profiles/medication_request/medication_request_must_support_test.rb +50 -0
- data/lib/davinci_dtr_test_kit/profiles/medication_request/medication_request_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/medication_request/medication_request_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/medication_request/metadata.yml +159 -0
- data/lib/davinci_dtr_test_kit/profiles/medication_request_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/profiles/nutrition_order/metadata.yml +94 -0
- data/lib/davinci_dtr_test_kit/profiles/nutrition_order/nutrition_order_must_support_test.rb +45 -0
- data/lib/davinci_dtr_test_kit/profiles/nutrition_order/nutrition_order_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/nutrition_order/nutrition_order_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/nutrition_order_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/metadata.yml +166 -0
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_context_search.rb +3 -1
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_create.rb +1 -0
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_must_support_test.rb +54 -0
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_patient_search.rb +3 -1
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_read.rb +2 -1
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_update.rb +1 -0
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response/questionnaire_response_validation.rb +1 -1
- data/lib/davinci_dtr_test_kit/profiles/questionnaire_response_group.rb +11 -1
- data/lib/davinci_dtr_test_kit/profiles/service_request/metadata.yml +140 -0
- data/lib/davinci_dtr_test_kit/profiles/service_request/service_request_must_support_test.rb +47 -0
- data/lib/davinci_dtr_test_kit/profiles/service_request/service_request_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/service_request/service_request_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/service_request_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/profiles/task/metadata.yml +165 -0
- data/lib/davinci_dtr_test_kit/profiles/task/task_create.rb +1 -0
- data/lib/davinci_dtr_test_kit/profiles/task/task_must_support_test.rb +46 -0
- data/lib/davinci_dtr_test_kit/profiles/task/task_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/task/task_update.rb +1 -0
- data/lib/davinci_dtr_test_kit/profiles/task/task_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/task_group.rb +11 -1
- data/lib/davinci_dtr_test_kit/profiles/vision_prescription/metadata.yml +107 -0
- data/lib/davinci_dtr_test_kit/profiles/vision_prescription/vision_prescription_must_support_test.rb +54 -0
- data/lib/davinci_dtr_test_kit/profiles/vision_prescription/vision_prescription_read.rb +6 -3
- data/lib/davinci_dtr_test_kit/profiles/vision_prescription/vision_prescription_validation.rb +9 -8
- data/lib/davinci_dtr_test_kit/profiles/vision_prescription_group.rb +9 -0
- data/lib/davinci_dtr_test_kit/read_test.rb +5 -0
- data/lib/davinci_dtr_test_kit/requirements/davinci-dtr-test-kit_out_of_scope_requirements.csv +13 -0
- data/lib/davinci_dtr_test_kit/requirements/davinci-dtr-test-kit_requirements.csv +374 -0
- data/lib/davinci_dtr_test_kit/requirements/generated/davinci-dtr-test-kit_requirements_coverage.csv +372 -0
- data/lib/davinci_dtr_test_kit/urls.rb +1 -0
- data/lib/davinci_dtr_test_kit/version.rb +2 -1
- data/lib/davinci_dtr_test_kit.rb +2 -0
- data/lib/inferno_requirements_tools/ext/inferno_core/runnable.rb +22 -0
- data/lib/inferno_requirements_tools/rake/rakefile_template +31 -0
- data/lib/inferno_requirements_tools/tasks/requirements_coverage.rb +284 -0
- data/lib/requirements_config.yaml +25 -0
- metadata +89 -37
- data/lib/davinci_dtr_test_kit/client_groups/dinner_adaptive/dtr_smart_app_adaptive_questionnaire_initial_retrieval_group.rb +0 -24
- data/lib/davinci_dtr_test_kit/client_groups/resp_assist_device/dtr_questionnaire_rendering_group.rb +0 -14
- data/lib/davinci_dtr_test_kit/client_groups/smart_app/dtr_smart_app_rendering_enabled_questions_attestation_test.rb +0 -30
@@ -0,0 +1,107 @@
|
|
1
|
+
---
|
2
|
+
:name: profile_visionprescription
|
3
|
+
:class_name: ProfileVisionprescriptionSequence
|
4
|
+
:version: v3.1.1
|
5
|
+
:reformatted_version: v311
|
6
|
+
:resource: VisionPrescription
|
7
|
+
:profile_url: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-visionprescription
|
8
|
+
:profile_name: CRD Vision Prescription
|
9
|
+
:profile_version: 2.0.1
|
10
|
+
:title: CRD Vision Prescription
|
11
|
+
:short_description: Verify support for the server capabilities required by the CRD
|
12
|
+
Vision Prescription.
|
13
|
+
:is_delayed: true
|
14
|
+
:interactions:
|
15
|
+
- :code: read
|
16
|
+
:expectation: SHOULD
|
17
|
+
:operations: []
|
18
|
+
:searches: []
|
19
|
+
:search_definitions: {}
|
20
|
+
:include_params: []
|
21
|
+
:revincludes: []
|
22
|
+
:required_concepts: []
|
23
|
+
:must_supports:
|
24
|
+
:extensions:
|
25
|
+
- :id: VisionPrescription.extension:Coverage-Information
|
26
|
+
:path: extension
|
27
|
+
:url: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
|
28
|
+
:slices: []
|
29
|
+
:elements:
|
30
|
+
- :path: identifier
|
31
|
+
- :path: status
|
32
|
+
:fixed_value: draft
|
33
|
+
- :path: created
|
34
|
+
- :path: patient
|
35
|
+
:types:
|
36
|
+
- Reference
|
37
|
+
:target_profiles:
|
38
|
+
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-patient
|
39
|
+
- :path: encounter
|
40
|
+
:types:
|
41
|
+
- Reference
|
42
|
+
:target_profiles:
|
43
|
+
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter
|
44
|
+
- :path: dateWritten
|
45
|
+
- :path: prescriber
|
46
|
+
:types:
|
47
|
+
- Reference
|
48
|
+
- :path: lensSpecification
|
49
|
+
- :path: lensSpecification.product
|
50
|
+
- :path: lensSpecification.eye
|
51
|
+
- :path: lensSpecification.sphere
|
52
|
+
- :path: lensSpecification.cylinder
|
53
|
+
- :path: lensSpecification.axis
|
54
|
+
- :path: lensSpecification.prism
|
55
|
+
- :path: lensSpecification.prism.amount
|
56
|
+
- :path: lensSpecification.prism.base
|
57
|
+
- :path: lensSpecification.add
|
58
|
+
- :path: lensSpecification.power
|
59
|
+
- :path: lensSpecification.backCurve
|
60
|
+
- :path: lensSpecification.diameter
|
61
|
+
- :path: lensSpecification.duration
|
62
|
+
:mandatory_elements:
|
63
|
+
- VisionPrescription.status
|
64
|
+
- VisionPrescription.created
|
65
|
+
- VisionPrescription.patient
|
66
|
+
- VisionPrescription.dateWritten
|
67
|
+
- VisionPrescription.prescriber
|
68
|
+
- VisionPrescription.lensSpecification
|
69
|
+
- VisionPrescription.lensSpecification.product
|
70
|
+
- VisionPrescription.lensSpecification.eye
|
71
|
+
- VisionPrescription.lensSpecification.prism.amount
|
72
|
+
- VisionPrescription.lensSpecification.prism.base
|
73
|
+
:bindings:
|
74
|
+
- :type: code
|
75
|
+
:strength: required
|
76
|
+
:system: http://hl7.org/fhir/ValueSet/vision-eye-codes
|
77
|
+
:path: lensSpecification.eye
|
78
|
+
- :type: code
|
79
|
+
:strength: required
|
80
|
+
:system: http://hl7.org/fhir/ValueSet/vision-base-codes
|
81
|
+
:path: lensSpecification.prism.base
|
82
|
+
:references:
|
83
|
+
- :path: VisionPrescription.patient
|
84
|
+
:profiles:
|
85
|
+
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-patient
|
86
|
+
- :path: VisionPrescription.encounter
|
87
|
+
:profiles:
|
88
|
+
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter
|
89
|
+
- :path: VisionPrescription.prescriber
|
90
|
+
:profiles:
|
91
|
+
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-practitioner
|
92
|
+
- http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitionerrole
|
93
|
+
:tests:
|
94
|
+
- :id: us_core_v311_vision_prescription_read_test
|
95
|
+
:file_name: vision_prescription_read_test.rb
|
96
|
+
- :id: us_core_v311_vision_prescription_validation_test
|
97
|
+
:file_name: vision_prescription_validation_test.rb
|
98
|
+
- :id: us_core_v311_vision_prescription_must_support_test
|
99
|
+
:file_name: vision_prescription_must_support_test.rb
|
100
|
+
- :id: us_core_v311_vision_prescription_reference_resolution_test
|
101
|
+
:file_name: vision_prescription_reference_resolution_test.rb
|
102
|
+
:id: us_core_v311_vision_prescription
|
103
|
+
:file_name: vision_prescription_group.rb
|
104
|
+
:delayed_references:
|
105
|
+
- :path: prescriber
|
106
|
+
:resources:
|
107
|
+
- PractitionerRole
|
data/lib/davinci_dtr_test_kit/profiles/vision_prescription/vision_prescription_must_support_test.rb
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
module DaVinciDTRTestKit
|
2
|
+
class VisionPrescriptionMustSupportTest < Inferno::Test
|
3
|
+
include USCoreTestKit::MustSupportTest
|
4
|
+
|
5
|
+
title 'All must support elements are provided in the VisionPrescription resources returned'
|
6
|
+
description %(
|
7
|
+
This test will look through the VisionPrescription resources
|
8
|
+
found previously for the following must support elements:\n
|
9
|
+
|
10
|
+
* VisionPrescription.created
|
11
|
+
* VisionPrescription.dateWritten
|
12
|
+
* VisionPrescription.encounter
|
13
|
+
* VisionPrescription.extension:Coverage-Information
|
14
|
+
* VisionPrescription.identifier
|
15
|
+
* VisionPrescription.lensSpecification
|
16
|
+
* VisionPrescription.lensSpecification.add
|
17
|
+
* VisionPrescription.lensSpecification.axis
|
18
|
+
* VisionPrescription.lensSpecification.backCurve
|
19
|
+
* VisionPrescription.lensSpecification.cylinder
|
20
|
+
* VisionPrescription.lensSpecification.diameter
|
21
|
+
* VisionPrescription.lensSpecification.duration
|
22
|
+
* VisionPrescription.lensSpecification.eye
|
23
|
+
* VisionPrescription.lensSpecification.power
|
24
|
+
* VisionPrescription.lensSpecification.prism
|
25
|
+
* VisionPrescription.lensSpecification.prism.amount
|
26
|
+
* VisionPrescription.lensSpecification.prism.base
|
27
|
+
* VisionPrescription.lensSpecification.product
|
28
|
+
* VisionPrescription.lensSpecification.sphere
|
29
|
+
* VisionPrescription.patient
|
30
|
+
* VisionPrescription.prescriber
|
31
|
+
* VisionPrescription.status
|
32
|
+
)
|
33
|
+
verifies_requirements 'hl7.fhir.us.davinci-dtr_2.0.1@355'
|
34
|
+
id :vision_prescription_must_support_test
|
35
|
+
|
36
|
+
def resource_type
|
37
|
+
'VisionPrescription'
|
38
|
+
end
|
39
|
+
|
40
|
+
def self.metadata
|
41
|
+
@metadata ||= USCoreTestKit::Generator::GroupMetadata.new(YAML.load_file(File.join(__dir__, 'metadata.yml'),
|
42
|
+
aliases: true))
|
43
|
+
end
|
44
|
+
|
45
|
+
def scratch_resources
|
46
|
+
scratch[:vision_prescriptions] ||= {}
|
47
|
+
end
|
48
|
+
|
49
|
+
run do
|
50
|
+
skip_if(vision_prescription_ids.nil?, "No `#{resource_type}` IDs provided, skipping test.")
|
51
|
+
perform_must_support_test(all_scratch_resources)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -6,6 +6,7 @@ module DaVinciDTRTestKit
|
|
6
6
|
|
7
7
|
title 'Server returns correct VisionPrescription resource from VisionPrescription read interaction'
|
8
8
|
description 'A server SHOULD support the VisionPrescription read interaction.'
|
9
|
+
verifies_requirements 'hl7.fhir.us.davinci-dtr_2.0.1@277'
|
9
10
|
|
10
11
|
id :vision_prescription_read
|
11
12
|
output :vision_prescription_resources
|
@@ -14,6 +15,10 @@ module DaVinciDTRTestKit
|
|
14
15
|
'VisionPrescription'
|
15
16
|
end
|
16
17
|
|
18
|
+
def scratch_resources
|
19
|
+
scratch[:vision_prescriptions] ||= {}
|
20
|
+
end
|
21
|
+
|
17
22
|
def vision_prescription_id_list
|
18
23
|
return [nil] unless respond_to? :vision_prescription_ids
|
19
24
|
|
@@ -21,9 +26,7 @@ module DaVinciDTRTestKit
|
|
21
26
|
end
|
22
27
|
|
23
28
|
run do
|
24
|
-
|
25
|
-
|
26
|
-
output vision_prescription_resources: resources.to_json
|
29
|
+
perform_read_test(vision_prescription_id_list, resource_type)
|
27
30
|
end
|
28
31
|
end
|
29
32
|
end
|
data/lib/davinci_dtr_test_kit/profiles/vision_prescription/vision_prescription_validation.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
require_relative '../../validation_test'
|
2
|
-
|
3
1
|
module DaVinciDTRTestKit
|
4
2
|
class VisionPrescriptionValidationTest < Inferno::Test
|
5
|
-
include
|
3
|
+
include USCoreTestKit::ValidationTest
|
6
4
|
|
7
5
|
title 'VisionPrescription resources returned during previous tests conform to the CRD VisionPrescription'
|
8
6
|
description %(
|
@@ -19,17 +17,20 @@ fail if their code/system are not found in the valueset.
|
|
19
17
|
)
|
20
18
|
|
21
19
|
id :vision_prescription_validation
|
22
|
-
input :vision_prescription_resources,
|
23
|
-
optional: true
|
24
20
|
|
25
21
|
def resource_type
|
26
22
|
'VisionPrescription'
|
27
23
|
end
|
28
24
|
|
25
|
+
def scratch_resources
|
26
|
+
scratch[:vision_prescriptions] ||= {}
|
27
|
+
end
|
28
|
+
|
29
29
|
run do
|
30
|
-
|
31
|
-
|
32
|
-
|
30
|
+
perform_validation_test(scratch_resources[:all] || [],
|
31
|
+
'http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-visionprescription',
|
32
|
+
'2.0.1',
|
33
|
+
skip_if_empty: true)
|
33
34
|
end
|
34
35
|
end
|
35
36
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require_relative 'vision_prescription/vision_prescription_read'
|
2
2
|
require_relative 'vision_prescription/vision_prescription_validation'
|
3
|
+
require_relative 'vision_prescription/vision_prescription_must_support_test'
|
3
4
|
|
4
5
|
module DaVinciDTRTestKit
|
5
6
|
class VisionPrescriptionGroup < Inferno::TestGroup
|
@@ -23,6 +24,13 @@ module DaVinciDTRTestKit
|
|
23
24
|
the [CRD VisionPrescription Profile](https://hl7.org/fhir/us/davinci-crd/STU2/StructureDefinition-profile-visionprescription.html).
|
24
25
|
Each element is checked against terminology binding and cardinality requirements.
|
25
26
|
|
27
|
+
## Must Support
|
28
|
+
Each profile contains elements marked as "must support". This test
|
29
|
+
sequence expects to see each of these elements at least once. If at
|
30
|
+
least one cannot be found, the test will fail. The test will look
|
31
|
+
through the VisionPrescription resources found in the first test for these
|
32
|
+
elements.
|
33
|
+
|
26
34
|
)
|
27
35
|
id :vision_prescription_group
|
28
36
|
optional
|
@@ -35,5 +43,6 @@ module DaVinciDTRTestKit
|
|
35
43
|
|
36
44
|
test from: :vision_prescription_read
|
37
45
|
test from: :vision_prescription_validation
|
46
|
+
test from: :vision_prescription_must_support_test
|
38
47
|
end
|
39
48
|
end
|
@@ -1,5 +1,9 @@
|
|
1
1
|
module DaVinciDTRTestKit
|
2
2
|
module ReadTest
|
3
|
+
def all_scratch_resources
|
4
|
+
scratch_resources[:all] ||= []
|
5
|
+
end
|
6
|
+
|
3
7
|
def perform_read_test(resource_ids, resource_type)
|
4
8
|
skip_if(resource_ids.nil?, "No `#{resource_type}` IDs provided, skipping test.")
|
5
9
|
resources = []
|
@@ -12,6 +16,7 @@ module DaVinciDTRTestKit
|
|
12
16
|
|
13
17
|
resources.push(resource)
|
14
18
|
end
|
19
|
+
all_scratch_resources.concat(resources)
|
15
20
|
resources
|
16
21
|
end
|
17
22
|
|
@@ -0,0 +1,13 @@
|
|
1
|
+
Req Set,ID,Reason,Details
|
2
|
+
hl7.fhir.us.davinci-dtr_2.0.1,10,Not Tested,"QuestionnaireResponse.source is not must support or required, so these systems are not required to support it."
|
3
|
+
hl7.fhir.us.davinci-dtr_2.0.1,129,Not Tested,Cdex workflows out of initial scope
|
4
|
+
hl7.fhir.us.davinci-dtr_2.0.1,231,Not Tested,check as a part of PAS initially
|
5
|
+
hl7.fhir.us.davinci-dtr_2.0.1,232,Not Tested,check as a part of PAS initially
|
6
|
+
hl7.fhir.us.davinci-dtr_2.0.1,233,Not Tested,check as a part of PAS initially
|
7
|
+
hl7.fhir.us.davinci-dtr_2.0.1,234,Not Tested,check as a part of PAS initially
|
8
|
+
hl7.fhir.us.davinci-dtr_2.0.1,236,Not Tested,check as a part of PAS initially
|
9
|
+
hl7.fhir.us.davinci-dtr_2.0.1,237,Not Tested,"automatic or manual allowed, no clear impact on downstream functionality"
|
10
|
+
hl7.fhir.us.davinci-dtr_2.0.1,238,Not Tested,"automatic or manual allowed, no clear impact on downstream functionality"
|
11
|
+
hl7.fhir.us.davinci-dtr_2.0.1,328,Not Tested,metrics are optional at this time
|
12
|
+
hl7.fhir.us.davinci-dtr_2.0.1,329,Not Tested,metrics are optional at this time
|
13
|
+
hl7.fhir.us.davinci-dtr_2.0.1,341,Not Verifiable,Too vague.
|