public void TestLineBreak3()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("\r\n").Should().Equal(new MarkdownToken(MarkdownTokenType.Whitespace));
            tokenizer.Tokenize("\n").Should().Equal(new MarkdownToken(MarkdownTokenType.Whitespace));
        }
        public void TestTokenizeAndOptimize()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Optimize(tokenizer.Tokenize("Hello\r\nWorld!"))
            .Should().Equal(new MarkdownToken("Hello World!"));
        }
        public void TestBold2()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("__").Should().Equal(
                new MarkdownToken(MarkdownTokenType.Underscore),
                new MarkdownToken(MarkdownTokenType.Underscore)
                );
        }
        public void TestBold1()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("**").Should().Equal(
                new MarkdownToken(MarkdownTokenType.Star),
                new MarkdownToken(MarkdownTokenType.Star)
                );
        }
        public void TestLineBreak4()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("Hello,\r\nWorld!").Should().Equal(
                new MarkdownToken(MarkdownTokenType.Text, "Hello,"),
                new MarkdownToken(MarkdownTokenType.Whitespace),
                new MarkdownToken(MarkdownTokenType.Text, "World!")
                );
        }
        public void TestBrackets()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("[(])")
            .Should().Equal(
                new MarkdownToken(MarkdownTokenType.SquareBracketOpen),
                new MarkdownToken(MarkdownTokenType.BracketOpen),
                new MarkdownToken(MarkdownTokenType.SquareBracketClose),
                new MarkdownToken(MarkdownTokenType.BracketClose)
                );
        }
        public void TestTilde1()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("~").Should().Equal(new MarkdownToken(MarkdownTokenType.Tilde));
        }
        public void TestLineBreak2()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("  \n").Should().Equal(new MarkdownToken(MarkdownTokenType.LineBreak));
        }
        public void TestSpace2()
        {
            var tokenizer = new MarkdownTokenizer();

            tokenizer.Tokenize("\t").Should().Equal(new MarkdownToken(MarkdownTokenType.Whitespace));
        }