Exec Id: 202103070728502289371123
Start Time: 03/07/2021 07:36:04AM
End Time: 03/07/2021 07:36:17AM
Status: Passed
Duration: 12.853s
Version: 2 Latest: 5
Validator: FHIR 4.0.1
Description: FHIR Server CareTeam Basic Operation Tests - JSON - Client Assigned Resource Id - Create, Delete, History, Read, Search, Update, Vread. Support for referenced resource type Organization Update, Delete and Search is also required.
Executed By: Alexander Kiel
Organization: Samply
Origin:
TouchstoneFHIR
Destination:
Samply - BlazeC https://blaze.life.uni-leipzig.de/fhir
Test Script: /FHIR4-0-1-Basic/A-C/CareTeam/Client Assigned Id/CareTeam-client-id-json
Interactions
0% passed Pass Fail Warn Other Total
Summary
15 0 0 0 15
delete CareTeam
2 0 0 0 2
history-instance CareTeam
1 0 0 0 1
read CareTeam
2 0 0 0 2
search-type CareTeam
1 0 0 0 1
update CareTeam
1 0 0 0 1
updateCreate CareTeam
1 0 0 0 1
vread CareTeam
1 0 0 0 1
delete Organization
1 0 0 0 1
updateCreate Organization
1 0 0 0 1
delete Patient
1 0 0 0 1
updateCreate Patient
1 0 0 0 1
delete Practitioner
1 0 0 0 1
updateCreate Practitioner
1 0 0 0 1

Setup

[show]Duration: 3.527sStatus: Passed

Tests

Test Name Description Status Duration
Create a new CareTeam in JSON format where the client assigns the resource id. The expected response code is 201 (Created) with a content of either the created CareTeam resource in JSON format, an OperationOutcome resource in JSON format or an empty payload. 0.762s
Read the CareTeam in JSON format created in step 1. The expected response code is 200 (OK) with a content of the found CareTeam resource in JSON format. 0.692s
Update the CareTeam created in step 1 in JSON format. The expected response code is 200 (OK) with a content of either the updated CareTeam resource in JSON format, an OperationOutcome resource in JSON format or an empty payload. 1.384s
Retrieve the updated CareTeam instance's history in JSON format. The expected response code is 200 (OK) with a Bundle resource in JSON format of type history containing the created and updated versions of the CareTeam. 0.732s
Retrieve a initially created version of a CareTeam instance in JSON format. The expected response code, if versioning is supported, is 200 (OK) with a content of the updated CareTeam resource in JSON format; if versioning is not supported, a 404 (Not Found) with an OperationOutcome resource in JSON format or an empty payload. 0.940s
Search for CareTeam resources in JSON format with an identifier equal to ${searchParamIdentifier}. The expected response code is 200 (OK) with a Bundle resource in JSON format of type history containing the found instances of the CareTeam. 0.976s
Delete a CareTeam instance in JSON format. The expected response is either a 200 (OK) with an optional OperationOutcome in JSON format or 204 (No Content) and the content is empty; i.e. no content. 0.664s

Static Fixtures

Id Resource Version Latest Type Contents
resource-create CareTeam 1 2 JSON Raw Resolved
resource-update CareTeam 1 2 JSON Raw Resolved
reference-organization-create Organization 1 1 JSON Raw Resolved
reference-patient-create Patient 1 1 JSON Raw Resolved
reference-practitioner-create Practitioner 1 1 JSON Raw Resolved

Profiles

Id Source Contents
bundle-profile http://hl7.org/fhir/StructureDefinition/Bundle XML JSON  
operationoutcome-profile http://hl7.org/fhir/StructureDefinition/OperationOutcome XML JSON  
resource-profile http://hl7.org/fhir/StructureDefinition/CareTeam XML JSON  

Variables

Name Definition
createResourceId sourceId: resource-create path: .id
createVersionId sourceId: create-read-response path: .meta.versionId
searchParamIdentifier sourceId: resource-create path: .identifier[0].value
referenceOrganizationResourceId sourceId: reference-organization-create path: .id
referencePatientResourceId sourceId: reference-patient-create path: .id
referencePractitionerResourceId sourceId: reference-practitioner-create path: .id

RuleSets

Id Version Latest Rules
ruleset-versioning-headers 1 2
Id Params Version Latest
assertETagIfSupported
header: 'ETag'
headerExpectedValue
headerOperator: 'notEmpty'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
resource: 'CareTeam'
3 4
assertLastModifiedIfSupported
header: 'Last-Modified'
headerExpectedValue
headerOperator: 'notEmpty'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
resource: 'CareTeam'
3 4
ruleset-createok-headers-body 1 1
Id Params Version Latest
assertContentTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'notEmpty'
bodyOperator: 'notEmpty'
3 4
assertContentTypeMimeTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertContentTypeCharsetIfBody
header: 'Content-Type'
headerExpectedValue: 'charset=utf-8'
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertResourceTypesIfBody
resource: 'CareTeam,OperationOutcome'
resourceOperator: 'in'
bodyOperator: 'notEmpty'
3 4
assertProfileIfOperationOutcome
validateProfileId: 'operationoutcome-profile'
resource: 'OperationOutcome'
resourceOperator: 'equals'
2 3
assertProfileIfResource
validateProfileId: 'resource-profile'
resource: 'CareTeam'
resourceOperator: 'equals'
2 3
ruleset-updateok-headers-body 2 3
Id Params Version Latest
assertContentTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'notEmpty'
bodyOperator: 'notEmpty'
3 4
assertContentTypeMimeTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertContentTypeCharsetIfBody
header: 'Content-Type'
headerExpectedValue: 'charset=utf-8'
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertResourceTypesIfBody
resource: 'CareTeam,OperationOutcome'
resourceOperator: 'in'
bodyOperator: 'notEmpty'
3 4
assertProfileIfOperationOutcome
validateProfileId: 'operationoutcome-profile'
resource: 'OperationOutcome'
resourceOperator: 'equals'
2 3
assertProfileIfResource
validateProfileId: 'resource-profile'
resource: 'CareTeam'
resourceOperator: 'equals'
2 3
assertVersionIdIfResourceAndSupported
fhirPath
xPath: 'meta/versionId'
jsonPath: '.meta.versionId'
pathOperator: 'notEmpty'
pathExpectedValue
resource: 'CareTeam'
resourceOperator: 'equals'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
2 3
ruleset-vreadok-headers-body-if-versioning 3 4
Id Params Version Latest
assertResponseCodeOkIfVersioning
responseCode: '200'
responseCodeOperator: 'equals'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
resource: 'CareTeam'
2 3
assertResponseCodeNotFoundIfNotVersioning
responseCode: '404'
responseCodeOperator: 'equals'
confFhirPath: 'rest.resource.where(type = '${param.resource}').versioning.exists() and rest.resource.where(type = '${param.resource}').versioning = 'no-version''
confXPath
confJsonPath
confOperator
confPathValue
confPathLabel: 'no versioning'
resource: 'CareTeam'
2 3
assertETagIfSupported
header: 'ETag'
headerExpectedValue
headerOperator: 'notEmpty'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
resource: 'CareTeam'
3 4
assertLastModifiedIfSupported
header: 'Last-Modified'
headerExpectedValue
headerOperator: 'notEmpty'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
resource: 'CareTeam'
3 4
assertContentTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'notEmpty'
bodyOperator: 'notEmpty'
3 4
assertContentTypeMimeTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertContentTypeCharsetIfBody
header: 'Content-Type'
headerExpectedValue: 'charset=utf-8'
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertResourceTypesIfBody
resource: 'CareTeam,OperationOutcome'
resourceOperator: 'in'
bodyOperator: 'notEmpty'
3 4
assertProfileIfOperationOutcome
validateProfileId: 'operationoutcome-profile'
resource: 'OperationOutcome'
resourceOperator: 'equals'
2 3
assertProfileIfResource
validateProfileId: 'resource-profile'
resource: 'CareTeam'
resourceOperator: 'equals'
2 3
assertPathIfResource
fhirPath
xPath
jsonPath
pathOperator: 'equals'
pathExpectedValue
resource
resourceOperator: 'equals'
2 3
ruleset-deletevalid-headers-body 3 4
Id Params Version Latest
assertResponseCodeOkIfBody
responseCode: '200'
responseCodeOperator: 'equals'
bodyOperator: 'notEmpty'
2 3
assertResponseCodeNoContentIfNoBody
responseCode: '204,404'
responseCodeOperator: 'in'
bodyOperator: 'empty'
2 3
assertETagIfSupported
header: 'ETag'
headerExpectedValue
headerOperator: 'notEmpty'
confFhirPath
confXPath: 'rest[mode/@value='server']/resource[type/@value='${param.resource}']/versioning'
confJsonPath: '.rest[?(@.mode=='server')].resource[?(@.type=='${param.resource}')].versioning'
confOperator: 'in'
confPathValue: 'versioned,versioned-update'
confPathLabel: 'versioning'
3 4
assertContentTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'notEmpty'
bodyOperator: 'notEmpty'
3 4
assertContentTypeMimeTypeIfBody
header: 'Content-Type'
headerExpectedValue
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertContentTypeCharsetIfBody
header: 'Content-Type'
headerExpectedValue: 'charset=utf-8'
headerOperator: 'contains'
bodyOperator: 'notEmpty'
3 4
assertOperationOutcomeIfError
resource: 'OperationOutcome'
resourceOperator: 'equals'
responseCode: '399'
responseCodeOperator: 'greaterThan'
2 3
assertProfileIfOperationOutcome
validateProfileId: 'operationoutcome-profile'
resource: 'OperationOutcome'
resourceOperator: 'equals'
2 3