Beispiel #1
0
        public void NumberStreamReaderReadContentFromEnd()
        {
            using (var stream = new MemoryStream(Encoding.ASCII.GetBytes("-10\n450")))
            {
                using (var numbersReader = new NumberStreamReader(stream))
                {
                    numbersReader.Stream.Seek(0, SeekOrigin.End);
                    var result = numbersReader.ReadContentFromEnd(2).FirstOrDefault();

                    Assert.IsNotNull(result);
                    Assert.AreEqual(2, result.Length);
                    Assert.AreEqual(53, result[0]);
                    Assert.AreEqual(48, result[1]);

                    numbersReader.Stream.Seek(-1, SeekOrigin.End);
                    result = numbersReader.ReadContentFromEnd(2).FirstOrDefault();

                    Assert.IsNotNull(result);
                    Assert.AreEqual(2, result.Length);
                    Assert.AreEqual(52, result[0]);
                    Assert.AreEqual(53, result[1]);

                    numbersReader.Stream.Seek(1, SeekOrigin.Begin);
                    result = numbersReader.ReadContentFromEnd(2).FirstOrDefault();

                    Assert.IsNotNull(result);
                    Assert.AreEqual(1, result.Length);
                    Assert.AreEqual(NumberStreamReader.Number_Zero, result[0]);
                }
            }
        }