Пример #1
0
        public virtual void TestParseTextNodeWithAttributes()
        {
            XmlNode     node   = CreateNode("<something representation=\"TXT\" mediaType=\"text/plain\">text value</something>");
            TrivialName result = (TrivialName) new TnElementParser().Parse(null, node, null).BareValue;

            Assert.AreEqual("text value", result.Name, "proper text returned");
        }
Пример #2
0
        public virtual void TestUsesNoUse()
        {
            XmlNode     node   = CreateNode("<something/>");
            TrivialName result = (TrivialName) new TnElementParser().Parse(null, node, null).BareValue;

            Assert.AreEqual(0, result.Uses.Count, "zero uses");
        }
Пример #3
0
        public virtual void TestParseTextNode()
        {
            XmlNode     node   = CreateNode("<something>text value</something>");
            TrivialName result = (TrivialName) new TnElementParser().Parse(null, node, null).BareValue;

            Assert.AreEqual("text value", result.Name, "proper text returned");
        }
Пример #4
0
        public virtual void TestUsesUnknownUse()
        {
            XmlNode     node   = CreateNode("<something use=\"XXX\"/>");
            TrivialName result = (TrivialName) new TnElementParser().Parse(CreateContext(), node, this.xmlResult).BareValue;

            Assert.AreEqual(0, result.Uses.Count, "no uses");
        }
Пример #5
0
        public virtual void TestParseEmptyNode()
        {
            XmlNode     node   = CreateNode("<something/>");
            TrivialName result = (TrivialName) new TnElementParser().Parse(null, node, null).BareValue;

            Assert.IsNotNull(result, "empty node");
            Assert.IsNull(result.Name, "empty node value");
        }
Пример #6
0
        public virtual void TestFormatValueTrivialName()
        {
            EnPropertyFormatter formatter = new EnPropertyFormatter();
            EntityName          name      = new TrivialName("something");

            Assert.AreEqual("<x xsi:type=\"TN\">something</x>", formatter.Format(GetContext("x"), new ENImpl <EntityName>(name)).Trim(
                                ), "TrivialName uses TN formatter");
        }
Пример #7
0
        public virtual void TestFormatValueReservedXmlChars()
        {
            TnPropertyFormatter formatter   = new TnPropertyFormatter();
            TrivialName         trivialName = new TrivialName("<cats think they're > humans & dogs 99% of the time/>");
            string result = formatter.Format(GetContext("name"), new TNImpl(trivialName));

            Assert.AreEqual("<name>&lt;cats think they&apos;re &gt; humans &amp; dogs 99% of the time/&gt;</name>".Trim(), result.Trim
                                (), "something in text node");
        }
Пример #8
0
        public virtual void TestUsesOneUse()
        {
            XmlNode     node   = CreateNode("<something use=\"L\"/>");
            TrivialName result = (TrivialName) new TnElementParser().Parse(null, node, null).BareValue;

            Assert.AreEqual(1, result.Uses.Count, "one use");
            Assert.IsTrue(result.Uses.Contains(Ca.Infoway.Messagebuilder.Domainvalue.Basic.EntityNameUse.LEGAL), "contains LEGAL use"
                          );
        }
Пример #9
0
        public virtual void TestFormatValueReservedXmlChars()
        {
            EnR2PropertyFormatter formatter   = new EnR2PropertyFormatter();
            TrivialName           trivialName = new TrivialName("<cats think they're > humans & dogs 99% of the time/>");
            string result = formatter.Format(GetContext("name", "TN"), new TNImpl(trivialName));

            Assert.IsTrue(this.result.IsValid());
            AssertXml("something in text node", "<name>&lt;cats think they&apos;re &gt; humans &amp; dogs 99% of the time/&gt;</name>"
                      , result, true);
        }
Пример #10
0
        public virtual void TestFormatValueNonNullInvalidPart()
        {
            EnR2PropertyFormatter formatter   = new EnR2PropertyFormatter();
            TrivialName           trivialName = new TrivialName();

            trivialName.AddNamePart(new EntityNamePart("something", PersonNamePartType.FAMILY));
            string result = formatter.Format(GetContext("name", "TN"), new TNImpl(trivialName));

            Assert.IsFalse(this.result.IsValid());
            Assert.AreEqual(1, this.result.GetHl7Errors().Count);
            AssertXml("something in text node", "<name><family>something</family></name>", result, true);
        }
Пример #11
0
        public virtual void TestFormatValueNonNullInvalidQualifer()
        {
            EnR2PropertyFormatter formatter   = new EnR2PropertyFormatter();
            TrivialName           trivialName = new TrivialName();

            trivialName.AddNamePart(new EntityNamePart("something", null, Ca.Infoway.Messagebuilder.Domainvalue.Basic.EntityNamePartQualifier
                                                       .INITIAL));
            string result = formatter.Format(GetContext("name", "TN"), new TNImpl(trivialName));

            Assert.IsFalse(this.result.IsValid());
            Assert.AreEqual(1, this.result.GetHl7Errors().Count);
            AssertXml("something in text node", "<name>something</name>", result, true);
        }
Пример #12
0
        public virtual void TestFormatInvalidNameUses()
        {
            EnR2PropertyFormatter formatter = new EnR2PropertyFormatter();
            EntityName            name      = new TrivialName("something");

            name.AddUse(Ca.Infoway.Messagebuilder.Domainvalue.Basic.EntityNameUse.ALPHABETIC);
            name.AddUse(Ca.Infoway.Messagebuilder.Domainvalue.Basic.EntityNameUse.IDEOGRAPHIC);
            string result = formatter.Format(GetContext("name", "TN"), new ENImpl <EntityName>(name));

            Assert.IsFalse(this.result.IsValid());
            Assert.AreEqual(1, this.result.GetHl7Errors().Count);
            AssertXml("something in text node", "<name use=\"ABC IDE\">something</name>", result, true);
        }
Пример #13
0
        public virtual void TestFormatNameUses()
        {
            TnPropertyFormatter formatter = new TnPropertyFormatter();
            EntityName          name      = new TrivialName("something");

            name.AddUse(Ca.Infoway.Messagebuilder.Domainvalue.Basic.EntityNameUse.ALPHABETIC);
            name.AddUse(Ca.Infoway.Messagebuilder.Domainvalue.Basic.EntityNameUse.IDEOGRAPHIC);
            // since the uses as a set, order is not guaranteed
            string result = formatter.Format(GetContext("name"), new ENImpl <EntityName>(name));

            Assert.IsTrue(result.StartsWith("<name use=\""), "open tag");
            Assert.IsTrue(result.Contains("ABC IDE") || result.Contains("IDE ABC"), "ABC");
            Assert.IsTrue(result.Trim().EndsWith("\">something</name>"), "close tag");
        }
Пример #14
0
        public virtual void TestFormatValueNonNullWithValidTime()
        {
            PlatformDate            lowDate     = new DateWithPattern(DateUtil.GetDate(2006, 11, 25), "yyyyMMdd");
            PlatformDate            highDate    = new DateWithPattern(DateUtil.GetDate(2014, 3, 12), "yyyyMMdd");
            Interval <PlatformDate> validTime   = IntervalFactory.CreateLowHigh(lowDate, highDate);
            EnR2PropertyFormatter   formatter   = new EnR2PropertyFormatter();
            TrivialName             trivialName = new TrivialName("something");

            trivialName.ValidTime = validTime;
            string result = formatter.Format(GetContext("name", "TN"), new TNImpl(trivialName));

            Assert.IsTrue(this.result.IsValid());
            AssertXml("something in text node", "<name>something<validTime><low value=\"20061225\"/><high value=\"20140412\"/></validTime></name>"
                      , result, true);
        }