[clang-tools-extra] 7394d3b - Investigate D110386 Windows failures
Kirill Bobyrev via cfe-commits
cfe-commits at lists.llvm.org
Tue Sep 28 00:53:10 PDT 2021
Author: Kirill Bobyrev
Date: 2021-09-28T09:53:01+02:00
New Revision: 7394d3ba276adeb1527428b2355a920129a2b9b1
URL: https://github.com/llvm/llvm-project/commit/7394d3ba276adeb1527428b2355a920129a2b9b1
DIFF: https://github.com/llvm/llvm-project/commit/7394d3ba276adeb1527428b2355a920129a2b9b1.diff
LOG: Investigate D110386 Windows failures
Add more information for test failures inspection.
Added:
Modified:
clang-tools-extra/clangd/Headers.h
clang-tools-extra/clangd/unittests/HeadersTests.cpp
clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
Removed:
################################################################################
diff --git a/clang-tools-extra/clangd/Headers.h b/clang-tools-extra/clangd/Headers.h
index 86294b9e2cda..900b779927e2 100644
--- a/clang-tools-extra/clangd/Headers.h
+++ b/clang-tools-extra/clangd/Headers.h
@@ -20,6 +20,7 @@
#include "clang/Lex/PPCallbacks.h"
#include "clang/Tooling/Inclusions/HeaderIncludes.h"
#include "llvm/ADT/ArrayRef.h"
+#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/StringSet.h"
#include "llvm/Support/Error.h"
@@ -141,6 +142,11 @@ class IncludeStructure {
std::vector<Inclusion> MainFileIncludes;
+ std::string dump() {
+ return "RealPathNames: " +
+ llvm::join(RealPathNames.begin(), RealPathNames.end(), ", ");
+ }
+
private:
std::vector<std::string> RealPathNames; // In HeaderID order.
// HeaderID maps the FileEntry::Name to the internal representation.
diff --git a/clang-tools-extra/clangd/unittests/HeadersTests.cpp b/clang-tools-extra/clangd/unittests/HeadersTests.cpp
index 8a6f5e8b4619..f6f1f4a5548d 100644
--- a/clang-tools-extra/clangd/unittests/HeadersTests.cpp
+++ b/clang-tools-extra/clangd/unittests/HeadersTests.cpp
@@ -165,7 +165,8 @@ TEST_F(HeadersTest, CollectRewrittenAndResolved) {
AllOf(Written("\"sub/bar.h\""), Resolved(BarHeader))));
EXPECT_THAT(Includes.includeDepth(getID(MainFile, Includes)),
UnorderedElementsAre(Distance(getID(MainFile, Includes), 0u),
- Distance(getID(BarHeader, Includes), 1u)));
+ Distance(getID(BarHeader, Includes), 1u)))
+ << Includes.dump();
}
TEST_F(HeadersTest, OnlyCollectInclusionsInMain) {
@@ -179,17 +180,19 @@ TEST_F(HeadersTest, OnlyCollectInclusionsInMain) {
#include "bar.h"
)cpp";
auto Includes = collectIncludes();
- EXPECT_THAT(Includes.MainFileIncludes,
- UnorderedElementsAre(
- AllOf(Written("\"bar.h\""), Resolved(BarHeader))));
+ EXPECT_THAT(
+ Includes.MainFileIncludes,
+ UnorderedElementsAre(AllOf(Written("\"bar.h\""), Resolved(BarHeader))));
EXPECT_THAT(Includes.includeDepth(getID(MainFile, Includes)),
UnorderedElementsAre(Distance(getID(MainFile, Includes), 0u),
Distance(getID(BarHeader, Includes), 1u),
- Distance(getID(BazHeader, Includes), 2u)));
+ Distance(getID(BazHeader, Includes), 2u)))
+ << Includes.dump();
// includeDepth() also works for non-main files.
EXPECT_THAT(Includes.includeDepth(getID(BarHeader, Includes)),
UnorderedElementsAre(Distance(getID(BarHeader, Includes), 0u),
- Distance(getID(BazHeader, Includes), 1u)));
+ Distance(getID(BazHeader, Includes), 1u)))
+ << Includes.dump();
}
TEST_F(HeadersTest, PreambleIncludesPresentOnce) {
@@ -240,7 +243,7 @@ TEST_F(HeadersTest, IncludedFilesGraph) {
{getID(BarHeader, Includes), getID(FooHeader, Includes)}},
{getID(FooHeader, Includes),
{getID(BarHeader, Includes), getID(BazHeader, Includes)}}};
- EXPECT_EQ(Includes.IncludeChildren, Expected);
+ EXPECT_EQ(Includes.IncludeChildren, Expected) << Includes.dump();
}
TEST_F(HeadersTest, IncludeDirective) {
diff --git a/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp b/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
index 9195865294f1..2da3988d8ea1 100644
--- a/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
+++ b/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
@@ -519,7 +519,8 @@ TEST(ParsedASTTest, PatchesAdditionalIncludes) {
auto AuxFE = FM.getFile(testPath("sub/aux.h"));
ASSERT_TRUE(AuxFE);
auto AuxID = Includes.getID(*AuxFE);
- EXPECT_THAT(Includes.IncludeChildren[*MainID], Contains(*AuxID));
+ EXPECT_THAT(Includes.IncludeChildren[*MainID], Contains(*AuxID))
+ << Includes.dump();
}
TEST(ParsedASTTest, PatchesDeletedIncludes) {
More information about the cfe-commits
mailing list