Skip to content

Commit b0d7a86

Browse files
committed
Fix prepare for index tests to not include triple.
This was causing the builds to fail on other machines.
1 parent d470938 commit b0d7a86

File tree

1 file changed

+26
-20
lines changed

1 file changed

+26
-20
lines changed

Tests/BuildTests/PrepareForIndexTests.swift

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import Foundation
1212
import LLBuildManifest
1313
@_spi(SwiftPMInternal)
1414
import SPMTestSupport
15+
import TSCBasic
1516
import XCTest
1617

1718
class PrepareForIndexTests: XCTestCase {
@@ -34,35 +35,38 @@ class PrepareForIndexTests: XCTestCase {
3435
// Make sure we're not building things that link
3536
XCTAssertNil(manifest.commands["C.Core-debug.exe"])
3637

37-
let outputs = manifest.commands.flatMap(\.value.tool.outputs).map(\.name)
38+
let outputs = try manifest.commands.flatMap(\.value.tool.outputs).map(\.name)
39+
.filter({ $0.hasPrefix("/path/to/") })
40+
.map({ try AbsolutePath(validating: $0).components.suffix(3).joined(separator: "/") })
3841

3942
// Make sure we're building the swift modules
4043
let swiftModules = Set(outputs.filter({ $0.hasSuffix(".swiftmodule")}))
4144
XCTAssertEqual(swiftModules, Set([
42-
"/path/to/build/arm64-apple-macosx15.0/debug/Core.build/Core.swiftmodule",
43-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules/CoreTests.swiftmodule",
44-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules/HAL.swiftmodule",
45-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules/HALTests.swiftmodule",
46-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules/MMIO.swiftmodule",
47-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules/SwiftSyntax.swiftmodule",
48-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules-tool/MMIOMacros.swiftmodule",
49-
"/path/to/build/arm64-apple-macosx15.0/debug/Modules-tool/SwiftSyntax.swiftmodule",
45+
"debug/Core.build/Core.swiftmodule",
46+
"debug/Modules/CoreTests.swiftmodule",
47+
"debug/Modules/HAL.swiftmodule",
48+
"debug/Modules/HALTests.swiftmodule",
49+
"debug/Modules/MMIO.swiftmodule",
50+
"debug/Modules/SwiftSyntax.swiftmodule",
51+
"debug/Modules-tool/MMIOMacros.swiftmodule",
52+
"debug/Modules-tool/SwiftSyntax.swiftmodule",
5053
]))
5154

5255
// Ensure swiftmodules built with correct arguments
5356
let coreCommands = manifest.commands.values.filter({
5457
$0.tool.outputs.contains(where: {
55-
$0.name == "/path/to/build/arm64-apple-macosx15.0/debug/Core.build/Core.swiftmodule"
58+
$0.name.hasSuffix("debug/Core.build/Core.swiftmodule")
5659
})
5760
})
61+
5862
XCTAssertEqual(coreCommands.count, 1)
5963
let coreSwiftc = try XCTUnwrap(coreCommands.first?.tool as? SwiftCompilerTool)
6064
XCTAssertTrue(coreSwiftc.otherArguments.contains("-experimental-skip-all-function-bodies"))
6165

6266
// Ensure tools are built normally
6367
let toolCommands = manifest.commands.values.filter({
6468
$0.tool.outputs.contains(where: {
65-
$0.name == "/path/to/build/arm64-apple-macosx15.0/debug/Modules-tool/SwiftSyntax.swiftmodule"
69+
$0.name.hasSuffix("debug/Modules-tool/SwiftSyntax.swiftmodule")
6670
})
6771
})
6872
XCTAssertEqual(toolCommands.count, 1)
@@ -72,8 +76,8 @@ class PrepareForIndexTests: XCTestCase {
7276
// Make sure only object files for tools are built
7377
let objectFiles = Set(outputs.filter({ $0.hasSuffix(".o") }))
7478
XCTAssertEqual(objectFiles, Set([
75-
"/path/to/build/arm64-apple-macosx15.0/debug/MMIOMacros-tool.build/source.swift.o",
76-
"/path/to/build/arm64-apple-macosx15.0/debug/SwiftSyntax-tool.build/source.swift.o"
79+
"debug/MMIOMacros-tool.build/source.swift.o",
80+
"debug/SwiftSyntax-tool.build/source.swift.o"
7781
]))
7882

7983
// Check diff with regular build plan
@@ -90,14 +94,16 @@ class PrepareForIndexTests: XCTestCase {
9094
let outputs0 = manifest0.commands.flatMap(\.value.tool.outputs).map(\.name)
9195

9296
// The prepare shouldn't create any other object files.
93-
let objectFiles0 = Set(outputs0.filter({ $0.hasSuffix(".o") })).subtracting(objectFiles)
97+
let objectFiles0 = try Set(outputs0.filter({ $0.hasSuffix(".o") })
98+
.map({ try AbsolutePath(validating: $0).components.suffix(3).joined(separator: "/") })
99+
).subtracting(objectFiles)
94100
XCTAssertEqual(objectFiles0, Set([
95-
"/path/to/build/arm64-apple-macosx15.0/debug/Core.build/source.swift.o",
96-
"/path/to/build/arm64-apple-macosx15.0/debug/CoreTests.build/source.swift.o",
97-
"/path/to/build/arm64-apple-macosx15.0/debug/HAL.build/source.swift.o",
98-
"/path/to/build/arm64-apple-macosx15.0/debug/HALTests.build/source.swift.o",
99-
"/path/to/build/arm64-apple-macosx15.0/debug/MMIO.build/source.swift.o",
100-
"/path/to/build/arm64-apple-macosx15.0/debug/SwiftSyntax.build/source.swift.o",
101+
"debug/Core.build/source.swift.o",
102+
"debug/CoreTests.build/source.swift.o",
103+
"debug/HAL.build/source.swift.o",
104+
"debug/HALTests.build/source.swift.o",
105+
"debug/MMIO.build/source.swift.o",
106+
"debug/SwiftSyntax.build/source.swift.o",
101107
]))
102108
}
103109
}

0 commit comments

Comments
 (0)