public void Seek_SuccessiveCurrent_CorrectPosition() { // Arrange var stream = new MemoryReaderStream(TestBytes.AsMemory()); // Act stream.Seek(20, SeekOrigin.Current); stream.Seek(20, SeekOrigin.Current); stream.Seek(-5, SeekOrigin.Current); // Assert Assert.Equal(35, stream.Position); }
public void Seek_BeforeBeginning_ArgumentOutOfRange(int offset, SeekOrigin origin) { // Arrange var stream = new MemoryReaderStream(TestBytes.AsMemory()); // Act/Assert Assert.Throws <ArgumentOutOfRangeException>(() => stream.Seek(offset, origin)); }
public void Seek_Offset_ExpectedPosition(int offset, SeekOrigin origin, int expectedPosition) { // Arrange var stream = new MemoryReaderStream(TestBytes.AsMemory()); // Act stream.Seek(offset, origin); // Assert Assert.Equal(expectedPosition, stream.Position); }
public void Seek_AfterEnd_EmptyRead(int offset, SeekOrigin origin) { // Arrange var stream = new MemoryReaderStream(TestBytes.AsMemory()); // Act stream.Seek(offset, origin); var actual = new byte[1]; var readBytes = stream.Read(actual, 0, actual.Length); // Assert Assert.Equal(0, readBytes); }