xref: /llvm-project/llvm/unittests/DWARFLinkerParallel/DWARFLinkerTest.cpp (revision 22ada554d5123717d163fea5a2a8d87020b332fe)
1a920ae3bSAlexey Lapshin //===- llvm/unittest/DWARFLinkerParallel/DWARFLinkerTest.cpp --------------===//
2a920ae3bSAlexey Lapshin //
3a920ae3bSAlexey Lapshin // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4a920ae3bSAlexey Lapshin // See https://llvm.org/LICENSE.txt for license information.
5a920ae3bSAlexey Lapshin // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6a920ae3bSAlexey Lapshin //
7a920ae3bSAlexey Lapshin //===----------------------------------------------------------------------===//
8f8cc183eSAdrian Prantl 
9f8cc183eSAdrian Prantl #include "llvm/DWARFLinker/Utils.h"
10f8cc183eSAdrian Prantl #include "gtest/gtest.h"
11f8cc183eSAdrian Prantl 
12f8cc183eSAdrian Prantl using namespace llvm;
13f8cc183eSAdrian Prantl using namespace dwarf_linker;
14f8cc183eSAdrian Prantl 
15f8cc183eSAdrian Prantl #define DEVELOPER_DIR "/Applications/Xcode.app/Contents/Developer"
16f8cc183eSAdrian Prantl 
17f8cc183eSAdrian Prantl namespace {
18f8cc183eSAdrian Prantl 
TEST(DWARFLinker,PathTest)19f8cc183eSAdrian Prantl TEST(DWARFLinker, PathTest) {
20f8cc183eSAdrian Prantl   EXPECT_EQ(guessDeveloperDir("/Foo"), "");
21f8cc183eSAdrian Prantl   EXPECT_EQ(guessDeveloperDir("Foo.sdk"), "");
22f8cc183eSAdrian Prantl   EXPECT_EQ(guessDeveloperDir(
23f8cc183eSAdrian Prantl                 DEVELOPER_DIR
24f8cc183eSAdrian Prantl                 "/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk"),
25f8cc183eSAdrian Prantl             DEVELOPER_DIR);
26f8cc183eSAdrian Prantl   EXPECT_EQ(guessDeveloperDir(DEVELOPER_DIR "/SDKs/MacOSX.sdk"), DEVELOPER_DIR);
27*22ada554SAdrian Prantl   EXPECT_TRUE(
28*22ada554SAdrian Prantl       isInToolchainDir("/Library/Developer/Toolchains/"
29*22ada554SAdrian Prantl                        "swift-DEVELOPMENT-SNAPSHOT-2024-05-15-a.xctoolchain/"
30*22ada554SAdrian Prantl                        "usr/lib/swift/macosx/_StringProcessing.swiftmodule/"
31*22ada554SAdrian Prantl                        "arm64-apple-macos.private.swiftinterface"));
32*22ada554SAdrian Prantl   EXPECT_FALSE(isInToolchainDir("/Foo/not-an.xctoolchain/Bar/Baz"));
33f8cc183eSAdrian Prantl }
34f8cc183eSAdrian Prantl 
35f8cc183eSAdrian Prantl } // anonymous namespace
36