示例#1
0
        public void CanParseSuffixes(string source, string result)
        {
            var parser = new SimpleExpressionParser();

            parser.Operators = new[] { '+' };
            parser.Suffixes  = new[] { '*' };
            Assert.AreEqual(result, parser.Parse(source).GetDescriptiveString());
        }
        private static void AssertParse(string input, Expression expectation)
        {
            var source   = input;
            var parser   = new SimpleExpressionParser();
            var expr     = parser.Parse(source);
            var expected = expectation;

            expr.ShouldDeepEqual(expected);
        }
        private static void AssertParse(string input, string expected)
        {
            var parser = new SimpleExpressionParser();
            var ast    = parser.Parse(input);

            var sut = new ExpressionFormatter();

            ast.Accept(sut);
            Assert.Equal(expected, sut.GetResult());
        }
        private static void AssertThrows <TEx>(string source) where TEx : Exception
        {
            var parser = new SimpleExpressionParser();

            Assert.Throws <TEx>(() =>
            {
                var expression = parser.Parse(source);
                return(expression);
            });
        }
示例#5
0
        /// <summary>
        /// Конвертирует входную макростроку в FullText Query
        /// </summary>
        /// <param name="source"></param>
        /// <returns></returns>
        public string Convert(string source)
        {
            if (string.IsNullOrWhiteSpace(source))
            {
                return(string.Empty);
            }
            var exp = parser.Parse(source);

            FixTypesAndValues(exp);
            FillGapsOfOperators(exp);
            return(exp.ToString());
        }
 public void CanParseSuffixes(string source, string result) {
     var parser = new SimpleExpressionParser();
     parser.Operators = new[] {'+'};
     parser.Suffixes = new[] {'*'};
     Assert.AreEqual(result, parser.Parse(source).GetDescriptiveString());
 }