public void TestNotWritable() { SpelExpression expr = (SpelExpression)parser.ParseExpression("37"); Assert.False(expr.IsWritable(new StandardEvaluationContext())); expr = (SpelExpression)parser.ParseExpression("37L"); Assert.False(expr.IsWritable(new StandardEvaluationContext())); expr = (SpelExpression)parser.ParseExpression("true"); Assert.False(expr.IsWritable(new StandardEvaluationContext())); }
private void CheckConstantList(string expressionText, bool expectedToBeConstant) { SpelExpressionParser parser = new SpelExpressionParser(); SpelExpression expression = (SpelExpression)parser.ParseExpression(expressionText); var node = expression.AST; bool condition = node is InlineList; Assert.True(condition); InlineList inlineList = (InlineList)node; if (expectedToBeConstant) { Assert.True(inlineList.IsConstant); } else { Assert.False(inlineList.IsConstant); } }
public void TestMapKeysThatAreAlsoSpELKeywords() { var parser = new SpelExpressionParser(); SpelExpression expression = null; object o = null; expression = (SpelExpression)parser.ParseExpression("Foo[T]"); o = expression.GetValue(new MapHolder()); Assert.Equal("TV", o); expression = (SpelExpression)parser.ParseExpression("Foo[t]"); o = expression.GetValue(new MapHolder()); Assert.Equal("tv", o); expression = (SpelExpression)parser.ParseExpression("Foo[NEW]"); o = expression.GetValue(new MapHolder()); Assert.Equal("VALUE", o); expression = (SpelExpression)parser.ParseExpression("Foo[new]"); o = expression.GetValue(new MapHolder()); Assert.Equal("value", o); expression = (SpelExpression)parser.ParseExpression("Foo['abc.def']"); o = expression.GetValue(new MapHolder()); Assert.Equal("value", o); expression = (SpelExpression)parser.ParseExpression("Foo[Foo[NEW]]"); o = expression.GetValue(new MapHolder()); Assert.Equal("37", o); expression = (SpelExpression)parser.ParseExpression("Foo[Foo[new]]"); o = expression.GetValue(new MapHolder()); Assert.Equal("38", o); expression = (SpelExpression)parser.ParseExpression("Foo[Foo[Foo[T]]]"); o = expression.GetValue(new MapHolder()); Assert.Equal("value", o); }
private Operator GetOperatorNode(SpelExpression expr) { var node = expr.AST; return(FindOperator(node)); }