FHIR IG analytics| Package | hl7.fhir.uv.testing |
| Resource Type | TestScript |
| Id | TestScript-testscript-example.json |
| FHIR Version | R6 |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: TestScript testscript-example
Language: en
url: http://hl7.org/fhir/TestScript/testscript-example
identifier: Uniform Resource Identifier (URI)/urn:oid:2.16.840.1.113883.4.642.12.4
version: 1.0
name: TestScriptExample
title: TestScript Example
status: Draft
experimental: false
date: 2017-01-18
publisher: HL7 International / FHIR Infrastructure
contact: Support: support@HL7.org
description:
TestScript example resource with setup to delete if present and create a new instance of a Patient; and single test definition to read the created Patient with various asserts.
purpose:
Patient Conditional Create (Update), Read and Delete Operations
copyright:
© HL7.org 2011+
fixture
id
fixture-patient-createautocreate: false
autodelete: false
fixture
id
fixture-patient-minimumautocreate: false
autodelete: false
profile: Patient
variable
name: createResourceId
Expressions
Language Expression application/xml Patient/id sourceId: fixture-patient-create
setup
action
Operations
Type Resource Label Description Accept EncodeRequestUrl Params FHIR Restful Interactions: delete (delete) http://hl7.org/fhir/StructureDefinition/Patient SetupDeletePatient Execute a delete operation to insure the patient does not exist on the server. json true /${createResourceId} action
Asserts
Description Direction Operator ResponseCode StopTestOnFail WarningOnly Confirm that the returned HTTP status is 200(OK) or 204(No Content). response in 200,204 false false action
Operations
Type Resource Label Description Accept ContentType EncodeRequestUrl Params SourceId FHIR Restful Interactions: update (update) http://hl7.org/fhir/StructureDefinition/Patient SetupCreatePatient Create patient resource on test server using the contents of fixture-patient-create json json true /${createResourceId} fixture-patient-create action
Asserts
Description Direction ResponseCode StopTestOnFail WarningOnly Confirm that the returned HTTP status is 201(Created). response 201 false false action
Operations
Type Resource Description EncodeRequestUrl TargetId FHIR Restful Interactions: read (read) http://hl7.org/fhir/StructureDefinition/Patient Read the created patient resource on the test server using the id from fixture-patient-create. Verify contents. true fixture-patient-create action
Asserts
Description Direction Response StopTestOnFail WarningOnly Confirm that the returned HTTP status is 200(OK). response OK false false action
assert
description: Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient.
compareToSourceId: fixture-patient-create
CompareToSourceExpressions
Language Expression text/fhirpath Patient.name.first().family operator: equals
stopTestOnFail: false
warningOnly: false
test
id
01-ReadPatientname: Read Patient
description: Read a Patient and validate response.
action
Operations
Type Resource Description EncodeRequestUrl ResponseId TargetId FHIR Restful Interactions: read (read) http://hl7.org/fhir/StructureDefinition/Patient Read the patient resource on the test server using the id from fixture-patient-create. Prevent URL encoding of the request. false fixture-patient-read fixture-patient-create action
Asserts
Label Description Direction Response StopTestOnFail WarningOnly 01-ReadPatientOK Confirm that the returned HTTP status is 200(OK). response OK false false action
Asserts
Description Direction HeaderField Operator StopTestOnFail WarningOnly Confirm that the returned HTTP Header Last-Modified is present. Warning only as the server might not support versioning. response Last-Modified notEmpty false true action
Asserts
Description Resource StopTestOnFail WarningOnly Confirm that the returned resource type is Patient. http://hl7.org/fhir/StructureDefinition/Patient false false action
Asserts
Description StopTestOnFail ValidateProfileId WarningOnly Confirm that the returned Patient conforms to the base FHIR specification. false patient-profile false action
assert
description: Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit sourceId reference to read responseId fixture.
Expressions
Language Expression application/xml fhir:Patient/fhir:name/fhir:family/@value operator: equals
sourceId: fixture-patient-read
stopTestOnFail: false
value: Chalmers
warningOnly: false
action
assert
description: Confirm that the returned Patient contains the expected given name 'Peter'. Uses explicit sourceId reference to read responseId fixture.
Expressions
Language Expression application/xml fhir:Patient/fhir:name/fhir:given/@value operator: equals
sourceId: fixture-patient-read
stopTestOnFail: false
value: Peter
warningOnly: false
action
assert
description: Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient and implicit reference to read response payload.
compareToSourceId: fixture-patient-create
CompareToSourceExpressions
Language Expression application/xml fhir:Patient/fhir:name/fhir:family/@value Expressions
Language Expression application/xml fhir:Patient/fhir:name/fhir:family/@value operator: equals
stopTestOnFail: false
warningOnly: false
action
assert
description: Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient and explicit reference to read response payload and default operator of 'equals'.
compareToSourceId: fixture-patient-create
CompareToSourceExpressions
Language Expression application/xml fhir:Patient/fhir:name/fhir:given/@value Expressions
Language Expression application/xml fhir:Patient/fhir:name/fhir:given/@value sourceId: fixture-patient-read
stopTestOnFail: false
warningOnly: false
action
Asserts
Description MinimumId StopTestOnFail WarningOnly Confirm that the returned resource contains the expected retained elements and values. Warning only to provide users with reviewable results. fixture-patient-minimum false true
teardown
action
Operations
Type Resource Description EncodeRequestUrl TargetId FHIR Restful Interactions: delete (delete) http://hl7.org/fhir/StructureDefinition/Patient Delete the patient resource on the test server using the id from fixture-patient-create. true fixture-patient-create
{
"resourceType": "TestScript",
"resourceDefinition": "http://hl7.org/fhir/StructureDefinition/TestScript|0.1.0-SNAPSHOT",
"id": "testscript-example",
"language": "en",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"url": "http://hl7.org/fhir/TestScript/testscript-example",
"identifier": [
{
"system": "urn:ietf:rfc:3986",
"value": "urn:oid:2.16.840.1.113883.4.642.12.4"
}
],
"version": "1.0",
"name": "TestScriptExample",
"title": "TestScript Example",
"status": "draft",
"experimental": false,
"date": "2017-01-18",
"publisher": "HL7 International / FHIR Infrastructure",
"contact": [
{
"name": "Support",
"telecom": [
{
"system": "email",
"value": "support@HL7.org",
"use": "work"
}
]
}
],
"description": "TestScript example resource with setup to delete if present and create a new instance of a Patient; and single test definition to read the created Patient with various asserts.",
"purpose": "Patient Conditional Create (Update), Read and Delete Operations",
"copyright": "© HL7.org 2011+",
"fixture": [
{
"id": "fixture-patient-create",
"autocreate": false,
"autodelete": false
},
{
"id": "fixture-patient-minimum",
"autocreate": false,
"autodelete": false
}
],
"profile": [
"http://hl7.org/fhir/StructureDefinition/Patient"
],
"_profile": [
{
"id": "patient-profile"
}
],
"variable": [
{
"name": "createResourceId",
"expression": {
"language": "application/xml",
"expression": "Patient/id"
},
"sourceId": "fixture-patient-create"
}
],
"setup": {
"action": [
{
"operation": {
"type": {
"system": "http://hl7.org/fhir/restful-interaction",
"code": "delete"
},
"resource": "Patient",
"label": "SetupDeletePatient",
"description": "Execute a delete operation to insure the patient does not exist on the server.",
"accept": "json",
"encodeRequestUrl": true,
"params": "/${createResourceId}"
}
},
{
"assert": {
"description": "Confirm that the returned HTTP status is 200(OK) or 204(No Content).",
"direction": "response",
"operator": "in",
"responseCode": "200,204",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"operation": {
"type": {
"system": "http://hl7.org/fhir/restful-interaction",
"code": "update"
},
"resource": "Patient",
"label": "SetupCreatePatient",
"description": "Create patient resource on test server using the contents of fixture-patient-create",
"accept": "json",
"contentType": "json",
"encodeRequestUrl": true,
"params": "/${createResourceId}",
"sourceId": "fixture-patient-create"
}
},
{
"assert": {
"description": "Confirm that the returned HTTP status is 201(Created).",
"direction": "response",
"responseCode": "201",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"operation": {
"type": {
"system": "http://hl7.org/fhir/restful-interaction",
"code": "read"
},
"resource": "Patient",
"description": "Read the created patient resource on the test server using the id from fixture-patient-create. Verify contents.",
"encodeRequestUrl": true,
"targetId": "fixture-patient-create"
}
},
{
"assert": {
"description": "Confirm that the returned HTTP status is 200(OK).",
"direction": "response",
"response": "okay",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient.",
"compareToSourceId": "fixture-patient-create",
"compareToSourceExpression": {
"language": "text/fhirpath",
"expression": "Patient.name.first().family"
},
"operator": "equals",
"stopTestOnFail": false,
"warningOnly": false
}
}
]
},
"test": [
{
"id": "01-ReadPatient",
"name": "Read Patient",
"description": "Read a Patient and validate response.",
"action": [
{
"operation": {
"type": {
"system": "http://hl7.org/fhir/restful-interaction",
"code": "read"
},
"resource": "Patient",
"description": "Read the patient resource on the test server using the id from fixture-patient-create. Prevent URL encoding of the request.",
"encodeRequestUrl": false,
"responseId": "fixture-patient-read",
"targetId": "fixture-patient-create"
}
},
{
"assert": {
"label": "01-ReadPatientOK",
"description": "Confirm that the returned HTTP status is 200(OK).",
"direction": "response",
"response": "okay",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned HTTP Header Last-Modified is present. Warning only as the server might not support versioning.",
"direction": "response",
"headerField": "Last-Modified",
"operator": "notEmpty",
"stopTestOnFail": false,
"warningOnly": true
}
},
{
"assert": {
"description": "Confirm that the returned resource type is Patient.",
"resource": "Patient",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned Patient conforms to the base FHIR specification.",
"stopTestOnFail": false,
"validateProfileId": "patient-profile",
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit sourceId reference to read responseId fixture.",
"expression": {
"language": "application/xml",
"expression": "fhir:Patient/fhir:name/fhir:family/@value"
},
"operator": "equals",
"sourceId": "fixture-patient-read",
"stopTestOnFail": false,
"value": "Chalmers",
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned Patient contains the expected given name 'Peter'. Uses explicit sourceId reference to read responseId fixture.",
"expression": {
"language": "application/xml",
"expression": "fhir:Patient/fhir:name/fhir:given/@value"
},
"operator": "equals",
"sourceId": "fixture-patient-read",
"stopTestOnFail": false,
"value": "Peter",
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient and implicit reference to read response payload.",
"compareToSourceId": "fixture-patient-create",
"compareToSourceExpression": {
"language": "application/xml",
"expression": "fhir:Patient/fhir:name/fhir:family/@value"
},
"expression": {
"language": "application/xml",
"expression": "fhir:Patient/fhir:name/fhir:family/@value"
},
"operator": "equals",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned Patient contains the expected family name 'Chalmers'. Uses explicit compareToSourceId reference to fixture-patient-create used to create the Patient and explicit reference to read response payload and default operator of 'equals'.",
"compareToSourceId": "fixture-patient-create",
"compareToSourceExpression": {
"language": "application/xml",
"expression": "fhir:Patient/fhir:name/fhir:given/@value"
},
"expression": {
"language": "application/xml",
"expression": "fhir:Patient/fhir:name/fhir:given/@value"
},
"sourceId": "fixture-patient-read",
"stopTestOnFail": false,
"warningOnly": false
}
},
{
"assert": {
"description": "Confirm that the returned resource contains the expected retained elements and values. Warning only to provide users with reviewable results.",
"minimumId": "fixture-patient-minimum",
"stopTestOnFail": false,
"warningOnly": true
}
}
]
}
],
"teardown": {
"action": [
{
"operation": {
"type": {
"system": "http://hl7.org/fhir/restful-interaction",
"code": "delete"
},
"resource": "Patient",
"description": "Delete the patient resource on the test server using the id from fixture-patient-create.",
"encodeRequestUrl": true,
"targetId": "fixture-patient-create"
}
}
]
}
}