Skip to content

Commit 3ab4cbe

Browse files
committed
Add tags to Swift Testing Tests
1 parent dc2e33f commit 3ab4cbe

File tree

4 files changed

+369
-73
lines changed

4 files changed

+369
-73
lines changed

Sources/_InternalTestSupport/BuildSystemProvider+Supported.swift

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,10 @@ public struct BuildData {
3131
public func getBuildData(for buildSystems: [BuildSystemProvider.Kind]) -> [BuildData] {
3232
buildSystems.flatMap { buildSystem in
3333
BuildConfiguration.allCases.compactMap { config in
34-
return BuildData(buildSystem: buildSystem, config: config)
34+
return BuildData(
35+
buildSystem: buildSystem,
36+
config: config,
37+
)
3538
}
3639
}
3740
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
This source file is part of the Swift.org open source project
3+
4+
Copyright (c) 2025 Apple Inc. and the Swift project authors
5+
Licensed under Apache License v2.0 with Runtime Library Exception
6+
7+
See http://swift.org/LICENSE.txt for license information
8+
See http://swift.org/CONTRIBUTORS.txt for Swift project authors
9+
*/
10+
11+
import Testing
12+
13+
public struct TestBuildData {
14+
public let buildData: [BuildData]
15+
public let tags: any TestTrait
16+
}
17+
18+
public let buildDataUsingAllBuildSystemWithTags = TestBuildData(
19+
buildData: getBuildData(for: SupportedBuildSystemOnPlatform),
20+
tags: .tags(
21+
.Feature.CommandLineArguments.BuildSystem,
22+
.Feature.CommandLineArguments.Configuration
23+
)
24+
)
25+
26+
public let buildDataUsingBuildSystemAvailableOnAllPlatformsWithTags = TestBuildData(
27+
buildData: getBuildData(for: SupportedBuildSystemOnAllPlatforms),
28+
tags: .tags(
29+
.Feature.CommandLineArguments.BuildSystem,
30+
.Feature.CommandLineArguments.Configuration
31+
)
32+
)

Sources/_InternalTestSupport/SwiftTesting+Tags.swift

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,13 @@ extension Tag.TestSize {
2424

2525
extension Tag.Feature {
2626
public enum Command {}
27+
public enum CommandLineArguments {}
28+
public enum EnvironmentVariables {}
2729
public enum PackageType {}
2830
public enum ProductType {}
2931
public enum TargetType {}
3032

33+
@Tag public static var BuildCache: Tag
3134
@Tag public static var CodeCoverage: Tag
3235
@Tag public static var Mirror: Tag
3336
@Tag public static var NetRc: Tag
@@ -47,6 +50,44 @@ extension Tag.Feature.Command {
4750
@Tag public static var Test: Tag
4851
}
4952

53+
extension Tag.Feature.CommandLineArguments {
54+
public enum Experimental {}
55+
@Tag public static var BuildSystem: Tag
56+
@Tag public static var BuildTests: Tag
57+
@Tag public static var Configuration: Tag
58+
@Tag public static var DisableGetTaskAllowEntitlement: Tag
59+
@Tag public static var EnableParseableModuleInterfaces: Tag
60+
@Tag public static var EnableGetTaskAllowEntitlement: Tag
61+
@Tag public static var EnableTestDiscovery: Tag
62+
@Tag public static var ExplicitTargetDependencyImportCheck: Tag
63+
@Tag public static var Help: Tag
64+
@Tag public static var Product: Tag
65+
@Tag public static var PrintManifestJobGraph: Tag
66+
@Tag public static var PrintPIFManifestGraph: Tag
67+
@Tag public static var Quiet: Tag
68+
@Tag public static var ShowBinPath: Tag
69+
@Tag public static var Target: Tag
70+
@Tag public static var Triple: Tag
71+
@Tag public static var Version: Tag
72+
@Tag public static var Verbose: Tag
73+
@Tag public static var VeryVerbose: Tag
74+
@Tag public static var Xlinker: Tag
75+
@Tag public static var Xcc: Tag
76+
@Tag public static var Xcxx: Tag
77+
@Tag public static var SWIFT_ORIGINAL_PATH: Tag
78+
@Tag public static var Xswiftc: Tag
79+
}
80+
81+
extension Tag.Feature.CommandLineArguments.Experimental {
82+
@Tag public static var BuildDylibsAsFrameworks: Tag
83+
}
84+
extension Tag.Feature.EnvironmentVariables {
85+
@Tag public static var CUSTOM_SWIFT_VERSION: Tag
86+
@Tag public static var SWIFT_EXEC: Tag
87+
@Tag public static var SWIFT_EXEC_MANIFEST: Tag
88+
@Tag public static var SWIFT_ORIGINAL_PATH: Tag
89+
}
90+
5091
extension Tag.Feature.Command.Package {
5192
@Tag public static var General: Tag
5293
@Tag public static var AddDependency: Tag

0 commit comments

Comments
 (0)