コード例 #1
0
        public void ReadToEnd_Works_As_Expected_Without_Altering_StringBuilder()
        {
            var sb = new StringBuilder("T");

            using (var sbreader = new SbReader(sb))
            {
                Assert.True(sbreader.ReadToEnd().Equals("T"));
                Assert.True(sbreader.ReadToEnd().Equals(""));
            }
            Assert.True(sb.ToString().Equals("T"));
        }
コード例 #2
0
        public void Buffered_Read_Works_As_Expected_Without_Altering_StringBuilder(int buffSize)
        {
            var sb    = new StringBuilder("Ttt");
            var chars = new char[buffSize];

            using (var sbreader = new SbReader(sb))
            {
                Assert.True(sbreader.Read(chars, 0, buffSize).Equals(Math.Min(3, buffSize)));
                Assert.True(chars[0].Equals('T'));
            }
            Assert.True(sb.ToString().Equals("Ttt"));
        }
コード例 #3
0
        public void Peek_And_Read_Works_As_Expected_Without_Altering_StringBuilder()
        {
            var sb = new StringBuilder("T");

            using (var sbreader = new SbReader(sb))
            {
                Assert.True(sbreader.Peek().Equals('T'));
                Assert.True(sbreader.Read().Equals('T'));
                Assert.True(sbreader.Peek().Equals(-1));
                Assert.True(sbreader.Read().Equals(-1));
            }
            Assert.True(sb.ToString().Equals("T"));
        }
コード例 #4
0
        public void Dispose_Simply_Changes_Internal_State_Without_Altering_StringBuilder()
        {
            var sb       = new StringBuilder("Testing");
            var sbreader = new SbReader(sb);

            using (sbreader)
            {
            }
            var err = Assert.Throws <DdnDfException>(() => Assert.Null(sbreader.Peek()));

            Assert.True(err.ErrorCode == DdnDfErrorCode.NullObject);
            Assert.True(err.Message.Contains("closed/disposed"));
            Assert.True(sb.ToString().Equals("Testing"));
        }
コード例 #5
0
        public void ReadLineAsync_Works_As_Expected_Without_Altering_StringBuilder()
        {
            var sb = new StringBuilder();

            sb.AppendLine("Test");
            sb.Append("Test1");
            using (var sbreader = new SbReader(sb))
            {
                Assert.True(sbreader.ReadLineAsync().Result.Equals("Test"));
                Assert.True(sbreader.ReadLineAsync().Result.Equals("Test1"));
                Assert.Null(sbreader.ReadLineAsync().Result);
            }
            Assert.True(sb.ToString().StartsWith("Test"));
            Assert.True(sb.ToString().EndsWith("Test1"));
        }
コード例 #6
0
        public void ReadLine_Works_As_Expected_Without_Altering_StringBuilder()
        {
            var sb = new StringBuilder();

            sb.AppendLine("Test");
            sb.Append("Test1");
            using (var sbreader = new SbReader(sb))
            {
                var current = sbreader.ReadLine();
                Assert.True(current != null && current.Equals("Test"));
                current = sbreader.ReadLine();
                Assert.True(current != null && current.Equals("Test1"));
                Assert.Null(sbreader.ReadLine());
            }
            Assert.True(sb.ToString().StartsWith("Test"));
            Assert.True(sb.ToString().EndsWith("Test1"));
        }