llvm/clang-tools-extra/unittests/clang-tidy/OverlappingReplacementsTest.cpp

//===---- OverlappingReplacementsTest.cpp - clang-tidy --------------------===//
//
// 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 "ClangTidyTest.h"
#include "clang/AST/RecursiveASTVisitor.h"
#include "gtest/gtest.h"

namespace clang {
namespace tidy {
namespace test {
namespace {

const char BoundDecl[] =;
const char BoundIf[] =;

// We define a reduced set of very small checks that allow to test different
// overlapping situations (no overlapping, replacements partially overlap, etc),
// as well as different kinds of diagnostics (one check produces several errors,
// several replacement ranges in an error, etc).
class UseCharCheck : public ClangTidyCheck {};

class IfFalseCheck : public ClangTidyCheck {};

class RefactorCheck : public ClangTidyCheck {};

class StartsWithPotaCheck : public RefactorCheck {};

class EndsWithTatoCheck : public RefactorCheck {};

} // namespace

TEST(OverlappingReplacementsTest, UseCharCheckTest) {}

TEST(OverlappingReplacementsTest, IfFalseCheckTest) {}

TEST(OverlappingReplacementsTest, StartsWithCheckTest) {}

TEST(OverlappingReplacementsTest, EndsWithCheckTest) {}

TEST(OverlappingReplacementTest, ReplacementsDoNotOverlap) {}

TEST(OverlappingReplacementsTest, ReplacementInsideOtherReplacement) {}

TEST(OverlappingReplacements, TwoReplacementsInsideOne) {}

TEST(OverlappingReplacementsTest,
     ApplyAtMostOneOfTheChangesWhenPartialOverlapping) {}

TEST(OverlappingReplacementsTest, TwoErrorsHavePerfectOverlapping) {}

} // namespace test
} // namespace tidy
} // namespace clang