Skip to content

Commit 0790370

Browse files
committed
Add more swift website URL coverage for swiftly releases
1 parent c68e151 commit 0790370

File tree

1 file changed

+38
-2
lines changed

1 file changed

+38
-2
lines changed

Tests/SwiftlyTests/HTTPClientTests.swift

Lines changed: 38 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,17 @@ import Testing
5353
}
5454
}
5555

56-
@Test(.tags(.large)) func getSwiftlyRelease() async throws {
56+
@Test(
57+
.tags(.large),
58+
arguments: [
59+
"https://download.swift.org/swiftly/linux/swiftly-x86_64.tar.gz", // Latest
60+
"https://download.swift.org/swiftly/linux/swiftly-1.0.1-x86_64.tar.gz", // Specific version
61+
"https://download.swift.org/swiftly/linux/swiftly-1.0.1-dev-x86_64.tar.gz", // Specific dev prerelease version
62+
"https://download.swift.org/swiftly/linux/swiftly-aarch64.tar.gz", // Latest ARM
63+
"https://download.swift.org/swiftly/linux/swiftly-1.0.1-aarch64.tar.gz", // Specific ARM version
64+
"https://download.swift.org/swiftly/linux/swiftly-1.0.1-dev-aarch64.tar.gz", // Specific dev prerelease version
65+
]
66+
) func getSwiftlyLinuxReleases(url: String) async throws {
5767
let tmpFile = fs.mktemp()
5868
try await fs.create(file: tmpFile, contents: nil)
5969
let tmpFileSignature = fs.mktemp(ext: ".sig")
@@ -64,7 +74,7 @@ import Testing
6474
try await fs.withTemporary(files: tmpFile, tmpFileSignature, keysFile) {
6575
let httpClient = SwiftlyHTTPClient(httpRequestExecutor: HTTPRequestExecutorImpl())
6676

67-
let swiftlyURL = try #require(URL(string: "https://download.swift.org/swiftly/linux/swiftly-x86_64.tar.gz"))
77+
let swiftlyURL = try #require(URL(string: url))
6878

6979
try await retry {
7080
try await httpClient.getSwiftlyRelease(url: swiftlyURL).download(to: tmpFile)
@@ -82,6 +92,32 @@ import Testing
8292
}
8393
}
8494

95+
@Test(
96+
.tags(.large),
97+
arguments: [
98+
"https://download.swift.org/swiftly/darwin/swiftly.pkg", // Latest
99+
"https://download.swift.org/swiftly/darwin/swiftly-1.0.1.pkg", // Specific version
100+
"https://download.swift.org/swiftly/darwin/swiftly-1.0.1-dev.pkg", // Specific dev prerelease version
101+
]
102+
) func getSwiftlyMacOSReleases(url: String) async throws {
103+
let tmpFile = fs.mktemp()
104+
try await fs.create(file: tmpFile, contents: nil)
105+
let tmpFileSignature = fs.mktemp(ext: ".sig")
106+
try await fs.create(file: tmpFileSignature, contents: nil)
107+
let keysFile = fs.mktemp(ext: ".asc")
108+
try await fs.create(file: keysFile, contents: nil)
109+
110+
try await fs.withTemporary(files: tmpFile, tmpFileSignature, keysFile) {
111+
let httpClient = SwiftlyHTTPClient(httpRequestExecutor: HTTPRequestExecutorImpl())
112+
113+
let swiftlyURL = try #require(URL(string: url))
114+
115+
try await retry {
116+
try await httpClient.getSwiftlyRelease(url: swiftlyURL).download(to: tmpFile)
117+
}
118+
}
119+
}
120+
85121
@Test(.tags(.large)) func getSwiftlyReleaseMetadataFromSwiftOrg() async throws {
86122
let httpClient = SwiftlyHTTPClient(httpRequestExecutor: HTTPRequestExecutorImpl())
87123
do {

0 commit comments

Comments
 (0)