687ms
Scenario
Commit composition in flat json and retrieve raw format
When
Flat json file IDCR - Immunisation summary.v0.flat.json with template id IDCR - Immunisation summary.v0 is committed to service
576ms
Then
A composition id should be returned by the API
000ms
And
Composition id should allow retrieval of composition in raw format
110ms
java.lang.AssertionError
at org.junit.Assert.fail(Assert.java:86)
at org.junit.Assert.assertTrue(Assert.java:41)
at org.junit.Assert.assertTrue(Assert.java:52)
at com.ethercis.vehr.CompositionAPISteps.getComposition(CompositionAPISteps.java:78)
at com.ethercis.vehr.CompositionAPISteps.compositionIdShouldAllowRetrievalOfCompositionInRawFormat(CompositionAPISteps.java:61)
at ✽.And Composition id should allow retrieval of composition in raw format(RestApiComposition.feature:21)
After
CompositionAPISteps.cleanUp()
005ms
After
QueryWithAqlSteps.cleanUp()
000ms
051ms
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.
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
049ms
Then
Data items with same node id should have different values if they have different names
000ms
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:174)
at java.util.ArrayList.forEach(ArrayList.java:1255)
at com.ethercis.vehr.AqlFeaturesSteps.dataItemsWithSameNodeIdShouldHaveDifferentValuesIfTheyHaveDifferentNames(AqlFeaturesSteps.java:173)
at ✽.Then Data items with same node id should have different values if they have different names(code4health/Aql.feature:110)
After
CompositionAPISteps.cleanUp()
083ms
After
QueryWithAqlSteps.cleanUp()
000ms
076ms
Scenario
Select composition
A composition 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 SELECT clause
selects the complete composition instance
When
A an AQL query that describes a composition under an EHR is created
002ms
And
The query contains EHR id criteria
000ms
And
Composition archetype id criteria
000ms
And
Composition name criteria using WHERE clause
000ms
Then
The results should be composition instances
073ms
com.jayway.restassured.path.json.exception.JsonPathException: Failed to parse the JSON document
at com.jayway.restassured.path.json.JsonPath$ExceptionCatcher.invoke(JsonPath.java:928)
at com.jayway.restassured.path.json.JsonPath$4.doParseWith(JsonPath.java:893)
at com.jayway.restassured.path.json.JsonPath$JsonParser.parseWith(JsonPath.java:972)
at com.jayway.restassured.path.json.JsonPath.get(JsonPath.java:201)
at com.jayway.restassured.path.json.JsonPath.getString(JsonPath.java:351)
at com.ethercis.vehr.AqlFeaturesSteps.assertArchetypeNodeId(AqlFeaturesSteps.java:212)
at com.ethercis.vehr.AqlFeaturesSteps.lambda$theResultsShouldBeCompositionInstances$5(AqlFeaturesSteps.java:189)
at java.util.ArrayList.forEach(ArrayList.java:1255)
at com.ethercis.vehr.AqlFeaturesSteps.theResultsShouldBeCompositionInstances(AqlFeaturesSteps.java:188)
at ✽.Then The results should be composition instances(code4health/Aql.feature:122)
Caused by: java.lang.IllegalArgumentException: The JSON input text should neither be null nor empty.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:80)
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:105)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:60)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:235)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:247)
at com.jayway.restassured.internal.path.json.ConfigurableJsonSlurper.parseText(ConfigurableJsonSlurper.groovy:79)
at com.jayway.restassured.path.json.JsonPath$4$1.method(JsonPath.java:891)
at com.jayway.restassured.path.json.JsonPath$ExceptionCatcher.invoke(JsonPath.java:926)
at com.jayway.restassured.path.json.JsonPath$4.doParseWith(JsonPath.java:893)
at com.jayway.restassured.path.json.JsonPath$JsonParser.parseWith(JsonPath.java:972)
at com.jayway.restassured.path.json.JsonPath.get(JsonPath.java:201)
at com.jayway.restassured.path.json.JsonPath.getString(JsonPath.java:351)
at com.ethercis.vehr.AqlFeaturesSteps.assertArchetypeNodeId(AqlFeaturesSteps.java:212)
at com.ethercis.vehr.AqlFeaturesSteps.lambda$theResultsShouldBeCompositionInstances$5(AqlFeaturesSteps.java:189)
at java.util.ArrayList.forEach(ArrayList.java:1255)
at com.ethercis.vehr.AqlFeaturesSteps.theResultsShouldBeCompositionInstances(AqlFeaturesSteps.java:188)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at cucumber.runtime.Utils$1.call(Utils.java:40)
at cucumber.runtime.Timeout.timeout(Timeout.java:16)
at cucumber.runtime.Utils.invoke(Utils.java:34)
at cucumber.runtime.java.JavaStepDefinition.execute(JavaStepDefinition.java:38)
at cucumber.runtime.StepDefinitionMatch.runStep(StepDefinitionMatch.java:37)
at cucumber.runtime.Runtime.runStep(Runtime.java:300)
at cucumber.runtime.model.StepContainer.runStep(StepContainer.java:44)
at cucumber.runtime.model.StepContainer.runSteps(StepContainer.java:39)
at cucumber.runtime.model.CucumberScenario.run(CucumberScenario.java:44)
at cucumber.runtime.junit.ExecutionUnitRunner.run(ExecutionUnitRunner.java:102)
at cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:63)
at cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:18)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at cucumber.runtime.junit.FeatureRunner.run(FeatureRunner.java:70)
at cucumber.api.junit.Cucumber.runChild(Cucumber.java:95)
at cucumber.api.junit.Cucumber.runChild(Cucumber.java:38)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at cucumber.api.junit.Cucumber.run(Cucumber.java:100)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:369)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:275)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:239)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:160)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:373)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:334)
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:119)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:407)
After
CompositionAPISteps.cleanUp()
011ms
After
QueryWithAqlSteps.cleanUp()
000ms
096ms
Scenario
Select instruction
A composition with 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 SELECT clause
selects the complete instruction instance
When
A an AQL query that describes an instruction under an EHR 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 results should be instruction instances
096ms
java.lang.AssertionError: expected:<null> but was:<openEHR-EHR-INSTRUCTION.medication_order.v1>
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.failNotEquals(Assert.java:834)
at org.junit.Assert.assertEquals(Assert.java:118)
at org.junit.Assert.assertEquals(Assert.java:144)
at com.ethercis.vehr.AqlFeaturesSteps.assertArchetypeNodeId(AqlFeaturesSteps.java:213)
at com.ethercis.vehr.AqlFeaturesSteps.lambda$theResultsShouldBeInstructionInstances$6(AqlFeaturesSteps.java:204)
at java.util.ArrayList.forEach(ArrayList.java:1255)
at com.ethercis.vehr.AqlFeaturesSteps.theResultsShouldBeInstructionInstances(AqlFeaturesSteps.java:203)
at ✽.Then The results should be instruction instances(code4health/Aql.feature:135)
After
CompositionAPISteps.cleanUp()
008ms
After
QueryWithAqlSteps.cleanUp()
000ms