Search in sources :

Example 31 with DeclarationExpression

use of org.codehaus.groovy.ast.expr.DeclarationExpression in project spring-boot by spring-projects.

the class ResolveDependencyCoordinatesTransformationTests method transformationOfAnnotationOnLocalVariable.

@Test
public void transformationOfAnnotationOnLocalVariable() {
    ClassNode classNode = new ClassNode("Test", 0, new ClassNode(Object.class));
    this.moduleNode.addClass(classNode);
    DeclarationExpression declarationExpression = new DeclarationExpression(new VariableExpression("test"), null, new ConstantExpression("test"));
    declarationExpression.addAnnotation(this.grabAnnotation);
    BlockStatement code = new BlockStatement(Arrays.asList((Statement) new ExpressionStatement(declarationExpression)), new VariableScope());
    MethodNode methodNode = new MethodNode("test", 0, new ClassNode(Void.class), new Parameter[0], new ClassNode[0], code);
    classNode.addMethod(methodNode);
    assertGrabAnnotationHasBeenTransformed();
}
Also used : ClassNode(org.codehaus.groovy.ast.ClassNode) MethodNode(org.codehaus.groovy.ast.MethodNode) Statement(org.codehaus.groovy.ast.stmt.Statement) ExpressionStatement(org.codehaus.groovy.ast.stmt.ExpressionStatement) BlockStatement(org.codehaus.groovy.ast.stmt.BlockStatement) DeclarationExpression(org.codehaus.groovy.ast.expr.DeclarationExpression) ConstantExpression(org.codehaus.groovy.ast.expr.ConstantExpression) ExpressionStatement(org.codehaus.groovy.ast.stmt.ExpressionStatement) VariableExpression(org.codehaus.groovy.ast.expr.VariableExpression) BlockStatement(org.codehaus.groovy.ast.stmt.BlockStatement) VariableScope(org.codehaus.groovy.ast.VariableScope) Test(org.junit.Test)

Aggregations

DeclarationExpression (org.codehaus.groovy.ast.expr.DeclarationExpression)31 VariableExpression (org.codehaus.groovy.ast.expr.VariableExpression)24 Expression (org.codehaus.groovy.ast.expr.Expression)21 ConstantExpression (org.codehaus.groovy.ast.expr.ConstantExpression)18 ClassExpression (org.codehaus.groovy.ast.expr.ClassExpression)17 ClosureExpression (org.codehaus.groovy.ast.expr.ClosureExpression)16 ClassNode (org.codehaus.groovy.ast.ClassNode)15 MethodCallExpression (org.codehaus.groovy.ast.expr.MethodCallExpression)15 BinaryExpression (org.codehaus.groovy.ast.expr.BinaryExpression)13 AnnotationNode (org.codehaus.groovy.ast.AnnotationNode)11 FieldNode (org.codehaus.groovy.ast.FieldNode)11 ArgumentListExpression (org.codehaus.groovy.ast.expr.ArgumentListExpression)11 ConstructorCallExpression (org.codehaus.groovy.ast.expr.ConstructorCallExpression)11 ListExpression (org.codehaus.groovy.ast.expr.ListExpression)10 PropertyExpression (org.codehaus.groovy.ast.expr.PropertyExpression)10 BlockStatement (org.codehaus.groovy.ast.stmt.BlockStatement)10 ExpressionStatement (org.codehaus.groovy.ast.stmt.ExpressionStatement)10 AnnotatedNode (org.codehaus.groovy.ast.AnnotatedNode)9 BooleanExpression (org.codehaus.groovy.ast.expr.BooleanExpression)9 EmptyExpression (org.codehaus.groovy.ast.expr.EmptyExpression)9