Project Number Date
EtherCIS-VEHR-features 0 13 Feb 2018, 11:31

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
Support for openEHR Archetype Query Language 18 1 0 0 0 19 1 1 2 36s 058ms Failed
Feature Support for openEHR Archetype Query Language
In order to access openEHR based data As A clinical informatics actor I want to use openEHR AQL queries to query clinical data
20s 370ms
The server is ready, an EHR and required templates is in place and the user logged in and created data.
Given The server is running 1s 294ms
And The client system is logged into a server session 024ms
And The templates with following ids are available to the server: 705ms
IDCR - Adverse Reaction List.v1
IDCR - End of Life Patient Preferences.v0
IDCR - Immunisation summary.v0
IDCR - Laboratory Order.v0
IDCR - Laboratory Test Report.v0
IDCR - Medication Statement List.v0
IDCR - Minimal MDT Output Report.v0
IDCR - Problem List.v1
IDCR - Procedures List.v1
IDCR - Relevant contacts.v0
IDCR - Service Request.v0
IDCR - Service tracker.v0
IDCR - Vital Signs Encounter.v1
RIPPLE - Clinical Notes.v1
RIPPLE - Height_Weight.v1
RIPPLE - Personal Notes.v1
Smart Growth Chart Data.v0
And An EHR is created 044ms
And The following compositions exists under the EHR: 18s 302ms
Composition_IDCR_Adverse_Reaction_List.v1.0.json IDCR - Adverse Reaction List.v1
Composition_IDCR_Adverse_Reaction_List.v1.1.json IDCR - Adverse Reaction List.v1
Composition_IDCR_End_of_Life_Patient_Preferences.v0.0.json IDCR - End of Life Patient Preferences.v0
Composition_IDCR_Immunisation_summary.v0.0.json IDCR - Immunisation summary.v0
Composition_IDCR_Immunisation_summary.v0.1.json IDCR - Immunisation summary.v0
Composition_IDCR_Laboratory_Order.v0.0.json IDCR - Laboratory Order.v0
Composition_IDCR_Laboratory_Order.v0.1.json IDCR - Laboratory Order.v0
Composition_IDCR_Laboratory_Order.v0.2.json IDCR - Laboratory Order.v0
Composition_IDCR_Laboratory_Test_Report.v0.0.json IDCR - Laboratory Test Report.v0
Composition_IDCR_Laboratory_Test_Report.v0.1.json IDCR - Laboratory Test Report.v0
Composition_IDCR_Laboratory_Test_Report.v0.2.json IDCR - Laboratory Test Report.v0
Composition_IDCR_Medication_Statement_List.v0.0.json IDCR - Medication Statement List.v0
Composition_IDCR_Medication_Statement_List.v0.1.json IDCR - Medication Statement List.v0
Composition_IDCR_Medication_Statement_List.v0.2.json IDCR - Medication Statement List.v0
Composition_IDCR__Minimal_MDT_Output_Report.v0.0.json IDCR - Minimal MDT Output Report.v0
Composition_IDCR__Minimal_MDT_Output_Report.v0.1.json IDCR - Minimal MDT Output Report.v0
Composition_IDCR_Problem_List.v1.0.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.1.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.2.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.3.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.4.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.5.json IDCR - Problem List.v1
Composition_IDCR_Procedures_List.v1.0.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.1.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.2.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.3.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.4.json IDCR - Procedures List.v1
Composition_IDCR_Relevant_contacts.v0.0.json IDCR - Relevant contacts.v0
Composition_IDCR_Relevant_contacts.v0.1.json IDCR - Relevant contacts.v0
Composition_IDCR_Relevant_contacts.v0.2.json IDCR - Relevant contacts.v0
Composition_IDCR_Service_Request.v0.0.json IDCR - Service Request.v0
Composition_IDCR_Service_Request.v0.1.json IDCR - Service Request.v0
Composition_IDCR_Service_Request.v0.2.json IDCR - Service Request.v0
Composition_IDCR_Service_tracker.v0.0.json IDCR - Service tracker.v0
Composition_IDCR_Service_tracker.v0.1.json IDCR - Service tracker.v0
Composition_IDCR_Service_tracker.v0.2.json IDCR - Service tracker.v0
Composition_IDCR_Service_tracker.v0.3.json IDCR - Service tracker.v0
Composition_IDCR_Vital_Signs_Encounter.v1.0.json IDCR - Vital Signs Encounter.v1
Composition_IDCR_Vital_Signs_Encounter.v1.1.json IDCR - Vital Signs Encounter.v1
Composition_IDCR_Vital_Signs_Encounter.v1.2.json IDCR - Vital Signs Encounter.v1
Composition_RIPPLE_Clinical_Notes.v1.0.json RIPPLE - Clinical Notes.v1
Composition_RIPPLE_Clinical_Notes.v1.1.json RIPPLE - Clinical Notes.v1
Composition_RIPPLE_Clinical_Notes.v1.2.json RIPPLE - Clinical Notes.v1
Composition_RIPPLE_Height_Weight.v1.0.json RIPPLE - Height_Weight.v1
Composition_RIPPLE_Height_Weight.v1.1.json RIPPLE - Height_Weight.v1
Composition_RIPPLE_Height_Weight.v1.2.json RIPPLE - Height_Weight.v1
Composition_RIPPLE_Personal_Notes.v1.0.json RIPPLE - Personal Notes.v1
Composition_RIPPLE_Personal_Notes.v1.1.json RIPPLE - Personal Notes.v1
Composition_RIPPLE_Personal_Notes.v1.2.json RIPPLE - Personal Notes.v1
102ms
A composition which contains an instruction is queried. The composition sits under the EHR. AQL query specifies EHR id, Composition archetype node id and instruction archetype node id. The query uses WHERE clause to add Composition name as an extra criteria. The returned data consists of uid, composer, event context start time and some data from the activities under the instruction.
When A an AQL query that describes an instruction under a composition is created 000ms
And The query contains EHR id criteria 000ms
And Composition archetype id criteria 000ms
And Composition name criteria using WHERE clause 000ms
And Instruction archetype id criteria 000ms
Then The following data items should be available in query results: 101ms
composition_uid
composition_composer
context_start_time
activity_data
After CompositionAPISteps.cleanUp() 010ms
After QueryWithAqlSteps.cleanUp() 000ms
15s 542ms
The server is ready, an EHR and required templates is in place and the user logged in and created data.
Given The server is running 1s 528ms
And The client system is logged into a server session 027ms
And The templates with following ids are available to the server: 426ms
IDCR - Adverse Reaction List.v1
IDCR - End of Life Patient Preferences.v0
IDCR - Immunisation summary.v0
IDCR - Laboratory Order.v0
IDCR - Laboratory Test Report.v0
IDCR - Medication Statement List.v0
IDCR - Minimal MDT Output Report.v0
IDCR - Problem List.v1
IDCR - Procedures List.v1
IDCR - Relevant contacts.v0
IDCR - Service Request.v0
IDCR - Service tracker.v0
IDCR - Vital Signs Encounter.v1
RIPPLE - Clinical Notes.v1
RIPPLE - Height_Weight.v1
RIPPLE - Personal Notes.v1
Smart Growth Chart Data.v0
And An EHR is created 028ms
And The following compositions exists under the EHR: 13s 531ms
Composition_IDCR_Adverse_Reaction_List.v1.0.json IDCR - Adverse Reaction List.v1
Composition_IDCR_Adverse_Reaction_List.v1.1.json IDCR - Adverse Reaction List.v1
Composition_IDCR_End_of_Life_Patient_Preferences.v0.0.json IDCR - End of Life Patient Preferences.v0
Composition_IDCR_Immunisation_summary.v0.0.json IDCR - Immunisation summary.v0
Composition_IDCR_Immunisation_summary.v0.1.json IDCR - Immunisation summary.v0
Composition_IDCR_Laboratory_Order.v0.0.json IDCR - Laboratory Order.v0
Composition_IDCR_Laboratory_Order.v0.1.json IDCR - Laboratory Order.v0
Composition_IDCR_Laboratory_Order.v0.2.json IDCR - Laboratory Order.v0
Composition_IDCR_Laboratory_Test_Report.v0.0.json IDCR - Laboratory Test Report.v0
Composition_IDCR_Laboratory_Test_Report.v0.1.json IDCR - Laboratory Test Report.v0
Composition_IDCR_Laboratory_Test_Report.v0.2.json IDCR - Laboratory Test Report.v0
Composition_IDCR_Medication_Statement_List.v0.0.json IDCR - Medication Statement List.v0
Composition_IDCR_Medication_Statement_List.v0.1.json IDCR - Medication Statement List.v0
Composition_IDCR_Medication_Statement_List.v0.2.json IDCR - Medication Statement List.v0
Composition_IDCR__Minimal_MDT_Output_Report.v0.0.json IDCR - Minimal MDT Output Report.v0
Composition_IDCR__Minimal_MDT_Output_Report.v0.1.json IDCR - Minimal MDT Output Report.v0
Composition_IDCR_Problem_List.v1.0.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.1.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.2.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.3.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.4.json IDCR - Problem List.v1
Composition_IDCR_Problem_List.v1.5.json IDCR - Problem List.v1
Composition_IDCR_Procedures_List.v1.0.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.1.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.2.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.3.json IDCR - Procedures List.v1
Composition_IDCR_Procedures_List.v1.4.json IDCR - Procedures List.v1
Composition_IDCR_Relevant_contacts.v0.0.json IDCR - Relevant contacts.v0
Composition_IDCR_Relevant_contacts.v0.1.json IDCR - Relevant contacts.v0
Composition_IDCR_Relevant_contacts.v0.2.json IDCR - Relevant contacts.v0
Composition_IDCR_Service_Request.v0.0.json IDCR - Service Request.v0
Composition_IDCR_Service_Request.v0.1.json IDCR - Service Request.v0
Composition_IDCR_Service_Request.v0.2.json IDCR - Service Request.v0
Composition_IDCR_Service_tracker.v0.0.json IDCR - Service tracker.v0
Composition_IDCR_Service_tracker.v0.1.json IDCR - Service tracker.v0
Composition_IDCR_Service_tracker.v0.2.json IDCR - Service tracker.v0
Composition_IDCR_Service_tracker.v0.3.json IDCR - Service tracker.v0
Composition_IDCR_Vital_Signs_Encounter.v1.0.json IDCR - Vital Signs Encounter.v1
Composition_IDCR_Vital_Signs_Encounter.v1.1.json IDCR - Vital Signs Encounter.v1
Composition_IDCR_Vital_Signs_Encounter.v1.2.json IDCR - Vital Signs Encounter.v1
Composition_RIPPLE_Clinical_Notes.v1.0.json RIPPLE - Clinical Notes.v1
Composition_RIPPLE_Clinical_Notes.v1.1.json RIPPLE - Clinical Notes.v1
Composition_RIPPLE_Clinical_Notes.v1.2.json RIPPLE - Clinical Notes.v1
Composition_RIPPLE_Height_Weight.v1.0.json RIPPLE - Height_Weight.v1
Composition_RIPPLE_Height_Weight.v1.1.json RIPPLE - Height_Weight.v1
Composition_RIPPLE_Height_Weight.v1.2.json RIPPLE - Height_Weight.v1
Composition_RIPPLE_Personal_Notes.v1.0.json RIPPLE - Personal Notes.v1
Composition_RIPPLE_Personal_Notes.v1.1.json RIPPLE - Personal Notes.v1
Composition_RIPPLE_Personal_Notes.v1.2.json RIPPLE - Personal Notes.v1
042ms
Scenario Select data item using its archetype node id and name
Query compositions which contain data items that can can only be distinguished by their names. The query uses [atXXXX,'data item name'] syntax in SELECT clause to select specific data items.
Steps
When An AQL query that selects composition uids and data items is created 000ms
And The data items are selected based on both archetype node id and name 041ms
Then Data items with same node id should have different values if they have different names 001ms
java.lang.AssertionError: Values should be different. Actual: 2 puffs
	at org.junit.Assert.fail(Assert.java:88)
	at org.junit.Assert.failEquals(Assert.java:185)
	at org.junit.Assert.assertNotEquals(Assert.java:161)
	at org.junit.Assert.assertNotEquals(Assert.java:175)
	at com.ethercis.vehr.AqlFeaturesSteps.lambda$dataItemsWithSameNodeIdShouldHaveDifferentValuesIfTheyHaveDifferentNames$4(AqlFeaturesSteps.java:175)
	at java.util.ArrayList.forEach(ArrayList.java:1255)
	at com.ethercis.vehr.AqlFeaturesSteps.dataItemsWithSameNodeIdShouldHaveDifferentValuesIfTheyHaveDifferentNames(AqlFeaturesSteps.java:174)
	at ✽.Then Data items with same node id should have different values if they have different names(code4health/Aql.feature:110)
After CompositionAPISteps.cleanUp() 022ms
After QueryWithAqlSteps.cleanUp() 000ms