コード例 #1
0
        public void Scan_NotInRangeFollowedByLiteral_LiteralIsIgnored()
        {
            var token = RangeToken.Scan("[!a-c]de");

            Assert.NotNull(token);
            Assert.Equal("[!a-c]", token.Value);
        }
コード例 #2
0
        public void Scan_Range_RangeToken()
        {
            var token = RangeToken.Scan("[a-c]");

            Assert.NotNull(token);
            Assert.Equal(RangeType.InRange, token.Type);
            Assert.Equal('a', token.LowerBound);
            Assert.Equal('c', token.UpperBound);
            Assert.Equal("[a-c]", token.Value);
        }
コード例 #3
0
        public void Scan_RangeWithExclamationMark_RangeToken()
        {
            var token = RangeToken.Scan("[!a-c]");

            Assert.NotNull(token);
            Assert.Equal(RangeType.NotInRange, token.Type);
            Assert.Equal('a', token.LowerBound);
            Assert.Equal('c', token.UpperBound);
            Assert.Equal("[!a-c]", token.Value);
        }
コード例 #4
0
 public void Scan_MissingOpeningBrace_Null()
 {
     Assert.Null(RangeToken.Scan("ab-c]"));
 }
コード例 #5
0
 public void Scan_IncompleteRange_Exception(string s)
 {
     Assert.Throws <OscLexerException>(() => RangeToken.Scan(s));
 }