Exemplo n.º 1
0
        public void NoEscapesReturnsNull()
        {
            String input  = "\"some string\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 2
0
        public void PercentAtEndOfStringDoesntReturnAnything()
        {
            String input  = "\"" + @"some %" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 3
0
        public void NoSequencesInIncludeStringAreExtracted()
        {
            String input  = "<\"" + @"some\rother\nstring" + "\">";
            var    parser = new CStringScanner(input);

            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 4
0
        public void DoesNotExtractPercentPercent()
        {
            String input  = "\"" + @"some %% value" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 5
0
        public void Cpp11RawStringYieldsNoSequences()
        {
            String input  = "R\"" + @"some\rstring" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 6
0
        public void U4EscapeSequenceIsExtracted()
        {
            String input  = "\"" + @"some\uABCDstring" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(new StringPart(5, 6), parser.Next());
            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 7
0
        public void EscapeInSingleQuotesIsExtracted()
        {
            String input  = @"'some\rstring'";
            var    parser = new CStringScanner(input);

            Assert.Equal(new StringPart(5, 2), parser.Next());
            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 8
0
        public void EscapedBackslashIsExtractedCorrectly()
        {
            String input  = "\"" + @"some\\string" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(new StringPart(5, 2), parser.Next());
            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 9
0
        public void PartialFormatSpecReturnsSomething()
        {
            String input  = "\"" + @"some %02" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(new StringPart(6, 3, StringPartType.FormatSpecifier), parser.Next());
            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 10
0
        public void ComplexFormatSpecifierIsExtracted()
        {
            String input  = "\"" + @"some %08x value" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(new StringPart(6, 4, StringPartType.FormatSpecifier), parser.Next());
            Assert.Equal(null, parser.Next());
        }
Exemplo n.º 11
0
        public void TwoSeparateEscapeSequencesAreExtracted()
        {
            String input  = "\"" + @"some\rother\nstring" + "\"";
            var    parser = new CStringScanner(input);

            Assert.Equal(new StringPart(5, 2), parser.Next());
            Assert.Equal(new StringPart(12, 2), parser.Next());
            Assert.Equal(null, parser.Next());
        }