public virtual void TestGetAttributeNameValuePairsForValidII_OID_MR2007() { Identifier ii = new Identifier("11.22.33.44"); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.OID", null, null, false, SpecificationVersion.V02R02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(1, result.Count, "map size"); Assert.IsTrue(modelToXmlResult.GetHl7Errors().IsEmpty(), "no errors"); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); }
public virtual void TestGetAttributeNameValuePairsForValidIIAsUuid() { UUID randomUUID = UUID.RandomUUID(); Identifier ii = new Identifier(randomUUID.ToString()); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiR2PropertyFormatterTest.TestableIiR2PropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(1, result.Count, "map size"); Assert.IsTrue(modelToXmlResult.GetHl7Errors().IsEmpty(), "no errors"); AssertKeyValuePairInMap(result, "root", randomUUID.ToString()); }
public virtual void TestGetAttributeNameValuePairsForInvalidIIAsOid() { Identifier ii = new Identifier("311.22.33.44"); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiR2PropertyFormatterTest.TestableIiR2PropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(1, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.IsValid(), "one error"); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count, "one error"); AssertKeyValuePairInMap(result, "root", "311.22.33.44"); }
public virtual void TestGetAttributeNameValuePairsAllFilledInForIiPublicInMr2007() { Identifier ii = new Identifier("11.22.33.44", "extensionString"); II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II_PUBLIC; Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (new ModelToXmlResult(), null, "name", "II.PUBLIC", null, null, true, SpecificationVersion.V02R02, null, null, null, false ); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(3, result.Count, "map size"); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "extensionString"); AssertKeyValuePairInMap(result, "displayable", "true"); }
public void ShouldLogInfoMessageForUseOfIgnoredNonStructuralAttributeWithNullFlavour() { IIImpl emptyII = new IIImpl(); // don't set the value inside it emptyII.DataType = StandardDataType.II_TOKEN; emptyII.NullFlavor = Ca.Infoway.Messagebuilder.Domainvalue.Nullflavor.NullFlavor.NO_INFORMATION; // do set a null flavour Relationship relationship = CreateNonStructuralRelationship(); relationship.Conformance = ConformanceLevel.IGNORED; ExerciseVisitorOverInteractionWithAttribute(emptyII, relationship); AssertXmlContains( "<!-- INFO - DATA_TYPE_ERROR : Attribute is ignored and will not be used: (id) (aPropertyName2.aPropertyName) -->", this.visitor.ToXml().GetXmlMessage()); }
public virtual void TestGetAttributeNameValuePairsForInvalidII_TOKEN() { Identifier ii = new Identifier("1.2.3.4"); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.TOKEN", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(1, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty()); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("root '1.2.3.4' should be a UUID.", modelToXmlResult.GetHl7Errors()[0].GetMessage()); AssertKeyValuePairInMap(result, "root", "1.2.3.4"); }
public virtual void TestGetAttributeNameValuePairsForInvalidII_OID_shouldNotHaveExtension() { Identifier ii = new Identifier("11.22.33.44", "shouldNotBeHere"); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.OID", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(3, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty()); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("Attribute \"extension\" is not allowed for II.OID", modelToXmlResult.GetHl7Errors()[0].GetMessage()); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "shouldNotBeHere"); AssertKeyValuePairInMap(result, "use", "BUS"); }
public virtual void TestGetAttributeNameValuePairsForValidII_VERforCerx() { string uuid = UUID.RandomUUID().ToString(); Identifier ii = new Identifier(uuid); II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II_VER; ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.VER", null, null, false, SpecificationVersion.V01R04_3, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(2, result.Count, "map size"); Assert.IsTrue(modelToXmlResult.GetHl7Errors().IsEmpty(), "no errors"); AssertKeyValuePairInMap(result, "root", uuid); AssertKeyValuePairInMap(result, "use", "VER"); }
public virtual void TestGetAttributeNameValuePairsAllFilledInIncludingSpecializationType() { Identifier ii = new Identifier("11.22.33.44", "extensionString"); II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II_BUS; Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (new ModelToXmlResult(), null, "name", "II.BUS_AND_VER", null, null, true, SpecificationVersion.R02_04_02, null, null, null , false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(5, result.Count, "map size"); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "extensionString"); AssertKeyValuePairInMap(result, "specializationType", "II.BUS"); AssertKeyValuePairInMap(result, "use", "BUS"); AssertKeyValuePairInMap(result, "xsi:type", "II"); }
public virtual void TestGetAttributeNameValuePairsForInvalidII_OID_rootTooLong() { string tooLongRoot = "12345678900.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789"; Identifier ii = new Identifier(tooLongRoot); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.OID", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(2, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty()); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("root '" + tooLongRoot + "' exceeds maximum allowed length of 200.", modelToXmlResult.GetHl7Errors()[0].GetMessage ()); AssertKeyValuePairInMap(result, "root", tooLongRoot); AssertKeyValuePairInMap(result, "use", "BUS"); }
public virtual void TestGetAttributeNameValuePairsForInvalidII_OID() { UUID randomUUID = UUID.RandomUUID(); Identifier ii = new Identifier(randomUUID.ToString()); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.OID", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(2, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty()); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("The oid, \"" + randomUUID.ToString() + "\" does not appear to be a valid oid", modelToXmlResult.GetHl7Errors ()[0].GetMessage()); AssertKeyValuePairInMap(result, "root", randomUUID.ToString()); AssertKeyValuePairInMap(result, "use", "BUS"); }
public virtual void TestGetAttributeNameValuePairsForII_InvalidSpecializationType() { Identifier ii = new Identifier("11.22.33.44", "extensionString"); II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II_BUS_AND_VER; ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(2, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty(), "errors"); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("Invalid specializationType (II.BUS_AND_VER). Field being left as II without a specializationType.", modelToXmlResult .GetHl7Errors()[0].GetMessage()); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "extensionString"); }
public virtual void ShouldRenderCombinationOfAttributesAndAssociations() { this.attributeBridge.SetEmpty(false); IIImpl iiImpl = new IIImpl(new Identifier("1ee83ff1-08ab-4fe7-b573-ea777e9bad51")); iiImpl.DataType = StandardDataType.II_TOKEN; this.attributeBridge.SetHl7Value(iiImpl); this.attributeBridge.SetValue(false); Relationship relationship = CreateSimpleAssociationRelationship(); this.visitor.VisitRootStart(this.partBridge, this.interation); this.visitor.VisitAssociationStart(this.partBridge, relationship); this.visitor.VisitAttribute(this.attributeBridge, CreateNonStructuralRelationship(), null, null, null); this.visitor.VisitAttribute(this.attributeBridge, CreateStructuralRelationship(), null, null, null); this.visitor.VisitAssociationEnd(this.partBridge, relationship); this.visitor.VisitRootEnd(this.partBridge, this.interation); string xml = this.visitor.ToXml().GetXmlMessage(); AssertXmlEquals("xml", "<ABCD_IN123456CA xmlns=\"urn:hl7-org:v3\" " + "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" ITSVersion=\"XML_1.0\">" + "<receiver negationInd=\"false\"><id root=\"1ee83ff1-08ab-4fe7-b573-ea777e9bad51\"/></receiver>" + "</ABCD_IN123456CA>" , xml); }
public virtual void TestGetAttributeNameValuePairsForInvalidII_PUBLIC() { Identifier ii = new Identifier("11.22.33.44", "extensionStrngTooLong"); II iiHl7 = new IIImpl(); ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.PUBLIC", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false ); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(4, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty(), "errors"); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("extension 'extensionStrngTooLong' exceeds maximum allowed length of 20.", modelToXmlResult.GetHl7Errors( )[0].GetMessage()); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "extensionStrngTooLong"); AssertKeyValuePairInMap(result, "use", "BUS"); AssertKeyValuePairInMap(result, "displayable", "true"); }
public virtual void TestGetAttributeNameValuePairsForII_BUS_UnnecessarySpecializationType() { Identifier ii = new Identifier("11.22.33.44", "extensionString"); II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II_OID; ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.BUS", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(3, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty(), "errors"); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count); Assert.AreEqual("A specializationType should not be specified for non-abstract type: II.BUS", modelToXmlResult.GetHl7Errors ()[0].GetMessage()); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "extensionString"); AssertKeyValuePairInMap(result, "use", "BUS"); }
public virtual void TestGetAttributeNameValuePairsForValidII_BUSforCerxWithInvalidRoot() { Identifier ii = new Identifier("123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.1" , "extensionString"); II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II_BUS; ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II.BUS", null, null, false, SpecificationVersion.V01R04_3, null, null, null, false); IDictionary <string, string> result = new IiPropertyFormatterTest.TestableIiPropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(3, result.Count, "map size"); Assert.IsFalse(modelToXmlResult.GetHl7Errors().IsEmpty(), "1 error"); Assert.AreEqual(1, modelToXmlResult.GetHl7Errors().Count, "1 error"); Assert.IsTrue(modelToXmlResult.GetHl7Errors()[0].GetMessage().Contains("200")); AssertKeyValuePairInMap(result, "root", "123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.123456789.1" ); AssertKeyValuePairInMap(result, "extension", "extensionString"); AssertKeyValuePairInMap(result, "use", "BUS"); }
public virtual void TestGetAttributeNameValuePairsForValidII() { Identifier ii = new Identifier("11.22.33.44", "extensionString"); ii.AssigningAuthorityName = "aaName"; ii.Displayable = "d_true"; II iiHl7 = new IIImpl(); iiHl7.DataType = StandardDataType.II; ModelToXmlResult modelToXmlResult = new ModelToXmlResult(); Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl context = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl (modelToXmlResult, null, "name", "II", null, null, false, SpecificationVersion.R02_04_02, null, null, null, false); IDictionary <string, string> result = new IiR2PropertyFormatterTest.TestableIiR2PropertyFormatter().GetAttributeNameValuePairsForTest (context, ii, iiHl7); Assert.AreEqual(4, result.Count, "map size"); Assert.IsTrue(modelToXmlResult.GetHl7Errors().IsEmpty(), "no errors"); AssertKeyValuePairInMap(result, "root", "11.22.33.44"); AssertKeyValuePairInMap(result, "extension", "extensionString"); AssertKeyValuePairInMap(result, "assigningAuthorityName", "aaName"); AssertKeyValuePairInMap(result, "displayable", "d_true"); }