llvm/clang/unittests/AST/CommentLexer.cpp

//===- unittests/AST/CommentLexer.cpp ------ Comment lexer tests ----------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "clang/AST/CommentLexer.h"
#include "clang/AST/CommentCommandTraits.h"
#include "clang/Basic/CommentOptions.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/DiagnosticOptions.h"
#include "clang/Basic/FileManager.h"
#include "clang/Basic/SourceManager.h"
#include "llvm/ADT/STLExtras.h"
#include "gtest/gtest.h"
#include <vector>

usingnamespacellvm;
usingnamespaceclang;

namespace clang {
namespace comments {

namespace {
class CommentLexerTest : public ::testing::Test {};

void CommentLexerTest::lexString(const char *Source,
                                 std::vector<Token> &Toks) {}

} // unnamed namespace

// Empty source range should be handled.
TEST_F(CommentLexerTest, Basic1) {}

// Empty comments should be handled.
TEST_F(CommentLexerTest, Basic2) {}

// Empty comments should be handled.
TEST_F(CommentLexerTest, Basic3) {}

// Single comment with plain text.
TEST_F(CommentLexerTest, Basic4) {}

// Single comment with plain text.
TEST_F(CommentLexerTest, Basic5) {}

// Test newline escaping.
TEST_F(CommentLexerTest, Basic6) {}

// Check that we skip C-style aligned stars correctly.
TEST_F(CommentLexerTest, Basic7) {}

// A command marker followed by comment end.
TEST_F(CommentLexerTest, DoxygenCommand1) {}

// A command marker followed by comment end.
TEST_F(CommentLexerTest, DoxygenCommand2) {}

// A command marker followed by comment end.
TEST_F(CommentLexerTest, DoxygenCommand3) {}

// Doxygen escape sequences.
TEST_F(CommentLexerTest, DoxygenCommand4) {}

// A command marker followed by a non-letter that is not a part of an escape
// sequence.
TEST_F(CommentLexerTest, DoxygenCommand5) {}

TEST_F(CommentLexerTest, DoxygenCommand6) {}

TEST_F(CommentLexerTest, DoxygenCommand7) {}

TEST_F(CommentLexerTest, DoxygenCommand8) {}

TEST_F(CommentLexerTest, DoxygenCommand9) {}

TEST_F(CommentLexerTest, DoxygenCommand10) {}

TEST_F(CommentLexerTest, RegisterCustomBlockCommand) {}

TEST_F(CommentLexerTest, RegisterMultipleBlockCommands) {}

// Empty verbatim block.
TEST_F(CommentLexerTest, VerbatimBlock1) {}

// Empty verbatim block without an end command.
TEST_F(CommentLexerTest, VerbatimBlock2) {}

// Empty verbatim block without an end command.
TEST_F(CommentLexerTest, VerbatimBlock3) {}

// Single-line verbatim block.
TEST_F(CommentLexerTest, VerbatimBlock4) {}

// Single-line verbatim block without an end command.
TEST_F(CommentLexerTest, VerbatimBlock5) {}

TEST_F(CommentLexerTest, VerbatimBlock6) {}

TEST_F(CommentLexerTest, VerbatimBlock7) {}

// Complex test for verbatim blocks.
TEST_F(CommentLexerTest, VerbatimBlock8) {}

// LaTeX verbatim blocks.
TEST_F(CommentLexerTest, VerbatimBlock9) {}

// Empty verbatim line.
TEST_F(CommentLexerTest, VerbatimLine1) {}

// Verbatim line with Doxygen escape sequences, which should not be expanded.
TEST_F(CommentLexerTest, VerbatimLine2) {}

// Verbatim line should not eat anything from next source line.
TEST_F(CommentLexerTest, VerbatimLine3) {}

TEST_F(CommentLexerTest, HTML1) {}

TEST_F(CommentLexerTest, HTML2) {}

TEST_F(CommentLexerTest, HTML3) {}

TEST_F(CommentLexerTest, HTML4) {}

TEST_F(CommentLexerTest, HTML5) {}

TEST_F(CommentLexerTest, HTML6) {}

TEST_F(CommentLexerTest, HTML7) {}

TEST_F(CommentLexerTest, HTML8) {}

TEST_F(CommentLexerTest, HTML9) {}

TEST_F(CommentLexerTest, HTML10) {}

TEST_F(CommentLexerTest, HTML11) {}

TEST_F(CommentLexerTest, HTML12) {}

TEST_F(CommentLexerTest, HTML13) {}

TEST_F(CommentLexerTest, HTML14) {}

TEST_F(CommentLexerTest, HTML15) {}

TEST_F(CommentLexerTest, HTML16) {}

TEST_F(CommentLexerTest, HTML17) {}

TEST_F(CommentLexerTest, HTML18) {}

TEST_F(CommentLexerTest, HTML19) {}

TEST_F(CommentLexerTest, NotAKnownHTMLTag1) {}

TEST_F(CommentLexerTest, NotAKnownHTMLTag2) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences1) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences2) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences3) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences4) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences5) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences6) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences7) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences8) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences9) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences10) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences11) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences12) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences13) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences14) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences15) {}

TEST_F(CommentLexerTest, HTMLCharacterReferences16) {}

TEST_F(CommentLexerTest, MultipleComments) {}

} // end namespace comments
} // end namespace clang