diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2019-08-20 17:59:23 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2019-08-20 17:59:23 +0000 |
commit | 9a83721404652cea39e9f02ae3e3b5c964602a5c (patch) | |
tree | 23e9541ce27049a103f6ed046be61592123e02c9 /unittests/AST/CommentTextTest.cpp | |
parent | 676fbe8105eeb6ff4bb2ed261cb212fcfdbe7b63 (diff) |
Notes
Diffstat (limited to 'unittests/AST/CommentTextTest.cpp')
-rw-r--r-- | unittests/AST/CommentTextTest.cpp | 128 |
1 files changed, 0 insertions, 128 deletions
diff --git a/unittests/AST/CommentTextTest.cpp b/unittests/AST/CommentTextTest.cpp deleted file mode 100644 index 5fb779535f5db..0000000000000 --- a/unittests/AST/CommentTextTest.cpp +++ /dev/null @@ -1,128 +0,0 @@ -//===- unittest/AST/CommentTextTest.cpp - Comment text extraction test ----===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// Tests for user-friendly output formatting of comments, i.e. -// RawComment::getFormattedText(). -// -//===----------------------------------------------------------------------===// - -#include "clang/AST/RawCommentList.h" -#include "clang/Basic/CommentOptions.h" -#include "clang/Basic/Diagnostic.h" -#include "clang/Basic/DiagnosticIDs.h" -#include "clang/Basic/FileManager.h" -#include "clang/Basic/FileSystemOptions.h" -#include "clang/Basic/SourceLocation.h" -#include "clang/Basic/SourceManager.h" -#include "llvm/Support/MemoryBuffer.h" -#include "llvm/Support/VirtualFileSystem.h" -#include <gtest/gtest.h> - -namespace clang { - -class CommentTextTest : public ::testing::Test { -protected: - std::string formatComment(llvm::StringRef CommentText) { - SourceManagerForFile FileSourceMgr("comment-test.cpp", CommentText); - SourceManager& SourceMgr = FileSourceMgr.get(); - - auto CommentStartOffset = CommentText.find("/"); - assert(CommentStartOffset != llvm::StringRef::npos); - FileID File = SourceMgr.getMainFileID(); - - SourceRange CommentRange( - SourceMgr.getLocForStartOfFile(File).getLocWithOffset( - CommentStartOffset), - SourceMgr.getLocForEndOfFile(File)); - CommentOptions EmptyOpts; - // FIXME: technically, merged that we set here is incorrect, but that - // shouldn't matter. - RawComment Comment(SourceMgr, CommentRange, EmptyOpts, /*Merged=*/true); - DiagnosticsEngine Diags(new DiagnosticIDs, new DiagnosticOptions); - return Comment.getFormattedText(SourceMgr, Diags); - } -}; - -TEST_F(CommentTextTest, FormattedText) { - // clang-format off - auto ExpectedOutput = -R"(This function does this and that. -For example, - Runnning it in that case will give you - this result. -That's about it.)"; - // Two-slash comments. - auto Formatted = formatComment( -R"cpp( -// This function does this and that. -// For example, -// Runnning it in that case will give you -// this result. -// That's about it.)cpp"); - EXPECT_EQ(ExpectedOutput, Formatted); - - // Three-slash comments. - Formatted = formatComment( -R"cpp( -/// This function does this and that. -/// For example, -/// Runnning it in that case will give you -/// this result. -/// That's about it.)cpp"); - EXPECT_EQ(ExpectedOutput, Formatted); - - // Block comments. - Formatted = formatComment( -R"cpp( -/* This function does this and that. - * For example, - * Runnning it in that case will give you - * this result. - * That's about it.*/)cpp"); - EXPECT_EQ(ExpectedOutput, Formatted); - - // Doxygen-style block comments. - Formatted = formatComment( -R"cpp( -/** This function does this and that. - * For example, - * Runnning it in that case will give you - * this result. - * That's about it.*/)cpp"); - EXPECT_EQ(ExpectedOutput, Formatted); - - // Weird indentation. - Formatted = formatComment( -R"cpp( - // This function does this and that. - // For example, - // Runnning it in that case will give you - // this result. - // That's about it.)cpp"); - EXPECT_EQ(ExpectedOutput, Formatted); - // clang-format on -} - -TEST_F(CommentTextTest, KeepsDoxygenControlSeqs) { - // clang-format off - auto ExpectedOutput = -R"(\brief This is the brief part of the comment. -\param a something about a. -@param b something about b.)"; - - auto Formatted = formatComment( -R"cpp( -/// \brief This is the brief part of the comment. -/// \param a something about a. -/// @param b something about b.)cpp"); - EXPECT_EQ(ExpectedOutput, Formatted); - // clang-format on -} - -} // namespace clang |