mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-27 08:16:06 +00:00

and reject them when copying Swift interface files, since they can live outside of DEVELOPER_DIR.
36 lines
1.3 KiB
C++
36 lines
1.3 KiB
C++
//===- llvm/unittest/DWARFLinkerParallel/DWARFLinkerTest.cpp --------------===//
|
|
//
|
|
// 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 "llvm/DWARFLinker/Utils.h"
|
|
#include "gtest/gtest.h"
|
|
|
|
using namespace llvm;
|
|
using namespace dwarf_linker;
|
|
|
|
#define DEVELOPER_DIR "/Applications/Xcode.app/Contents/Developer"
|
|
|
|
namespace {
|
|
|
|
TEST(DWARFLinker, PathTest) {
|
|
EXPECT_EQ(guessDeveloperDir("/Foo"), "");
|
|
EXPECT_EQ(guessDeveloperDir("Foo.sdk"), "");
|
|
EXPECT_EQ(guessDeveloperDir(
|
|
DEVELOPER_DIR
|
|
"/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk"),
|
|
DEVELOPER_DIR);
|
|
EXPECT_EQ(guessDeveloperDir(DEVELOPER_DIR "/SDKs/MacOSX.sdk"), DEVELOPER_DIR);
|
|
EXPECT_TRUE(
|
|
isInToolchainDir("/Library/Developer/Toolchains/"
|
|
"swift-DEVELOPMENT-SNAPSHOT-2024-05-15-a.xctoolchain/"
|
|
"usr/lib/swift/macosx/_StringProcessing.swiftmodule/"
|
|
"arm64-apple-macos.private.swiftinterface"));
|
|
EXPECT_FALSE(isInToolchainDir("/Foo/not-an.xctoolchain/Bar/Baz"));
|
|
}
|
|
|
|
} // anonymous namespace
|