//wont catch exceptiopm public void fixedConcatStreamlengthProperty2nd() { byte[] writeBuffer = new byte[14]; MemoryStream s1 = new MemoryStream(); NoSeekMemoryStream s2 = new NoSeekMemoryStream(writeBuffer); ConcatStream testCS = new ConcatStream(s1, s2); long length = testCS.Length; for (int i = 0; i < 14; i++) { writeBuffer[i] = Convert.ToByte(i); } try { long l; l = testCS.Length; } catch (NotSupportedException e) { Assert.AreEqual("Length Property is not Supported", e.Message); } }
public void PositionPropertySetShouldThrowNotSupportedException() { byte[] _byteArray = Encoding.ASCII.GetBytes("Stream string"); NoSeekMemoryStream _stream = new NoSeekMemoryStream(_byteArray); Assert.That(() => _stream.Position = 4, Throws.Exception); }
public void ReadFromFirstStreamOnly() { // Arrange byte[] buffer = new byte[1046]; byte[] buffer1 = Encoding.ASCII.GetBytes("123"); byte[] buffer2 = Encoding.ASCII.GetBytes("456"); byte[] expectedBuffer = new byte[buffer1.Length + buffer2.Length]; System.Buffer.BlockCopy(buffer1, 0, expectedBuffer, 0, buffer1.Length); System.Buffer.BlockCopy(buffer2, 0, expectedBuffer, buffer1.Length, buffer2.Length); MemoryStream stream1 = new MemoryStream(buffer1); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(buffer2); ConcatStream streamToTest = new ConcatStream(stream1, stream2); // Act int numberOfBytesRead = streamToTest.Read(buffer, 0, buffer1.Length); //Assert Assert.IsFalse(streamToTest.CanSeek); Assert.AreEqual(buffer1.Length, numberOfBytesRead); for (int i = 0; i < buffer1.Length; i++) { Assert.AreEqual(buffer1[i], buffer[i]); } }
public void NoSeekMemoryStreamLengthSet() { byte[] writeBuffer = new byte[14]; NoSeekMemoryStream test = new NoSeekMemoryStream(writeBuffer); for (int i = 0; i < 14; i++) { writeBuffer[i] = Convert.ToByte(i); } test.Write(writeBuffer, 0, 6); try { test.SetLength(7); } catch (NotSupportedException e) { Assert.AreEqual("Not Supported", e.Message); } }
public void fixedConcatStreamlengthProperty() { byte[] writeBuffer = new byte[14]; MemoryStream s1 = new MemoryStream(); NoSeekMemoryStream s2 = new NoSeekMemoryStream(writeBuffer); ConcatStream testCS = new ConcatStream(s1, s2, 28); for (int i = 0; i < 14; i++) { writeBuffer[i] = Convert.ToByte(i); } s1.Write(writeBuffer, 0, 6); s2.Write(writeBuffer, 6, 8); long length = testCS.Length; for (int i = 0; i < 14; i++) { writeBuffer[i] = Convert.ToByte(i); } Assert.AreEqual(28, length); }
public void LengthPropertyThrowException() { byte[] buffer1 = Encoding.ASCII.GetBytes("123"); byte[] buffer2 = Encoding.ASCII.GetBytes("456"); byte[] expected = Encoding.ASCII.GetBytes("123456"); MemoryStream stream1 = new MemoryStream(buffer1); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(buffer2); ConcatStream streamToTest = new ConcatStream(stream1, stream2); bool errorWasThrown = false; try { long num = streamToTest.Length; } catch { errorWasThrown = true; } finally { Assert.IsTrue(errorWasThrown); } }
public void SeekShouldThrowNotSupportedException() { byte[] _byteArray = Encoding.ASCII.GetBytes("Stream string"); NoSeekMemoryStream _stream = new NoSeekMemoryStream(_byteArray); Assert.Throws <NotSupportedException>( () => _stream.Seek(0, SeekOrigin.Begin)); }
public void CanSeekPropertyShouldReturnFalse() { byte[] _byteArray = Encoding.ASCII.GetBytes("Stream string"); NoSeekMemoryStream _stream = new NoSeekMemoryStream(_byteArray); bool result = _stream.CanSeek; Assert.IsFalse(result); }
public void FirstConstructorStreamWithNoLengthForFirstStream() { //Arrange byte[] byteArray = Encoding.ASCII.GetBytes("memoryStream string"); NoSeekMemoryStream stream1 = new NoSeekMemoryStream(byteArray); MemoryStream stream2 = new MemoryStream(byteArray); //Assert Assert.Throws <ArgumentException>(() => new ConcatStream(stream1, stream2)); }
public void NoSeekMemoryStreamTest() { NoSeekMemoryStream str1 = new NoSeekMemoryStream(Encoding.ASCII.GetBytes("newstream")); MemoryStream str2 = new MemoryStream(Encoding.ASCII.GetBytes("newstream")); byte[] buf1 = new byte[10]; byte[] buf2 = new byte[10]; str1.Read(buf1, 0, 10); str2.Read(buf2, 0, 10); Assert.That(buf1.SequenceEqual(buf2)); }
public void ConstructorTwo() { byte[] _byteArray = Encoding.ASCII.GetBytes("Stream string"); NoSeekMemoryStream _stream = new NoSeekMemoryStream(_byteArray, 0, _byteArray.Length); Assert.NotNull(_stream); Assert.IsFalse(_stream.CanSeek); Assert.IsTrue(_stream.CanRead); Assert.IsTrue(_stream.CanWrite); //Assert.That(()=> _stream.Length, Throws.Exception ); }
public void SecondConstructorWithLengthParameterThatIsLessThanFirstStreamLength() { //Arrange byte[] byteArray = Encoding.ASCII.GetBytes("memoryStream string"); MemoryStream stream1 = new MemoryStream(byteArray); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(byteArray); long length = stream1.Length - 1; // //Assert Assert.Throws <ArgumentException>(() => new ConcatStream(stream1, stream2, length)); }
public void SecondConstructorWithNoSeekStreamAsFirstParameter() { //Arrange byte[] byteArray = Encoding.ASCII.GetBytes("memoryStream string"); NoSeekMemoryStream stream1 = new NoSeekMemoryStream(byteArray); MemoryStream stream2 = new MemoryStream(byteArray); long length = 2 * stream2.Length; // //Assert Assert.Throws <ArgumentException>(() => new ConcatStream(stream1, stream2, length)); }
public void LengthPropertyAllowAccessWithSecondConstructorAndNoSeekCapabilities() { byte[] buffer1 = Encoding.ASCII.GetBytes("123"); byte[] buffer2 = Encoding.ASCII.GetBytes("456"); byte[] expected = Encoding.ASCII.GetBytes("123456"); MemoryStream stream1 = new MemoryStream(buffer1); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(buffer2); ConcatStream streamToTest = new ConcatStream(stream1, stream2, 6); Assert.NotNull(streamToTest.Length); Assert.AreEqual(6, streamToTest.Length); }
public void FirstConstructorStreamWithNoLengthForSecondStream() { //Arrange byte[] byteArray = Encoding.ASCII.GetBytes("memoryStream string"); MemoryStream stream1 = new MemoryStream(byteArray); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(byteArray); //Act ConcatStream concatStream = new ConcatStream(stream1, stream2); //Assert Assert.NotNull(concatStream); Assert.IsFalse(concatStream.CanSeek); Assert.IsTrue(concatStream.CanRead); Assert.IsTrue(concatStream.CanWrite); }
public void SecondConstructorWithNoSeekStreamAsSecondParameter() { //Arrange byte[] byteArray = Encoding.ASCII.GetBytes("memoryStream string"); MemoryStream stream1 = new MemoryStream(byteArray); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(byteArray); long length = 2 * stream1.Length; //Act ConcatStream concatStream = new ConcatStream(stream1, stream2, length); //Assert Assert.NotNull(concatStream); Assert.IsFalse(concatStream.CanSeek); Assert.IsTrue(concatStream.CanRead); Assert.IsTrue(concatStream.CanWrite); Assert.NotNull(concatStream.Length); }
public void NoSeekMemoryStreamCanSeekProp() { byte[] writeBuffer = new byte[14]; NoSeekMemoryStream test = new NoSeekMemoryStream(writeBuffer); for (int i = 0; i < 14; i++) { writeBuffer[i] = Convert.ToByte(i); } test.Write(writeBuffer, 0, 6); Assert.AreEqual(false, test.CanSeek); }
public void FirstConstructorSetPositionToZeroWhenFirstStreamPositionIsNotZero() { //Arrange byte[] byteArray = Encoding.ASCII.GetBytes("memoryStream string"); MemoryStream stream1 = new MemoryStream(byteArray); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(byteArray); stream1.Position = 4; //Act ConcatStream concatStream = new ConcatStream(stream1, stream2); // //Assert Assert.NotNull(concatStream); Assert.IsFalse(concatStream.CanSeek); Assert.IsTrue(concatStream.CanRead); Assert.IsTrue(concatStream.CanWrite); Assert.AreEqual(0, concatStream.Position); }
public void AttemptToReadPastEndOfNoSeekStreamShouldOnlyReadToEndOfStream() { byte[] result = new byte[100]; byte[] buffer = Encoding.ASCII.GetBytes("12345"); byte[] expected = Encoding.ASCII.GetBytes("1234512345"); MemoryStream stream1 = new MemoryStream(buffer); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(buffer); ConcatStream streamToTest = new ConcatStream(stream1, stream2); // Act int bytesRead = streamToTest.Read(result, 0, expected.Length + 5); //Assert Assert.AreEqual(expected.Length, bytesRead); for (int i = 0; i < expected.Length; i++) { Assert.AreEqual(expected[i], result[i]); } Assert.AreEqual(expected.Length, bytesRead); }
public void SeekTest() { NoSeekMemoryStream str = new NoSeekMemoryStream(Encoding.ASCII.GetBytes("newstream")); try { str.Position = 6; Assert.Fail(); } catch (NotSupportedException) { } catch (Exception) { Assert.Fail(); } try { str.Seek(4, System.IO.SeekOrigin.Begin); Assert.Fail(); } catch (NotSupportedException) { } catch (Exception) { Assert.Fail(); } try { long len = str.Length; Assert.Fail(); } catch (NotSupportedException) { } catch (Exception) { Assert.Fail(); } }
public void WritePastEndOfConcatStreamThatDoesNotSupportLengthShouldExpandStream() { // Arrange byte[] result = new byte[100]; byte[] bufferToWrite = Encoding.ASCII.GetBytes("12345"); MemoryStream stream1 = new MemoryStream(); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(); ConcatStream streamToTest = new ConcatStream(stream1, stream2); // Act streamToTest.Write(bufferToWrite, 0, bufferToWrite.Length); streamToTest.Position = 0; int bytesRead = streamToTest.Read(result, 0, bufferToWrite.Length); //Assert Assert.AreEqual(bufferToWrite.Length, bytesRead); for (int i = 0; i < bufferToWrite.Length; i++) { Assert.AreEqual(bufferToWrite[i], result[i]); } }
public void basicNoSeekConcatStreamRead() { byte[] writeBuffer = new byte[14]; byte[] writeBuffer2 = new byte[8]; byte[] readBuffer = new byte[14]; MemoryStream s1 = new MemoryStream(); for (int i = 0; i < 14; i++) { writeBuffer[i] = Convert.ToByte(i); } s1.Write(writeBuffer, 0, 6); //s2.Write (writeBuffer, 6, 8); for (int i = 0; i < 8; i++) { writeBuffer2[i] = Convert.ToByte(i + 6); } NoSeekMemoryStream s2 = new NoSeekMemoryStream(writeBuffer2); ConcatStream testCS = new ConcatStream(s1, s2); s1.Seek(0, SeekOrigin.Begin); //s2.Seek (0, SeekOrigin.Begin); testCS.Read(readBuffer, 0, 14); s1.Seek(0, SeekOrigin.Begin); for (int i = 0; i < readBuffer.Length; i++) { Assert.AreEqual(readBuffer[i], writeBuffer [i]); } }
public void ReadAllBytesFromConcatStreamThatHasNoSeekAsSecondStream() { // Arrange byte[] buffer = new byte[1046]; byte[] buffer1 = Encoding.ASCII.GetBytes("123"); byte[] buffer2 = Encoding.ASCII.GetBytes("456"); byte[] expectedBuffer = Encoding.ASCII.GetBytes("123456");; MemoryStream stream1 = new MemoryStream(buffer1); NoSeekMemoryStream stream2 = new NoSeekMemoryStream(buffer2); ConcatStream streamToTest = new ConcatStream(stream1, stream2); // Act int numberOfBytesRead = streamToTest.Read(buffer, 0, expectedBuffer.Length); //Assert Assert.IsFalse(streamToTest.CanSeek); Assert.AreEqual(expectedBuffer.Length, numberOfBytesRead); for (int i = 0; i < expectedBuffer.Length; i++) { Assert.AreEqual(expectedBuffer[i], buffer[i]); } }