1 package com.github.javaparser.symbolsolver; 2 3 import com.github.javaparser.ast.CompilationUnit; 4 import com.github.javaparser.ast.expr.MethodCallExpr; 5 import com.github.javaparser.resolution.MethodUsage; 6 import com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade; 7 import com.github.javaparser.symbolsolver.resolution.AbstractResolutionTest; 8 import com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver; 9 import org.junit.jupiter.api.Test; 10 11 import static com.github.javaparser.StaticJavaParser.parse; 12 import static org.junit.jupiter.api.Assertions.assertEquals; 13 14 class Issue228Test extends AbstractResolutionTest{ 15 16 @Test testSolvingMethodWitPrimitiveParameterTypeAsUsage()17 void testSolvingMethodWitPrimitiveParameterTypeAsUsage() { 18 String code = 19 "class Test { " 20 + " long l = call(1); " 21 + " long call(final long i) { " 22 + " return i; " 23 + " }" 24 + "}"; 25 CompilationUnit cu = parse(code); 26 MethodCallExpr methodCall = cu.findAll(MethodCallExpr.class).get(0); 27 JavaParserFacade parserFacade = JavaParserFacade.get(new ReflectionTypeSolver()); 28 MethodUsage solvedCall = parserFacade.solveMethodAsUsage(methodCall); 29 assertEquals("long", solvedCall.getParamType(0).describe()); 30 } 31 } 32