diff options
Diffstat (limited to 'javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/ArrayExprTest.java')
-rw-r--r-- | javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/ArrayExprTest.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/ArrayExprTest.java b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/ArrayExprTest.java new file mode 100644 index 000000000..92b973396 --- /dev/null +++ b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/ArrayExprTest.java @@ -0,0 +1,26 @@ +package com.github.javaparser.symbolsolver.resolution; + +import com.github.javaparser.JavaParser; +import com.github.javaparser.ast.body.FieldDeclaration; +import com.github.javaparser.resolution.types.ResolvedType; +import com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade; +import com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver; +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * See issue #17 + */ +public class ArrayExprTest { + + @Test + public void verifyAnArrayAccessExprTypeIsCalculatedProperly() { + String code = "class A { String[] arrSQL; String toExamine = arrSQL[1]; }"; + FieldDeclaration field = JavaParser.parse(code).getClassByName("A").get().getFieldByName("toExamine").get(); + + ResolvedType type = JavaParserFacade.get(new ReflectionTypeSolver()).getType(field.getVariables().get(0).getInitializer().get()); + assertEquals(true, type.isReferenceType()); + assertEquals("java.lang.String", type.asReferenceType().getQualifiedName()); + } +} |