Exemplo n.º 1
0
        public void ReadFrom_Correctly_Reads_Data_From_Input_Stream()
        {
            var buffer = new ArrayBuffer(bufferSize);
            byte[] streamData = GenerateData(5);
            var stream = A.Fake<IInputStream>();
            A.CallTo(() => stream.Receive(A<byte[]>._, A<int>._, A<int>._)).Invokes(foc =>
            {
                var buffer1 = foc.GetArgument<byte[]>(0);
                int offset = foc.GetArgument<int>(1);
                int count = foc.GetArgument<int>(2);

                Array.Copy(streamData, 0, buffer1, offset, streamData.Length);
            }).Returns(streamData.Length);

            int readed = buffer.ReadFrom(stream);

            Assert.That(readed, Is.EqualTo(streamData.Length));
            Assert.That(buffer.Length, Is.EqualTo(streamData.Length));
            VerifyBufferData(buffer, streamData, 0, streamData.Length);
        }