示例#1
0
 public void PacketStreamReadArrayWhenWriteOnlyTest()
 {
     using (var packetStream = new LitePacketStream())
     {
         Assert.Throws <InvalidOperationException>(() => packetStream.Read <byte>(_randomizer.Byte(min: 1)));
     }
 }
示例#2
0
 public void PacketStreamReadArrayWithInvalidAmountTest(int amount)
 {
     using (var packetStream = new LitePacketStream(_randomizer.Bytes(_randomizer.Byte())))
     {
         Assert.Throws <ArgumentException>(() => packetStream.Read <byte>(amount));
     }
 }
示例#3
0
 public void PacketStreamReadWhenWriteOnlyTest()
 {
     using (var packetStream = new LitePacketStream())
     {
         Assert.Throws <InvalidOperationException>(() => packetStream.Read <byte>());
     }
 }
示例#4
0
 public void PacketStreamReadNonPrimitiveArrayTest()
 {
     using (var packetStream = new LitePacketStream(_randomizer.Bytes(_randomizer.Byte())))
     {
         Assert.Throws <NotImplementedException>(() => packetStream.Read <object>(_randomizer.Byte(min: 1)));
     }
 }
示例#5
0
        public void PacketStreamReadByteArrayTest()
        {
            var buffer         = _randomizer.Bytes(_randomizer.Byte());
            var amount         = _randomizer.Int(min: 1, max: buffer.Length);
            var expectedBuffer = buffer.Take(amount).ToArray();

            using (var packetStream = new LitePacketStream(buffer))
            {
                byte[] readBuffer = packetStream.Read <byte>(amount);

                Assert.Equal(amount, readBuffer.Length);
                Assert.Equal(expectedBuffer, readBuffer);
            }
        }
示例#6
0
        private void PacketStreamReadTest <T>(T expectedValue, byte[] valueAsBytes, bool adjustBuffer = true)
        {
            var adjustedBuffer = adjustBuffer ? valueAsBytes.Take(Marshal.SizeOf <T>()).ToArray() : valueAsBytes;

            using (ILitePacketStream packetStream = new LitePacketStream(adjustedBuffer))
            {
                Assert.Equal(LitePacketMode.Read, packetStream.Mode);
                Assert.False(packetStream.IsEndOfStream);

                var readValue = packetStream.Read <T>();

                Assert.Equal(expectedValue, readValue);
                Assert.True(packetStream.IsEndOfStream);
            }
        }