EDS Test Scripts
0.1.0 - ci-build Denmark flag

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

: Test for ANS.3 - CPR Searching XML format - JSON Representation

Active as of 2025-08-18

Raw json | Download

{
  "resourceType" : "TestScript",
  "id" : "Server-ANS3TestCprSearch-xml",
  "meta" : {
    "profile" : [
      "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript"
    ]
  },
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: TestScript Server-ANS3TestCprSearch-xml</b></p><a name=\"Server-ANS3TestCprSearch-xml\"> </a><a name=\"hcServer-ANS3TestCprSearch-xml\"> </a><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\"/><p style=\"margin-bottom: 0px\">Profile: <code>http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript</code></p></div><p><b>url</b>: <a href=\"TestScript-Server-ANS3TestCprSearch-xml.html\">TestScript Server-ANS3TestCprSearch-xml</a></p><p><b>version</b>: 0.1.0</p><p><b>name</b>: Server-ANS3TestCprSearch-xml</p><p><b>status</b>: Aktiv</p><p><b>date</b>: 2025-08-18</p><p><b>publisher</b>: MedCom</p><p><b>contact</b>: MedCom: <a href=\"https://medcom.dk\">https://medcom.dk</a>,<a href=\"mailto:ehmi@medcom.dk\">ehmi@medcom.dk</a></p><p><b>jurisdiction</b>: <span title=\"Codes:{urn:iso:std:iso:3166 DK}\">Denmark</span></p><p><b>copyright</b>: </p><div><p>MedCom 2025</p>\n</div><h3>Origins</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Index</b></td><td><b>Profile</b></td></tr><tr><td style=\"display: none\">*</td><td>1</td><td><a href=\"http://terminology.hl7.org/7.0.0/CodeSystem-testscript-profile-origin-types.html#testscript-profile-origin-types-FHIR-Client\">Test script profile origin type: FHIR-Client</a> (FHIR Client)</td></tr></table><h3>Destinations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Index</b></td><td><b>Profile</b></td></tr><tr><td style=\"display: none\">*</td><td>1</td><td><a href=\"http://terminology.hl7.org/7.0.0/CodeSystem-testscript-profile-destination-types.html#testscript-profile-destination-types-FHIR-Server\">Test script profile destination type: FHIR-Server</a> (FHIR Server)</td></tr></table><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>EdsPatientDeliveryStatusCreateFixture</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <code>../Fixtures/EdsPatientDeliveryStatusCreateFixture.xml</code></p></blockquote><p><b>profile</b>: <a href=\"https://build.fhir.org/ig/medcomdk/dk-ehmi-eds/StructureDefinition-EdsPatientDeliveryStatus.html\">http://medcomehmi.dk/ig/eds/StructureDefinition/EdsPatientDeliveryStatus</a></p><blockquote><p><b>variable</b></p><p><b>name</b>: RecordedOfResourceToFindInSearch</p><p><b>expression</b>: recorded</p><p><b>sourceId</b>: EdsPatientDeliveryStatusCreateFixture</p></blockquote><blockquote><p><b>variable</b></p><p><b>name</b>: CPROfPatientInFixture</p><p><b>expression</b>: entity.where(type.code = 'ehmiPatient').what.identifier.value</p><p><b>sourceId</b>: EdsPatientDeliveryStatusCreateFixture</p></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>SearchPatientDeliveryStatusWithCPR</blockquote><p><b>name</b>: ANS3 search</p><p><b>description</b>: user story ANS3 search for the created PatientDeliveryStatus object on the SUT with cpr</p><blockquote><p><b>action</b></p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Type</b></td><td><b>Resource</b></td><td><b>Description</b></td><td><b>Accept</b></td><td><b>ContentType</b></td><td><b>Destination</b></td><td><b>EncodeRequestUrl</b></td><td><b>Origin</b></td><td><b>Params</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://terminology.hl7.org/7.0.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-search\">Test script operation code: search</a> (Search)</td><td>AuditEvent</td><td>Search for the PatientDeliveryStatus AuditEvent with the CPR being ${CPROfPatientInFixture}</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>?cpr=${CPROfPatientInFixture}</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Expression</b></td><td><b>Operator</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Ensure the PatientDeliveryStatus AuditEvent is found</td><td>response</td><td>Bundle.entry.where(resource.resourceType = 'AuditEvent' and resource.recorded = '${RecordedOfResourceToFindInSearch}').count()</td><td>equals</td><td>1</td><td>false</td></tr></table></blockquote></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>SearchPatientDeliveryStatusInvalidCPR</blockquote><p><b>name</b>: ANS3 invalid search</p><p><b>description</b>: user story ANS3 search for the created PatientDeliveryStatus object on the SUT with an invalid CPR. Not expecting to find it</p><blockquote><p><b>action</b></p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Type</b></td><td><b>Resource</b></td><td><b>Description</b></td><td><b>Accept</b></td><td><b>ContentType</b></td><td><b>Destination</b></td><td><b>EncodeRequestUrl</b></td><td><b>Origin</b></td><td><b>Params</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://terminology.hl7.org/7.0.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-search\">Test script operation code: search</a> (Search)</td><td>AuditEvent</td><td>Search for the PatientDeliveryStatus AuditEvent with an invalid CPR</td><td>xml</td><td>xml</td><td>1</td><td>true</td><td>1</td><td>?cpr=invalid</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Expression</b></td><td><b>Operator</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td>Ensure the PatientDeliveryStatus AuditEvent is not found with an invalid CPR</td><td>response</td><td>Bundle.entry.where(resource.resourceType = 'AuditEvent' and resource.recorded = '${RecordedOfResourceToFindInSearch}').count()</td><td>equals</td><td>0</td><td>false</td></tr></table></blockquote></blockquote></div>"
  },
  "url" : "http://medcomehmi.dk/ig/edstestscripts/Server-ANS3TestCprSearch-xml",
  "version" : "0.1.0",
  "name" : "Server-ANS3TestCprSearch-xml",
  "status" : "active",
  "date" : "2025-08-18",
  "publisher" : "MedCom",
  "contact" : [
    {
      "name" : "MedCom",
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://medcom.dk"
        },
        {
          "system" : "email",
          "value" : "ehmi@medcom.dk"
        }
      ]
    }
  ],
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "urn:iso:std:iso:3166",
          "code" : "DK",
          "display" : "Denmark"
        }
      ]
    }
  ],
  "copyright" : "MedCom 2025",
  "origin" : [
    {
      "index" : 1,
      "profile" : {
        "system" : "http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types",
        "code" : "FHIR-Client"
      }
    }
  ],
  "destination" : [
    {
      "index" : 1,
      "profile" : {
        "system" : "http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types",
        "code" : "FHIR-Server"
      }
    }
  ],
  "fixture" : [
    {
      "id" : "EdsPatientDeliveryStatusCreateFixture",
      "autocreate" : false,
      "autodelete" : false,
      "resource" : {
        "reference" : "../Fixtures/EdsPatientDeliveryStatusCreateFixture.xml"
      }
    }
  ],
  "profile" : [
    {
      🔗 "id" : "eds-patient-delivery-status",
      "reference" : "http://medcomehmi.dk/ig/eds/StructureDefinition/EdsPatientDeliveryStatus"
    }
  ],
  "variable" : [
    {
      "name" : "RecordedOfResourceToFindInSearch",
      "expression" : "recorded",
      "sourceId" : "EdsPatientDeliveryStatusCreateFixture"
    },
    {
      "name" : "CPROfPatientInFixture",
      "expression" : "entity.where(type.code = 'ehmiPatient').what.identifier.value",
      "sourceId" : "EdsPatientDeliveryStatusCreateFixture"
    }
  ],
  "test" : [
    {
      "id" : "SearchPatientDeliveryStatusWithCPR",
      "name" : "ANS3 search",
      "description" : "user story ANS3 search for the created PatientDeliveryStatus object on the SUT with cpr",
      "action" : [
        {
          "operation" : {
            "type" : {
              "system" : "http://terminology.hl7.org/CodeSystem/testscript-operation-codes",
              "code" : "search"
            },
            "resource" : "AuditEvent",
            "description" : "Search for the PatientDeliveryStatus AuditEvent with the CPR being ${CPROfPatientInFixture}",
            "accept" : "xml",
            "contentType" : "xml",
            "destination" : 1,
            "encodeRequestUrl" : true,
            "origin" : 1,
            "params" : "?cpr=${CPROfPatientInFixture}"
          }
        },
        {
          "assert" : {
            "description" : "Ensure the PatientDeliveryStatus AuditEvent is found",
            "direction" : "response",
            "expression" : "Bundle.entry.where(resource.resourceType = 'AuditEvent' and resource.recorded = '${RecordedOfResourceToFindInSearch}').count()",
            "operator" : "equals",
            "value" : "1",
            "warningOnly" : false
          }
        }
      ]
    },
    {
      "id" : "SearchPatientDeliveryStatusInvalidCPR",
      "name" : "ANS3 invalid search",
      "description" : "user story ANS3 search for the created PatientDeliveryStatus object on the SUT with an invalid CPR. Not expecting to find it",
      "action" : [
        {
          "operation" : {
            "type" : {
              "system" : "http://terminology.hl7.org/CodeSystem/testscript-operation-codes",
              "code" : "search"
            },
            "resource" : "AuditEvent",
            "description" : "Search for the PatientDeliveryStatus AuditEvent with an invalid CPR",
            "accept" : "xml",
            "contentType" : "xml",
            "destination" : 1,
            "encodeRequestUrl" : true,
            "origin" : 1,
            "params" : "?cpr=invalid"
          }
        },
        {
          "assert" : {
            "description" : "Ensure the PatientDeliveryStatus AuditEvent is not found with an invalid CPR",
            "direction" : "response",
            "expression" : "Bundle.entry.where(resource.resourceType = 'AuditEvent' and resource.recorded = '${RecordedOfResourceToFindInSearch}').count()",
            "operator" : "equals",
            "value" : "0",
            "warningOnly" : false
          }
        }
      ]
    }
  ]
}