From 9c7ff5199f77ad668eb48891c3d917a97ca7249a Mon Sep 17 00:00:00 2001 From: Tim Jenssen Date: Tue, 15 Nov 2016 15:38:12 +0100 Subject: Clang: Add clang query Clang query is mechanism to use AST matcher to search for code. Think about regular expression but in the context of AST. So you get a semantic search tool for C++. Change-Id: I72e882c5b53a0c52f352a3664847c4c3e4f6fc2e Reviewed-by: Tim Jenssen --- tests/unit/unittest/refactoringengine-test.cpp | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'tests/unit/unittest/refactoringengine-test.cpp') diff --git a/tests/unit/unittest/refactoringengine-test.cpp b/tests/unit/unittest/refactoringengine-test.cpp index e295ac34f1..e42d555829 100644 --- a/tests/unit/unittest/refactoringengine-test.cpp +++ b/tests/unit/unittest/refactoringengine-test.cpp @@ -32,7 +32,9 @@ #include #include +#include #include +#include #include @@ -66,7 +68,7 @@ protected: QTextCursor cursor{&textDocument}; QString qStringFilePath{QStringLiteral("/home/user/file.cpp")}; Utils::FileName filePath{Utils::FileName::fromString(qStringFilePath)}; - ClangBackEnd::FilePath clangBackEndFilePath{"/home/user", "file.cpp"}; + ClangBackEnd::FilePath clangBackEndFilePath{qStringFilePath}; SmallStringVector commandLine; CppTools::ProjectPart::Ptr projectPart; CppTools::ProjectFile projectFile{qStringFilePath, CppTools::ProjectFile::CXXSource}; @@ -97,6 +99,25 @@ TEST_F(RefactoringEngine, AfterSendRequestSourceLocationsForRenamingMessageIsUnu ASSERT_FALSE(engine.isUsable()); } +TEST_F(RefactoringEngine, EngineIsNotUsableForUnusableServer) +{ + ASSERT_FALSE(engine.isUsable()); +} + +TEST_F(RefactoringEngine, EngineIsUsableForUsableServer) +{ + mockRefactoringServer.setUsable(true); + + ASSERT_TRUE(engine.isUsable()); +} + +TEST_F(RefactoringEngine, ServerIsUsableForUsableEngine) +{ + engine.setUsable(true); + + ASSERT_TRUE(mockRefactoringServer.isUsable()); +} + RefactoringEngine::RefactoringEngine() : engine(mockRefactoringServer, mockRefactoringClient) { -- cgit v1.2.1