public void QSDTransTest05() { SXPR <INT> setExpression = new SXPR <INT>() { new IVL <INT>(1, 10) { LowClosed = true, HighClosed = true }, new IVL <INT>(5, 8) { LowClosed = true, HighClosed = true, Operator = SetOperator.Exclusive }, new IVL <INT>(7, 8) { LowClosed = true, HighClosed = true, Operator = SetOperator.Exclusive } }; // Translate SXPR to QSET var setExpression2 = setExpression.TranslateToQSET(); // NATURAL QSD QSD <INT> difference = new QSD <INT>( new QSD <INT>( new IVL <INT>(1, 10) { LowClosed = true, HighClosed = true }, new IVL <INT>(5, 8) { LowClosed = true, HighClosed = true } ), new IVL <INT>(7, 8) { LowClosed = true, HighClosed = true } ); // setExpression.NullFlavor = NullFlavor.Other; Assert.IsTrue(setExpression2.Validate()); Assert.IsTrue(difference.Validate()); Assert.AreNotEqual(setExpression2, difference); }
public void QSDTransTest05() { SXPR<INT> setExpression = new SXPR<INT>(){ new IVL<INT>(1,10) { LowClosed = true, HighClosed = true }, new IVL<INT>(5,8) { LowClosed = true, HighClosed = true, Operator = SetOperator.Exclusive }, new IVL<INT>(7,8) { LowClosed = true, HighClosed = true, Operator = SetOperator.Exclusive } }; // Translate SXPR to QSET var setExpression2 = setExpression.TranslateToQSET(); // NATURAL QSD QSD<INT> difference = new QSD<INT>( new QSD<INT>( new IVL<INT>(1, 10) { LowClosed = true, HighClosed = true }, new IVL<INT>(5, 8) { LowClosed = true, HighClosed = true } ), new IVL<INT>(7, 8) { LowClosed = true, HighClosed = true } ); // setExpression.NullFlavor = NullFlavor.Other; Assert.IsTrue(setExpression2.Validate()); Assert.IsTrue(difference.Validate()); Assert.AreNotEqual(setExpression2, difference); }
public void R2QSD_INT_SerializationTest02() { // create differentiating continuous set expression QSD<INT> set = new QSD<INT>( new IVL<INT>(1, 10) { LowClosed = true, HighClosed = true }, new IVL<INT>(5, 8) { LowClosed = true, HighClosed = true } ); // nullifiy the QSD instance set.NullFlavor = NullFlavor.NoInformation; // normalize the set expression set = set.Normalize() as QSD<INT>; var expectedXml = @"<test xmlns=""urn:hl7-org:v3"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""><minuend xsi:type=""IVL_INT"" lowClosed=""true"" highClosed=""true""><low value=""1""/><high value=""10""/></minuend><subtrahend xsi:type=""IVL_INT"" lowClosed=""true"" highClosed=""true""><low value=""5""/><high value=""8""/></subtrahend></test>"; Assert.IsFalse(set.Validate()); var actualXml = R2SerializationHelper.SerializeAsString(set); // Assert: make sure that an exception is thrown try { R2SerializationHelper.XmlIsEquivalent(expectedXml, actualXml); } catch (Exception e) { Console.WriteLine(e); Assert.IsTrue(e.ToString().Contains("Exception")); } }
public void R2QSD_INT_SerializationTest() { // create differentiating continuous set expression QSD<INT> set = new QSD<INT>( new IVL<INT>(1, 10) { LowClosed = true, HighClosed = true }, new IVL<INT>(5, 8) { LowClosed = true, HighClosed = true } ); // normalize the set expression set = set.Normalize() as QSD<INT>; var expectedXml = @"<test xmlns=""urn:hl7-org:v3"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""><minuend xsi:type=""IVL_INT"" lowClosed=""true"" highClosed=""true""><low value=""1""/><high value=""10""/></minuend><subtrahend xsi:type=""IVL_INT"" lowClosed=""true"" highClosed=""true""><low value=""5""/><high value=""8""/></subtrahend></test>"; Assert.IsTrue(set.Validate()); var actualXml = R2SerializationHelper.SerializeAsString(set); R2SerializationHelper.XmlIsEquivalent(expectedXml, actualXml); }