Example #1
0
        public void ByteAccess()
        {
            var i = new KzUInt256();
            var s = i.Span;

            s[0]  = 0x21;
            s[31] = 0xfe;
            var str = i.ToString();

            Assert.Equal("fe00000000000000000000000000000000000000000000000000000000000021", str);
        }
Example #2
0
        public void HexByteOrder()
        {
            var hex = "fedcba9876543210fedcba9876543210fedcba9876543210fedcba9876543210";
            var fbf = new byte[] { 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10 };
            var fbl = fbf.Reverse().ToArray();

            var ifbl = new KzUInt256(hex, firstByteFirst: false);
            var ifbf = new KzUInt256(hex, firstByteFirst: true);

            Assert.Equal(ifbl.ReadOnlySpan.ToArray(), fbl);
            Assert.Equal(ifbf.ReadOnlySpan.ToArray(), fbf);

            Assert.Equal(hex, ifbl.ToString());
            Assert.Equal(hex, ifbf.ToStringFirstByteFirst());
        }