コード例 #1
0
        public void Composer_SingleValue_OK()
        {
            // value in object
            SingleValue value1 = new SingleValue();
            value1.Name = "val 1";
            value1.Value = "0022";
            value1.Length = 2;

            SingleValue value2 = new SingleValue();
            value2.Name = "val 2";
            value2.Value = string.Empty;
            value2.Length = 2;

            // value definition in XML
            XElement definition = new XElement("Definition");
            definition.Add(XElementHelper.generateFromSingleValue(value1));
            definition.Add(XElementHelper.generateFromSingleValue(value2));

            Composer composer = new Composer();
            composer.ParseValueDefinition(definition);

            Assert.AreEqual(2, composer.Vals.Count);
            AreEqualSingleValue(value1, (SingleValue)composer.Vals[0]);
            AreEqualSingleValue(value2, (SingleValue)composer.Vals[1]);
        }
コード例 #2
0
ファイル: ValueInputTest.cs プロジェクト: rrajaguk/QOEParser
        public void Test_SingleValue_Input_OK()
        {
            SingleValue expected = new SingleValue();
            expected.Name = "ola testing ah";
            expected.Value = "22";
            expected.Length = 1;

            int resultIndex = expected.ParseValueInput("1122334455667788991122",0);

            Assert.AreEqual(2,resultIndex);
            Assert.AreEqual(expected.Value, "11");
        }
コード例 #3
0
ファイル: XMLParser.cs プロジェクト: rrajaguk/QOEParser
        public ValueItem getItem(XElement element)
        {
            ValueItem result = null;

            // create the basic value
            switch (element.Name.ToString().ToLower())
            {
                case "singlevalue":
                    result = new SingleValue();
                    break;
                case "tlvalue":
                    result = new TLValue();
                    break;
            }

            //add the decorator
            foreach (var descendant in element.Descendants())
            {
                switch (descendant.Name.ToString().ToLower())
                {
                    case "namedvalue" :
                        if (result is TLValue)
                        {
                            result = new ValueDescriptionDecorator((TLValue)result);
                        }
                        break;
                    default:
                        break;

                }
            }

            if (result != null)
            {
                result.ParseDefinition(element);
            }

            return result;
        }
コード例 #4
0
ファイル: XElementHelper.cs プロジェクト: rrajaguk/QOEParser
 public static XElement generateFromSingleValue(SingleValue SV)
 {
     XElement XE = generateFromValue(SV);
     XE.Name = "SingleValue";
     return XE;
 }
コード例 #5
0
 private void AreEqualSingleValue(SingleValue expected, SingleValue result)
 {
     Assert.IsInstanceOfType(result, typeof(SingleValue));
     Assert.AreEqual(expected.Length, result.Length);
     Assert.AreEqual(expected.Name, result.Name);
     Assert.AreEqual(expected.Value, result.Value);
 }
コード例 #6
0
        public void Test_SingleValue_Definition_OK()
        {
            SingleValue expected = new SingleValue();
            expected.Name = "ola testing ah";
            expected.Value = "11223355";
            expected.Length = expected.Value.Length / 2;

            XElement XE = new XElement("SingleValue");
            XE.Add(new XAttribute("Length", expected.Length.ToString()));
            XE.Add(new XAttribute("Default", expected.Value));
            XE.Add(new XAttribute("Name", expected.Name));

            ValueItem result = xmlParser.getItem(XE);

            Assert.IsInstanceOfType(result, typeof(SingleValue));

            SingleValue res = (SingleValue)result;
            Assert.AreEqual(expected.Value, res.Value);
            Assert.AreEqual(expected.Length, res.Length);
            Assert.AreEqual(expected.Name, res.Name);
        }