Author: Sam McCall Date: 2019-12-02T21:55:54+01:00 New Revision: 82039cbc8d2a0f6fb5995f54e0e42919999bcfd0
URL: https://github.com/llvm/llvm-project/commit/82039cbc8d2a0f6fb5995f54e0e42919999bcfd0 DIFF: https://github.com/llvm/llvm-project/commit/82039cbc8d2a0f6fb5995f54e0e42919999bcfd0.diff LOG: [clangd] repair mac tests for 88bccded8fa1 Added: Modified: clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp Removed: ################################################################################ diff --git a/clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp b/clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp index 01f0ba1b4044..ee7ba4355c05 100644 --- a/clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp +++ b/clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp @@ -527,6 +527,13 @@ TEST_F(BackgroundIndexTest, UncompilableFiles) { } } +MATCHER_P(HasPrefix, Prefix, "") { + auto Arg = arg; // Force copy. + if (Arg.size() > Prefix.size()) + Arg.resize(Prefix.size()); + return Arg == Prefix; +} + TEST_F(BackgroundIndexTest, CmdLineHash) { MockFSProvider FS; llvm::StringMap<std::string> Storage; @@ -552,7 +559,8 @@ TEST_F(BackgroundIndexTest, CmdLineHash) { { tooling::CompileCommand CmdStored = *MSS.loadShard(testPath("A.cc"))->Cmd; - EXPECT_EQ(CmdStored.CommandLine, Cmd.CommandLine); + // Accept prefix because -isysroot gets added on mac. + EXPECT_THAT(CmdStored.CommandLine, HasPrefix(Cmd.CommandLine)); EXPECT_EQ(CmdStored.Directory, Cmd.Directory); } @@ -566,6 +574,7 @@ TEST_F(BackgroundIndexTest, CmdLineHash) { { tooling::CompileCommand CmdStored = *MSS.loadShard(testPath("A.cc"))->Cmd; + EXPECT_THAT(CmdStored.CommandLine, HasPrefix(Cmd.CommandLine)); EXPECT_EQ(CmdStored.CommandLine, Cmd.CommandLine); EXPECT_EQ(CmdStored.Directory, Cmd.Directory); } diff --git a/clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp b/clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp index 15f628825b13..857bf26f00dc 100644 --- a/clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp +++ b/clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp @@ -102,12 +102,20 @@ TEST_F(OverlayCDBTest, GetCompileCommand) { Contains("-DA=3")); } +// Remove -isysroot injected on mac, if present, to simplify tests. +std::vector<std::string> stripSysroot(std::vector<std::string> Cmd) { + // Allow -isysroot injection on Mac. + if (Cmd.size() > 2 && Cmd[Cmd.size() - 2] == "-isysroot") + Cmd.resize(Cmd.size() - 2); + return Cmd; +} + TEST_F(OverlayCDBTest, GetFallbackCommand) { OverlayCDB CDB(Base.get(), {"-DA=4"}); - EXPECT_THAT(CDB.getFallbackCommand(testPath("bar.cc")).CommandLine, - ElementsAre(EndsWith("clang"), "-DA=2", testPath("bar.cc"), - "-DA=4", "-fsyntax-only", - StartsWith("-resource-dir"))); + EXPECT_THAT( + stripSysroot(CDB.getFallbackCommand(testPath("bar.cc")).CommandLine), + ElementsAre(EndsWith("clang"), "-DA=2", testPath("bar.cc"), "-DA=4", + "-fsyntax-only", StartsWith("-resource-dir"))); } TEST_F(OverlayCDBTest, NoBase) { @@ -118,9 +126,10 @@ TEST_F(OverlayCDBTest, NoBase) { EXPECT_THAT(CDB.getCompileCommand(testPath("bar.cc"))->CommandLine, Contains("-DA=5")); - EXPECT_THAT(CDB.getFallbackCommand(testPath("foo.cc")).CommandLine, - ElementsAre(EndsWith("clang"), testPath("foo.cc"), "-DA=6", - "-fsyntax-only")); + EXPECT_THAT( + stripSysroot(CDB.getFallbackCommand(testPath("foo.cc")).CommandLine), + ElementsAre(EndsWith("clang"), testPath("foo.cc"), "-DA=6", + "-fsyntax-only")); } TEST_F(OverlayCDBTest, Watch) { _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits