Skip to content

Commit b36e421

Browse files
committed
Update tests
1 parent e2a39c0 commit b36e421

19 files changed

+251
-21
lines changed

Tests/AppTests/BuildIndexModelTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ extension AllTests.BuildIndexModelTests {
9696
let matrix = model.buildMatrix
9797

9898
// validate
99-
#expect(matrix.values.keys.count == 28)
99+
#expect(matrix.values.keys.count == 30)
100100
#expect(
101101
matrix.values[.init(swiftVersion: .v3, platform: .iOS)]?.map(\.column.label) == ["1.2.3", "2.0.0-b1", "main"]
102102
)
@@ -141,7 +141,7 @@ extension AllTests.BuildIndexModelTests {
141141
let matrix = model.buildMatrix
142142

143143
// validate
144-
#expect(matrix.values.keys.count == 28)
144+
#expect(matrix.values.keys.count == 30)
145145
#expect(
146146
matrix.values[.init(swiftVersion: .v3, platform: .iOS)]?.map(\.column.label) == ["1.2.3", "main"]
147147
)

Tests/AppTests/BuildTriggerTests.swift

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -436,14 +436,16 @@ extension AllTests.BuildTriggerTests {
436436

437437
// validate
438438
// ensure Gitlab requests go out
439-
#expect(queries.count == 28)
440-
#expect(queries.value.map { $0.variables["VERSION_ID"] } == Array(repeating: versionId.uuidString, count: 28))
439+
#expect(queries.count == 30)
440+
#expect(queries.value.map { $0.variables["VERSION_ID"] } == Array(repeating: versionId.uuidString, count: 30))
441441
let buildPlatforms = queries.value.compactMap { $0.variables["BUILD_PLATFORM"] }
442442
#expect(Dictionary(grouping: buildPlatforms, by: { $0 })
443-
.mapValues(\.count) == ["ios": 4,
443+
.mapValues(\.count) == ["android": 1,
444+
"ios": 4,
444445
"macos-spm": 4,
445446
"macos-xcodebuild": 4,
446447
"linux": 4,
448+
"wasm": 1,
447449
"watchos": 4,
448450
"visionos": 4,
449451
"tvos": 4])
@@ -452,12 +454,12 @@ extension AllTests.BuildTriggerTests {
452454
.mapValues(\.count) == [SwiftVersion.v1.description(droppingZeroes: .patch): 7,
453455
SwiftVersion.v2.description(droppingZeroes: .patch): 7,
454456
SwiftVersion.v3.description(droppingZeroes: .patch): 7,
455-
SwiftVersion.v4.description(droppingZeroes: .patch): 7])
457+
SwiftVersion.v4.description(droppingZeroes: .patch): 9])
456458

457459
// ensure the Build stubs are created to prevent re-selection
458460
let v = try await Version.find(versionId, on: app.db)
459461
try await v?.$builds.load(on: app.db)
460-
#expect(v?.builds.count == 28)
462+
#expect(v?.builds.count == 30)
461463

462464
// ensure re-selection is empty
463465
let candidates = try await fetchBuildCandidates(app.db)
@@ -595,11 +597,11 @@ extension AllTests.BuildTriggerTests {
595597
try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: false))
596598

597599
// validate
598-
#expect(triggerCount.value == 28)
600+
#expect(triggerCount.value == 30)
599601
// ensure builds are now in progress
600602
let v = try await Version.find(versionId, on: app.db)
601603
try await v?.$builds.load(on: app.db)
602-
#expect(v?.builds.count == 28)
604+
#expect(v?.builds.count == 30)
603605
}
604606
}
605607

@@ -620,11 +622,11 @@ extension AllTests.BuildTriggerTests {
620622
try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: true))
621623

622624
// validate
623-
#expect(triggerCount.value == 28)
625+
#expect(triggerCount.value == 30)
624626
// ensure builds are now in progress
625627
let v = try await Version.find(versionId, on: app.db)
626628
try await v?.$builds.load(on: app.db)
627-
#expect(v?.builds.count == 28)
629+
#expect(v?.builds.count == 30)
628630
}
629631
}
630632
}
@@ -669,7 +671,7 @@ extension AllTests.BuildTriggerTests {
669671
try await triggerBuilds(on: app.db, mode: .limit(4))
670672

671673
// validate - only the first batch must be allowed to trigger
672-
#expect(triggerCount.value == 28)
674+
#expect(triggerCount.value == 30)
673675
}
674676
}
675677
}
@@ -881,7 +883,7 @@ extension AllTests.BuildTriggerTests {
881883
try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: false))
882884

883885
// validate
884-
#expect(triggerCount.value == 28)
886+
#expect(triggerCount.value == 30)
885887
}
886888
}
887889
}
@@ -943,7 +945,7 @@ extension AllTests.BuildTriggerTests {
943945
try await triggerBuilds(on: app.db, mode: .packageId(pkgId, force: false))
944946

945947
// validate
946-
#expect(triggerCount.value == 28)
948+
#expect(triggerCount.value == 30)
947949
}
948950
}
949951
}
@@ -984,7 +986,7 @@ extension AllTests.BuildTriggerTests {
984986
try await triggerBuilds(on: app.db, mode: .packageId(.id0, force: false))
985987

986988
// validate
987-
#expect(triggerCount.value == 28)
989+
#expect(triggerCount.value == 30)
988990
}
989991
}
990992
}
@@ -1228,7 +1230,7 @@ extension AllTests.BuildTriggerTests {
12281230

12291231
@Test func BuildPair_all() throws {
12301232
// Sanity checks for critical counts used in canadidate selection
1231-
#expect(BuildPair.all.count == 28)
1233+
#expect(BuildPair.all.count == 30)
12321234
#expect(BuildPair.all == [
12331235
.init(.iOS, .v1),
12341236
.init(.iOS, .v2),
@@ -1258,6 +1260,8 @@ extension AllTests.BuildTriggerTests {
12581260
.init(.linux, .v2),
12591261
.init(.linux, .v3),
12601262
.init(.linux, .v4),
1263+
.init(.wasm, .v4),
1264+
.init(.android, .v4),
12611265
])
12621266
#expect(BuildPair.allExceptLatestSwiftVersion.count == 21)
12631267
}
@@ -1304,7 +1308,7 @@ extension AllTests.BuildTriggerTests {
13041308
let res = try await findMissingBuilds(app.db, packageId: pkgId)
13051309
#expect(res.count == 1)
13061310
let triggerInfo = try #require(res.first)
1307-
#expect(triggerInfo.buildPairs.count == 27)
1311+
#expect(triggerInfo.buildPairs.count == 29)
13081312
#expect(!triggerInfo.buildPairs.contains(.init(.iOS, .v1)))
13091313
}
13101314
}

Tests/AppTests/PackageTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,7 @@ extension AllTests.PackageTests {
472472
let p1 = try #require(
473473
try await Package.query(on: app.db).filter(by: "1".url).first()
474474
)
475-
#expect(p1.platformCompatibility == [.iOS, .macOS, .linux, .tvOS, .visionOS, .watchOS])
475+
#expect(p1.platformCompatibility == [.android, .iOS, .macOS, .linux, .tvOS, .visionOS, .wasm, .watchOS])
476476
let p2 = try #require(
477477
try await Package.query(on: app.db).filter(by: "2".url).first()
478478
)

Tests/AppTests/__Snapshots__/WebpageSnapshotTests/BuildIndex_document.1.html

Lines changed: 57 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@
1111
<title>foobar &ndash; Build Results &ndash; Swift Package Index</title>
1212
<meta name="twitter:title" content="foobar &ndash; Build Results &ndash; Swift Package Index"/>
1313
<meta property="og:title" content="foobar &ndash; Build Results &ndash; Swift Package Index"/>
14-
<meta name="description" content="The latest compatibility build results for foobar, showing compatibility across 7 platforms with 4 versions of Swift."/>
15-
<meta name="twitter:description" content="The latest compatibility build results for foobar, showing compatibility across 7 platforms with 4 versions of Swift."/>
16-
<meta property="og:description" content="The latest compatibility build results for foobar, showing compatibility across 7 platforms with 4 versions of Swift."/>
14+
<meta name="description" content="The latest compatibility build results for foobar, showing compatibility across 9 platforms with 4 versions of Swift."/>
15+
<meta name="twitter:description" content="The latest compatibility build results for foobar, showing compatibility across 9 platforms with 4 versions of Swift."/>
16+
<meta property="og:description" content="The latest compatibility build results for foobar, showing compatibility across 9 platforms with 4 versions of Swift."/>
1717
<meta name="twitter:card" content="summary"/>
1818
<meta name="twitter:image" content="http://localhost:8080/images/logo.png"/>
1919
<meta property="og:image" content="http://localhost:8080/images/logo.png"/>
@@ -295,6 +295,60 @@ <h3>Swift 6.1</h3>
295295
</div>
296296
</div>
297297
</li>
298+
<li class="row">
299+
<div class="row-labels">
300+
<strong>Wasm</strong>
301+
</div>
302+
<div class="column-labels">
303+
<div>
304+
<span class="stable">1.2.3</span>
305+
</div>
306+
<div>
307+
<span class="branch">main</span>
308+
</div>
309+
<div>
310+
<span class="beta">2.0.0-b1</span>
311+
</div>
312+
</div>
313+
<div class="results">
314+
<div>
315+
<span>Pending</span>
316+
</div>
317+
<div>
318+
<span>Pending</span>
319+
</div>
320+
<div>
321+
<span>Pending</span>
322+
</div>
323+
</div>
324+
</li>
325+
<li class="row">
326+
<div class="row-labels">
327+
<strong>Android</strong>
328+
</div>
329+
<div class="column-labels">
330+
<div>
331+
<span class="stable">1.2.3</span>
332+
</div>
333+
<div>
334+
<span class="branch">main</span>
335+
</div>
336+
<div>
337+
<span class="beta">2.0.0-b1</span>
338+
</div>
339+
</div>
340+
<div class="results">
341+
<div>
342+
<span>Pending</span>
343+
</div>
344+
<div>
345+
<span>Pending</span>
346+
</div>
347+
<div>
348+
<span>Pending</span>
349+
</div>
350+
</div>
351+
</li>
298352
</ul>
299353
<hr/>
300354
<h3>Swift 6.0</h3>

Tests/AppTests/__Snapshots__/WebpageSnapshotTests/PackageShow_document.1.html

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,8 @@ <h3>Compatibility</h3>
238238
<div>watchOS</div>
239239
<div>tvOS</div>
240240
<div>Linux</div>
241+
<div>Wasm</div>
242+
<div>Android</div>
241243
</div>
242244
<div class="results">
243245
<div class="compatible" title="Built successfully with iOS"></div>
@@ -246,6 +248,8 @@ <h3>Compatibility</h3>
246248
<div class="unknown" title="No build information available for watchOS"></div>
247249
<div class="unknown" title="No build information available for tvOS"></div>
248250
<div class="unknown" title="No build information available for Linux"></div>
251+
<div class="unknown" title="No build information available for WebAssembly"></div>
252+
<div class="unknown" title="No build information available for Android"></div>
249253
</div>
250254
</li>
251255
<li class="row">
@@ -261,6 +265,8 @@ <h3>Compatibility</h3>
261265
<div>watchOS</div>
262266
<div>tvOS</div>
263267
<div>Linux</div>
268+
<div>Wasm</div>
269+
<div>Android</div>
264270
</div>
265271
<div class="results">
266272
<div class="compatible" title="Built successfully with iOS"></div>
@@ -269,6 +275,8 @@ <h3>Compatibility</h3>
269275
<div class="unknown" title="No build information available for watchOS"></div>
270276
<div class="compatible" title="Built successfully with tvOS"></div>
271277
<div class="compatible" title="Built successfully with Linux"></div>
278+
<div class="unknown" title="No build information available for WebAssembly"></div>
279+
<div class="unknown" title="No build information available for Android"></div>
272280
</div>
273281
</li>
274282
<li class="row">
@@ -284,6 +292,8 @@ <h3>Compatibility</h3>
284292
<div>watchOS</div>
285293
<div>tvOS</div>
286294
<div>Linux</div>
295+
<div>Wasm</div>
296+
<div>Android</div>
287297
</div>
288298
<div class="results">
289299
<div class="compatible" title="Built successfully with iOS"></div>
@@ -292,6 +302,8 @@ <h3>Compatibility</h3>
292302
<div class="compatible" title="Built successfully with watchOS"></div>
293303
<div class="compatible" title="Built successfully with tvOS"></div>
294304
<div class="compatible" title="Built successfully with Linux"></div>
305+
<div class="unknown" title="No build information available for WebAssembly"></div>
306+
<div class="unknown" title="No build information available for Android"></div>
295307
</div>
296308
</li>
297309
</ul>

Tests/AppTests/__Snapshots__/WebpageSnapshotTests/PackageShow_document_app_store_incompatible_license.1.html

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,8 @@ <h3>Compatibility</h3>
241241
<div>watchOS</div>
242242
<div>tvOS</div>
243243
<div>Linux</div>
244+
<div>Wasm</div>
245+
<div>Android</div>
244246
</div>
245247
<div class="results">
246248
<div class="compatible" title="Built successfully with iOS"></div>
@@ -249,6 +251,8 @@ <h3>Compatibility</h3>
249251
<div class="unknown" title="No build information available for watchOS"></div>
250252
<div class="unknown" title="No build information available for tvOS"></div>
251253
<div class="unknown" title="No build information available for Linux"></div>
254+
<div class="unknown" title="No build information available for WebAssembly"></div>
255+
<div class="unknown" title="No build information available for Android"></div>
252256
</div>
253257
</li>
254258
<li class="row">
@@ -264,6 +268,8 @@ <h3>Compatibility</h3>
264268
<div>watchOS</div>
265269
<div>tvOS</div>
266270
<div>Linux</div>
271+
<div>Wasm</div>
272+
<div>Android</div>
267273
</div>
268274
<div class="results">
269275
<div class="compatible" title="Built successfully with iOS"></div>
@@ -272,6 +278,8 @@ <h3>Compatibility</h3>
272278
<div class="unknown" title="No build information available for watchOS"></div>
273279
<div class="compatible" title="Built successfully with tvOS"></div>
274280
<div class="compatible" title="Built successfully with Linux"></div>
281+
<div class="unknown" title="No build information available for WebAssembly"></div>
282+
<div class="unknown" title="No build information available for Android"></div>
275283
</div>
276284
</li>
277285
<li class="row">
@@ -287,6 +295,8 @@ <h3>Compatibility</h3>
287295
<div>watchOS</div>
288296
<div>tvOS</div>
289297
<div>Linux</div>
298+
<div>Wasm</div>
299+
<div>Android</div>
290300
</div>
291301
<div class="results">
292302
<div class="compatible" title="Built successfully with iOS"></div>
@@ -295,6 +305,8 @@ <h3>Compatibility</h3>
295305
<div class="compatible" title="Built successfully with watchOS"></div>
296306
<div class="compatible" title="Built successfully with tvOS"></div>
297307
<div class="compatible" title="Built successfully with Linux"></div>
308+
<div class="unknown" title="No build information available for WebAssembly"></div>
309+
<div class="unknown" title="No build information available for Android"></div>
298310
</div>
299311
</li>
300312
</ul>

Tests/AppTests/__Snapshots__/WebpageSnapshotTests/PackageShow_document_binary_targets.1.html

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,8 @@ <h3>Compatibility</h3>
242242
<div>watchOS</div>
243243
<div>tvOS</div>
244244
<div>Linux</div>
245+
<div>Wasm</div>
246+
<div>Android</div>
245247
</div>
246248
<div class="results">
247249
<div class="compatible" title="Built successfully with iOS"></div>
@@ -250,6 +252,8 @@ <h3>Compatibility</h3>
250252
<div class="unknown" title="No build information available for watchOS"></div>
251253
<div class="unknown" title="No build information available for tvOS"></div>
252254
<div class="unknown" title="No build information available for Linux"></div>
255+
<div class="unknown" title="No build information available for WebAssembly"></div>
256+
<div class="unknown" title="No build information available for Android"></div>
253257
</div>
254258
</li>
255259
<li class="row">
@@ -265,6 +269,8 @@ <h3>Compatibility</h3>
265269
<div>watchOS</div>
266270
<div>tvOS</div>
267271
<div>Linux</div>
272+
<div>Wasm</div>
273+
<div>Android</div>
268274
</div>
269275
<div class="results">
270276
<div class="compatible" title="Built successfully with iOS"></div>
@@ -273,6 +279,8 @@ <h3>Compatibility</h3>
273279
<div class="unknown" title="No build information available for watchOS"></div>
274280
<div class="compatible" title="Built successfully with tvOS"></div>
275281
<div class="compatible" title="Built successfully with Linux"></div>
282+
<div class="unknown" title="No build information available for WebAssembly"></div>
283+
<div class="unknown" title="No build information available for Android"></div>
276284
</div>
277285
</li>
278286
<li class="row">
@@ -288,6 +296,8 @@ <h3>Compatibility</h3>
288296
<div>watchOS</div>
289297
<div>tvOS</div>
290298
<div>Linux</div>
299+
<div>Wasm</div>
300+
<div>Android</div>
291301
</div>
292302
<div class="results">
293303
<div class="compatible" title="Built successfully with iOS"></div>
@@ -296,6 +306,8 @@ <h3>Compatibility</h3>
296306
<div class="compatible" title="Built successfully with watchOS"></div>
297307
<div class="compatible" title="Built successfully with tvOS"></div>
298308
<div class="compatible" title="Built successfully with Linux"></div>
309+
<div class="unknown" title="No build information available for WebAssembly"></div>
310+
<div class="unknown" title="No build information available for Android"></div>
299311
</div>
300312
</li>
301313
</ul>

0 commit comments

Comments
 (0)