public Read ( byte buffer, int offset, int count ) : int | ||
buffer | byte | An array of bytes. When this method returns, the buffer contains the specified byte array with the values between offset and (offset + count - 1) replaced by the bytes read from the current source. |
offset | int | The zero-based byte offset in buffer at which to begin storing the data read from the current stream. |
count | int | The maximum number of bytes to be read from the current stream. |
return | int |
public void Read() { const int sleepTime = 100; var target = new PipeStream(); target.WriteByte(0x0a); target.WriteByte(0x0d); target.WriteByte(0x09); var readBuffer = new byte[2]; var bytesRead = target.Read(readBuffer, 0, readBuffer.Length); Assert.AreEqual(2, bytesRead); Assert.AreEqual(0x0a, readBuffer[0]); Assert.AreEqual(0x0d, readBuffer[1]); var writeToStreamThread = new Thread( () => { Thread.Sleep(sleepTime); var writeBuffer = new byte[] {0x05, 0x03}; target.Write(writeBuffer, 0, writeBuffer.Length); }); writeToStreamThread.Start(); readBuffer = new byte[2]; bytesRead = target.Read(readBuffer, 0, readBuffer.Length); Assert.AreEqual(2, bytesRead); Assert.AreEqual(0x09, readBuffer[0]); Assert.AreEqual(0x05, readBuffer[1]); }
public void Init() { _pipeStream = new PipeStream(); _pipeStream.WriteByte(10); _pipeStream.WriteByte(13); _bytesRead = 0; _readBuffer = new byte[4]; Action readAction = () => _bytesRead = _pipeStream.Read(_readBuffer, 0, _readBuffer.Length); _asyncReadResult = readAction.BeginInvoke(null, null); _asyncReadResult.AsyncWaitHandle.WaitOne(50); Act(); }
public void Init() { _pipeStream = new PipeStream(); _pipeStream.WriteByte(10); _pipeStream.WriteByte(13); _pipeStream.WriteByte(25); _bytesRead = 123; Action readAction = () => _bytesRead = _pipeStream.Read(new byte[4], 0, 4); _asyncReadResult = readAction.BeginInvoke(null, null); // ensure we've started reading _asyncReadResult.AsyncWaitHandle.WaitOne(50); Act(); }
public void Test_PipeStream_Write_Read_Buffer() { var testBuffer = new byte[1024]; new Random().NextBytes(testBuffer); var outputBuffer = new byte[1024]; using (var stream = new PipeStream()) { stream.Write(testBuffer, 0, testBuffer.Length); Assert.AreEqual(stream.Length, testBuffer.Length); stream.Read(outputBuffer, 0, outputBuffer.Length); Assert.AreEqual(stream.Length, 0); Assert.IsTrue(testBuffer.IsEqualTo(outputBuffer)); } }
public void ReadTest() { PipeStream target = new PipeStream(); // TODO: Initialize to an appropriate value byte[] buffer = null; // TODO: Initialize to an appropriate value int offset = 0; // TODO: Initialize to an appropriate value int count = 0; // TODO: Initialize to an appropriate value int expected = 0; // TODO: Initialize to an appropriate value int actual; actual = target.Read(buffer, offset, count); Assert.AreEqual(expected, actual); Assert.Inconclusive("Verify the correctness of this test method."); }
public void LengthTest() { var target = new PipeStream(); Assert.AreEqual(0L, target.Length); target.Write(new byte[] { 0x0a, 0x05, 0x0d }, 0, 2); Assert.AreEqual(2L, target.Length); target.WriteByte(0x0a); Assert.AreEqual(3L, target.Length); target.Read(new byte[2], 0, 2); Assert.AreEqual(1L, target.Length); target.ReadByte(); Assert.AreEqual(0L, target.Length); }
public void WriteTest() { var target = new PipeStream(); var writeBuffer = new byte[] {0x0a, 0x05, 0x0d}; target.Write(writeBuffer, 0, 2); writeBuffer = new byte[] { 0x02, 0x04, 0x03, 0x06, 0x09 }; target.Write(writeBuffer, 1, 2); var readBuffer = new byte[6]; var bytesRead = target.Read(readBuffer, 0, 4); Assert.AreEqual(4, bytesRead); Assert.AreEqual(0x0a, readBuffer[0]); Assert.AreEqual(0x05, readBuffer[1]); Assert.AreEqual(0x04, readBuffer[2]); Assert.AreEqual(0x03, readBuffer[3]); Assert.AreEqual(0x00, readBuffer[4]); Assert.AreEqual(0x00, readBuffer[5]); }