Author: Haojian Wu Date: 2020-01-20T17:01:05+01:00 New Revision: 3de9a5db629ac9d633576513d025a8f038a3cdec
URL: https://github.com/llvm/llvm-project/commit/3de9a5db629ac9d633576513d025a8f038a3cdec DIFF: https://github.com/llvm/llvm-project/commit/3de9a5db629ac9d633576513d025a8f038a3cdec.diff LOG: [clangd] Avoid redundant testcases in rename unittest, NFC. Reviewers: kadircet Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D73035 Added: Modified: clang-tools-extra/clangd/refactor/Rename.cpp clang-tools-extra/clangd/unittests/RenameTests.cpp Removed: ################################################################################ diff --git a/clang-tools-extra/clangd/refactor/Rename.cpp b/clang-tools-extra/clangd/refactor/Rename.cpp index 80917e1abb27..9518d848eff5 100644 --- a/clang-tools-extra/clangd/refactor/Rename.cpp +++ b/clang-tools-extra/clangd/refactor/Rename.cpp @@ -215,7 +215,7 @@ std::vector<SourceLocation> findOccurrencesWithinFile(ParsedAST &AST, // getUSRsForDeclaration will find other related symbols, e.g. virtual and its // overriddens, primary template and all explicit specializations. // FIXME: Get rid of the remaining tooling APIs. - const auto RenameDecl = + const auto *RenameDecl = ND.getDescribedTemplate() ? ND.getDescribedTemplate() : &ND; std::vector<std::string> RenameUSRs = tooling::getUSRsForDeclaration(RenameDecl, AST.getASTContext()); diff --git a/clang-tools-extra/clangd/unittests/RenameTests.cpp b/clang-tools-extra/clangd/unittests/RenameTests.cpp index 6ced22bf3515..80930b9096d4 100644 --- a/clang-tools-extra/clangd/unittests/RenameTests.cpp +++ b/clang-tools-extra/clangd/unittests/RenameTests.cpp @@ -722,7 +722,7 @@ TEST(CrossFileRenameTests, WithUpToDateIndex) { void onDiagnosticsReady(PathRef File, std::vector<Diag> Diagnostics) override {} } DiagConsumer; - // rename is runnning on the "^" point in FooH, and "[[]]" ranges are the + // rename is runnning on all "^" points in FooH, and "[[]]" ranges are the // expected rename occurrences. struct Case { llvm::StringRef FooH; @@ -763,28 +763,10 @@ TEST(CrossFileRenameTests, WithUpToDateIndex) { )cpp", }, { - // Constructor. + // rename on constructor and destructor. R"cpp( class [[Foo]] { [[^Foo]](); - ~[[Foo]](); - }; - )cpp", - R"cpp( - #include "foo.h" - [[Foo]]::[[Foo]]() {} - [[Foo]]::~[[Foo]]() {} - - void func() { - [[Foo]] foo; - } - )cpp", - }, - { - // Destructor (selecting before the identifier). - R"cpp( - class [[Foo]] { - [[Foo]](); ~[[Foo^]](); }; )cpp", @@ -891,12 +873,15 @@ TEST(CrossFileRenameTests, WithUpToDateIndex) { runAddDocument(Server, FooCCPath, FooCC.code()); llvm::StringRef NewName = "NewName"; - auto FileEditsList = - llvm::cantFail(runRename(Server, FooHPath, FooH.point(), NewName)); - EXPECT_THAT(applyEdits(std::move(FileEditsList)), - UnorderedElementsAre( - Pair(Eq(FooHPath), Eq(expectedResult(T.FooH, NewName))), - Pair(Eq(FooCCPath), Eq(expectedResult(T.FooCC, NewName))))); + for (const auto &RenamePos : FooH.points()) { + auto FileEditsList = + llvm::cantFail(runRename(Server, FooHPath, RenamePos, NewName)); + EXPECT_THAT( + applyEdits(std::move(FileEditsList)), + UnorderedElementsAre( + Pair(Eq(FooHPath), Eq(expectedResult(T.FooH, NewName))), + Pair(Eq(FooCCPath), Eq(expectedResult(T.FooCC, NewName))))); + } } } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits