FHIR Frog AU Core Conformance Tests
0.1.0 - draft
FHIR Frog AU Core Conformance Tests, published by FHIR Frog. 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/jgsuess/au-core-tests/ and changes regularly. See the Directory of published versions
| Official URL: http://fhirfrog.org/fhir/au-core-tests/TestScript/au-core-smokingstatus | Version: 0.1.0 | |||
| Active as of 2026-08-16 | Computable Name: AUCoreSmokingStatus | |||
Covers the AU Core Smoking Status Observation (au-core-smokingstatus, 2.0.0) requirements identified in fhirfrog/au-core-compiler#24 (AUC-026): read, search by patient+code/patient+category/patient+category+date (mirroring au-fhir-core-inferno's smokingstatus group), must-support element presence across all 8 MS elements (status, category, category:socialHistory, code, subject, effective[x], value[x], dataAbsentReason), and profile conformance validation. Both category (fixed social-history) and code (fixed SNOMED 1747861000168109 'Tobacco smoking status') are pattern-constrained to a single value by the profile itself, so both fixtures share identical category/code - only value[x] vs dataAbsentReason differs between them, mirroring the profile's au-core-obs-01 condition on value[x] (value or dataAbsentReason must be present). Per issue #24's own scoping call, this profile has no obligation-extension or negative-testing complexity beyond that presence pairing - unlike fhirfrog/au-core-compiler#21/#22, no dedicated ObligationNoError/responseCode test is included here, matching the simpler pattern already established for fhirfrog/au-core-compiler#6-#20.
url: TestScript AU Core Smoking Status — SHALL-level conformance
version: 0.1.0
name: AUCoreSmokingStatus
title: AU Core Smoking Status — SHALL-level conformance
status: Active
date: 2026-08-16 05:55:37+0000
publisher: FHIR Frog
contact: FHIR Frog: https://gitlab.com/fhirfrog
description:
Covers the AU Core Smoking Status Observation (au-core-smokingstatus, 2.0.0) requirements identified in fhirfrog/au-core-compiler#24 (AUC-026): read, search by patient+code/patient+category/patient+category+date (mirroring au-fhir-core-inferno's smokingstatus group), must-support element presence across all 8 MS elements (status, category, category:socialHistory, code, subject, effective[x], value[x], dataAbsentReason), and profile conformance validation. Both category (fixed social-history) and code (fixed SNOMED 1747861000168109 'Tobacco smoking status') are pattern-constrained to a single value by the profile itself, so both fixtures share identical category/code - only value[x] vs dataAbsentReason differs between them, mirroring the profile's au-core-obs-01 condition on value[x] (value or dataAbsentReason must be present). Per issue #24's own scoping call, this profile has no obligation-extension or negative-testing complexity beyond that presence pairing - unlike fhirfrog/au-core-compiler#21/#22, no dedicated ObligationNoError/responseCode test is included here, matching the simpler pattern already established for fhirfrog/au-core-compiler#6-#20.
fixture
id
patient-fixtureautocreate: true
autodelete: true
resource:
au-core-patient-conformant
fixture
id
smokingstatus-fixtureautocreate: true
autodelete: true
resource:
au-core-smokingstatus-conformant
fixture
id
smokingstatus-absent-fixtureautocreate: true
autodelete: true
resource:
au-core-smokingstatus-absent
variable
name: patientId
path: Patient.id
sourceId: patient-fixture
variable
name: smokingStatusId
path: Observation.id
sourceId: smokingstatus-fixture
variable
name: smokingStatusAbsentId
path: Observation.id
sourceId: smokingstatus-absent-fixture
test
name: Read
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: read (Read) Observation true /${smokingStatusId} action
Asserts
Response WarningOnly okay false
test
name: SearchByPatientCode
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: search (Search) Observation true ?patient=Patient/${patientId}&code=http://snomed.info/sct|1747861000168109 action
Asserts
Response WarningOnly okay false action
Asserts
Expression WarningOnly Bundle.entry.resource.ofType(Observation).code.coding.code.where($this = '1747861000168109').exists() false
test
name: SearchByPatientCategory
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: search (Search) Observation true ?patient=Patient/${patientId}&category=http://terminology.hl7.org/CodeSystem/observation-category|social-history action
Asserts
Response WarningOnly okay false action
Asserts
Expression WarningOnly Bundle.entry.resource.ofType(Observation).category.coding.code.where($this = 'social-history').exists() false
test
name: SearchByPatientCategoryDate
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: search (Search) Observation true ?patient=Patient/${patientId}&category=http://terminology.hl7.org/CodeSystem/observation-category|social-history&date=2026-01-10 action
Asserts
Response WarningOnly okay false action
Asserts
Expression WarningOnly Bundle.entry.resource.ofType(Observation).code.coding.code.where($this = '1747861000168109').exists() false
test
name: MustSupport
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: read (Read) Observation true /${smokingStatusId} action
Asserts
Expression WarningOnly Observation.status.exists() false action
Asserts
Expression WarningOnly Observation.category.exists() false action
Asserts
Expression WarningOnly Observation.category.coding.code.where($this = 'social-history').exists() false action
Asserts
Expression WarningOnly Observation.code.coding.code.where($this = '1747861000168109').exists() false action
Asserts
Expression WarningOnly Observation.subject.exists() false action
Asserts
Expression WarningOnly Observation.effective.exists() false action
Asserts
Expression WarningOnly Observation.value.exists() false
test
name: MustSupportAbsent
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: read (Read) Observation true /${smokingStatusAbsentId} action
Asserts
Expression WarningOnly Observation.dataAbsentReason.exists() false
test
name: ProfileValidation
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: read (Read) Observation true /${smokingStatusId} action
Asserts
ValidateProfileId WarningOnly http://hl7.org.au/fhir/core/StructureDefinition/au-core-smokingstatus false
test
name: ProfileValidationAbsent
action
Operations
Type Resource EncodeRequestUrl Params Test script operation code: read (Read) Observation true /${smokingStatusAbsentId} action
Asserts
ValidateProfileId WarningOnly http://hl7.org.au/fhir/core/StructureDefinition/au-core-smokingstatus false