public void SeekShouldNotAllowOffsetOutOfRange(long length, long offset, SeekOrigin origin)
        {
            // arrange
            var stream = new EmptyStream(length);

            // act
            var ex = Assert.Throws <ArgumentOutOfRangeException>(() => stream.Seek(offset, origin));

            // assert
            Assert.Equal(nameof(offset), ex.ParamName);
        }
        public void SeekShouldMoveToExpectedPosition(long length, long offset, SeekOrigin origin, long expected)
        {
            // arrange
            var stream = new EmptyStream(length);

            // act
            var actual = stream.Seek(offset, origin);

            // assert
            Assert.Equal(expected, actual);
        }