Ejemplo n.º 1
0
        public void WhenHealthVaultConditionTransformedToFhir_ThenValuesEquals()
        {
            HVCondition hvCondition = new HVCondition(new ItemTypes.CodableValue("High blood pressure", new ItemTypes.CodedValue("1147", "MayoConditions", "Mayo", "2.0")));

            hvCondition.Name.Add(new ItemTypes.CodedValue("1148", "MayoConditions", "Mayo", "1.0"));
            hvCondition.OnsetDate = new ItemTypes.ApproximateDateTime(SystemClock.Instance.InBclSystemDefaultZone().GetCurrentLocalDateTime().Minus(NodaTime.Period.FromDays(15)));
            hvCondition.StopDate  = new ItemTypes.ApproximateDateTime()
            {
                ApproximateDate = new ItemTypes.ApproximateDate(2013, 03, 11)
            };
            hvCondition.StopDate.ApproximateDate = new ItemTypes.ApproximateDate(2015);
            hvCondition.Status          = new ItemTypes.CodableValue("Past: No longer has this", new ItemTypes.CodedValue("intermittent", "condition-occurrence", "wc", "1"));
            hvCondition.CommonData.Note = "condition critical";
            hvCondition.StopReason      = "In Control";
            hvCondition.Key             = new ThingKey(new Guid("1C855AC0-892A-4352-9A82-3DCBD22BF0BC"), new Guid("706CEAFA-D506-43A8-9758-441FD9C3D407"));

            var fhirCondition      = hvCondition.ToFhir() as FhirCondition;
            var conditionExtension = fhirCondition.GetExtension(HealthVaultExtensions.Condition);

            Assert.IsNotNull(fhirCondition);
            Assert.IsNotNull(fhirCondition.Code);
            Assert.IsNotNull(fhirCondition.Code.Coding);
            Assert.AreEqual(2, fhirCondition.Code.Coding.Count);
            Assert.AreEqual("2015", fhirCondition.Abatement.ToString());
            Assert.AreEqual("High blood pressure", fhirCondition.Code.Text);
            Assert.AreEqual("In Control", conditionExtension.GetStringExtension(HealthVaultExtensions.ConditionStopReason));
            Assert.AreEqual("intermittent", conditionExtension.GetStringExtension(HealthVaultExtensions.ConditionOccurrence));
            Assert.AreEqual("1c855ac0-892a-4352-9a82-3dcbd22bf0bc", fhirCondition.Id);
            Assert.AreEqual("706ceafa-d506-43a8-9758-441fd9c3d407", fhirCondition.VersionId);
            Assert.AreEqual("1147", fhirCondition.Code.Coding[0].Code);
            Assert.AreEqual("1148", fhirCondition.Code.Coding[1].Code);
        }
Ejemplo n.º 2
0
        public void WhenHealthVaultConditionTransformedToFhir_ThenValuesEqualWithAbatementString()
        {
            HVCondition hvCondition = new HVCondition(new ItemTypes.CodableValue("High blood pressure", new ItemTypes.CodedValue("1147", "MayoConditions", "Mayo", "2.0")));

            hvCondition.OnsetDate            = new ItemTypes.ApproximateDateTime(SystemClock.Instance.InBclSystemDefaultZone().GetCurrentLocalDateTime().Minus(NodaTime.Period.FromDays(15)));
            hvCondition.StopDate             = new ItemTypes.ApproximateDateTime();
            hvCondition.StopDate.Description = "around december 9, 2013";

            var fhirCondition = hvCondition.ToFhir() as FhirCondition;

            Assert.IsNotNull(fhirCondition);
            Assert.IsNotNull(fhirCondition.Code);
            Assert.AreEqual("around december 9, 2013", fhirCondition.Abatement.ToString());
        }