Example #1
0
        public void RegressionEncodeDecodeNegativeInt()
        {
            var i    = -10284;
            var data = new byte[1024];

            CoordinateConverter.EncodeInt24(i, data, 0);

            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = -10284;
            CoordinateConverter.EncodeInt24(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = -184;
            CoordinateConverter.EncodeInt24(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = -78124;
            CoordinateConverter.EncodeInt24(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = 10284;
            CoordinateConverter.EncodeInt24(i, data, 0);

            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = 10284;
            CoordinateConverter.EncodeInt24(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = 184;
            CoordinateConverter.EncodeInt24(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            i = 78124;
            CoordinateConverter.EncodeInt24(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt24(data, 0));

            // try the 16-bit code.
            i = -10000;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = -1024;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = -184;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = -781;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = 14;
            CoordinateConverter.EncodeInt16(i, data, 0);

            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = 104;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = 184;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));

            i = 724;
            CoordinateConverter.EncodeInt16(i, data, 0);
            Assert.AreEqual(i, CoordinateConverter.DecodeInt16(data, 0));
        }