Ejemplo n.º 1
0
        public void TestToString()
        {
            // 对转换 SByte 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString((sbyte)0, 13));
            Assert.AreEqual("1", ConvertExt.ToString((sbyte)1, 3));
            Assert.AreEqual("60", ConvertExt.ToString((sbyte)120, 20));
            Assert.AreEqual("9A", ConvertExt.ToString((sbyte)127, 13));
            Assert.AreEqual("9C", ConvertExt.ToString((sbyte)-1, 27));
            Assert.AreEqual("-2", ConvertExt.ToString((sbyte)-2, 10));
            Assert.AreEqual("4M", ConvertExt.ToString((sbyte)-90, 36));
            Assert.AreEqual("4C", ConvertExt.ToString((sbyte)-128, 29));

            // 对转换 Int16 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString((short)0, 13));
            Assert.AreEqual("1", ConvertExt.ToString((short)1, 3));
            Assert.AreEqual("1GG0", ConvertExt.ToString((short)14720, 20));
            Assert.AreEqual("11BB7", ConvertExt.ToString((short)32767, 13));
            Assert.AreEqual("38O6", ConvertExt.ToString((short)-1, 27));
            Assert.AreEqual("-2", ConvertExt.ToString((short)-2, 10));
            Assert.AreEqual("Y0E", ConvertExt.ToString((short)-21458, 36));
            Assert.AreEqual("19RR", ConvertExt.ToString((short)-32768, 29));

            // 对转换 Int32 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString(0, 13));
            Assert.AreEqual("1", ConvertExt.ToString(1, 3));
            Assert.AreEqual("1GG0", ConvertExt.ToString(14720, 20));
            Assert.AreEqual("282BA4AAA", ConvertExt.ToString(2147483647, 13));
            Assert.AreEqual("B28JPDL", ConvertExt.ToString(-1, 27));
            Assert.AreEqual("-2", ConvertExt.ToString(-2, 10));
            Assert.AreEqual("1ELF616", ConvertExt.ToString(-1235678902, 36));
            Assert.AreEqual("3HK7988", ConvertExt.ToString(-2147483648, 29));

            // 对转换 Int64 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString(0L, 13));
            Assert.AreEqual("1", ConvertExt.ToString(1L, 3));
            Assert.AreEqual("1GG0", ConvertExt.ToString(14720L, 20));
            Assert.AreEqual("10B269549075433C37", ConvertExt.ToString(9223372036854775807L, 13));
            Assert.AreEqual("4EO8HFAM6FLLMO", ConvertExt.ToString(-1L, 27));
            Assert.AreEqual("-2", ConvertExt.ToString(-2L, 10));
            Assert.AreEqual("26TVJYYBSZF7H", ConvertExt.ToString(-8071017880399937603L, 36));
            Assert.AreEqual("Q1SE8F0M04ISC", ConvertExt.ToString(-9223372036854775808L, 29));

            // 对转换 Byte 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString((byte)0, 13));
            Assert.AreEqual("1", ConvertExt.ToString((byte)1, 3));
            Assert.AreEqual("60", ConvertExt.ToString((byte)120, 20));
            Assert.AreEqual("9A", ConvertExt.ToString((byte)127, 13));
            Assert.AreEqual("4C", ConvertExt.ToString((byte)128, 29));
            Assert.AreEqual("4M", ConvertExt.ToString((byte)166, 36));
            Assert.AreEqual("254", ConvertExt.ToString((byte)254, 10));
            Assert.AreEqual("9C", ConvertExt.ToString((byte)255, 27));

            // 对转换 UInt16 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString((ushort)0, 13));
            Assert.AreEqual("1", ConvertExt.ToString((ushort)1, 3));
            Assert.AreEqual("1GG0", ConvertExt.ToString((ushort)14720, 20));
            Assert.AreEqual("11BB7", ConvertExt.ToString((ushort)32767, 13));
            Assert.AreEqual("19RR", ConvertExt.ToString((ushort)32768, 29));
            Assert.AreEqual("Y0E", ConvertExt.ToString((ushort)44078, 36));
            Assert.AreEqual("65534", ConvertExt.ToString((ushort)65534, 10));
            Assert.AreEqual("38O6", ConvertExt.ToString((ushort)65535, 27));

            // 对转换 UInt32 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString(0U, 13));
            Assert.AreEqual("1", ConvertExt.ToString(1U, 3));
            Assert.AreEqual("1GG0", ConvertExt.ToString(14720U, 20));
            Assert.AreEqual("282BA4AAA", ConvertExt.ToString(2147483647U, 13));
            Assert.AreEqual("3HK7988", ConvertExt.ToString(2147483648U, 29));
            Assert.AreEqual("1ELF616", ConvertExt.ToString(3059288394U, 36));
            Assert.AreEqual("4294967294", ConvertExt.ToString(4294967294U, 10));
            Assert.AreEqual("B28JPDL", ConvertExt.ToString(4294967295U, 27));

            // 对转换 UInt64 进行测试。
            Assert.AreEqual("0", ConvertExt.ToString(0U, 13));
            Assert.AreEqual("1", ConvertExt.ToString(1U, 3));
            Assert.AreEqual("1GG0", ConvertExt.ToString(14720U, 20));
            Assert.AreEqual("10B269549075433C37", ConvertExt.ToString(9223372036854775807UL, 13));
            Assert.AreEqual("Q1SE8F0M04ISC", ConvertExt.ToString(9223372036854775808UL, 29));
            Assert.AreEqual("26TVJYYBSZF7H", ConvertExt.ToString(10375726193309614013UL, 36));
            Assert.AreEqual("18446744073709551614", ConvertExt.ToString(18446744073709551614UL, 10));
            Assert.AreEqual("4EO8HFAM6FLLMO", ConvertExt.ToString(18446744073709551615UL, 27));
        }