Skip to content

Commit ae89f4f

Browse files
authored
Merge pull request #1391 from ahoppen/shorten-test-package-manifests
Automatically add `swift-tools-version` and `import PackageDescription` to manifest in SwiftPMTestProject
2 parents 2258a6c + 4b2ee40 commit ae89f4f

14 files changed

+11
-150
lines changed

Sources/SKTestSupport/SwiftPMTestProject.swift

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,17 @@ public class SwiftPMTestProject: MultiFileTestProject {
173173

174174
filesByPath[RelativeFileLocation(directories: directories, fileLocation.fileName)] = contents
175175
}
176+
var manifest = manifest
177+
if !manifest.contains("swift-tools-version") {
178+
// Tests specify a shorthand package manifest that doesn't contain the tools version boilerplate.
179+
manifest = """
180+
// swift-tools-version: 5.7
181+
182+
import PackageDescription
183+
184+
\(manifest)
185+
"""
186+
}
176187
filesByPath["Package.swift"] = manifest
177188

178189
try await super.init(

Tests/SourceKitLSPTests/BackgroundIndexingTests.swift

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,6 @@ final class BackgroundIndexingTests: XCTestCase {
117117
""",
118118
],
119119
manifest: """
120-
// swift-tools-version: 5.7
121-
122-
import PackageDescription
123-
124120
let package = Package(
125121
name: "MyLibrary",
126122
targets: [
@@ -181,10 +177,6 @@ final class BackgroundIndexingTests: XCTestCase {
181177
""",
182178
],
183179
manifest: """
184-
// swift-tools-version: 5.7
185-
186-
import PackageDescription
187-
188180
let package = Package(
189181
name: "MyLibrary",
190182
targets: [
@@ -231,8 +223,6 @@ final class BackgroundIndexingTests: XCTestCase {
231223
"""
232224
],
233225
manifest: """
234-
// swift-tools-version: 5.7
235-
import PackageDescription
236226
let package = Package(
237227
name: "MyLibrary",
238228
dependencies: [.package(url: "\(dependencyProject.packageDirectory)", from: "1.0.0")],
@@ -562,10 +552,6 @@ final class BackgroundIndexingTests: XCTestCase {
562552
""",
563553
],
564554
manifest: """
565-
// swift-tools-version: 5.7
566-
567-
import PackageDescription
568-
569555
let package = Package(
570556
name: "MyLibrary",
571557
targets: [
@@ -686,10 +672,6 @@ final class BackgroundIndexingTests: XCTestCase {
686672
"LibD/LibD.swift": "",
687673
],
688674
manifest: """
689-
// swift-tools-version: 5.7
690-
691-
import PackageDescription
692-
693675
let package = Package(
694676
name: "MyLibrary",
695677
targets: [
@@ -801,10 +783,6 @@ final class BackgroundIndexingTests: XCTestCase {
801783
""",
802784
],
803785
manifest: """
804-
// swift-tools-version: 5.7
805-
806-
import PackageDescription
807-
808786
let package = Package(
809787
name: "MyLibrary",
810788
targets: [
@@ -909,10 +887,6 @@ final class BackgroundIndexingTests: XCTestCase {
909887
""",
910888
],
911889
manifest: """
912-
// swift-tools-version: 5.7
913-
914-
import PackageDescription
915-
916890
let package = Package(
917891
name: "MyLibrary",
918892
targets: [

Tests/SourceKitLSPTests/CrossLanguageRenameTests.swift

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,6 @@ import SKTestSupport
1414
import XCTest
1515

1616
private let libAlibBPackageManifest = """
17-
// swift-tools-version: 5.7
18-
19-
import PackageDescription
20-
2117
let package = Package(
2218
name: "MyLibrary",
2319
targets: [
@@ -564,10 +560,6 @@ final class CrossLanguageRenameTests: XCTestCase {
564560
""",
565561
],
566562
manifest: """
567-
// swift-tools-version: 5.7
568-
569-
import PackageDescription
570-
571563
let package = Package(
572564
name: "MyLibrary",
573565
targets: [
@@ -622,10 +614,6 @@ final class CrossLanguageRenameTests: XCTestCase {
622614
""",
623615
],
624616
manifest: """
625-
// swift-tools-version: 5.7
626-
627-
import PackageDescription
628-
629617
let package = Package(
630618
name: "MyLibrary",
631619
targets: [
@@ -680,10 +668,6 @@ final class CrossLanguageRenameTests: XCTestCase {
680668
""",
681669
],
682670
manifest: """
683-
// swift-tools-version: 5.7
684-
685-
import PackageDescription
686-
687671
let package = Package(
688672
name: "MyLibrary",
689673
targets: [

Tests/SourceKitLSPTests/DefinitionTests.swift

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -165,10 +165,6 @@ class DefinitionTests: XCTestCase {
165165
""",
166166
],
167167
manifest: """
168-
// swift-tools-version: 5.7
169-
170-
import PackageDescription
171-
172168
let package = Package(
173169
name: "MyLibrary",
174170
targets: [
@@ -272,10 +268,6 @@ class DefinitionTests: XCTestCase {
272268
""",
273269
],
274270
manifest: """
275-
// swift-tools-version: 5.7
276-
277-
import PackageDescription
278-
279271
let package = Package(
280272
name: "MyLibrary",
281273
targets: [
@@ -323,10 +315,6 @@ class DefinitionTests: XCTestCase {
323315
""",
324316
],
325317
manifest: """
326-
// swift-tools-version: 5.7
327-
328-
import PackageDescription
329-
330318
let package = Package(
331319
name: "MyLibrary",
332320
targets: [
@@ -452,10 +440,6 @@ class DefinitionTests: XCTestCase {
452440
""",
453441
],
454442
manifest: """
455-
// swift-tools-version: 5.7
456-
457-
import PackageDescription
458-
459443
let package = Package(
460444
name: "MyLibrary",
461445
targets: [

Tests/SourceKitLSPTests/DependencyTrackingTests.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,6 @@ final class DependencyTrackingTests: XCTestCase {
2929
""",
3030
],
3131
manifest: """
32-
// swift-tools-version: 5.7
33-
34-
import PackageDescription
35-
3632
let package = Package(
3733
name: "MyLibrary",
3834
targets: [

Tests/SourceKitLSPTests/DocumentTestDiscoveryTests.swift

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,6 @@ final class DocumentTestDiscoveryTests: XCTestCase {
3939
""",
4040
],
4141
manifest: """
42-
// swift-tools-version: 5.7
43-
44-
import PackageDescription
45-
4642
let package = Package(
4743
name: "MyLibrary",
4844
targets: [.testTarget(name: "MyLibraryTests")]
@@ -142,10 +138,6 @@ final class DocumentTestDiscoveryTests: XCTestCase {
142138
"""
143139
],
144140
manifest: """
145-
// swift-tools-version: 5.7
146-
147-
import PackageDescription
148-
149141
let package = Package(
150142
name: "MyLibrary",
151143
targets: [.testTarget(name: "MyLibraryTests")]
@@ -1295,10 +1287,6 @@ final class DocumentTestDiscoveryTests: XCTestCase {
12951287
"""
12961288
],
12971289
manifest: """
1298-
// swift-tools-version: 5.7
1299-
1300-
import PackageDescription
1301-
13021290
let package = Package(
13031291
name: "MyLibrary",
13041292
targets: [.testTarget(name: "MyLibraryTests")]
@@ -1354,10 +1342,6 @@ final class DocumentTestDiscoveryTests: XCTestCase {
13541342
"""
13551343
],
13561344
manifest: """
1357-
// swift-tools-version: 5.7
1358-
1359-
import PackageDescription
1360-
13611345
let package = Package(
13621346
name: "MyLibrary",
13631347
targets: [.testTarget(name: "MyLibraryTests")]

Tests/SourceKitLSPTests/IndexTests.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,6 @@ final class IndexTests: XCTestCase {
3535
""",
3636
],
3737
manifest: """
38-
// swift-tools-version: 5.7
39-
40-
import PackageDescription
41-
4238
let package = Package(
4339
name: "MyLibrary",
4440
targets: [

Tests/SourceKitLSPTests/MainFilesProviderTests.swift

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,6 @@ final class MainFilesProviderTests: XCTestCase {
3131
""",
3232
],
3333
manifest: """
34-
// swift-tools-version: 5.7
35-
36-
import PackageDescription
37-
3834
let package = Package(
3935
name: "MyLibrary",
4036
targets: [
@@ -71,10 +67,6 @@ final class MainFilesProviderTests: XCTestCase {
7167
""",
7268
],
7369
manifest: """
74-
// swift-tools-version: 5.7
75-
76-
import PackageDescription
77-
7870
let package = Package(
7971
name: "MyLibrary",
8072
targets: [
@@ -123,10 +115,6 @@ final class MainFilesProviderTests: XCTestCase {
123115
""",
124116
],
125117
manifest: """
126-
// swift-tools-version: 5.7
127-
128-
import PackageDescription
129-
130118
let package = Package(
131119
name: "MyLibrary",
132120
targets: [
@@ -172,10 +160,6 @@ final class MainFilesProviderTests: XCTestCase {
172160
"Sources/MyFancyLibrary/MyFancyLibrary.c": "",
173161
],
174162
manifest: """
175-
// swift-tools-version: 5.7
176-
177-
import PackageDescription
178-
179163
let package = Package(
180164
name: "MyLibrary",
181165
targets: [

Tests/SourceKitLSPTests/PublishDiagnosticsTests.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -169,10 +169,6 @@ final class PublishDiagnosticsTests: XCTestCase {
169169
""",
170170
],
171171
manifest: """
172-
// swift-tools-version: 5.7
173-
174-
import PackageDescription
175-
176172
let package = Package(
177173
name: "MyLibrary",
178174
targets: [

Tests/SourceKitLSPTests/PullDiagnosticsTests.swift

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -200,10 +200,6 @@ final class PullDiagnosticsTests: XCTestCase {
200200
""",
201201
],
202202
manifest: """
203-
// swift-tools-version: 5.7
204-
205-
import PackageDescription
206-
207203
let package = Package(
208204
name: "MyLibrary",
209205
targets: [
@@ -287,10 +283,6 @@ final class PullDiagnosticsTests: XCTestCase {
287283
""",
288284
],
289285
manifest: """
290-
// swift-tools-version: 5.7
291-
292-
import PackageDescription
293-
294286
let package = Package(
295287
name: "MyLibrary",
296288
targets: [

Tests/SourceKitLSPTests/RenameTests.swift

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -536,10 +536,6 @@ final class RenameTests: XCTestCase {
536536
""",
537537
],
538538
manifest: """
539-
// swift-tools-version: 5.7
540-
541-
import PackageDescription
542-
543539
let package = Package(
544540
name: "MyLibrary",
545541
targets: [
@@ -576,10 +572,6 @@ final class RenameTests: XCTestCase {
576572
""",
577573
],
578574
manifest: """
579-
// swift-tools-version: 5.7
580-
581-
import PackageDescription
582-
583575
let package = Package(
584576
name: "MyLibrary",
585577
targets: [
@@ -627,10 +619,6 @@ final class RenameTests: XCTestCase {
627619
""",
628620
],
629621
manifest: """
630-
// swift-tools-version: 5.7
631-
632-
import PackageDescription
633-
634622
let package = Package(
635623
name: "MyLibrary",
636624
targets: [

Tests/SourceKitLSPTests/SwiftInterfaceTests.swift

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,6 @@ final class SwiftInterfaceTests: XCTestCase {
6666
"Exec/main.swift": "import MyLibrary",
6767
],
6868
manifest: """
69-
// swift-tools-version: 5.7
70-
71-
import PackageDescription
72-
7369
let package = Package(
7470
name: "MyLibrary",
7571
targets: [
@@ -162,10 +158,6 @@ final class SwiftInterfaceTests: XCTestCase {
162158
"Exec/main.swift": "import 1️⃣MyLibrary",
163159
],
164160
manifest: """
165-
// swift-tools-version: 5.7
166-
167-
import PackageDescription
168-
169161
let package = Package(
170162
name: "MyLibrary",
171163
targets: [

0 commit comments

Comments
 (0)