• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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