Skip to content

Commit

Permalink
Clean up tests
Browse files Browse the repository at this point in the history
  • Loading branch information
matozoid committed Sep 26, 2017
1 parent a618e70 commit 872ea1c
Show file tree
Hide file tree
Showing 35 changed files with 196 additions and 446 deletions.
Expand Up @@ -52,7 +52,7 @@ public class JavaParserTest {
public void rangeOfAnnotationMemberDeclarationIsCorrect() {
String code = "@interface AD { String foo(); }";
CompilationUnit cu = JavaParser.parse(code);
AnnotationMemberDeclaration memberDeclaration = (AnnotationMemberDeclaration) cu.getAnnotationDeclarationByName("AD").get().getMember(0);
AnnotationMemberDeclaration memberDeclaration = cu.getAnnotationDeclarationByName("AD").get().getMember(0).asAnnotationMemberDeclaration();
assertEquals(true, memberDeclaration.getRange().isPresent());
assertEquals(new Range(new Position(1, 17), new Position(1, 29)), memberDeclaration.getRange().get());
}
Expand All @@ -61,7 +61,7 @@ public void rangeOfAnnotationMemberDeclarationIsCorrect() {
public void rangeOfAnnotationMemberDeclarationWithArrayTypeIsCorrect() {
String code = "@interface AD { String[] foo(); }";
CompilationUnit cu = JavaParser.parse(code);
AnnotationMemberDeclaration memberDeclaration = (AnnotationMemberDeclaration) cu.getAnnotationDeclarationByName("AD").get().getMember(0);
AnnotationMemberDeclaration memberDeclaration = cu.getAnnotationDeclarationByName("AD").get().getMember(0).asAnnotationMemberDeclaration();
assertEquals(true, memberDeclaration.getRange().isPresent());
assertEquals(new Range(new Position(1, 17), new Position(1, 31)), memberDeclaration.getRange().get());
}
Expand Down Expand Up @@ -110,15 +110,15 @@ public void parseErrorContainsLocation() {
public void parseIntersectionType() {
String code = "(Runnable & Serializable) (() -> {})";
Expression expression = JavaParser.parseExpression(code);
Type type = ((CastExpr)expression).getType();
Type type = expression.asCastExpr().getType();

assertTrue(type instanceof IntersectionType);
IntersectionType intersectionType = (IntersectionType)type;
IntersectionType intersectionType = type.asIntersectionType();
assertEquals(2, intersectionType.getElements().size());
assertTrue(intersectionType.getElements().get(0) instanceof ClassOrInterfaceType);
assertEquals("Runnable", ((ClassOrInterfaceType)intersectionType.getElements().get(0)).getNameAsString());
assertEquals("Runnable", intersectionType.getElements().get(0).asClassOrInterfaceType().getNameAsString());
assertTrue(intersectionType.getElements().get(1) instanceof ClassOrInterfaceType);
assertEquals("Serializable", ((ClassOrInterfaceType)intersectionType.getElements().get(1)).getNameAsString());
assertEquals("Serializable", intersectionType.getElements().get(1).asClassOrInterfaceType().getNameAsString());
}

@Test
Expand All @@ -128,9 +128,9 @@ public void rangeOfIntersectionType() {
+ " return (Comparator<Map.Entry<K, V>> & Serializable)(c1, c2) -> c1.getKey().compareTo(c2.getKey()); " + EOL
+ "}}";
CompilationUnit cu = JavaParser.parse(code);
MethodDeclaration methodDeclaration = (MethodDeclaration)cu.getClassByName("A").get().getMember(0);
ReturnStmt returnStmt = (ReturnStmt)methodDeclaration.getBody().get().getStatement(0);
CastExpr castExpr = (CastExpr)returnStmt.getExpression().get();
MethodDeclaration methodDeclaration = cu.getClassByName("A").get().getMember(0).asMethodDeclaration();
ReturnStmt returnStmt = methodDeclaration.getBody().get().getStatement(0).asReturnStmt();
CastExpr castExpr = returnStmt.getExpression().get().asCastExpr();
Type type = castExpr.getType();
assertEquals(range(3, 13, 3, 54), type.getRange().get());
}
Expand All @@ -142,9 +142,9 @@ public void rangeOfCast() {
+ " return (Comparator<Map.Entry<K, V>> & Serializable)(c1, c2) -> c1.getKey().compareTo(c2.getKey()); " + EOL
+ "}}";
CompilationUnit cu = JavaParser.parse(code);
MethodDeclaration methodDeclaration = (MethodDeclaration)cu.getClassByName("A").get().getMember(0);
ReturnStmt returnStmt = (ReturnStmt)methodDeclaration.getBody().get().getStatement(0);
CastExpr castExpr = (CastExpr)returnStmt.getExpression().get();
MethodDeclaration methodDeclaration = cu.getClassByName("A").get().getMember(0).asMethodDeclaration();
ReturnStmt returnStmt = methodDeclaration.getBody().get().getStatement(0).asReturnStmt();
CastExpr castExpr = returnStmt.getExpression().get().asCastExpr();
assertEquals(range(3, 12, 3, 101), castExpr.getRange().get());
}

Expand All @@ -155,9 +155,9 @@ public void rangeOfCastNonIntersection() {
+ " return (Comparator<Map.Entry<K, V>> )(c1, c2) -> c1.getKey().compareTo(c2.getKey()); " + EOL
+ "}}";
CompilationUnit cu = JavaParser.parse(code);
MethodDeclaration methodDeclaration = (MethodDeclaration)cu.getClassByName("A").get().getMember(0);
ReturnStmt returnStmt = (ReturnStmt)methodDeclaration.getBody().get().getStatement(0);
CastExpr castExpr = (CastExpr)returnStmt.getExpression().get();
MethodDeclaration methodDeclaration = cu.getClassByName("A").get().getMember(0).asMethodDeclaration();
ReturnStmt returnStmt = methodDeclaration.getBody().get().getStatement(0).asReturnStmt();
CastExpr castExpr = returnStmt.getExpression().get().asCastExpr();
assertEquals(range(3, 12, 3, 101), castExpr.getRange().get());
}

Expand All @@ -168,10 +168,10 @@ public void rangeOfLambda() {
+ " return (Comparator<Map.Entry<K, V>> & Serializable)(c1, c2) -> c1.getKey().compareTo(c2.getKey()); " + EOL
+ "}}";
CompilationUnit cu = JavaParser.parse(code);
MethodDeclaration methodDeclaration = (MethodDeclaration)cu.getClassByName("A").get().getMember(0);
ReturnStmt returnStmt = (ReturnStmt)methodDeclaration.getBody().get().getStatement(0);
CastExpr castExpr = (CastExpr)returnStmt.getExpression().get();
LambdaExpr lambdaExpr = (LambdaExpr)castExpr.getExpression();
MethodDeclaration methodDeclaration = cu.getClassByName("A").get().getMember(0).asMethodDeclaration();
ReturnStmt returnStmt = methodDeclaration.getBody().get().getStatement(0).asReturnStmt();
CastExpr castExpr = returnStmt.getExpression().get().asCastExpr();
LambdaExpr lambdaExpr = castExpr.getExpression().asLambdaExpr();
assertEquals(range(3, 56, 3, 101), lambdaExpr.getRange().get());
assertEquals(GeneratedJavaParserConstants.LPAREN, lambdaExpr.getTokenRange().get().getBegin().getKind());
assertEquals(GeneratedJavaParserConstants.RPAREN, lambdaExpr.getTokenRange().get().getEnd().getKind());
Expand All @@ -184,10 +184,10 @@ public void rangeOfLambdaBody() {
+ " return (Comparator<Map.Entry<K, V>> & Serializable)(c1, c2) -> c1.getKey().compareTo(c2.getKey()); " + EOL
+ "}}";
CompilationUnit cu = JavaParser.parse(code);
MethodDeclaration methodDeclaration = (MethodDeclaration)cu.getClassByName("A").get().getMember(0);
ReturnStmt returnStmt = (ReturnStmt)methodDeclaration.getBody().get().getStatement(0);
CastExpr castExpr = (CastExpr)returnStmt.getExpression().get();
LambdaExpr lambdaExpr = (LambdaExpr)castExpr.getExpression();
MethodDeclaration methodDeclaration = cu.getClassByName("A").get().getMember(0).asMethodDeclaration();
ReturnStmt returnStmt = methodDeclaration.getBody().get().getStatement(0).asReturnStmt();
CastExpr castExpr = returnStmt.getExpression().get().asCastExpr();
LambdaExpr lambdaExpr = castExpr.getExpression().asLambdaExpr();
Statement lambdaBody = lambdaExpr.getBody();
assertEquals(range(3, 68, 3, 101), lambdaBody.getRange().get());
}
Expand Down
Expand Up @@ -21,22 +21,22 @@ public void compilationUnitRecovery() {

@Test
public void bodystatementSemicolonRecovery() {
MethodDeclaration cu = (MethodDeclaration) parser.parse(ParseStart.CLASS_BODY, provider("int x(){X X X;}")).getResult().get();
MethodDeclaration cu = parser.parse(ParseStart.CLASS_BODY, provider("int x(){X X X;}")).getResult().get().asMethodDeclaration();
Statement xxx = cu.getBody().get().getStatements().get(0);
assertEquals(UNPARSABLE, xxx.getParsed());
}

@Test
public void bodystatementClosingBraceRecovery() {
MethodDeclaration cu = (MethodDeclaration) parser.parse(ParseStart.CLASS_BODY, provider("int x(){X X X}")).getResult().get();
MethodDeclaration cu = parser.parse(ParseStart.CLASS_BODY, provider("int x(){X X X}")).getResult().get().asMethodDeclaration();
Statement xxx = cu.getBody().get();
assertEquals(UNPARSABLE, xxx.getParsed());
}

@Test
public void labeledStatementSemicolonRecovery() {
CompilationUnit cu = parser.parse(ParseStart.COMPILATION_UNIT, provider("class X{int x(){aaa:X X X;}}")).getResult().get();
LabeledStmt xxx = (LabeledStmt) cu.getClassByName("X").get().getMethods().get(0).getBody().get().getStatements().get(0);
LabeledStmt xxx = cu.getClassByName("X").get().getMethods().get(0).getBody().get().getStatements().get(0).asLabeledStmt();
assertEquals(UNPARSABLE, xxx.getStatement().getParsed());
}
}
Expand Up @@ -27,9 +27,7 @@
import java.io.IOException;
import java.nio.charset.Charset;

import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.*;

public class ProvidersTest {

Expand All @@ -41,6 +39,7 @@ public void testResourceProvider() throws IOException {
ParseResult<CompilationUnit> parse = parser.parse(ParseStart.COMPILATION_UNIT, provider);
assertTrue(parse.isSuccessful());
}

@Test
public void testResourceProviderWithWrongEncoding() throws IOException {
Provider provider = Providers.resourceProvider("com/github/javaparser/TestFileIso88591.java");
Expand All @@ -49,6 +48,7 @@ public void testResourceProviderWithWrongEncoding() throws IOException {
ParseResult<CompilationUnit> parse = parser.parse(ParseStart.COMPILATION_UNIT, provider);
assertFalse(parse.isSuccessful());
}

@Test
public void testResourceProviderWithEncoding() throws IOException {
Provider provider = Providers.resourceProvider(
Expand Down
Expand Up @@ -11,7 +11,7 @@ public class ClassOrInterfaceDeclarationTest {
@Test
public void staticNestedClass() {
CompilationUnit cu = JavaParser.parse("class X{static class Y{}}");
ClassOrInterfaceDeclaration y = (ClassOrInterfaceDeclaration) cu.getClassByName("X").get().getMembers().get(0);
ClassOrInterfaceDeclaration y = cu.getClassByName("X").get().getMembers().get(0).asClassOrInterfaceDeclaration();

assertFalse(y.isInnerClass());
assertTrue(y.isNestedType());
Expand All @@ -21,7 +21,7 @@ public void staticNestedClass() {
@Test
public void nestedInterface() {
CompilationUnit cu = JavaParser.parse("class X{interface Y{}}");
ClassOrInterfaceDeclaration y = (ClassOrInterfaceDeclaration) cu.getClassByName("X").get().getMembers().get(0);
ClassOrInterfaceDeclaration y = cu.getClassByName("X").get().getMembers().get(0).asClassOrInterfaceDeclaration();

assertFalse(y.isInnerClass());
assertTrue(y.isNestedType());
Expand All @@ -31,7 +31,7 @@ public void nestedInterface() {
@Test
public void nonStaticNestedClass() {
CompilationUnit cu = JavaParser.parse("class X{class Y{}}");
ClassOrInterfaceDeclaration y = (ClassOrInterfaceDeclaration) cu.getClassByName("X").get().getMembers().get(0);
ClassOrInterfaceDeclaration y = cu.getClassByName("X").get().getMembers().get(0).asClassOrInterfaceDeclaration();

assertTrue(y.isInnerClass());
assertTrue(y.isNestedType());
Expand Down
Expand Up @@ -15,7 +15,7 @@ public void wofjweoifj() {
"}");

BodyDeclaration<?> declaration = compilationUnit.getType(0).getMembers().get(0);
FieldDeclaration fieldDeclaration = (FieldDeclaration) declaration;
FieldDeclaration fieldDeclaration = declaration.asFieldDeclaration();
VariableDeclarator var1 = fieldDeclaration.getVariables().get(0);
VariableDeclarator var2 = fieldDeclaration.getVariables().get(1);
assertEquals(var1, var1.getType().getParentNode().get());
Expand Down
Expand Up @@ -19,61 +19,61 @@ public void annotationsAllowedBeforeGenerics() {

@Test
public void explicitReceiverParameters1() {
MethodDeclaration method = (MethodDeclaration) parseBodyDeclaration("void InnerInner(@mypackage.Anno Source.@mypackage.Anno Inner Source.Inner.this) { }");
MethodDeclaration method = parseBodyDeclaration("void InnerInner(@mypackage.Anno Source.@mypackage.Anno Inner Source.Inner.this) { }").asMethodDeclaration();
assertEquals("Source.Inner.this", method.getParameter(0).getNameAsString());
}

@Test
public void explicitReceiverParameters2() {
MethodDeclaration method = (MethodDeclaration) parseBodyDeclaration("void x(A this) { }");
MethodDeclaration method = parseBodyDeclaration("void x(A this) { }").asMethodDeclaration();
assertEquals("this", method.getParameter(0).getNameAsString());
}

@Test
public void signaturesEqual() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("void x(String a) { }");
MethodDeclaration method2 = (MethodDeclaration) parseBodyDeclaration("int x(String z);");
MethodDeclaration method1 = parseBodyDeclaration("void x(String a) { }").asMethodDeclaration();
MethodDeclaration method2 = parseBodyDeclaration("int x(String z);").asMethodDeclaration();
assertEquals(method1.getSignature(), method2.getSignature());
}

@Test
public void signaturesEqualWhenGenericsDiffer() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("void x(List<Long> a) { }");
MethodDeclaration method2 = (MethodDeclaration) parseBodyDeclaration("void x(List<Integer> a) { }");
MethodDeclaration method1 = parseBodyDeclaration("void x(List<Long> a) { }").asMethodDeclaration();
MethodDeclaration method2 = parseBodyDeclaration("void x(List<Integer> a) { }").asMethodDeclaration();
assertEquals(method1.getSignature(), method2.getSignature());
}

@Test
public void signaturesEqualWhenAnnotationsDiffer() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("void x(@A @B List a) { }");
MethodDeclaration method2 = (MethodDeclaration) parseBodyDeclaration("void x(@C List a) { }");
MethodDeclaration method1 = parseBodyDeclaration("void x(@A @B List a) { }").asMethodDeclaration();
MethodDeclaration method2 = parseBodyDeclaration("void x(@C List a) { }").asMethodDeclaration();
assertEquals(method1.getSignature(), method2.getSignature());
}

@Test
public void signaturesDifferentName() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("void x(String a) { }");
MethodDeclaration method2 = (MethodDeclaration) parseBodyDeclaration("int y(String z);");
MethodDeclaration method1 = parseBodyDeclaration("void x(String a) { }").asMethodDeclaration();
MethodDeclaration method2 = parseBodyDeclaration("int y(String z);").asMethodDeclaration();
assertNotEquals(method1.getSignature(), method2.getSignature());
}

@Test
public void signaturesDifferentTypes() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("void x(String a) { }");
MethodDeclaration method2 = (MethodDeclaration) parseBodyDeclaration("int x(int z);");
MethodDeclaration method1 = parseBodyDeclaration("void x(String a) { }").asMethodDeclaration();
MethodDeclaration method2 = parseBodyDeclaration("int x(int z);").asMethodDeclaration();
assertNotEquals(method1.getSignature(), method2.getSignature());
}

@Test
public void signaturesDifferentVarargs() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("int x(int z);");
MethodDeclaration method2 = (MethodDeclaration) parseBodyDeclaration("int x(int... z);");
MethodDeclaration method1 = parseBodyDeclaration("int x(int z);").asMethodDeclaration();
MethodDeclaration method2 = parseBodyDeclaration("int x(int... z);").asMethodDeclaration();
assertNotEquals(method1.getSignature(), method2.getSignature());
}

@Test
public void signatureToString() {
MethodDeclaration method1 = (MethodDeclaration) parseBodyDeclaration("int x(int z, String q);");
MethodDeclaration method1 = parseBodyDeclaration("int x(int z, String q);").asMethodDeclaration();
assertEquals("x(int, String)", method1.getSignature().toString());
}
}

0 comments on commit 872ea1c

Please sign in to comment.