CareCommunication Test scripts
4.0.1 - release

CareCommunication Test scripts, published by . This guide is not an authorized publication; it is the continuous build for version 4.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/medcomdk/dk-medcom-carecommunication-testscripts/ and changes regularly. See the Directory of published versions

TestScript: Reply CareCommunication where the new message includes two attached files

Official URL: http://medcomfhir.dk/ig/carecommunicationtestscript/carecommunication-send-reply-attachment Version: 4.0.1
Active as of 2025-02-26 Computable Name: CareCommunicationTestScript

Copyright/Legal: MedCom 2023

Reply CareCommunication where the new message includes two attached files.

Profile: http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript

url: TestScript Reply CareCommunication where the new message includes two attached files

version: 4.0.1

name: CareCommunicationTestScript

title: Reply CareCommunication where the new message includes two attached files

status: Active

date: 2025-02-26

contact: MedCom: mailto:fhir@medcom.dk

description:

Reply CareCommunication where the new message includes two attached files.

copyright:

MedCom 2023

Origins

-IndexProfile
*1Test script profile origin type FHIR-Client: FHIR Client

Destinations

-IndexProfile
*1Test script profile destination type FHIR-Server: FHIR Server

fixture

id

create-new-message-01

autocreate: false

autodelete: false

resource: ../Fixtures/CareCommunication-fixture.xml

fixture

id

create-reply-message-02

autocreate: false

autodelete: false

resource: ../Fixtures/CareCommunication-fixture-empty.xml

profile: http://medcomfhir.dk/ig/carecommunication/StructureDefinition/medcom-careCommunication-message

variable

name: messageHeaderid-new-message-01

expression: Bundle.entry[0].resource.id

sourceId: create-new-message-01

variable

name: destinationUri-new-message-01

expression: Bundle.entry.resource.ofType(MessageHeader).destination.endpoint

sourceId: create-new-message-01

variable

name: bundleid-new-message-01

expression: Bundle.id

sourceId: create-new-message-01

variable

name: messageHeaderid-reply-message-02

expression: Bundle.entry[0].resource.id

sourceId: create-reply-message-02

variable

name: identifier-new-message-01

expression: Bundle.entry.resource.ofType(Communication).identifier.value

sourceId: create-new-message-01

variable

name: identifier-reply-message-02

expression: Bundle.entry.resource.ofType(Communication).identifier.value

sourceId: create-reply-message-02

setup

action

Operations

-TypeResourceDescriptionAcceptDestinationEncodeRequestUrlParams
*Test script operation code delete: DeleteBundleSystem-generated search, delete operations from conditional delete on Bundle MessageHeader.destination.endpointxml1true?message.destination-uri=$destinationUri-new-message

action

Operations

-TypeResourceDescriptionAcceptContentTypeDestinationEncodeRequestUrlParamsSourceId
*Test script operation code updateCreate: Create using UpdateBundleCreate or Update the Bundle.id in XML format on the destination server, so it corresponds to $bundleid-new-message-01.xmlxml1true/${bundleid-new-message-01}create-new-message-01

action

Asserts

-DescriptionDirectionOperatorResponseCodeWarningOnly
*Confirm that the returned HTTP status is okay or created.responsein200,201false

test

id

message-read-new-message-01

name: Get a new-message message 01

description: GET a message. The expected response is a 200(OK) with a payload of the message resource in XML format.

action

Operations

-TypeResourceDescriptionAcceptDestinationEncodeRequestUrlOriginParams
*Test script operation code read: ReadBundleReceive messagexml1true1/${bundleid-new-message-01}

action

Asserts

-DescriptionDirectionOperatorResponseCodeWarningOnly
*Confirm that the returned HTTP status is okay or created.responsein200,201false

test

id

carecommunication-create-reply-message-02

name: Create a CareCommunication reply-message Message 02

description: Post CareCommunication to the server.

action

Operations

-TypeResourceDescriptionDestinationEncodeRequestUrlOriginSourceId
*Test script operation code create: CreateBundlePost a carecommunication1true1create-reply-message-02

action

Asserts

-DescriptionDirectionValidateProfileIdWarningOnly
*Validates the bundle against http://medcomfhir.dk/ig/carecommunication/ImplementationGuide/dk.fhir.ig.dk-medcom-carecommunicationrequestcarecommunicationfalse

action

Asserts

-DescriptionDirectionOperatorResponseCodeWarningOnly
*Confirm that the returned HTTP status is okay or created.responsein200,201false

action

Asserts

-DescriptionDirectionResourceWarningOnly
*Confirm that the client request payload contains a Bundle resource type.requestBundlefalse

action

Asserts

-DescriptionDirectionExpressionWarningOnly
*Confirm that the previous MessageHeader.id is referenced in Provenance.entity.whatrequestBundle.entry.resource.ofType(Provenance).where(entity.what.reference.contains('${messageHeaderid-new-message-01}')).exists()false

action

Asserts

-DescriptionDirectionExpressionWarningOnly
*Confirm that the request resource contains the expected eventCoding.code.requestBundle.entry.resource.ofType(MessageHeader).event.as(Coding).code = 'care-communication-message'false

action

Asserts

-DescriptionDirectionExpressionWarningOnly
*Confirm that the role is set to revision. Not used when testing the first message in a streamrequestBundle.entry.resource.ofType(Provenance).entity.where(role = 'revision').exists()false

action

Asserts

-DescriptionDirectionExpressionWarningOnly
*Confirm that the target reference in Provenance equals MessageHeader.idrequestBundle.entry.resource.ofType(Provenance).where(target.reference.contains(%resource.entry[0].resource.id)).exists()false

action

Asserts

-DescriptionDirectionExpressionOperatorValueWarningOnly
*Confirm that the 2 Provenance instances exists.requestBundle.entry.resource.ofType(Provenance).count()equals2false

action

Asserts

-DescriptionDirectionExpressionWarningOnly
*Confirm that number of payloads is ''requestBundle.entry.resource.ofType(Communication).payload.count() = ''false

action

Asserts

-DescriptionDirectionExpressionWarningOnly
*Confirm that the communication.identifier is held the same in the two messagesrequestBundle.entry.resource.ofType(Communication).identifier.value = '${identifier-new-message-01}'false