Beispiel #1
0
        /// <summary>
        /// The xml converter is loaded with inconsistencies, one is the unknown data type "char_byte" which is
        /// just a char array...
        /// </summary>
        /// <param name="tag"></param>
        /// <returns></returns>
        private static string GetAdjustedType(AB_RootDataTag tag)
        {
            if (tag.Type == "char_byte")
            {
                return("char");
            }

            return(tag.Type);
        }
Beispiel #2
0
        /// <summary>
        /// Validate cstring visit.
        /// </summary>
        /// <param name="item"></param>
        public void Visit(CStringDataItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            AB_RootDataTag tag = RetrieveTag(item);

            Assert.AreEqual(tag.Value, "\"" + item.Value + "\"");
        }
Beispiel #3
0
        /// <summary>
        /// Validate long visit.
        /// </summary>
        /// <param name="item"></param>
        public void Visit(LongDataItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            AB_RootDataTag tag = RetrieveTag(item);

            ValidateAreEqual(GetData(tag.Value, value => int.Parse(value, CultureInfo.InvariantCulture)), item.Value);
        }
Beispiel #4
0
        /// <summary>
        /// Validate time visit.
        /// </summary>
        /// <param name="item"></param>
        public void Visit(TimeDataItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            AB_RootDataTag tag   = RetrieveTag(item);
            DateTime       value = DateTime.Parse(tag.Value, CultureInfo.InvariantCulture);

            Assert.IsTrue(value.Equals(item.Value));
        }
Beispiel #5
0
        /// <summary>
        /// Validate double visit.
        /// </summary>
        /// <param name="item"></param>
        public void Visit(DoubleDataItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            // TODO: Test file does not hit this yet.
            AB_RootDataTag tag = RetrieveTag(item);

            Assert.AreEqual(GetData(tag.Value, value => double.Parse(value, CultureInfo.InvariantCulture)), item.Value);
        }
Beispiel #6
0
        /// <summary>
        /// Validate float visit.
        /// </summary>
        /// <param name="item"></param>
        public void Visit(FloatDataItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            AB_RootDataTag tag = RetrieveTag(item);

            //
            // Xml converter only stores 3 decimal places
            //

            ValidateAreEqual(GetData(tag.Value,
                                     value => (float)Math.Round(float.Parse(value, CultureInfo.InvariantCulture), 3)),
                             (from v in item.Value select(float) Math.Round(v, 3)).ToArray());
        }
Beispiel #7
0
        /// <summary>
        /// Validate char visit.
        /// </summary>
        /// <param name="item"></param>
        public void Visit(CharDataItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            AB_RootDataTag tag = RetrieveTag(item);

            if (tag.Type == "char_byte")
            {
                ValidateAreEqual(GetData(tag.Value, value => (char)byte.Parse(value, CultureInfo.InvariantCulture)), item.Value);
            }
            else
            {
                Assert.AreEqual(tag.Value, new string(item.Value));
            }
        }