public void TestOneCharacter()
        {
            var builder = new ConsoleStringBuilder(8);

            builder.Append("1");
            Assert.AreEqual("1", builder.ToString());
        }
        public void TestWithTabsAndReturns()
        {
            var builder = new ConsoleStringBuilder(10);

            builder.Append("\tHello\n\tWorld!");

            Assert.AreEqual(@"    Hello
    World!", builder.ToString());
        }
        public void TestWordWrapWithMultipleSpaces()
        {
            var builder = new ConsoleStringBuilder(10);

            builder.Append("This is a super     long text on 2 lines.", 2);

            Assert.AreEqual(@"This is a
  super
  long
  text on
  2 lines.", builder.ToString());
        }
        public void TestWordWrap()
        {
            var builder = new ConsoleStringBuilder(8);

            builder.Append("This is a super long text on 2 lines.");

            Assert.AreEqual(@"This is
a super
long
text on
2 lines.", builder.ToString());
        }
        public void TestWithSuperLongStringThatCannotWrap()
        {
            var builder = new ConsoleStringBuilder(8);

            builder.Append("ThisIsTheSuperLongSentenceThatCannotBeSplitInMultiline.", 2);

            Assert.AreEqual(@"ThisIsTh
  eSuper
  LongSe
  ntence
  ThatCa
  nnotBe
  SplitI
  nMulti
  line.", builder.ToString());
        }
        public void TestEmpty()
        {
            var builder = new ConsoleStringBuilder(8);

            Assert.IsEmpty(builder.ToString());
        }