Ejemplo n.º 1
0
 public void ShouldThrowOnVeryLongInt32Array()
 {
     Assert.Throws <OverflowException>(() => {
         var longArray = Enumerable.Repeat(16, MsgSerializer.MaxArrayLength + 1).ToArray();
         MsgSerializer.WriteInt32Array(longArray, Array.Empty <byte>(), 0);
     });
 }
Ejemplo n.º 2
0
        public int WriteTo(byte[] buffer, int offset)
        {
            var dataOffset = offset + MsgSerializer.HeaderLength;
            var written    = 0;

            written += MsgSerializer.WriteUInt32Array(Frames, buffer, dataOffset);
            written += MsgSerializer.WriteInt32Array(Hashes, buffer, dataOffset + written);
            written += MsgSerializer.WriteHeader(written, MsgId, buffer, offset);

            return(written);
        }
Ejemplo n.º 3
0
        public void ShouldSerializeAndDeserializeInt32Array(int item, int count)
        {
            var value  = Enumerable.Repeat(item, count).ToArray();
            var buffer = new byte[MsgSerializer.SizeOf(value)];

            MsgSerializer.WriteInt32Array(value, buffer, 0);

            var offset       = 0;
            var deserialized = MsgSerializer.ReadInt32Array(buffer, ref offset);

            Assert.True(value.Length == deserialized.Length, "Length mismatch");

            for (var i = 0; i < value.Length; i++)
            {
                Assert.True(value[i] == deserialized[i], $"Values mismatch at {i}");
            }
        }