Name | /FHIRSandbox/DaVinci/FHIR4-0-1-QualMeas/01-Ind-Report-Scenario/Individual-Report-xml |
Description | A Receiver uses $evaluate-measure to request the data and results for an Individual measure from a Reporter. The Receiver receives a completed MeasureReport and verifies that it has the correct data and the calculated result is correct for the individual. The request is for xml format as a default. Prequisite: appropriate measures data is loaded to the server under test. |
Version | 5 | Latest | 5 |
<?xml version="1.0" encoding="UTF-8"?>
<TestScript xmlns="http://hl7.org/fhir">
<id value="Individual-Report-Scenario"/>
<meta>
<profile value="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript"/>
</meta>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<p>QM Individual Report Scenario</p>
</div>
</text>
<url value="http://wildfhir.aegis.net/fhir4-0-1/TestScript/Individual-Report-Scenario"/>
<name value="Individual-Report-Scenario"/>
<status value="active"/>
<date value="2021-07-15"/>
<publisher value="AEGIS.net, Inc."/>
<contact>
<name value="Touchstone Support"/>
<telecom>
<system value="email"/>
<value value="Touchstone_Support@aegis.net"/>
<use value="work"/>
</telecom>
</contact>
<description value="A Receiver uses $evaluate-measure to request the data and results for an Individual measure from a Reporter. The Receiver receives a completed MeasureReport and verifies that it has the correct data and the calculated result is correct for the individual. The request is for xml format as a default. Prequisite: appropriate measures data is loaded to the server under test."/>
<copyright value="This FHIR Test Script is licensed under Creative Commons (CC0) 'No Rights Reserved'. Learn more at https://creativecommons.org/licenses"/>
<origin>
<index value="1"/>
<profile>
<system value="http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types"/>
<code value="FHIR-Client"/>
</profile>
</origin>
<destination>
<index value="1"/>
<profile>
<system value="http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types"/>
<code value="FHIR-Server"/>
</profile>
</destination>
<profile id="MeasureReportProfile">
<reference value="http://hl7.org/fhir/StructureDefinition/MeasureReport"/>
</profile>
<variable>
<name value="periodStart"/>
<defaultValue value="2020-01-01"/>
<description value="Default start of a gaps through period."/>
</variable>
<variable>
<name value="periodEnd"/>
<defaultValue value="2020-12-31"/>
<description value="Default end of a gaps through period."/>
</variable>
<variable>
<name value="Measure"/>
<defaultValue value="measure-EXM130-7.3.000"/>
<description value="The measure being requested"/>
</variable>
<variable>
<name value="Subject"/>
<defaultValue value="Patient/numer-EXM130"/>
<description value="The subject or patient whose measure is being requested"/>
</variable>
<variable>
<name value="expectedGroup"/>
<defaultValue value="group-1"/>
<description value="The expected Group being returned. Will be evaluated in the test"/>
</variable>
<variable>
<name value="expectedInitialPopCount"/>
<defaultValue value="1"/>
<description value="The expected Initial Population Count being returned. Will be evaluated in the test. If none, put 0."/>
</variable>
<variable>
<name value="expectedMeasureScore"/>
<defaultValue value="1.0"/>
<description value="The expected Measure Score being returned. Will be evaluated in the test."/>
</variable>
<test id="Eval-Measure-Query">
<name value="Eval-Measure-Query"/>
<description value="Query using $evaluate-measure, including a measure, subject, and period start and end dates. Expected response is a MeasureReport."/>
<action>
<operation>
<type>
<system value="http://touchstone.com/fhir/testscript-operation-codes-extended"/>
<code value="evaluate-measure"/>
</type>
<resource value="Measure"/>
<description value="Run the $evaluate-measure operation."/>
<accept value="xml"/>
<contentType value="xml"/>
<destination value="1"/>
<encodeRequestUrl value="true"/>
<method value="get"/>
<origin value="1"/>
<params value="/${Measure}/$evaluate-measure?patient=${Subject}&periodStart=${periodStart}&periodEnd=${periodEnd}"/>
<responseId value="searchResponse"/>
</operation>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Confirm that the request HTTP Header Accept contains 'charset=utf-8'."/>
<direction value="request"/>
<headerField value="Accept"/>
<operator value="contains"/>
<value value="charset=utf-8"/>
<warningOnly value="true"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Confirm that the request HTTP Header Content-Type contains 'charset=utf-8'."/>
<direction value="request"/>
<headerField value="Content-Type"/>
<operator value="contains"/>
<value value="charset=utf-8"/>
<warningOnly value="true"/>
</assert>
</action>
<action>
<assert>
<description value="Confirm that the returned HTTP status is 200(OK)."/>
<direction value="response"/>
<operator value="in"/>
<responseCode value="200"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Confirm that the response HTTP Header Content-Type contains 'charset=utf-8'."/>
<direction value="response"/>
<headerField value="Content-Type"/>
<operator value="contains"/>
<value value="charset=utf-8"/>
<warningOnly value="true"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Confirm that the response body contains a MeasureReport resource"/>
<direction value="response"/>
<resource value="MeasureReport"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Validate the response MeasureReport for conformance."/>
<direction value="response"/>
<validateProfileId value="MeasureReportProfile"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Verify that the Group is as expected in the response"/>
<direction value="response"/>
<expression value="MeasureReport.group.id"/>
<operator value="equals"/>
<value value="${expectedGroup}"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Verify that the Measure Score is as expected in the response"/>
<direction value="response"/>
<operator value="equals"/>
<path value="MeasureReport/group/measureScore/value"/>
<value value="${expectedMeasureScore}"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="Verify that the Initial Population Count is as expected in the response"/>
<direction value="response"/>
<expression value="MeasureReport.group.population.where(code.coding.code = 'initial-population').count"/>
<operator value="equals"/>
<value value="${expectedInitialPopCount}"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="When using a MeasureReport resource to represent the results of an individual calculation, the MeasureReport SHALL have a reference to the subject of the report"/>
<direction value="response"/>
<operator value="equals"/>
<path value="MeasureReport/subject/reference"/>
<value value="${Subject}"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert>
<extension url="http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail">
<valueBoolean value="false"/>
</extension>
<description value="When using a MeasureReport resource to represent the results of an individual calculation, the MeasureReport SHALL have a type-code of 'individual'"/>
<direction value="response"/>
<expression value="MeasureReport.type"/>
<operator value="equals"/>
<value value="individual"/>
<warningOnly value="false"/>
</assert>
</action>
</test>
</TestScript>