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.
3132TEST (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
4446TEST (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
5254TEST (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
6164TEST (CommandMangler, StripPlugins) {
@@ -78,19 +81,19 @@ TEST(CommandMangler, StripOutput) {
7881
7982TEST (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