Large diffs are not rendered by default.

@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0810"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE684C1D19A789BA00B5A2C0"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-OSX"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</BuildActionEntry>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "NO"
buildForArchiving = "NO"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE684C2819A789BA00B5A2C0"
BuildableName = "SwiftFHIRTests.xctest"
BlueprintName = "SwiftFHIRTests"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE684C2819A789BA00B5A2C0"
BuildableName = "SwiftFHIRTests.xctest"
BlueprintName = "SwiftFHIRTests"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
<LocationScenarioReference
identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier"
referenceType = "1">
</LocationScenarioReference>
</TestableReference>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE684C1D19A789BA00B5A2C0"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-OSX"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE684C1D19A789BA00B5A2C0"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-OSX"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE684C1D19A789BA00B5A2C0"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-OSX"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>
@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0810"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE6DA7CD1A5D4B1000E00708"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-iOS"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</BuildActionEntry>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "NO"
buildForArchiving = "NO"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE6DA85C1A5D4B3A00E00708"
BuildableName = "SwiftFHIRiOSTests.xctest"
BlueprintName = "SwiftFHIRiOSTests"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE6DA85C1A5D4B3A00E00708"
BuildableName = "SwiftFHIRiOSTests.xctest"
BlueprintName = "SwiftFHIRiOSTests"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE6DA7CD1A5D4B1000E00708"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-iOS"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE6DA7CD1A5D4B1000E00708"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-iOS"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "EE6DA7CD1A5D4B1000E00708"
BuildableName = "SwiftFHIR.framework"
BlueprintName = "SwiftFHIR-iOS"
ReferencedContainer = "container:SwiftFHIR.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>
@@ -0,0 +1,7 @@
{
"resourceType": "MedicationOrder",
"id": "order-ref-absolute",
"medicationReference": {
"reference": "https://fhir-open-api-dstu2.smarthealthit.org/Medication/1"
}
}
@@ -0,0 +1,78 @@
{
"resourceType": "Bundle",
"type": "collection",
"entry": [
{
"fullUrl": "https://fhir.smarthealthit.org/Patient/23",
"resource": {
"resourceType": "Patient",
"id": "23",
"name": [
{
"given": ["Darth"],
"family": ["Vader"]
},
{
"given": ["Anakin"],
"family": ["Skywalker"]
}
]
}
},
{
"fullUrl": "urn:uuid:04121321-4af5-424c-a0e1-ed3aab1c349d",
"resource": {
"resourceType": "Patient",
"name": [
{
"given": ["Ben"],
"family": ["Kenobi"]
},
{
"given": ["Obi-Wan"],
"family": ["Kenobi"]
}
]
}
},
{
"fullUrl": "https://fhir.smarthealthit.org/Observation/123",
"resource": {
"resourceType": "Observation",
"id": "123",
"subject": {
"reference": "Patient/23"
},
"code": {},
"status": "active",
"comment": "Observation 123, referencing subject relatively"
}
},
{
"fullUrl": "https://fhir.smarthealthit.org/Observation/56",
"resource": {
"resourceType": "Observation",
"id": "56",
"subject": {
"reference": "urn:uuid:04121321-4af5-424c-a0e1-ed3aab1c349d"
},
"code": {},
"status": "active",
"comment": "Observation 56, referencing subject via UUID"
}
},
{
"fullUrl": "https://fhir.smarthealthit.org/Observation/34",
"resource": {
"resourceType": "Observation",
"id": "34",
"subject": {
"reference": "https://fhir.smarthealthit.org/dev/Patient/99"
},
"code": {},
"status": "active",
"comment": "Observation 34 with absolute subject reference to different endpoint"
}
}
]
}
@@ -0,0 +1,24 @@
{
"resourceType": "MedicationOrder",
"id": "order-ref-contained",
"contained": [
{
"resourceType": "Medication",
"id": "med",
"code": {
"text": "Red Pill"
},
"manufacturer": {
"reference": "#morpheus"
}
},
{
"resourceType": "Organization",
"id": "morpheus",
"name": "Morpheus Co."
}
],
"medicationReference": {
"reference": "#med"
}
}
@@ -0,0 +1,14 @@
{
"resourceType": "MedicationOrder",
"id": "order-ref-contained-wrong",
"contained": [
{
"resourceType": "Organization",
"id": "morpheus",
"name": "Morpheus Co."
}
],
"medicationReference": {
"reference": "#morpheus"
}
}
@@ -0,0 +1,7 @@
{
"resourceType": "MedicationOrder",
"id": "order-ref-relative",
"medicationReference": {
"reference": "Medication/med-1234"
}
}
@@ -0,0 +1,30 @@
//
// ExtensionsTest.swift
// SwiftFHIR
//
// Created by Pascal Pfiffner on 8/22/14.
// 2014, SMART Platforms.
//
import XCTest
import SwiftFHIR


class ExtensionsTest: XCTestCase
{
func testURL() {
let url1 = URL(string: "http://api.io")
let url2 = URL(json: "http://api.io")
XCTAssertNotNil(url1)
XCTAssertNotNil(url2)
XCTAssertEqual(url1!, url2!)

let url = URL.instantiate(fromArray: [
"http://api.io",
"https://smartplatforms.org",
"not a URL",
"ftp://plate.org"
])
XCTAssertTrue(3 == url.count, "Expecting 3 URLs")
}
}
@@ -0,0 +1,69 @@
//
// FHIRSearchTests.swift
// SMART-on-FHIR
//
// Created by Pascal Pfiffner on 7/11/14.
// 2014, SMART Platforms.
//
import XCTest
import SwiftFHIR


class FHIRSearchTests: XCTestCase
{
func testConstruction() {
let base = "https://fhir.me/"

var srch = Patient.search([])
XCTAssertEqual("Patient", srch.construct())

srch = Patient.search(["name": ["$exact": "Alex"]])
XCTAssertEqual("Patient?name:exact=Alex", srch.construct())

srch = Patient.search(["name": "Alex", "birthdate": "1982-10-15"])
var url = base + srch.construct()
var pairs = URL(string: url)!.queryPairs()
XCTAssertTrue(pairs.contains("name=Alex"))
XCTAssertTrue(pairs.contains("birthdate=1982-10-15"))

srch = Patient.search(["name": "Alex", "birthdate": ["$null": false]])
url = base + srch.construct()
pairs = URL(string: url)!.queryPairs()
XCTAssertTrue(pairs.contains("name=Alex"), "The query should contain \"name=Alex\" but doesn't: \(pairs)")
XCTAssertTrue(pairs.contains("birthdate:missing=false"), "The query should contain \"birthdate:missing=false\" but doesn't: \(pairs)")

srch = Patient.search(["name": "Alex", "birthdate": ["$missing": false]])
url = base + srch.construct()
pairs = URL(string: url)!.queryPairs()
XCTAssertTrue(pairs.contains("name=Alex"), "The query should contain \"name=Alex\" but doesn't: \(pairs)")
XCTAssertTrue(pairs.contains("birthdate:missing=false"), "The query should contain \"birthdate:missing=false\" but doesn't: \(pairs)")

srch = Patient.search(["name": "Alex", "birthdate": ["$missing": false], "gender": ["$text": "male"]])
url = base + srch.construct()
pairs = URL(string: url)!.queryPairs()
XCTAssertTrue(pairs.contains("name=Alex"), "The query should contain \"name=Alex\" but doesn't: \(pairs)")
XCTAssertTrue(pairs.contains("birthdate:missing=false"), "The query should contain \"birthdate:missing=false\" but doesn't: \(pairs)")
XCTAssertTrue(pairs.contains("gender:text=male"), "The query should contain \"gender:text=male\" but doesn't: \(pairs)")

srch = FHIRSearch(query: ["subject": ["$type": "Patient", "name": "maud", "birthDate": ["$gt": "1970"]]])
url = base + srch.construct()
pairs = URL(string: url)!.queryPairs()
XCTAssertTrue(pairs.contains("subject:Patient.name=maud"), "The query should contain \"subject:Patient.name=maud\" but doesn't: \(pairs)")
XCTAssertTrue(pairs.contains("subject:Patient.birthDate=>1970"), "The query should contain \"subject:Patient.birthDate=>1970\" but doesn't: \(pairs)")
}
}


extension URL
{
func queryPairs() -> [String] {
if let comp = URLComponents(url: self, resolvingAgainstBaseURL: false) {
if let qry = comp.query {
return qry.characters.split() {$0 == "&"}.map { String($0) }
}
}
return []
}
}

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>
@@ -0,0 +1,45 @@
//
// AccountTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class AccountTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Account {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Account {
let instance = SwiftFHIR.Account(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testAccount1() {
do {
let instance = try runAccount1()
try runAccount1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Account successfully, but threw")
}
}

@discardableResult
func runAccount1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Account {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "account-example.json")

XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.text?.div, "<div>[Put rendering here]</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,80 @@
//
// AllergyIntoleranceTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class AllergyIntoleranceTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.AllergyIntolerance {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.AllergyIntolerance {
let instance = SwiftFHIR.AllergyIntolerance(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testAllergyIntolerance1() {
do {
let instance = try runAllergyIntolerance1()
try runAllergyIntolerance1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test AllergyIntolerance successfully, but threw")
}
}

@discardableResult
func runAllergyIntolerance1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.AllergyIntolerance {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "allergyintolerance-example.json")

XCTAssertEqual(inst.category, "food")
XCTAssertEqual(inst.criticality, "high")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://acme.com/ids/patients/risks")
XCTAssertEqual(inst.identifier?[0].value, "49476534")
XCTAssertEqual(inst.lastOccurence?.description, "2012-06")
XCTAssertEqual(inst.note?[0].text, "The criticality is high becasue of the observed anaphylactic reaction when challenged with cashew extract.")
XCTAssertEqual(inst.onset?.description, "2004")
XCTAssertEqual(inst.patient?.reference, "Patient/example")
XCTAssertEqual(inst.reaction?[0].certainty, "confirmed")
XCTAssertEqual(inst.reaction?[0].description_fhir, "Challenge Protocol. Severe reaction to subcutaneous cashew extract. Epinephrine administered")
XCTAssertEqual(inst.reaction?[0].exposureRoute?.coding?[0].code, "34206005")
XCTAssertEqual(inst.reaction?[0].exposureRoute?.coding?[0].display, "Subcutaneous route")
XCTAssertEqual(inst.reaction?[0].exposureRoute?.coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.reaction?[0].manifestation?[0].coding?[0].code, "39579001")
XCTAssertEqual(inst.reaction?[0].manifestation?[0].coding?[0].display, "Anaphylactic reaction")
XCTAssertEqual(inst.reaction?[0].manifestation?[0].coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.reaction?[0].onset?.description, "2012-06-12")
XCTAssertEqual(inst.reaction?[0].severity, "severe")
XCTAssertEqual(inst.reaction?[0].substance?.coding?[0].code, "C3214954")
XCTAssertEqual(inst.reaction?[0].substance?.coding?[0].display, "cashew nut allergenic extract Injectable Product")
XCTAssertEqual(inst.reaction?[0].substance?.coding?[0].system?.absoluteString, "http://www.nlm.nih.gov/research/umls/rxnorm")
XCTAssertEqual(inst.reaction?[1].certainty, "likely")
XCTAssertEqual(inst.reaction?[1].manifestation?[0].coding?[0].code, "64305001")
XCTAssertEqual(inst.reaction?[1].manifestation?[0].coding?[0].display, "Urticaria")
XCTAssertEqual(inst.reaction?[1].manifestation?[0].coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.reaction?[1].note?[0].text, "The patient reports that the onset of urticaria was within 15 minutes of eating cashews.")
XCTAssertEqual(inst.reaction?[1].onset?.description, "2004")
XCTAssertEqual(inst.reaction?[1].severity, "moderate")
XCTAssertEqual(inst.recordedDate?.description, "2014-10-09T14:58:00+11:00")
XCTAssertEqual(inst.recorder?.reference, "Practitioner/example")
XCTAssertEqual(inst.reporter?.reference, "Patient/example")
XCTAssertEqual(inst.status, "confirmed")
XCTAssertEqual(inst.substance?.coding?[0].code, "227493005")
XCTAssertEqual(inst.substance?.coding?[0].display, "Cashew nuts")
XCTAssertEqual(inst.substance?.coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.type, "allergy")

return inst
}
}
@@ -0,0 +1,83 @@
//
// AppointmentResponseTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class AppointmentResponseTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.AppointmentResponse {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.AppointmentResponse {
let instance = SwiftFHIR.AppointmentResponse(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testAppointmentResponse1() {
do {
let instance = try runAppointmentResponse1()
try runAppointmentResponse1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test AppointmentResponse successfully, but threw")
}
}

@discardableResult
func runAppointmentResponse1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.AppointmentResponse {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "appointmentresponse-example-req.json")

XCTAssertEqual(inst.actor?.display, "Dr Adam Careful")
XCTAssertEqual(inst.actor?.reference, "Practitioner/example")
XCTAssertEqual(inst.appointment?.display, "Brian MRI results discussion")
XCTAssertEqual(inst.appointment?.reference, "Appointment/examplereq")
XCTAssertEqual(inst.comment, "can't we try for this time, can't do mornings")
XCTAssertEqual(inst.end?.description, "2013-12-25T13:30:00Z")
XCTAssertEqual(inst.id, "exampleresp")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://example.org/sampleappointmentresponse-identifier")
XCTAssertEqual(inst.identifier?[0].value, "response123")
XCTAssertEqual(inst.participantStatus, "tentative")
XCTAssertEqual(inst.participantType?[0].coding?[0].code, "ATND")
XCTAssertEqual(inst.participantType?[0].coding?[0].system?.absoluteString, "http://hl7.org/fhir/v3/ParticipationType")
XCTAssertEqual(inst.start?.description, "2013-12-25T13:15:00Z")
XCTAssertEqual(inst.text?.div, "<div>Accept Brian MRI results discussion</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}

func testAppointmentResponse2() {
do {
let instance = try runAppointmentResponse2()
try runAppointmentResponse2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test AppointmentResponse successfully, but threw")
}
}

@discardableResult
func runAppointmentResponse2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.AppointmentResponse {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "appointmentresponse-example.json")

XCTAssertEqual(inst.actor?.display, "Peter James Chalmers")
XCTAssertEqual(inst.actor?.reference, "Patient/example")
XCTAssertEqual(inst.appointment?.display, "Brian MRI results discussion")
XCTAssertEqual(inst.appointment?.reference, "Appointment/example")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.participantStatus, "accepted")
XCTAssertEqual(inst.text?.div, "<div>Accept Brian MRI results discussion</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,184 @@
//
// AppointmentTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class AppointmentTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Appointment {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Appointment {
let instance = SwiftFHIR.Appointment(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testAppointment1() {
do {
let instance = try runAppointment1()
try runAppointment1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Appointment successfully, but threw")
}
}

@discardableResult
func runAppointment1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Appointment {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "appointment-example-request.json")

XCTAssertEqual(inst.appointmentType?.coding?[0].code, "wi")
XCTAssertEqual(inst.appointmentType?.coding?[0].display, "Walk in")
XCTAssertEqual(inst.appointmentType?.coding?[0].system?.absoluteString, "http://example.org/appointment-type")
XCTAssertEqual(inst.comment, "Further expand on the results of the MRI and determine the next actions that may be appropriate.")
XCTAssertEqual(inst.created?.description, "2015-12-02")
XCTAssertEqual(inst.description_fhir, "Discussion on the results of your recent MRI")
XCTAssertEqual(inst.id, "examplereq")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://example.org/sampleappointment-identifier")
XCTAssertEqual(inst.identifier?[0].value, "123")
XCTAssertEqual(inst.minutesDuration, UInt(15))
XCTAssertEqual(inst.participant?[0].actor?.display, "Peter James Chalmers")
XCTAssertEqual(inst.participant?[0].actor?.reference, "Patient/example")
XCTAssertEqual(inst.participant?[0].required, "required")
XCTAssertEqual(inst.participant?[0].status, "needs-action")
XCTAssertEqual(inst.participant?[1].required, "required")
XCTAssertEqual(inst.participant?[1].status, "needs-action")
XCTAssertEqual(inst.participant?[1].type?[0].coding?[0].code, "ATND")
XCTAssertEqual(inst.participant?[1].type?[0].coding?[0].system?.absoluteString, "http://hl7.org/fhir/v3/ParticipationType")
XCTAssertEqual(inst.participant?[2].actor?.display, "South Wing, second floor")
XCTAssertEqual(inst.participant?[2].actor?.reference, "Location/1")
XCTAssertEqual(inst.participant?[2].required, "required")
XCTAssertEqual(inst.participant?[2].status, "accepted")
XCTAssertEqual(inst.priority, UInt(5))
XCTAssertEqual(inst.reason?.coding?[0].code, "413095006")
XCTAssertEqual(inst.reason?.coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.reason?.text, "Clinical Review")
XCTAssertEqual(inst.serviceCategory?.coding?[0].code, "gp")
XCTAssertEqual(inst.serviceCategory?.coding?[0].display, "General Practice")
XCTAssertEqual(inst.serviceCategory?.coding?[0].system?.absoluteString, "http://example.org/service-category")
XCTAssertEqual(inst.slot?[0].reference, "Slot/example")
XCTAssertEqual(inst.specialty?[0].coding?[0].code, "gp")
XCTAssertEqual(inst.specialty?[0].coding?[0].display, "General Practice")
XCTAssertEqual(inst.specialty?[0].coding?[0].system?.absoluteString, "http://example.org/specialty")
XCTAssertEqual(inst.status, "proposed")
XCTAssertEqual(inst.text?.div, "<div>Brian MRI results discussion</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}

func testAppointment2() {
do {
let instance = try runAppointment2()
try runAppointment2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Appointment successfully, but threw")
}
}

@discardableResult
func runAppointment2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Appointment {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "appointment-example.json")

XCTAssertEqual(inst.appointmentType?.coding?[0].code, "follow")
XCTAssertEqual(inst.appointmentType?.coding?[0].display, "Followup")
XCTAssertEqual(inst.appointmentType?.coding?[0].system?.absoluteString, "http://example.org/appointment-type")
XCTAssertEqual(inst.comment, "Further expand on the results of the MRI and determine the next actions that may be appropriate.")
XCTAssertEqual(inst.created?.description, "2013-10-10")
XCTAssertEqual(inst.description_fhir, "Discussion on the results of your recent MRI")
XCTAssertEqual(inst.end?.description, "2013-12-10T11:00:00Z")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.participant?[0].actor?.display, "Peter James Chalmers")
XCTAssertEqual(inst.participant?[0].actor?.reference, "Patient/example")
XCTAssertEqual(inst.participant?[0].required, "required")
XCTAssertEqual(inst.participant?[0].status, "accepted")
XCTAssertEqual(inst.participant?[1].actor?.display, "Dr Adam Careful")
XCTAssertEqual(inst.participant?[1].actor?.reference, "Practitioner/example")
XCTAssertEqual(inst.participant?[1].required, "required")
XCTAssertEqual(inst.participant?[1].status, "accepted")
XCTAssertEqual(inst.participant?[1].type?[0].coding?[0].code, "ATND")
XCTAssertEqual(inst.participant?[1].type?[0].coding?[0].system?.absoluteString, "http://hl7.org/fhir/v3/ParticipationType")
XCTAssertEqual(inst.participant?[2].actor?.display, "South Wing, second floor")
XCTAssertEqual(inst.participant?[2].actor?.reference, "Location/1")
XCTAssertEqual(inst.participant?[2].required, "required")
XCTAssertEqual(inst.participant?[2].status, "accepted")
XCTAssertEqual(inst.priority, UInt(5))
XCTAssertEqual(inst.serviceCategory?.coding?[0].code, "gp")
XCTAssertEqual(inst.serviceCategory?.coding?[0].display, "General Practice")
XCTAssertEqual(inst.serviceCategory?.coding?[0].system?.absoluteString, "http://example.org/service-category")
XCTAssertEqual(inst.serviceType?[0].coding?[0].code, "52")
XCTAssertEqual(inst.serviceType?[0].coding?[0].display, "General Discussion")
XCTAssertEqual(inst.specialty?[0].coding?[0].code, "gp")
XCTAssertEqual(inst.specialty?[0].coding?[0].display, "General Practice")
XCTAssertEqual(inst.specialty?[0].coding?[0].system?.absoluteString, "http://example.org/specialty")
XCTAssertEqual(inst.start?.description, "2013-12-10T09:00:00Z")
XCTAssertEqual(inst.status, "booked")
XCTAssertEqual(inst.text?.div, "<div>Brian MRI results discussion</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}

func testAppointment3() {
do {
let instance = try runAppointment3()
try runAppointment3(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Appointment successfully, but threw")
}
}

@discardableResult
func runAppointment3(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Appointment {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "appointment-example2doctors.json")

XCTAssertEqual(inst.appointmentType?.coding?[0].code, "wi")
XCTAssertEqual(inst.appointmentType?.coding?[0].display, "Walk in")
XCTAssertEqual(inst.appointmentType?.coding?[0].system?.absoluteString, "http://example.org/appointment-type")
XCTAssertEqual(inst.comment, "Clarify the results of the MRI to ensure context of test was correct")
XCTAssertEqual(inst.description_fhir, "Discussion about Peter Chalmers MRI results")
XCTAssertEqual(inst.end?.description, "2013-12-09T11:00:00Z")
XCTAssertEqual(inst.id, "2docs")
XCTAssertEqual(inst.participant?[0].actor?.display, "Peter James Chalmers")
XCTAssertEqual(inst.participant?[0].actor?.reference, "Patient/example")
XCTAssertEqual(inst.participant?[0].required, "information-only")
XCTAssertEqual(inst.participant?[0].status, "accepted")
XCTAssertEqual(inst.participant?[1].actor?.display, "Dr Adam Careful")
XCTAssertEqual(inst.participant?[1].actor?.reference, "Practitioner/example")
XCTAssertEqual(inst.participant?[1].required, "required")
XCTAssertEqual(inst.participant?[1].status, "accepted")
XCTAssertEqual(inst.participant?[2].actor?.display, "Luigi Maas")
XCTAssertEqual(inst.participant?[2].actor?.reference, "Practitioner/f202")
XCTAssertEqual(inst.participant?[2].required, "required")
XCTAssertEqual(inst.participant?[2].status, "accepted")
XCTAssertEqual(inst.participant?[3].actor?.display, "Phone Call")
XCTAssertEqual(inst.participant?[3].required, "information-only")
XCTAssertEqual(inst.participant?[3].status, "accepted")
XCTAssertEqual(inst.priority, UInt(5))
XCTAssertEqual(inst.serviceCategory?.coding?[0].code, "gp")
XCTAssertEqual(inst.serviceCategory?.coding?[0].display, "General Practice")
XCTAssertEqual(inst.serviceCategory?.coding?[0].system?.absoluteString, "http://example.org/service-category")
XCTAssertEqual(inst.serviceType?[0].coding?[0].code, "52")
XCTAssertEqual(inst.serviceType?[0].coding?[0].display, "General Discussion")
XCTAssertEqual(inst.specialty?[0].coding?[0].code, "gp")
XCTAssertEqual(inst.specialty?[0].coding?[0].display, "General Practice")
XCTAssertEqual(inst.specialty?[0].coding?[0].system?.absoluteString, "http://example.org/specialty")
XCTAssertEqual(inst.start?.description, "2013-12-09T09:00:00Z")
XCTAssertEqual(inst.status, "booked")
XCTAssertEqual(inst.text?.div, "<div>Brian MRI results discussion</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}

Large diffs are not rendered by default.

@@ -0,0 +1,126 @@
//
// BasicTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class BasicTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Basic {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Basic {
let instance = SwiftFHIR.Basic(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testBasic1() {
do {
let instance = try runBasic1()
try runBasic1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Basic successfully, but threw")
}
}

@discardableResult
func runBasic1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Basic {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "basic-example-narrative.json")

XCTAssertEqual(inst.code?.text, "Example Narrative Tester")
XCTAssertEqual(inst.id, "basic-example-narrative")
XCTAssertEqual(inst.text?.status, "additional")

return inst
}

func testBasic2() {
do {
let instance = try runBasic2()
try runBasic2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Basic successfully, but threw")
}
}

@discardableResult
func runBasic2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Basic {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "basic-example.json")

XCTAssertEqual(inst.author?.reference, "Practitioner/example")
XCTAssertEqual(inst.code?.coding?[0].code, "referral")
XCTAssertEqual(inst.code?.coding?[0].system?.absoluteString, "http://hl7.org/fhir/basic-resource-type")
XCTAssertEqual(inst.created?.description, "2013-05-14")
XCTAssertEqual(inst.extension_fhir?[0].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/referral#requestingPractitioner")
XCTAssertEqual(inst.extension_fhir?[0].valueReference?.display, "Dokter Bronsig")
XCTAssertEqual(inst.extension_fhir?[0].valueReference?.reference, "Practitioner/f201")
XCTAssertEqual(inst.extension_fhir?[1].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/referral#notes")
XCTAssertEqual(inst.extension_fhir?[1].valueString, "The patient had fever peaks over the last couple of days. He is worried about these peaks.")
XCTAssertEqual(inst.extension_fhir?[2].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/referral#fulfillingEncounter")
XCTAssertEqual(inst.extension_fhir?[2].valueReference?.reference, "Encounter/f201")
XCTAssertEqual(inst.id, "referral")
XCTAssertEqual(inst.modifierExtension?[0].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/referral#referredForService")
XCTAssertEqual(inst.modifierExtension?[0].valueCodeableConcept?.coding?[0].code, "11429006")
XCTAssertEqual(inst.modifierExtension?[0].valueCodeableConcept?.coding?[0].display, "Consultation")
XCTAssertEqual(inst.modifierExtension?[0].valueCodeableConcept?.coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.modifierExtension?[1].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/referral#targetDate")
XCTAssertEqual(inst.modifierExtension?[1].valuePeriod?.end?.description, "2013-04-15")
XCTAssertEqual(inst.modifierExtension?[1].valuePeriod?.start?.description, "2013-04-01")
XCTAssertEqual(inst.modifierExtension?[2].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/referral#status")
XCTAssertEqual(inst.modifierExtension?[2].valueCode, "complete")
XCTAssertEqual(inst.subject?.display, "Roel")
XCTAssertEqual(inst.subject?.reference, "Patient/f201")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}

func testBasic3() {
do {
let instance = try runBasic3()
try runBasic3(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Basic successfully, but threw")
}
}

@discardableResult
func runBasic3(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Basic {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "basic-example2.json")

XCTAssertEqual(inst.code?.coding?[0].code, "UMLCLASSMODEL")
XCTAssertEqual(inst.code?.coding?[0].system?.absoluteString, "http://example.org/do-not-use/fhir-codes#resourceTypes")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[0].url?.absoluteString, "name")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[0].valueString, "Class1")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].extension_fhir?[0].url?.absoluteString, "name")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].extension_fhir?[0].valueString, "attribute1")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].extension_fhir?[1].url?.absoluteString, "minOccurs")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].extension_fhir?[1].valueInteger, 1)
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].extension_fhir?[2].url?.absoluteString, "maxOccurs")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].extension_fhir?[2].valueCode, "*")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[1].url?.absoluteString, "attribute")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].extension_fhir?[0].url?.absoluteString, "name")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].extension_fhir?[0].valueString, "attribute2")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].extension_fhir?[1].url?.absoluteString, "minOccurs")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].extension_fhir?[1].valueInteger, 0)
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].extension_fhir?[2].url?.absoluteString, "maxOccurs")
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].extension_fhir?[2].valueInteger, 1)
XCTAssertEqual(inst.extension_fhir?[0].extension_fhir?[2].url?.absoluteString, "attribute")
XCTAssertEqual(inst.extension_fhir?[0].url?.absoluteString, "http://example.org/do-not-use/fhir-extensions/UMLclass")
XCTAssertEqual(inst.id, "classModel")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,44 @@
//
// BinaryTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class BinaryTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Binary {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Binary {
let instance = SwiftFHIR.Binary(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testBinary1() {
do {
let instance = try runBinary1()
try runBinary1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Binary successfully, but threw")
}
}

@discardableResult
func runBinary1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Binary {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "binary-example.json")

XCTAssertEqual(inst.contentType, "application/pdf")
XCTAssertEqual(inst.id, "example")

return inst
}
}
@@ -0,0 +1,67 @@
//
// BodySiteTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class BodySiteTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.BodySite {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.BodySite {
let instance = SwiftFHIR.BodySite(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testBodySite1() {
do {
let instance = try runBodySite1()
try runBodySite1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test BodySite successfully, but threw")
}
}

@discardableResult
func runBodySite1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.BodySite {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "bodysite-example.json")

XCTAssertEqual(inst.code?.coding?[0].code, "53120007")
XCTAssertEqual(inst.code?.coding?[0].display, "Arm")
XCTAssertEqual(inst.code?.coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.code?.text, "Arm")
XCTAssertEqual(inst.description_fhir, "front of upper left arm directly below the tattoo")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://www.acmehosp.com/bodysites")
XCTAssertEqual(inst.identifier?[0].use, "official")
XCTAssertEqual(inst.identifier?[0].value, "12345")
XCTAssertEqual(inst.image?[0].contentType, "image/png;base64")
XCTAssertEqual(inst.image?[0].title, "ARM")
XCTAssertEqual(inst.modifier?[0].coding?[0].code, "419161000")
XCTAssertEqual(inst.modifier?[0].coding?[0].display, "Unilateral left")
XCTAssertEqual(inst.modifier?[0].coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.modifier?[0].text, "Left")
XCTAssertEqual(inst.modifier?[1].coding?[0].code, "261183002")
XCTAssertEqual(inst.modifier?[1].coding?[0].display, "Upper")
XCTAssertEqual(inst.modifier?[1].coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.modifier?[1].text, "Upper")
XCTAssertEqual(inst.modifier?[2].coding?[0].code, "255549009")
XCTAssertEqual(inst.modifier?[2].coding?[0].display, "Anterior")
XCTAssertEqual(inst.modifier?[2].coding?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.modifier?[2].text, "Anterior")
XCTAssertEqual(inst.patient?.reference, "Patient/example")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}

Large diffs are not rendered by default.

Large diffs are not rendered by default.

@@ -0,0 +1,55 @@
//
// CareTeamTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class CareTeamTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.CareTeam {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.CareTeam {
let instance = SwiftFHIR.CareTeam(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testCareTeam1() {
do {
let instance = try runCareTeam1()
try runCareTeam1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test CareTeam successfully, but threw")
}
}

@discardableResult
func runCareTeam1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.CareTeam {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "careteam-example.json")

XCTAssertEqual(inst.contained?[0].id, "pr1")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.participant?[0].member?.display, "Peter James Chalmers")
XCTAssertEqual(inst.participant?[0].member?.reference, "Patient/example")
XCTAssertEqual(inst.participant?[0].role?.text, "responsiblePerson")
XCTAssertEqual(inst.participant?[1].member?.display, "Dorothy Dietition")
XCTAssertEqual(inst.participant?[1].member?.reference, "#pr1")
XCTAssertEqual(inst.participant?[1].role?.text, "adviser")
XCTAssertEqual(inst.period?.end?.description, "2013-01-01")
XCTAssertEqual(inst.subject?.display, "Peter James Chalmers")
XCTAssertEqual(inst.subject?.reference, "Patient/example")
XCTAssertEqual(inst.text?.div, "<div>Care Team</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,82 @@
//
// ClaimResponseTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class ClaimResponseTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.ClaimResponse {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.ClaimResponse {
let instance = SwiftFHIR.ClaimResponse(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testClaimResponse1() {
do {
let instance = try runClaimResponse1()
try runClaimResponse1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test ClaimResponse successfully, but threw")
}
}

@discardableResult
func runClaimResponse1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.ClaimResponse {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "claimresponse-example.json")

XCTAssertEqual(inst.created?.description, "2014-08-16")
XCTAssertEqual(inst.disposition, "Claim settled as per contract.")
XCTAssertEqual(inst.id, "R3500")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://www.BenefitsInc.com/fhir/remittance")
XCTAssertEqual(inst.identifier?[0].value, "R3500")
XCTAssertEqual(inst.item?[0].adjudication?[0].amount?.code, "USD")
XCTAssertEqual(inst.item?[0].adjudication?[0].amount?.system?.absoluteString, "urn:iso:std:iso:4217")
XCTAssertEqual(inst.item?[0].adjudication?[0].amount?.value, NSDecimalNumber(string: "135.57"))
XCTAssertEqual(inst.item?[0].adjudication?[0].category?.code, "eligible")
XCTAssertEqual(inst.item?[0].adjudication?[1].amount?.code, "USD")
XCTAssertEqual(inst.item?[0].adjudication?[1].amount?.system?.absoluteString, "urn:iso:std:iso:4217")
XCTAssertEqual(inst.item?[0].adjudication?[1].amount?.value, NSDecimalNumber(string: "10.0"))
XCTAssertEqual(inst.item?[0].adjudication?[1].category?.code, "copay")
XCTAssertEqual(inst.item?[0].adjudication?[2].category?.code, "eligpercent")
XCTAssertEqual(inst.item?[0].adjudication?[2].value, NSDecimalNumber(string: "80.0"))
XCTAssertEqual(inst.item?[0].adjudication?[3].amount?.code, "USD")
XCTAssertEqual(inst.item?[0].adjudication?[3].amount?.system?.absoluteString, "urn:iso:std:iso:4217")
XCTAssertEqual(inst.item?[0].adjudication?[3].amount?.value, NSDecimalNumber(string: "100.47"))
XCTAssertEqual(inst.item?[0].adjudication?[3].category?.code, "benefit")
XCTAssertEqual(inst.item?[0].sequenceLinkId, UInt(1))
XCTAssertEqual(inst.organizationIdentifier?.system?.absoluteString, "http://www.jurisdiction.org/insurers")
XCTAssertEqual(inst.organizationIdentifier?.value, "555123")
XCTAssertEqual(inst.outcome, "complete")
XCTAssertEqual(inst.payeeType?.code, "provider")
XCTAssertEqual(inst.payeeType?.system?.absoluteString, "http://hl7.org/fhir/payeetype")
XCTAssertEqual(inst.paymentAmount?.code, "USD")
XCTAssertEqual(inst.paymentAmount?.system?.absoluteString, "urn:iso:std:iso:4217")
XCTAssertEqual(inst.paymentAmount?.value, NSDecimalNumber(string: "100.47"))
XCTAssertEqual(inst.paymentDate?.description, "2014-08-31")
XCTAssertEqual(inst.paymentRef?.system?.absoluteString, "http://www.BenefitsInc.com/fhir/paymentRef")
XCTAssertEqual(inst.paymentRef?.value, "201408-2-1569478")
XCTAssertEqual(inst.requestReference?.reference, "http://www.BenefitsInc.com/fhir/oralhealthclaim/15476332402")
XCTAssertEqual(inst.text?.div, "<div>A human-readable rendering of the ClaimResponse</div>")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.totalBenefit?.code, "USD")
XCTAssertEqual(inst.totalBenefit?.system?.absoluteString, "urn:iso:std:iso:4217")
XCTAssertEqual(inst.totalBenefit?.value, NSDecimalNumber(string: "100.47"))
XCTAssertEqual(inst.totalCost?.code, "USD")
XCTAssertEqual(inst.totalCost?.system?.absoluteString, "urn:iso:std:iso:4217")
XCTAssertEqual(inst.totalCost?.value, NSDecimalNumber(string: "135.57"))

return inst
}
}

Large diffs are not rendered by default.

@@ -0,0 +1,59 @@
//
// ClinicalImpressionTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class ClinicalImpressionTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.ClinicalImpression {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.ClinicalImpression {
let instance = SwiftFHIR.ClinicalImpression(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testClinicalImpression1() {
do {
let instance = try runClinicalImpression1()
try runClinicalImpression1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test ClinicalImpression successfully, but threw")
}
}

@discardableResult
func runClinicalImpression1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.ClinicalImpression {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "clinicalimpression-example.json")

XCTAssertEqual(inst.assessor?.reference, "Practitioner/example")
XCTAssertEqual(inst.date?.description, "2014-12-06T22:33:00+11:00")
XCTAssertEqual(inst.description_fhir, "This 26 yo male patient is brought into ER by ambulance after being involved in a motor vehicle accident")
XCTAssertEqual(inst.finding?[0].item?.coding?[0].code, "850.0")
XCTAssertEqual(inst.finding?[0].item?.coding?[0].system?.absoluteString, "http://hl7.org/fhir/sid/icd-9")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.investigations?[0].code?.text, "Initial Examination")
XCTAssertEqual(inst.investigations?[0].item?[0].display, "deep laceration of the scalp (left temporo-occipital)")
XCTAssertEqual(inst.investigations?[0].item?[1].display, "decreased level of consciousness")
XCTAssertEqual(inst.investigations?[0].item?[2].display, "disoriented to time and place")
XCTAssertEqual(inst.investigations?[0].item?[3].display, "restless")
XCTAssertEqual(inst.patient?.reference, "Patient/example")
XCTAssertEqual(inst.plan?[0].display, "hospital standard closed head injury management protocol ")
XCTAssertEqual(inst.problem?[0].display, "MVA")
XCTAssertEqual(inst.status, "completed")
XCTAssertEqual(inst.summary, "provisional diagnoses of laceration of head and traumatic brain injury (TBI)")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,141 @@
//
// CodeSystemTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class CodeSystemTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.CodeSystem {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.CodeSystem {
let instance = SwiftFHIR.CodeSystem(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testCodeSystem1() {
do {
let instance = try runCodeSystem1()
try runCodeSystem1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test CodeSystem successfully, but threw")
}
}

@discardableResult
func runCodeSystem1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.CodeSystem {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "codesystem-example.json")

XCTAssertTrue(inst.caseSensitive ?? false)
XCTAssertEqual(inst.concept?[0].code, "chol-mmol")
XCTAssertEqual(inst.concept?[0].definition, "Serum Cholesterol, in mmol/L")
XCTAssertEqual(inst.concept?[0].designation?[0].use?.code, "internal-label")
XCTAssertEqual(inst.concept?[0].designation?[0].use?.system?.absoluteString, "http://acme.com/config/fhir/codesystems/internal")
XCTAssertEqual(inst.concept?[0].designation?[0].value, "From ACME POC Testing")
XCTAssertEqual(inst.concept?[0].display, "SChol (mmol/L)")
XCTAssertEqual(inst.concept?[1].code, "chol-mass")
XCTAssertEqual(inst.concept?[1].definition, "Serum Cholesterol, in mg/L")
XCTAssertEqual(inst.concept?[1].designation?[0].use?.code, "internal-label")
XCTAssertEqual(inst.concept?[1].designation?[0].use?.system?.absoluteString, "http://acme.com/config/fhir/codesystems/internal")
XCTAssertEqual(inst.concept?[1].designation?[0].value, "From Paragon Labs")
XCTAssertEqual(inst.concept?[1].display, "SChol (mg/L)")
XCTAssertEqual(inst.concept?[2].code, "chol")
XCTAssertEqual(inst.concept?[2].definition, "Serum Cholesterol")
XCTAssertEqual(inst.concept?[2].designation?[0].use?.code, "internal-label")
XCTAssertEqual(inst.concept?[2].designation?[0].use?.system?.absoluteString, "http://acme.com/config/fhir/codesystems/internal")
XCTAssertEqual(inst.concept?[2].designation?[0].value, "Obdurate Labs uses this with both kinds of units...")
XCTAssertEqual(inst.concept?[2].display, "SChol")
XCTAssertEqual(inst.contact?[0].name, "FHIR project team")
XCTAssertEqual(inst.contact?[0].telecom?[0].system, "other")
XCTAssertEqual(inst.contact?[0].telecom?[0].value, "http://hl7.org/fhir")
XCTAssertEqual(inst.content, "complete")
XCTAssertEqual(inst.date?.description, "2016-01-28")
XCTAssertEqual(inst.description_fhir, "This is an example code system that includes all the ACME codes for serum/plasma cholesterol from v2.36.")
XCTAssertTrue(inst.experimental ?? false)
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.identifier?.system?.absoluteString, "http://acme.com/identifiers/codesystems")
XCTAssertEqual(inst.identifier?.value, "internal-cholesterol-inl")
XCTAssertEqual(inst.meta?.profile?[0].absoluteString, "http://hl7.org/fhir/StructureDefinition/codesystem-shareable-definition")
XCTAssertEqual(inst.name, "ACME Codes for Cholesterol in Serum/Plasma")
XCTAssertEqual(inst.publisher, "HL7 International")
XCTAssertEqual(inst.status, "draft")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.url?.absoluteString, "http://hl7.org/fhir/CodeSystem/example")
XCTAssertEqual(inst.version, "20160128")

return inst
}

func testCodeSystem2() {
do {
let instance = try runCodeSystem2()
try runCodeSystem2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test CodeSystem successfully, but threw")
}
}

@discardableResult
func runCodeSystem2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.CodeSystem {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "codesystem-list-example-codes.json")

XCTAssertTrue(inst.caseSensitive ?? false)
XCTAssertEqual(inst.concept?[0].code, "alerts")
XCTAssertEqual(inst.concept?[0].definition, "A list of alerts for the patient.")
XCTAssertEqual(inst.concept?[0].display, "Alerts")
XCTAssertEqual(inst.concept?[1].code, "adverserxns")
XCTAssertEqual(inst.concept?[1].definition, "A list of part adverse reactions.")
XCTAssertEqual(inst.concept?[1].display, "Adverse Reactions")
XCTAssertEqual(inst.concept?[2].code, "allergies")
XCTAssertEqual(inst.concept?[2].definition, "A list of Allergies for the patient.")
XCTAssertEqual(inst.concept?[2].display, "Allergies")
XCTAssertEqual(inst.concept?[3].code, "medications")
XCTAssertEqual(inst.concept?[3].definition, "A list of medication statements for the patient.")
XCTAssertEqual(inst.concept?[3].display, "Medication List")
XCTAssertEqual(inst.concept?[4].code, "problems")
XCTAssertEqual(inst.concept?[4].definition, "A list of problems that the patient is known of have (or have had in the past).")
XCTAssertEqual(inst.concept?[4].display, "Problem List")
XCTAssertEqual(inst.concept?[5].code, "worklist")
XCTAssertEqual(inst.concept?[5].definition, "A list of items that constitute a set of work to be performed (typically this code would be specialized for more specific uses, such as a ward round list).")
XCTAssertEqual(inst.concept?[5].display, "Worklist")
XCTAssertEqual(inst.concept?[6].code, "waiting")
XCTAssertEqual(inst.concept?[6].definition, "A list of items waiting for an event (perhaps a surgical patient waiting list).")
XCTAssertEqual(inst.concept?[6].display, "Waiting List")
XCTAssertEqual(inst.concept?[7].code, "protocols")
XCTAssertEqual(inst.concept?[7].definition, "A set of protocols to be followed.")
XCTAssertEqual(inst.concept?[7].display, "Protocols")
XCTAssertEqual(inst.concept?[8].code, "plans")
XCTAssertEqual(inst.concept?[8].definition, "A set of care plans that apply in a particular context of care.")
XCTAssertEqual(inst.concept?[8].display, "Care Plans")
XCTAssertEqual(inst.contact?[0].telecom?[0].system, "other")
XCTAssertEqual(inst.contact?[0].telecom?[0].value, "http://hl7.org/fhir")
XCTAssertEqual(inst.content, "complete")
XCTAssertEqual(inst.description_fhir, "Example use codes for the List resource - typical kinds of use.")
XCTAssertTrue(inst.experimental ?? false)
XCTAssertEqual(inst.extension_fhir?[0].url?.absoluteString, "http://hl7.org/fhir/StructureDefinition/valueset-oid")
XCTAssertEqual(inst.extension_fhir?[0].valueUri?.absoluteString, "urn:oid:2.16.840.1.113883.4.642.1.173")
XCTAssertEqual(inst.id, "list-example-codes")
XCTAssertEqual(inst.meta?.lastUpdated?.description, "2016-03-31T08:01:25.570+11:00")
XCTAssertEqual(inst.meta?.profile?[0].absoluteString, "http://hl7.org/fhir/StructureDefinition/valueset-shareable-definition")
XCTAssertEqual(inst.name, "Example Use Codes for List")
XCTAssertEqual(inst.publisher, "FHIR Project")
XCTAssertEqual(inst.status, "draft")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.url?.absoluteString, "http://hl7.org/fhir/list-example-use-codes")
XCTAssertEqual(inst.valueSet?.absoluteString, "http://hl7.org/fhir/ValueSet/list-example-codes")
XCTAssertEqual(inst.version, "1.4.0")

return inst
}
}
@@ -0,0 +1,46 @@
//
// CommunicationRequestTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class CommunicationRequestTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.CommunicationRequest {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.CommunicationRequest {
let instance = SwiftFHIR.CommunicationRequest(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testCommunicationRequest1() {
do {
let instance = try runCommunicationRequest1()
try runCommunicationRequest1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test CommunicationRequest successfully, but threw")
}
}

@discardableResult
func runCommunicationRequest1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.CommunicationRequest {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "communicationrequest-example.json")

XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.subject?.reference, "Patient/example")
XCTAssertEqual(inst.text?.div, "<div>To be filled out at a later time</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,58 @@
//
// CommunicationTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class CommunicationTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Communication {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Communication {
let instance = SwiftFHIR.Communication(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testCommunication1() {
do {
let instance = try runCommunication1()
try runCommunication1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Communication successfully, but threw")
}
}

@discardableResult
func runCommunication1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Communication {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "communication-example.json")

XCTAssertEqual(inst.category?.coding?[0].code, "Alert")
XCTAssertEqual(inst.category?.coding?[0].system?.absoluteString, "http://acme.org/messagetypes")
XCTAssertEqual(inst.category?.text, "Alert")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "urn:oid:1.3.4.5.6.7")
XCTAssertEqual(inst.identifier?[0].type?.text, "Paging System")
XCTAssertEqual(inst.identifier?[0].value, "2345678901")
XCTAssertEqual(inst.payload?[0].contentString, "Patient 1 has a very high serum potassium value (7.2 mmol/L on 2014-Dec-12 at 5:55 pm)")
XCTAssertEqual(inst.payload?[1].contentReference?.reference, "Observation/643666aa12f")
XCTAssertEqual(inst.recipient?[0].reference, "Practitioner/21")
XCTAssertEqual(inst.sender?.reference, "Device/f001")
XCTAssertEqual(inst.sent?.description, "2014-12-12T18:01:10-08:00")
XCTAssertEqual(inst.status, "completed")
XCTAssertEqual(inst.subject?.reference, "Patient/1")
XCTAssertEqual(inst.text?.div, "<div>Patient has very high serum potassium</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,94 @@
//
// CompositionTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class CompositionTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Composition {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Composition {
let instance = SwiftFHIR.Composition(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testComposition1() {
do {
let instance = try runComposition1()
try runComposition1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Composition successfully, but threw")
}
}

@discardableResult
func runComposition1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Composition {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "composition-example.json")

XCTAssertEqual(inst.attester?[0].mode?[0], "legal")
XCTAssertEqual(inst.attester?[0].party?.display, "Harold Hippocrates, MD")
XCTAssertEqual(inst.attester?[0].party?.reference, "Practitioner/xcda-author")
XCTAssertEqual(inst.attester?[0].time?.description, "2012-01-04T09:10:14Z")
XCTAssertEqual(inst.author?[0].display, "Harold Hippocrates, MD")
XCTAssertEqual(inst.author?[0].reference, "Practitioner/xcda-author")
XCTAssertEqual(inst.class_fhir?.coding?[0].code, "LP173421-1")
XCTAssertEqual(inst.class_fhir?.coding?[0].display, "Report")
XCTAssertEqual(inst.class_fhir?.coding?[0].system?.absoluteString, "http://loinc.org")
XCTAssertEqual(inst.confidentiality, "N")
XCTAssertEqual(inst.custodian?.display, "Good Health Clinic")
XCTAssertEqual(inst.custodian?.reference, "Organization/2.16.840.1.113883.19.5")
XCTAssertEqual(inst.date?.description, "2012-01-04T09:10:14Z")
XCTAssertEqual(inst.encounter?.reference, "Encounter/xcda")
XCTAssertEqual(inst.event?[0].code?[0].coding?[0].code, "HEALTHREC")
XCTAssertEqual(inst.event?[0].code?[0].coding?[0].display, "health record")
XCTAssertEqual(inst.event?[0].code?[0].coding?[0].system?.absoluteString, "http://hl7.org/fhir/v3/ActCode")
XCTAssertEqual(inst.event?[0].detail?[0].reference, "Observation/example")
XCTAssertEqual(inst.event?[0].period?.end?.description, "2012-11-12")
XCTAssertEqual(inst.event?[0].period?.start?.description, "2010-07-18")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.identifier?.system?.absoluteString, "http://healthintersections.com.au/test")
XCTAssertEqual(inst.identifier?.value, "1")
XCTAssertEqual(inst.section?[0].code?.coding?[0].code, "11348-0")
XCTAssertEqual(inst.section?[0].code?.coding?[0].display, "History of past illness Narrative")
XCTAssertEqual(inst.section?[0].code?.coding?[0].system?.absoluteString, "http://loinc.org")
XCTAssertEqual(inst.section?[0].entry?[0].reference, "Condition/stroke")
XCTAssertEqual(inst.section?[0].entry?[1].reference, "Condition/example")
XCTAssertEqual(inst.section?[0].entry?[2].reference, "Condition/example2")
XCTAssertEqual(inst.section?[0].mode, "snapshot")
XCTAssertEqual(inst.section?[0].orderedBy?.coding?[0].code, "event-date")
XCTAssertEqual(inst.section?[0].orderedBy?.coding?[0].display, "Sorted by Event Date")
XCTAssertEqual(inst.section?[0].orderedBy?.coding?[0].system?.absoluteString, "http://hl7.org/fhir/list-order")
XCTAssertEqual(inst.section?[0].text?.status, "generated")
XCTAssertEqual(inst.section?[0].title, "History of present illness")
XCTAssertEqual(inst.section?[1].code?.coding?[0].code, "10157-6")
XCTAssertEqual(inst.section?[1].code?.coding?[0].display, "History of family member diseases Narrative")
XCTAssertEqual(inst.section?[1].code?.coding?[0].system?.absoluteString, "http://loinc.org")
XCTAssertEqual(inst.section?[1].emptyReason?.coding?[0].code, "withheld")
XCTAssertEqual(inst.section?[1].emptyReason?.coding?[0].display, "Information Withheld")
XCTAssertEqual(inst.section?[1].emptyReason?.coding?[0].system?.absoluteString, "http://hl7.org/fhir/list-empty-reason")
XCTAssertEqual(inst.section?[1].mode, "snapshot")
XCTAssertEqual(inst.section?[1].text?.status, "generated")
XCTAssertEqual(inst.section?[1].title, "History of family member diseases")
XCTAssertEqual(inst.status, "final")
XCTAssertEqual(inst.subject?.display, "Henry Levin the 7th")
XCTAssertEqual(inst.subject?.reference, "Patient/xcda")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.title, "Consultation Note")
XCTAssertEqual(inst.type?.coding?[0].code, "11488-4")
XCTAssertEqual(inst.type?.coding?[0].display, "Consult note")
XCTAssertEqual(inst.type?.coding?[0].system?.absoluteString, "http://loinc.org")

return inst
}
}
@@ -0,0 +1,186 @@
//
// ConceptMapTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class ConceptMapTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.ConceptMap {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.ConceptMap {
let instance = SwiftFHIR.ConceptMap(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testConceptMap1() {
do {
let instance = try runConceptMap1()
try runConceptMap1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test ConceptMap successfully, but threw")
}
}

@discardableResult
func runConceptMap1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.ConceptMap {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "conceptmap-example-specimen-type.json")

XCTAssertEqual(inst.contact?[0].telecom?[0].system, "other")
XCTAssertEqual(inst.contact?[0].telecom?[0].value, "http://hl7.org/fhir")
XCTAssertEqual(inst.contact?[1].telecom?[0].system, "other")
XCTAssertEqual(inst.contact?[1].telecom?[0].value, "http://www.phconnect.org/group/laboratorymessagingcommunityofpractice/forum/attachment/download?id=3649725%3AUploadedFile%3A145786")
XCTAssertEqual(inst.date?.description, "2013-07-25")
XCTAssertEqual(inst.element?[0].code, "ACNE")
XCTAssertEqual(inst.element?[0].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[0].target?[0].code, "309068002")
XCTAssertEqual(inst.element?[0].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[0].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[1].code, "ACNFLD")
XCTAssertEqual(inst.element?[1].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[1].target?[0].code, "119323008")
XCTAssertEqual(inst.element?[1].target?[0].comments, "HL7 term is a historical term. mapped to Pus")
XCTAssertEqual(inst.element?[1].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[1].target?[0].product?[0].code, "47002008")
XCTAssertEqual(inst.element?[1].target?[0].product?[0].element?.absoluteString, "http://hl7.org/fhir/v2/element/SPM-5")
XCTAssertEqual(inst.element?[1].target?[0].product?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[1].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[2].code, "AIRS")
XCTAssertEqual(inst.element?[2].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[2].target?[0].code, "446302006")
XCTAssertEqual(inst.element?[2].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[2].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[3].code, "ALL")
XCTAssertEqual(inst.element?[3].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[3].target?[0].code, "119376003")
XCTAssertEqual(inst.element?[3].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[3].target?[0].product?[0].code, "7970006")
XCTAssertEqual(inst.element?[3].target?[0].product?[0].element?.absoluteString, "http://hl7.org/fhir/v2/element/SPM-5")
XCTAssertEqual(inst.element?[3].target?[0].product?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[3].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[4].code, "AMP")
XCTAssertEqual(inst.element?[4].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[4].target?[0].code, "408654003")
XCTAssertEqual(inst.element?[4].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[4].target?[0].product?[0].code, "81723002")
XCTAssertEqual(inst.element?[4].target?[0].product?[0].element?.absoluteString, "http://hl7.org/fhir/v2/element/SPM-7")
XCTAssertEqual(inst.element?[4].target?[0].product?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[4].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[5].code, "ANGI")
XCTAssertEqual(inst.element?[5].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[5].target?[0].code, "119312009")
XCTAssertEqual(inst.element?[5].target?[0].comments, "TBD in detail")
XCTAssertEqual(inst.element?[5].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[5].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[6].code, "ARTC")
XCTAssertEqual(inst.element?[6].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[6].target?[0].code, "119312009")
XCTAssertEqual(inst.element?[6].target?[0].comments, "TBD in detail")
XCTAssertEqual(inst.element?[6].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[6].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[7].code, "ASERU")
XCTAssertEqual(inst.element?[7].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[7].target?[0].comments, "pending")
XCTAssertEqual(inst.element?[7].target?[0].equivalence, "unmatched")
XCTAssertEqual(inst.element?[7].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[8].code, "ASP")
XCTAssertEqual(inst.element?[8].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[8].target?[0].code, "119295008")
XCTAssertEqual(inst.element?[8].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[8].target?[0].product?[0].code, "14766002")
XCTAssertEqual(inst.element?[8].target?[0].product?[0].element?.absoluteString, "http://hl7.org/fhir/v2/element/SPM-7")
XCTAssertEqual(inst.element?[8].target?[0].product?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[8].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertEqual(inst.element?[9].code, "ATTE")
XCTAssertEqual(inst.element?[9].system?.absoluteString, "http://hl7.org/fhir/v2/0487")
XCTAssertEqual(inst.element?[9].target?[0].comments, "TBD")
XCTAssertEqual(inst.element?[9].target?[0].equivalence, "unmatched")
XCTAssertEqual(inst.element?[9].target?[0].system?.absoluteString, "http://snomed.info/sct")
XCTAssertFalse(inst.experimental ?? true)
XCTAssertEqual(inst.id, "102")
XCTAssertEqual(inst.name, "Specimen mapping from v2 table 0487 to SNOMED CT")
XCTAssertEqual(inst.publisher, "FHIR project team (original source: LabMCoP)")
XCTAssertEqual(inst.sourceReference?.reference, "http://hl7.org/fhir/ValueSet/v2-0487")
XCTAssertEqual(inst.status, "draft")
XCTAssertEqual(inst.targetReference?.reference, "http://snomed.info/id")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.url?.absoluteString, "http://hl7.org/fhir/ConceptMap/102")
XCTAssertEqual(inst.version, "20130725")

return inst
}

func testConceptMap2() {
do {
let instance = try runConceptMap2()
try runConceptMap2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test ConceptMap successfully, but threw")
}
}

@discardableResult
func runConceptMap2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.ConceptMap {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "conceptmap-example.json")

XCTAssertEqual(inst.contact?[0].name, "FHIR project team (example)")
XCTAssertEqual(inst.contact?[0].telecom?[0].system, "other")
XCTAssertEqual(inst.contact?[0].telecom?[0].value, "http://hl7.org/fhir")
XCTAssertEqual(inst.copyright, "Creative Commons 0")
XCTAssertEqual(inst.date?.description, "2012-06-13")
XCTAssertEqual(inst.description_fhir, "A mapping between the FHIR and HL7 v3 AddressUse Code systems")
XCTAssertEqual(inst.element?[0].code, "home")
XCTAssertEqual(inst.element?[0].system?.absoluteString, "http://hl7.org/fhir/address-use")
XCTAssertEqual(inst.element?[0].target?[0].code, "H")
XCTAssertEqual(inst.element?[0].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[0].target?[0].system?.absoluteString, "http://hl7.org/fhir/v3/AddressUse")
XCTAssertEqual(inst.element?[1].code, "home")
XCTAssertEqual(inst.element?[1].system?.absoluteString, "http://hl7.org/fhir/address-use")
XCTAssertEqual(inst.element?[1].target?[0].code, "H")
XCTAssertEqual(inst.element?[1].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[1].target?[0].system?.absoluteString, "http://hl7.org/fhir/v3/AddressUse")
XCTAssertEqual(inst.element?[2].code, "work")
XCTAssertEqual(inst.element?[2].system?.absoluteString, "http://hl7.org/fhir/address-use")
XCTAssertEqual(inst.element?[2].target?[0].code, "WP")
XCTAssertEqual(inst.element?[2].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[2].target?[0].system?.absoluteString, "http://hl7.org/fhir/v3/AddressUse")
XCTAssertEqual(inst.element?[3].code, "temp")
XCTAssertEqual(inst.element?[3].system?.absoluteString, "http://hl7.org/fhir/address-use")
XCTAssertEqual(inst.element?[3].target?[0].code, "TMP")
XCTAssertEqual(inst.element?[3].target?[0].equivalence, "equivalent")
XCTAssertEqual(inst.element?[3].target?[0].system?.absoluteString, "http://hl7.org/fhir/v3/AddressUse")
XCTAssertEqual(inst.element?[4].code, "old")
XCTAssertEqual(inst.element?[4].system?.absoluteString, "http://hl7.org/fhir/address-use")
XCTAssertEqual(inst.element?[4].target?[0].code, "BAD")
XCTAssertEqual(inst.element?[4].target?[0].comments, "In the HL7 v3 AD, old is handled by the usablePeriod element, but you have to provide a time, there's no simple equivalent of flagging an address as old")
XCTAssertEqual(inst.element?[4].target?[0].equivalence, "disjoint")
XCTAssertEqual(inst.element?[4].target?[0].system?.absoluteString, "http://hl7.org/fhir/v3/AddressUse")
XCTAssertTrue(inst.experimental ?? false)
XCTAssertEqual(inst.id, "101")
XCTAssertEqual(inst.identifier?.system?.absoluteString, "urn:ietf:rfc:3986")
XCTAssertEqual(inst.identifier?.value, "urn:uuid:53cd62ee-033e-414c-9f58-3ca97b5ffc3b")
XCTAssertEqual(inst.name, "FHIR/v3 Address Use Mapping")
XCTAssertEqual(inst.publisher, "HL7, Inc")
XCTAssertEqual(inst.requirements, "To help implementers map from HL7 v3/CDA to FHIR")
XCTAssertEqual(inst.sourceReference?.reference, "http://hl7.org/fhir/ValueSet/address-use")
XCTAssertEqual(inst.status, "draft")
XCTAssertEqual(inst.targetReference?.reference, "http://hl7.org/fhir/ValueSet/v3-AddressUse")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.url?.absoluteString, "http://hl7.org/fhir/ConceptMap/101")
XCTAssertEqual(inst.useContext?[0].text, "for CDA Usage")
XCTAssertEqual(inst.version, "20120613")

return inst
}
}

Large diffs are not rendered by default.

@@ -0,0 +1,184 @@
//
// ConformanceTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class ConformanceTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Conformance {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Conformance {
let instance = SwiftFHIR.Conformance(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testConformance1() {
do {
let instance = try runConformance1()
try runConformance1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Conformance successfully, but threw")
}
}

@discardableResult
func runConformance1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Conformance {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "conformance-example.json")

XCTAssertEqual(inst.acceptUnknown, "both")
XCTAssertEqual(inst.contact?[0].name, "System Administrator")
XCTAssertEqual(inst.contact?[0].telecom?[0].system, "email")
XCTAssertEqual(inst.contact?[0].telecom?[0].value, "wile@acme.org")
XCTAssertEqual(inst.copyright, "Copyright © Acme Healthcare and GoodCorp EHR Systems")
XCTAssertEqual(inst.date?.description, "2012-01-04")
XCTAssertEqual(inst.description_fhir, "This is the FHIR conformance statement for the main EHR at ACME for the private interface - it does not describe the public interface")
XCTAssertEqual(inst.document?[0].documentation, "Basic rules for all documents in the EHR system")
XCTAssertEqual(inst.document?[0].mode, "consumer")
XCTAssertEqual(inst.document?[0].profile?.reference, "http://fhir.hl7.org/base/Profilebc054d23-75e1-4dc6-aca5-838b6b1ac81d/_history/b5fdd9fc-b021-4ea1-911a-721a60663796")
XCTAssertTrue(inst.experimental ?? false)
XCTAssertEqual(inst.fhirVersion, "1.0.0")
XCTAssertEqual(inst.format?[0], "xml")
XCTAssertEqual(inst.format?[1], "json")
XCTAssertEqual(inst.id, "example")
XCTAssertEqual(inst.implementation?.description_fhir, "main EHR at ACME")
XCTAssertEqual(inst.implementation?.url?.absoluteString, "http://10.2.3.4/fhir")
XCTAssertEqual(inst.kind, "instance")
XCTAssertEqual(inst.messaging?[0].documentation, "ADT A08 equivalent for external system notifications")
XCTAssertEqual(inst.messaging?[0].endpoint?[0].address?.absoluteString, "mllp:10.1.1.10:9234")
XCTAssertEqual(inst.messaging?[0].endpoint?[0].protocol_fhir?.code, "mllp")
XCTAssertEqual(inst.messaging?[0].endpoint?[0].protocol_fhir?.system?.absoluteString, "http://hl7.org/fhir/message-transport")
XCTAssertEqual(inst.messaging?[0].event?[0].category, "Consequence")
XCTAssertEqual(inst.messaging?[0].event?[0].code?.code, "admin-notify")
XCTAssertEqual(inst.messaging?[0].event?[0].code?.system?.absoluteString, "http://hl7.org/fhir/message-type")
XCTAssertEqual(inst.messaging?[0].event?[0].documentation, "Notification of an update to a patient resource. changing the links is not supported")
XCTAssertEqual(inst.messaging?[0].event?[0].focus, "Patient")
XCTAssertEqual(inst.messaging?[0].event?[0].mode, "receiver")
XCTAssertEqual(inst.messaging?[0].event?[0].request?.reference, "StructureDefinition/daf-patient")
XCTAssertEqual(inst.messaging?[0].event?[0].response?.reference, "StructureDefinition/MessageHeader")
XCTAssertEqual(inst.messaging?[0].reliableCache, UInt(30))
XCTAssertEqual(inst.name, "ACME EHR Conformance statement")
XCTAssertEqual(inst.publisher, "ACME Corporation")
XCTAssertEqual(inst.requirements, "Main EHR conformance statement, published for contracting and operational support")
XCTAssertEqual(inst.rest?[0].compartment?[0].absoluteString, "http://hl7.org/fhir/compartment/Patient")
XCTAssertEqual(inst.rest?[0].documentation, "Main FHIR endpoint for acem health")
XCTAssertEqual(inst.rest?[0].interaction?[0].code, "transaction")
XCTAssertEqual(inst.rest?[0].interaction?[1].code, "history-system")
XCTAssertEqual(inst.rest?[0].mode, "server")
XCTAssertTrue(inst.rest?[0].resource?[0].conditionalCreate ?? false)
XCTAssertEqual(inst.rest?[0].resource?[0].conditionalDelete, "not-supported")
XCTAssertFalse(inst.rest?[0].resource?[0].conditionalUpdate ?? true)
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[0].code, "read")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[1].code, "vread")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[1].documentation, "Only supported for patient records since 12-Dec 2012")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[2].code, "update")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[3].code, "history-instance")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[4].code, "create")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[5].code, "history-type")
XCTAssertEqual(inst.rest?[0].resource?[0].profile?.reference, "http://fhir.hl7.org/base/Profile7896271d-57f6-4231-89dc-dcc91eab2416")
XCTAssertTrue(inst.rest?[0].resource?[0].readHistory ?? false)
XCTAssertEqual(inst.rest?[0].resource?[0].searchInclude?[0], "Organization")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[0].definition?.absoluteString, "http://hl7.org/fhir/SearchParameter/Patient-identifier")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[0].documentation, "Only supports search by institution MRN")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[0].modifier?[0], "missing")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[0].name, "identifier")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[0].type, "token")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].chain?[0], "name")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].chain?[1], "identifier")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].definition?.absoluteString, "http://hl7.org/fhir/SearchParameter/Patient-careprovider")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].modifier?[0], "missing")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].name, "careprovider")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].target?[0], "Organization")
XCTAssertEqual(inst.rest?[0].resource?[0].searchParam?[1].type, "reference")
XCTAssertEqual(inst.rest?[0].resource?[0].searchRevInclude?[0], "Person")
XCTAssertEqual(inst.rest?[0].resource?[0].type, "Patient")
XCTAssertFalse(inst.rest?[0].resource?[0].updateCreate ?? true)
XCTAssertEqual(inst.rest?[0].resource?[0].versioning, "versioned-update")
XCTAssertEqual(inst.rest?[0].security?.certificate?[0].blob, Base64Binary(value: "IHRoaXMgYmxvYiBpcyBub3QgdmFsaWQ="))
XCTAssertEqual(inst.rest?[0].security?.certificate?[0].type, "application/jwt")
XCTAssertTrue(inst.rest?[0].security?.cors ?? false)
XCTAssertEqual(inst.rest?[0].security?.description_fhir, "See Smart on FHIR documentation")
XCTAssertEqual(inst.rest?[0].security?.service?[0].coding?[0].code, "SMART-on-FHIR")
XCTAssertEqual(inst.rest?[0].security?.service?[0].coding?[0].system?.absoluteString, "http://hl7.org/fhir/restful-security-service")
XCTAssertEqual(inst.software?.name, "EHR")
XCTAssertEqual(inst.software?.releaseDate?.description, "2012-01-04")
XCTAssertEqual(inst.software?.version, "0.00.020.2134")
XCTAssertEqual(inst.status, "draft")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.url?.absoluteString, "68D043B5-9ECF-4559-A57A-396E0D452311")
XCTAssertEqual(inst.version, "20130510")

return inst
}

func testConformance2() {
do {
let instance = try runConformance2()
try runConformance2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Conformance successfully, but threw")
}
}

@discardableResult
func runConformance2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Conformance {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "conformance-phr-example.json")

XCTAssertEqual(inst.acceptUnknown, "no")
XCTAssertEqual(inst.contact?[0].telecom?[0].system, "other")
XCTAssertEqual(inst.contact?[0].telecom?[0].value, "http://hl7.org/fhir")
XCTAssertEqual(inst.date?.description, "2013-06-18")
XCTAssertEqual(inst.description_fhir, "Prototype Conformance Statement for September 2013 Connectathon")
XCTAssertEqual(inst.fhirVersion, "1.0.0")
XCTAssertEqual(inst.format?[0], "json")
XCTAssertEqual(inst.format?[1], "xml")
XCTAssertEqual(inst.id, "phr")
XCTAssertEqual(inst.kind, "capability")
XCTAssertEqual(inst.name, "PHR Template")
XCTAssertEqual(inst.publisher, "FHIR Project")
XCTAssertEqual(inst.rest?[0].documentation, "Protoype server conformance statement for September 2013 Connectathon")
XCTAssertEqual(inst.rest?[0].mode, "server")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[0].code, "read")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[1].code, "search-type")
XCTAssertEqual(inst.rest?[0].resource?[0].interaction?[1].documentation, "When a client searches patients with no search criteria, they get a list of all patients they have access too. Servers may elect to offer additional search parameters, but this is not required")
XCTAssertEqual(inst.rest?[0].resource?[0].type, "Patient")
XCTAssertEqual(inst.rest?[0].resource?[1].interaction?[0].code, "read")
XCTAssertEqual(inst.rest?[0].resource?[1].interaction?[1].code, "search-type")
XCTAssertEqual(inst.rest?[0].resource?[1].searchParam?[0].documentation, "_id parameter always supported. For the connectathon, servers may elect which search parameters are supported")
XCTAssertEqual(inst.rest?[0].resource?[1].searchParam?[0].name, "_id")
XCTAssertEqual(inst.rest?[0].resource?[1].searchParam?[0].type, "token")
XCTAssertEqual(inst.rest?[0].resource?[1].type, "DocumentReference")
XCTAssertEqual(inst.rest?[0].resource?[2].interaction?[0].code, "read")
XCTAssertEqual(inst.rest?[0].resource?[2].interaction?[1].code, "search-type")
XCTAssertEqual(inst.rest?[0].resource?[2].searchParam?[0].documentation, "Standard _id parameter")
XCTAssertEqual(inst.rest?[0].resource?[2].searchParam?[0].name, "_id")
XCTAssertEqual(inst.rest?[0].resource?[2].searchParam?[0].type, "token")
XCTAssertEqual(inst.rest?[0].resource?[2].type, "Condition")
XCTAssertEqual(inst.rest?[0].resource?[3].interaction?[0].code, "read")
XCTAssertEqual(inst.rest?[0].resource?[3].interaction?[1].code, "search-type")
XCTAssertEqual(inst.rest?[0].resource?[3].searchParam?[0].documentation, "Standard _id parameter")
XCTAssertEqual(inst.rest?[0].resource?[3].searchParam?[0].name, "_id")
XCTAssertEqual(inst.rest?[0].resource?[3].searchParam?[0].type, "token")
XCTAssertEqual(inst.rest?[0].resource?[3].searchParam?[1].documentation, "which diagnostic discipline/department created the report")
XCTAssertEqual(inst.rest?[0].resource?[3].searchParam?[1].name, "service")
XCTAssertEqual(inst.rest?[0].resource?[3].searchParam?[1].type, "token")
XCTAssertEqual(inst.rest?[0].resource?[3].type, "DiagnosticReport")
XCTAssertEqual(inst.rest?[0].security?.service?[0].text, "OAuth")
XCTAssertEqual(inst.software?.name, "ACME PHR Server")
XCTAssertEqual(inst.status, "draft")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,45 @@
//
// ContractTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class ContractTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Contract {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Contract {
let instance = SwiftFHIR.Contract(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testContract1() {
do {
let instance = try runContract1()
try runContract1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Contract successfully, but threw")
}
}

@discardableResult
func runContract1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Contract {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "contract-example.json")

XCTAssertEqual(inst.id, "C-123")
XCTAssertEqual(inst.text?.div, "<div>A human-readable rendering of the contract</div>")
XCTAssertEqual(inst.text?.status, "generated")

return inst
}
}
@@ -0,0 +1,95 @@
//
// CoverageTests.swift
// SwiftFHIR
//
// Generated from FHIR 1.4.0.8139 on 2016-08-17.
// 2016, SMART Health IT.
//
import XCTest
import SwiftFHIR


class CoverageTests: XCTestCase {

func instantiateFrom(filename: String) throws -> SwiftFHIR.Coverage {
return instantiateFrom(json: try readJSONFile(filename))
}

func instantiateFrom(json: FHIRJSON) -> SwiftFHIR.Coverage {
let instance = SwiftFHIR.Coverage(json: json)
XCTAssertNotNil(instance, "Must have instantiated a test instance")
return instance
}

func testCoverage1() {
do {
let instance = try runCoverage1()
try runCoverage1(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Coverage successfully, but threw")
}
}

@discardableResult
func runCoverage1(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Coverage {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "coverage-example-2.json")

XCTAssertEqual(inst.beneficiaryReference?.reference, "Patient/5")
XCTAssertEqual(inst.dependent, UInt(1))
XCTAssertEqual(inst.id, "7546D")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://xyz.com/codes/identifier")
XCTAssertEqual(inst.identifier?[0].value, "AB9876")
XCTAssertEqual(inst.issuerReference?.reference, "Organization/2")
XCTAssertEqual(inst.period?.end?.description, "2012-03-17")
XCTAssertEqual(inst.period?.start?.description, "2011-03-17")
XCTAssertEqual(inst.plan, "11024")
XCTAssertEqual(inst.planholderReference?.reference, "Patient/5")
XCTAssertEqual(inst.relationship?.code, "self")
XCTAssertEqual(inst.subPlan, "D15C9")
XCTAssertEqual(inst.text?.div, "<div>A human-readable rendering of the coverage</div>")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.type?.code, "EHCPOL")
XCTAssertEqual(inst.type?.display, "extended healthcare")
XCTAssertEqual(inst.type?.system?.absoluteString, "http://hl7.org/fhir/v3/ActCode")

return inst
}

func testCoverage2() {
do {
let instance = try runCoverage2()
try runCoverage2(instance.asJSON())
}
catch {
XCTAssertTrue(false, "Must instantiate and test Coverage successfully, but threw")
}
}

@discardableResult
func runCoverage2(_ json: FHIRJSON? = nil) throws -> SwiftFHIR.Coverage {
let inst = (nil != json) ? instantiateFrom(json: json!) : try instantiateFrom(filename: "coverage-example.json")

XCTAssertEqual(inst.beneficiaryReference?.reference, "Patient/4")
XCTAssertEqual(inst.dependent, UInt(1))
XCTAssertEqual(inst.id, "9876B1")
XCTAssertEqual(inst.identifier?[0].system?.absoluteString, "http://benefitsinc.com/certificate")
XCTAssertEqual(inst.identifier?[0].value, "12345")
XCTAssertEqual(inst.issuerReference?.reference, "Organization/2")
XCTAssertEqual(inst.period?.end?.description, "2012-05-23")
XCTAssertEqual(inst.period?.start?.description, "2011-05-23")
XCTAssertEqual(inst.plan, "CBI35")
XCTAssertEqual(inst.planholderReference?.reference, "Patient/4")
XCTAssertEqual(inst.relationship?.code, "self")
XCTAssertEqual(inst.sequence, UInt(1))
XCTAssertEqual(inst.subPlan, "123")
XCTAssertEqual(inst.text?.div, "<div>A human-readable rendering of the coverage</div>")
XCTAssertEqual(inst.text?.status, "generated")
XCTAssertEqual(inst.type?.code, "EHCPOL")
XCTAssertEqual(inst.type?.display, "extended healthcare")
XCTAssertEqual(inst.type?.system?.absoluteString, "http://hl7.org/fhir/v3/ActCode")

return inst
}
}