Esempio n. 1
0
        public void Enumerable_TextBeforeAndAfterWithNestedTagAndValue_CorrectKeywordsReturned()
        {
            //arrange
            var reader = new StringReader("asd<test><inner>text</inner></test>asd");
            var lexer  = new EmailXmlLexer(reader);

            //act
            var result = lexer.ToArray();

            //assert
            Assert.Equal("asd", result[0].Value);
            Assert.Equal("<test>", result[1].Value);
            Assert.Equal("<inner>", result[2].Value);
            Assert.Equal("text", result[3].Value);
            Assert.Equal("</inner>", result[4].Value);
            Assert.Equal("</test>", result[5].Value);
            Assert.Equal("asd", result[6].Value);

            Assert.Equal(KeywordType.Text, result[0].KeywordType);
            Assert.Equal(KeywordType.OpeningTag, result[1].KeywordType);
            Assert.Equal(KeywordType.OpeningTag, result[2].KeywordType);
            Assert.Equal(KeywordType.Text, result[3].KeywordType);
            Assert.Equal(KeywordType.ClosingTag, result[4].KeywordType);
            Assert.Equal(KeywordType.ClosingTag, result[5].KeywordType);
            Assert.Equal(KeywordType.Text, result[6].KeywordType);
        }
Esempio n. 2
0
        public void Enumerable_EmailField_TagIsIgnoredAndCorrectKeywordsReturned()
        {
            //arrange
            var reader = new StringReader("To: Antoine Lloyd <*****@*****.**>");
            var lexer  = new EmailXmlLexer(reader);

            //act
            var result = lexer.ToArray();

            //assert
            Assert.Equal("To", result[0].Value);
            Assert.Equal(KeywordType.Email, result[0].KeywordType);
        }
Esempio n. 3
0
        public void Read_EmailFieldWithTagWithValue_CorrectXmlReturned()
        {
            //arrange
            var buffer     = new char[100];
            var reader     = new StringReader("To: Antoine Lloyd <*****@*****.**>\r\nasd<test>text</test>asd");
            var lexer      = new EmailXmlLexer(reader);
            var textReader = new EmailXmlTextReader(lexer, typeof(SaveReservationDto));

            //act
            var count = textReader.Read(buffer, 0, buffer.Length);
            var str   = new string(buffer, 0, count);

            //assert
            Assert.Equal("<SaveReservationDto><test>text</test></SaveReservationDto>", str);
        }
Esempio n. 4
0
        public void Read_TextBeforeAndAfterWithNestedTagWithValue_CorrectXmlReturned()
        {
            //arrange
            var buffer     = new char[100];
            var reader     = new StringReader("asd<test><inner>text</inner></test>asd");
            var lexer      = new EmailXmlLexer(reader);
            var textReader = new EmailXmlTextReader(lexer, typeof(SaveReservationDto));

            //act
            var count = textReader.Read(buffer, 0, buffer.Length);
            var str   = new string(buffer, 0, count);

            //assert
            Assert.Equal("<SaveReservationDto><test><inner>text</inner></test></SaveReservationDto>", str);
        }
Esempio n. 5
0
        public void Enumerable_TagWithValue_CorrectKeywordsReturned()
        {
            //arrange
            var reader = new StringReader("<test>text</test>");
            var lexer  = new EmailXmlLexer(reader);

            //act
            var result = lexer.ToArray();

            //assert
            Assert.Equal("<test>", result[0].Value);
            Assert.Equal("text", result[1].Value);
            Assert.Equal("</test>", result[2].Value);

            Assert.Equal(KeywordType.OpeningTag, result[0].KeywordType);
            Assert.Equal(KeywordType.Text, result[1].KeywordType);
            Assert.Equal(KeywordType.ClosingTag, result[2].KeywordType);
        }
Esempio n. 6
0
        public void Read_BufferIsCorrectlyRolled_CorrectXmlReturned()
        {
            //arrange
            var buffer     = new char[5];
            var output     = new StringBuilder();
            var reader     = new StringReader("asd<test><inner>text</inner></test>asd");
            var lexer      = new EmailXmlLexer(reader);
            var textReader = new EmailXmlTextReader(lexer, typeof(SaveReservationDto));

            //act
            var count = textReader.Read(buffer, 0, buffer.Length);

            while (count != 0)
            {
                output.Append(buffer, 0, count);

                buffer = new char[5];
                count  = textReader.Read(buffer, 0, buffer.Length);
            }

            //assert
            Assert.Equal("<SaveReservationDto><test><inner>text</inner></test></SaveReservationDto>", output.ToString());
        }