diff options
Diffstat (limited to 'javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue228.java')
-rw-r--r-- | javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue228.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue228.java b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue228.java new file mode 100644 index 000000000..7ed5bdbbb --- /dev/null +++ b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue228.java @@ -0,0 +1,31 @@ +package com.github.javaparser.symbolsolver; + +import com.github.javaparser.JavaParser; +import com.github.javaparser.ParseException; +import com.github.javaparser.ast.CompilationUnit; +import com.github.javaparser.ast.expr.MethodCallExpr; +import com.github.javaparser.resolution.MethodUsage; +import com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade; +import com.github.javaparser.symbolsolver.resolution.AbstractResolutionTest; +import com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver; +import org.junit.Test; +import static org.junit.Assert.*; + +public class Issue228 extends AbstractResolutionTest{ + + @Test + public void testSolvingMethodWitPrimitiveParameterTypeAsUsage() { + String code = + "class Test { " + + " long l = call(1); " + + " long call(final long i) { " + + " return i; " + + " }" + + "}"; + CompilationUnit cu = JavaParser.parse(code); + MethodCallExpr methodCall = cu.findAll(MethodCallExpr.class).get(0); + JavaParserFacade parserFacade = JavaParserFacade.get(new ReflectionTypeSolver()); + MethodUsage solvedCall = parserFacade.solveMethodAsUsage(methodCall); + assertEquals("long", solvedCall.getParamType(0).describe()); + } +} |