public void ShouldParseBCD(string value, int bcdLength, int bcdDigitsAfterDecimal, byte[] data)
        {
            var rx  = new RandomAccess(data);
            var bcd = rx.BinaryCodedDecimal(bcdLength, bcdDigitsAfterDecimal);

            Assert.AreEqual(value, bcd);
        }
Exemple #2
0
        /// <summary>
        /// Instantiates a new DECIMAL.
        /// </summary>
        /// <param name="rx">The binary reader that contains the raw data.</param>
        /// <param name="length">The total number of digits in the value.</param>
        /// <param name="digitsAfterDecimal">The number of digits that follow after the decimal point.</param>
        public TpsDecimal(RandomAccess rx, int length, int digitsAfterDecimal)
        {
            if (rx == null)
            {
                throw new ArgumentNullException(nameof(rx));
            }

            string bcdValue = rx.BinaryCodedDecimal(length, digitsAfterDecimal);

            SetValue(bcdValue);
        }
Exemple #3
0
        public TpsDecimal(RandomAccess rx, int length, int digitsAfterDecimal)
        {
            if (rx == null)
            {
                throw new ArgumentNullException(nameof(rx));
            }

            Value = rx.BinaryCodedDecimal(length, digitsAfterDecimal);

            decimal.TryParse(Value, out decimal decValue);

            ValueAsDecimal = decValue;
        }