From 3d40f4ed4eb19b868e43519d6dca0859f378a1b5 Mon Sep 17 00:00:00 2001 From: malte_langkabel Date: Wed, 17 Aug 2016 17:04:23 +0200 Subject: [PATCH] data: error for java import not found * added recording an error in this case. * added test for this case. --- java_indexer/src/io/coati/JavaAstVisitor.java | 7 +++++++ src/test/JavaParserTestSuite.h | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/java_indexer/src/io/coati/JavaAstVisitor.java b/java_indexer/src/io/coati/JavaAstVisitor.java index 28b4c2dc..1718fcfe 100644 --- a/java_indexer/src/io/coati/JavaAstVisitor.java +++ b/java_indexer/src/io/coati/JavaAstVisitor.java @@ -401,6 +401,13 @@ public class JavaAstVisitor extends JavaAstVisitorAdapter ); } } + else + { + JavaIndexer.recordError( + m_callbackId, "Import not found.", true, true, + nameExpr.getBeginLine(), nameExpr.getBeginColumn(), nameExpr.getEndLine(), nameExpr.getEndColumn() + ); + } } catch (Exception e) { diff --git a/src/test/JavaParserTestSuite.h b/src/test/JavaParserTestSuite.h index 0d2addc3..4e5f990f 100644 --- a/src/test/JavaParserTestSuite.h +++ b/src/test/JavaParserTestSuite.h @@ -314,6 +314,16 @@ public: TS_ASSERT_EQUALS(client->errors[0], "Encountered unexpected token. <1:1 1:7>"); } + void test_java_parser_finds_missing_import_as_error() + { + std::shared_ptr client = parseCode( + "import foo;\n" + ); + + TS_ASSERT_EQUALS(client->errors.size(), 1); + TS_ASSERT_EQUALS(client->errors[0], "Import not found. <1:8 1:10>"); + } +