public void WhenHealthVaultBloodGlucoseTransformedToFhir_ThenCodeAndValuesEqual() { var when = new HealthServiceDateTime(); var bloodGlucose = new BloodGlucose { When = when, Value = new BloodGlucoseMeasurement(101), GlucoseMeasurementType = new CodableValue("Whole blood", "wb", "glucose-meaurement-type", "wc", "1"), OutsideOperatingTemperature = true, IsControlTest = false, ReadingNormalcy = Normalcy.Normal, MeasurementContext = new CodableValue("Before meal", "BeforeMeal", "glucose-measurement-context", "wc", "1"), }; var observation = bloodGlucose.ToFhir(); var json = FhirSerializer.SerializeToJson(observation); Assert.IsNotNull(observation); Assert.AreEqual(101, ((Quantity)observation.Value).Value); Assert.AreEqual("Whole blood", observation.Method.Text); var bloodGlucoseExtension = observation.GetExtension(HealthVaultExtensions.BloodGlucose); Assert.AreEqual("Before meal", bloodGlucoseExtension.GetExtensionValue <CodeableConcept>(HealthVaultExtensions.BloodGlucoseMeasurementContext).Text); Assert.AreEqual(true, bloodGlucoseExtension.GetBoolExtension(HealthVaultExtensions.OutsideOperatingTemperatureExtensionName)); Assert.AreEqual(false, bloodGlucoseExtension.GetBoolExtension(HealthVaultExtensions.IsControlTestExtensionName)); Assert.AreEqual("Normal", bloodGlucoseExtension.GetStringExtension(HealthVaultExtensions.ReadingNormalcyExtensionName)); }