Skip to content

Commit 6b11760

Browse files
committed
[clangd] Try to fix CompileCommandsTests on windows. NFC
1 parent c93a9b1 commit 6b11760

File tree

2 files changed

+21
-14
lines changed

2 files changed

+21
-14
lines changed

clang-tools-extra/clangd/CompileCommands.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
66
//
77
//===----------------------------------------------------------------------===//
8+
#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_COMPILECOMMANDS_H
9+
#define LLVM_CLANG_TOOLS_EXTRA_CLANGD_COMPILECOMMANDS_H
810

911
#include "clang/Tooling/ArgumentsAdjusters.h"
1012
#include "clang/Tooling/CompilationDatabase.h"
@@ -46,3 +48,5 @@ struct CommandMangler {
4648

4749
} // namespace clangd
4850
} // namespace clang
51+
52+
#endif

clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
//===----------------------------------------------------------------------===//
88

99
#include "CompileCommands.h"
10+
#include "TestFS.h"
1011

1112
#include "llvm/ADT/StringExtras.h"
1213

@@ -30,32 +31,34 @@ using ::testing::Not;
3031
// Other tests just verify presence/absence of certain args.
3132
TEST(CommandMangler, Everything) {
3233
auto Mangler = CommandMangler::forTests();
33-
Mangler.ClangPath = "/fake/bin/clang";
34-
Mangler.ResourceDir = "/fake/resources";
35-
Mangler.Sysroot = "/fake/sysroot";
34+
Mangler.ClangPath = testPath("fake/clang");
35+
Mangler.ResourceDir = testPath("fake/resources");
36+
Mangler.Sysroot = testPath("fake/sysroot");
3637
std::vector<std::string> Cmd = {"clang++", "-Xclang", "-load", "-Xclang",
3738
"plugin", "-MF", "dep", "foo.cc"};
3839
Mangler.adjust(Cmd);
39-
EXPECT_THAT(Cmd, ElementsAre("/fake/bin/clang++", "foo.cc", "-fsyntax-only",
40-
"-resource-dir=/fake/resources", "-isysroot",
41-
"/fake/sysroot"));
40+
EXPECT_THAT(Cmd, ElementsAre(testPath("fake/clang++"), "foo.cc",
41+
"-fsyntax-only",
42+
"-resource-dir=" + testPath("fake/resources"),
43+
"-isysroot", testPath("fake/sysroot")));
4244
}
4345

4446
TEST(CommandMangler, ResourceDir) {
4547
auto Mangler = CommandMangler::forTests();
46-
Mangler.ResourceDir = "/fake/resources";
48+
Mangler.ResourceDir = testPath("fake/resources");
4749
std::vector<std::string> Cmd = {"clang++", "foo.cc"};
4850
Mangler.adjust(Cmd);
49-
EXPECT_THAT(Cmd, Contains("-resource-dir=/fake/resources"));
51+
EXPECT_THAT(Cmd, Contains("-resource-dir=" + testPath("fake/resources")));
5052
}
5153

5254
TEST(CommandMangler, Sysroot) {
5355
auto Mangler = CommandMangler::forTests();
54-
Mangler.Sysroot = "/fake/sysroot";
56+
Mangler.Sysroot = testPath("fake/sysroot");
5557

5658
std::vector<std::string> Cmd = {"clang++", "foo.cc"};
5759
Mangler.adjust(Cmd);
58-
EXPECT_THAT(llvm::join(Cmd, " "), HasSubstr("-isysroot /fake/sysroot"));
60+
EXPECT_THAT(llvm::join(Cmd, " "),
61+
HasSubstr("-isysroot " + testPath("fake/sysroot")));
5962
}
6063

6164
TEST(CommandMangler, StripPlugins) {
@@ -78,19 +81,19 @@ TEST(CommandMangler, StripOutput) {
7881

7982
TEST(CommandMangler, ClangPath) {
8083
auto Mangler = CommandMangler::forTests();
81-
Mangler.ClangPath = "/fake/clang";
84+
Mangler.ClangPath = testPath("fake/clang");
8285

8386
std::vector<std::string> Cmd = {"clang++", "foo.cc"};
8487
Mangler.adjust(Cmd);
85-
EXPECT_EQ("/fake/clang++", Cmd.front());
88+
EXPECT_EQ(testPath("fake/clang++"), Cmd.front());
8689

8790
Cmd = {"unknown-binary", "foo.cc"};
8891
Mangler.adjust(Cmd);
8992
EXPECT_EQ("unknown-binary", Cmd.front());
9093

91-
Cmd = {"/path/clang++", "foo.cc"};
94+
Cmd = {testPath("path/clang++"), "foo.cc"};
9295
Mangler.adjust(Cmd);
93-
EXPECT_EQ("/path/clang++", Cmd.front());
96+
EXPECT_EQ(testPath("path/clang++"), Cmd.front());
9497
}
9598

9699
} // namespace

0 commit comments

Comments
 (0)