1 package com.github.javaparser.ast.expr; 2 3 import com.github.javaparser.TokenRange; 4 import com.github.javaparser.ast.Node; 5 import org.junit.Test; 6 7 import static com.github.javaparser.JavaParser.parseExpression; 8 import static org.junit.Assert.*; 9 10 public class LambdaExprTest { 11 @Test 12 public void lambdaRange1(){ 13 Expression expression = parseExpression("x -> y"); 14 assertRange("x", "y", expression); 15 } 16 17 @Test 18 public void lambdaRange2(){ 19 Expression expression = parseExpression("(x) -> y"); 20 assertRange("(", "y", expression); 21 } 22 23 private void assertRange(String startToken, String endToken, Node node) { 24 TokenRange tokenRange = node.getTokenRange().get(); 25 assertEquals(startToken, tokenRange.getBegin().asString()); 26 assertEquals(endToken, tokenRange.getEnd().asString()); 27 } 28 29 @Test 30 public void getExpressionBody(){ 31 LambdaExpr lambdaExpr = parseExpression("x -> y").asLambdaExpr(); 32 assertEquals("Optional[y]", lambdaExpr.getExpressionBody().toString()); 33 } 34 35 @Test 36 public void getNoExpressionBody(){ 37 LambdaExpr lambdaExpr = parseExpression("x -> {y;}").asLambdaExpr(); 38 assertEquals("Optional.empty", lambdaExpr.getExpressionBody().toString()); 39 } 40 41 }