From a2da840df3bcb4e251695f7fbf1a5d341142459d Mon Sep 17 00:00:00 2001 From: Roman Ivanov Date: Wed, 5 Aug 2015 15:39:51 +0300 Subject: [PATCH] 100% UTs coverage for TreeWalker. #1294 --- pom.xml | 1 - .../tools/checkstyle/TreeWalker.java | 4 +-- .../tools/checkstyle/TreeWalkerTest.java | 32 +++++++++++++++++++ 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 8f86bd86d..d874d104c 100644 --- a/pom.xml +++ b/pom.xml @@ -1079,7 +1079,6 @@ 95 .*.Checker8085 - .*.TreeWalker9794 .*.checks.AbstractOptionCheck10080 .*.checks.AbstractTypeAwareCheck8784 diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/TreeWalker.java b/src/main/java/com/puppycrawl/tools/checkstyle/TreeWalker.java index 00f7a758a..a30c0bdb8 100755 --- a/src/main/java/com/puppycrawl/tools/checkstyle/TreeWalker.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/TreeWalker.java @@ -210,9 +210,7 @@ public final class TreeWalker LOG.error(exceptionMsg); final RecognitionException re = tre.recog; String message = "TokenStreamRecognitionException occured"; - if (re != null) { - message = re.getMessage(); - } + message = re.getMessage(); getMessageCollector().add(createLocalizedMessage(message)); } // RecognitionException and any other (need to check if needed) diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/TreeWalkerTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/TreeWalkerTest.java index c6a0fc1e1..c43b976ec 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/TreeWalkerTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/TreeWalkerTest.java @@ -268,4 +268,36 @@ public class TreeWalkerTest extends BaseCheckTestSupport { lines.add(" class a {} "); treeWalker.processFiltered(file, lines); } + + @Test + public void testProcessWithParserTrowable() throws Exception { + final TreeWalker treeWalker = new TreeWalker(); + treeWalker.configure(createCheckConfig(TypeNameCheck.class)); + PackageObjectFactory factory = new PackageObjectFactory( + new HashSet(), Thread.currentThread().getContextClassLoader()); + treeWalker.setModuleFactory(factory); + treeWalker.setCacheFile(temporaryFolder.newFile().getPath()); + treeWalker.setupChild(createCheckConfig(TypeNameCheck.class)); + final File file = temporaryFolder.newFile("file.java"); + ArrayList lines = new ArrayList<>(); + lines.add(" classD a {} "); + + treeWalker.processFiltered(file, lines); + } + + @Test + public void testProcessWithRecognitionException() throws Exception { + final TreeWalker treeWalker = new TreeWalker(); + treeWalker.configure(createCheckConfig(TypeNameCheck.class)); + PackageObjectFactory factory = new PackageObjectFactory( + new HashSet(), Thread.currentThread().getContextClassLoader()); + treeWalker.setModuleFactory(factory); + treeWalker.setCacheFile(temporaryFolder.newFile().getPath()); + treeWalker.setupChild(createCheckConfig(TypeNameCheck.class)); + final File file = temporaryFolder.newFile("file.java"); + ArrayList lines = new ArrayList<>(); + lines.add(" class a%$# {} "); + + treeWalker.processFiltered(file, lines); + } }