FHIR © HL7.org  |  FHIRsmith 4.0.1  |  Server Home  |  XIG Home  |  XIG Stats  | 

FHIR IG analytics

Packagehl7.fhir.uv.testing
Resource TypeTestScript
IdTestScript-testscript-example-readtest.json
FHIR VersionR6
Sourcehttps://build.fhir.org/ig/HL7/fhir-testing-ig/TestScript-testscript-example-readtest.html
URLhttp://hl7.org/fhir/TestScript/testscript-example-readtest
Version1.0
Statusdraft
Date2017-01-18
NameTestScriptExampleReadTest
TitleTestScript Example Read Test
Realmuv
Authorityhl7
DescriptionTestScript example resource with ported Sprinkler basic read tests R001, R002, R003, R004. The read tests will utilize user defined dynamic variables that will hold the Patient resource id values.
PurposePatient Read Operation
Copyright© HL7.org 2011+

Resources that use this resource

No resources found


Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

Generated Narrative: TestScript testscript-example-readtest

Language: en

url: http://hl7.org/fhir/TestScript/testscript-example-readtest

identifier: Uniform Resource Identifier (URI)/urn:oid:2.16.840.1.113883.4.642.12.2

version: 1.0

name: TestScriptExampleReadTest

title: TestScript Example Read Test

status: Draft

experimental: false

date: 2017-01-18

publisher: HL7 International / FHIR Infrastructure

contact: Support: support@HL7.org

description:

TestScript example resource with ported Sprinkler basic read tests R001, R002, R003, R004. The read tests will utilize user defined dynamic variables that will hold the Patient resource id values.

purpose:

Patient Read Operation

copyright:

© HL7.org 2011+

Scopes

-ArtifactConformancePhase
*PatientOptionalUnit

profile: Patient

variable

name: KnownPatientResourceId

defaultValue: example

variable

name: NonExistsPatientResourceId

defaultValue: does-not-exist

test

id

R001

name: Sprinkler Read Test R001

description: Read a known Patient and validate response.

action

Operations

-TypeResourceDescriptionAcceptEncodeRequestUrlParams
*FHIR Restful Interactions: read (read)http://hl7.org/fhir/StructureDefinition/PatientRead the known Patient resource on the destination test system using the user defined dynamic variable ${KnownPatientResourceId}.xmltrue/${KnownPatientResourceId}

action

Asserts

-DescriptionResponseStopTestOnFailWarningOnly
*Confirm that the returned HTTP status is 200(OK).OKfalsefalse

action

Asserts

-DescriptionContentTypeStopTestOnFailWarningOnly
*Confirm that the returned format is XML.xmlfalsefalse

action

Asserts

-DescriptionHeaderFieldOperatorStopTestOnFailWarningOnly
*Confirm that the returned HTTP Header Last-Modified is present. Warning only as the server might not support versioning.Last-ModifiednotEmptyfalsetrue

action

Asserts

-DescriptionResourceStopTestOnFailWarningOnly
*Confirm that the returned resource type is Patient.http://hl7.org/fhir/StructureDefinition/Patientfalsefalse

action

Asserts

-DescriptionStopTestOnFailValidateProfileIdWarningOnly
*Confirm that the returned Patient conforms to the base FHIR specification.falsepatient-profilefalse

test

id

R002

name: Sprinkler Read Test R002

description: Read an unknown Resource Type and validate response.

action

Operations

-TypeResourceDescriptionAcceptEncodeRequestUrlParams
*FHIR Restful Interactions: read (read)http://hl7.org/fhir/StructureDefinition/PatientAttempt to read the Parameters resource type. What we really want here is an illegal type but the build process won't allow that. Parameters is a valid resource which doesn't have an end-point so, this should fail.xmltrue/1

action

Asserts

-DescriptionResponseStopTestOnFailWarningOnly
*Confirm that the returned HTTP status is 404(Not Found).Not Foundfalsefalse

test

id

R003

name: Sprinkler Read Test R003

description: Read a known, non-existing Patient and validate response.

action

Operations

-TypeResourceDescriptionAcceptEncodeRequestUrlParams
*FHIR Restful Interactions: read (read)http://hl7.org/fhir/StructureDefinition/PatientAttempt to read the non-existing Patient resource on the destination test system using the user defined dynamic variable ${NonExistsPatientResourceId}.xmltrue/${NonExistsPatientResourceId}

action

Asserts

-DescriptionResponseStopTestOnFailWarningOnly
*Confirm that the returned HTTP status is 404(Not Found).Not Foundfalsefalse

test

id

R004

name: Sprinkler Read Test R004

description: Read a Patient using a known bad formatted resource id and validate response.

action

Operations

-TypeResourceDescriptionAcceptEncodeRequestUrlParams
*FHIR Restful Interactions: read (read)http://hl7.org/fhir/StructureDefinition/PatientAttempt to read a Patient resource on the destination test system using known bad formatted resource id.xmltrue/ID-may-not-contain-CAPITALS

action

Asserts

-DescriptionResponseStopTestOnFailWarningOnly
*Confirm that the returned HTTP status is 400(Bad Request).Bad Requestfalsefalse

Source1

{
  "resourceType": "TestScript",
  "resourceDefinition": "http://hl7.org/fhir/StructureDefinition/TestScript|0.1.0-SNAPSHOT",
  "id": "testscript-example-readtest",
  "language": "en",
  "text": {
    "status": "generated",
    "div": "<!-- snip (see above) -->"
  },
  "url": "http://hl7.org/fhir/TestScript/testscript-example-readtest",
  "identifier": [
    {
      "system": "urn:ietf:rfc:3986",
      "value": "urn:oid:2.16.840.1.113883.4.642.12.2"
    }
  ],
  "version": "1.0",
  "name": "TestScriptExampleReadTest",
  "title": "TestScript Example Read Test",
  "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 ported Sprinkler basic read tests R001, R002, R003, R004. The read tests will utilize user defined dynamic variables that will hold the Patient resource id values.",
  "purpose": "Patient Read Operation",
  "copyright": "© HL7.org 2011+",
  "scope": [
    {
      "artifact": "http://hl7.org/fhir/StructureDefinition/Patient",
      "conformance": {
        "coding": [
          {
            "system": "http://hl7.org/fhir/testscript-scope-conformance-codes",
            "code": "optional"
          }
        ]
      },
      "phase": {
        "coding": [
          {
            "system": "http://hl7.org/fhir/testscript-scope-phase-codes",
            "code": "unit"
          }
        ]
      }
    }
  ],
  "profile": [
    "http://hl7.org/fhir/StructureDefinition/Patient"
  ],
  "_profile": [
    {
      "id": "patient-profile"
    }
  ],
  "variable": [
    {
      "name": "KnownPatientResourceId",
      "defaultValue": "example"
    },
    {
      "name": "NonExistsPatientResourceId",
      "defaultValue": "does-not-exist"
    }
  ],
  "test": [
    {
      "id": "R001",
      "name": "Sprinkler Read Test R001",
      "description": "Read a known Patient and validate response.",
      "action": [
        {
          "operation": {
            "type": {
              "system": "http://hl7.org/fhir/restful-interaction",
              "code": "read"
            },
            "resource": "Patient",
            "description": "Read the known Patient resource on the destination test system using the user defined dynamic variable ${KnownPatientResourceId}.",
            "accept": "xml",
            "encodeRequestUrl": true,
            "params": "/${KnownPatientResourceId}"
          }
        },
        {
          "assert": {
            "description": "Confirm that the returned HTTP status is 200(OK).",
            "response": "okay",
            "stopTestOnFail": false,
            "warningOnly": false
          }
        },
        {
          "assert": {
            "description": "Confirm that the returned format is XML.",
            "contentType": "xml",
            "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.",
            "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
          }
        }
      ]
    },
    {
      "id": "R002",
      "name": "Sprinkler Read Test R002",
      "description": "Read an unknown Resource Type and validate response.",
      "action": [
        {
          "operation": {
            "type": {
              "system": "http://hl7.org/fhir/restful-interaction",
              "code": "read"
            },
            "resource": "Patient",
            "description": "Attempt to read the Parameters resource type. What we really want here is an illegal type but the build process won't allow that. Parameters is a valid resource which doesn't have an end-point so, this should fail.",
            "accept": "xml",
            "encodeRequestUrl": true,
            "params": "/1"
          }
        },
        {
          "assert": {
            "description": "Confirm that the returned HTTP status is 404(Not Found).",
            "response": "notFound",
            "stopTestOnFail": false,
            "warningOnly": false
          }
        }
      ]
    },
    {
      "id": "R003",
      "name": "Sprinkler Read Test R003",
      "description": "Read a known, non-existing Patient and validate response.",
      "action": [
        {
          "operation": {
            "type": {
              "system": "http://hl7.org/fhir/restful-interaction",
              "code": "read"
            },
            "resource": "Patient",
            "description": "Attempt to read the non-existing Patient resource on the destination test system using the user defined dynamic variable ${NonExistsPatientResourceId}.",
            "accept": "xml",
            "encodeRequestUrl": true,
            "params": "/${NonExistsPatientResourceId}"
          }
        },
        {
          "assert": {
            "description": "Confirm that the returned HTTP status is 404(Not Found).",
            "response": "notFound",
            "stopTestOnFail": false,
            "warningOnly": false
          }
        }
      ]
    },
    {
      "id": "R004",
      "name": "Sprinkler Read Test R004",
      "description": "Read a Patient using a known bad formatted resource id and validate response.",
      "action": [
        {
          "operation": {
            "type": {
              "system": "http://hl7.org/fhir/restful-interaction",
              "code": "read"
            },
            "resource": "Patient",
            "description": "Attempt to read a Patient resource on the destination test system using known bad formatted resource id.",
            "accept": "xml",
            "encodeRequestUrl": true,
            "params": "/ID-may-not-contain-CAPITALS"
          }
        },
        {
          "assert": {
            "description": "Confirm that the returned HTTP status is 400(Bad Request).",
            "response": "badRequest",
            "stopTestOnFail": false,
            "warningOnly": false
          }
        }
      ]
    }
  ]
}