| //===-- PathTests.cpp -------------------------------------------*- C++ -*-===// |
| // |
| // 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 "TestFS.h" |
| #include "support/Path.h" |
| #include "gmock/gmock.h" |
| #include "gtest/gtest.h" |
| |
| namespace clang { |
| namespace clangd { |
| namespace { |
| TEST(PathTests, IsAncestor) { |
| EXPECT_TRUE(pathStartsWith(testPath("foo"), testPath("foo"))); |
| EXPECT_TRUE(pathStartsWith(testPath("foo/"), testPath("foo"))); |
| |
| EXPECT_FALSE(pathStartsWith(testPath("foo"), testPath("fooz"))); |
| EXPECT_FALSE(pathStartsWith(testPath("foo/"), testPath("fooz"))); |
| |
| EXPECT_TRUE(pathStartsWith(testPath("foo"), testPath("foo/bar"))); |
| EXPECT_TRUE(pathStartsWith(testPath("foo/"), testPath("foo/bar"))); |
| |
| #ifdef CLANGD_PATH_CASE_INSENSITIVE |
| EXPECT_TRUE(pathStartsWith(testPath("fOo"), testPath("foo/bar"))); |
| EXPECT_TRUE(pathStartsWith(testPath("foo"), testPath("fOo/bar"))); |
| #else |
| EXPECT_FALSE(pathStartsWith(testPath("fOo"), testPath("foo/bar"))); |
| EXPECT_FALSE(pathStartsWith(testPath("foo"), testPath("fOo/bar"))); |
| #endif |
| } |
| } // namespace |
| } // namespace clangd |
| } // namespace clang |