diff options
-rw-r--r-- | clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp | 12 | ||||
-rw-r--r-- | clang-tools-extra/unittests/clangd/TestFS.cpp | 2 | ||||
-rw-r--r-- | clang-tools-extra/unittests/clangd/TestFS.h | 3 |
3 files changed, 11 insertions, 6 deletions
diff --git a/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp b/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp index 41e75003b38..848d53f8b93 100644 --- a/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp +++ b/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp @@ -7,6 +7,7 @@ // //===----------------------------------------------------------------------===// +#include "TestFS.h" #include "index/SymbolCollector.h" #include "index/SymbolYAML.h" #include "clang/Basic/FileManager.h" @@ -44,7 +45,7 @@ MATCHER_P(Snippet, S, "") { return arg.CompletionSnippetInsertText == S; } MATCHER_P(QName, Name, "") { return (arg.Scope + arg.Name).str() == Name; } -MATCHER_P(Path, P, "") { return arg.CanonicalDeclaration.FilePath == P; } +MATCHER_P(CPath, P, "") { return arg.CanonicalDeclaration.FilePath == P; } namespace clang { namespace clangd { @@ -156,15 +157,16 @@ TEST_F(SymbolCollectorTest, SymbolRelativeNoFallback) { CollectorOpts.IndexMainFiles = false; runSymbolCollector("class Foo {};", /*Main=*/""); EXPECT_THAT(Symbols, - UnorderedElementsAre(AllOf(QName("Foo"), Path("symbols.h")))); + UnorderedElementsAre(AllOf(QName("Foo"), CPath("symbols.h")))); } TEST_F(SymbolCollectorTest, SymbolRelativeWithFallback) { CollectorOpts.IndexMainFiles = false; - CollectorOpts.FallbackDir = "/cwd"; + CollectorOpts.FallbackDir = getVirtualTestRoot(); runSymbolCollector("class Foo {};", /*Main=*/""); - EXPECT_THAT(Symbols, UnorderedElementsAre( - AllOf(QName("Foo"), Path("/cwd/symbols.h")))); + EXPECT_THAT(Symbols, + UnorderedElementsAre(AllOf( + QName("Foo"), CPath(getVirtualTestFilePath("symbols.h"))))); } TEST_F(SymbolCollectorTest, IncludeEnums) { diff --git a/clang-tools-extra/unittests/clangd/TestFS.cpp b/clang-tools-extra/unittests/clangd/TestFS.cpp index d911fa535f7..42fb4b87d5d 100644 --- a/clang-tools-extra/unittests/clangd/TestFS.cpp +++ b/clang-tools-extra/unittests/clangd/TestFS.cpp @@ -159,7 +159,7 @@ MockCompilationDatabase::getCompileCommand(PathRef File) const { std::move(CommandLine), "")}; } -static const char *getVirtualTestRoot() { +const char *getVirtualTestRoot() { #ifdef LLVM_ON_WIN32 return "C:\\clangd-test"; #else diff --git a/clang-tools-extra/unittests/clangd/TestFS.h b/clang-tools-extra/unittests/clangd/TestFS.h index 6abad208b9d..6ff1c662201 100644 --- a/clang-tools-extra/unittests/clangd/TestFS.h +++ b/clang-tools-extra/unittests/clangd/TestFS.h @@ -45,6 +45,9 @@ public: std::vector<std::string> ExtraClangFlags; }; +// Returns an absolute (fake) test directory for this OS. +const char *getVirtualTestRoot(); + // Returns a suitable absolute path for this OS. llvm::SmallString<32> getVirtualTestFilePath(PathRef File); |