示例#1
0
 public void TestDecimalFixed(string expected, int scale, int len)
 {
     using (var stream = new MemoryStream())
         using (var encoder = new BinaryEncoder(stream))
             using (var decoder = new BinaryDecoder(stream))
             {
                 var expectedDecimal = decimal.Parse(expected);
                 encoder.WriteDecimal(expectedDecimal, scale, len);
                 stream.Seek(0, SeekOrigin.Begin);
                 var actual = decoder.ReadDecimal(scale, len);
                 Assert.AreEqual(expectedDecimal, actual);
             }
 }
        public void DecodeDecimalFixed(string expectedValue, int scale, int expectedLength, byte[] value)
        {
            var expectedDecimalValue = decimal.Parse(expectedValue);

            using (var stream = new MemoryStream(value))
                using (var decoder = new BinaryDecoder(stream))
                {
                    var decode = decoder.ReadDecimal(scale, expectedLength);
                    Assert.AreEqual(expectedLength, stream.Position, "Decode offset error");
                    Assert.AreEqual(expectedDecimalValue, decode);

                    stream.Seek(0, SeekOrigin.Begin);
                    decoder.SkipDecimal(expectedLength);
                    Assert.AreEqual(expectedLength, stream.Position, "Skip offset error");
                }
        }