Skip to content

Commit

Permalink
Merge pull request #2867 from jlerbsc/master
Browse files Browse the repository at this point in the history
Add test case for issue 1817 Ensure TypeSolver#tryToSolveType(String)…
  • Loading branch information
jlerbsc committed Oct 22, 2020
2 parents 86df305 + a9d2911 commit ada983f
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package com.github.javaparser.symbolsolver;

import static org.junit.jupiter.api.Assertions.assertEquals;

import java.nio.file.Path;

import org.junit.jupiter.api.Test;

import com.github.javaparser.ParserConfiguration;
import com.github.javaparser.StaticJavaParser;
import com.github.javaparser.ast.CompilationUnit;
import com.github.javaparser.ast.expr.MethodCallExpr;
import com.github.javaparser.symbolsolver.resolution.typesolvers.CombinedTypeSolver;
import com.github.javaparser.symbolsolver.resolution.typesolvers.JavaParserTypeSolver;
import com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver;


public class Issue1817Test extends AbstractSymbolResolutionTest {

@Test
public void test() {

Path testResources= adaptPath("src/test/resources/issue1817");

CombinedTypeSolver typeSolver = new CombinedTypeSolver();
typeSolver.add(new ReflectionTypeSolver());
typeSolver.add(new JavaParserTypeSolver(testResources));

StaticJavaParser.setConfiguration(new ParserConfiguration().setSymbolResolver(new JavaSymbolSolver(typeSolver)));

String s =
"interface A extends X.A {\n" +
" default void foo() {\n" +
" X.A xa = null;\n" +
" xa.bar();\n" +
" }\n" +
"}";

CompilationUnit cu = StaticJavaParser.parse(s);

MethodCallExpr mce = cu.findFirst(MethodCallExpr.class).get();

assertEquals("X.A.bar",mce.resolve().getQualifiedName());
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
interface X {
interface A {
void bar();
}
}

0 comments on commit ada983f

Please sign in to comment.