@@ -33,7 +33,7 @@ class AnalyzerTests: AppTestCase {
33
33
// expected shell commands for the happy path.)
34
34
// setup
35
35
let urls = [ " https://github.com/foo/1 " , " https://github.com/foo/2 " ]
36
- let pkgs = try savePackages ( on: app. db, urls. asURLs, processingStage: . ingestion)
36
+ let pkgs = try await savePackages ( on: app. db, urls. asURLs, processingStage: . ingestion)
37
37
try await Repository ( package : pkgs [ 0 ] ,
38
38
defaultBranch: " main " ,
39
39
name: " 1 " ,
@@ -300,7 +300,7 @@ class AnalyzerTests: AppTestCase {
300
300
// Ensure a package that fails analysis goes back to ingesting and isn't stuck in an analysis loop
301
301
// setup
302
302
do {
303
- let pkg = try savePackage ( on: app. db, " https://github.com/foo/1 " , processingStage: . ingestion)
303
+ let pkg = try await savePackage ( on: app. db, " https://github.com/foo/1 " , processingStage: . ingestion)
304
304
try await Repository ( package : pkg, defaultBranch: " main " ) . save ( on: app. db)
305
305
}
306
306
@@ -337,7 +337,7 @@ class AnalyzerTests: AppTestCase {
337
337
// Ensure packages record success/error status
338
338
// setup
339
339
let urls = [ " https://github.com/foo/1 " , " https://github.com/foo/2 " ]
340
- let pkgs = try savePackages ( on: app. db, urls. asURLs, processingStage: . ingestion)
340
+ let pkgs = try await savePackages ( on: app. db, urls. asURLs, processingStage: . ingestion)
341
341
for p in pkgs {
342
342
try await Repository ( package : p, defaultBranch: " main " ) . save ( on: app. db)
343
343
}
@@ -383,7 +383,7 @@ class AnalyzerTests: AppTestCase {
383
383
// Test to ensure exceptions don't interrupt processing
384
384
// setup
385
385
let urls = [ " https://github.com/foo/1 " , " https://github.com/foo/2 " ]
386
- let pkgs = try savePackages ( on: app. db, urls. asURLs, processingStage: . ingestion)
386
+ let pkgs = try await savePackages ( on: app. db, urls. asURLs, processingStage: . ingestion)
387
387
for p in pkgs {
388
388
try await Repository ( package : p, defaultBranch: " main " ) . save ( on: app. db)
389
389
}
@@ -468,7 +468,7 @@ class AnalyzerTests: AppTestCase {
468
468
@MainActor
469
469
func test_refreshCheckout( ) async throws {
470
470
// setup
471
- let pkg = try savePackage ( on: app. db, " 1 " . asGithubUrl. url)
471
+ let pkg = try await savePackage ( on: app. db, " 1 " . asGithubUrl. url)
472
472
try await Repository ( package : pkg, defaultBranch: " main " ) . save ( on: app. db)
473
473
Current . fileManager. fileExists = { @Sendable _ in true }
474
474
let commands = QueueIsolated < [ String ] > ( [ ] )
@@ -631,20 +631,20 @@ class AnalyzerTests: AppTestCase {
631
631
. mock( description: " rel 2.3.0 " , publishedAt: 4 , tagName: " 2.3.0 " , url: " some url " ) ,
632
632
. mock( description: nil , tagName: " 2.4.0 " )
633
633
] ) . save ( on: app. db)
634
- let versions : [ Version ] = try [
634
+ let versions : [ Version ] = try await [
635
635
( Date ( timeIntervalSince1970: 0 ) , Reference . tag ( 1 , 2 , 3 ) ) ,
636
636
( Date ( timeIntervalSince1970: 1 ) , Reference . tag ( 2 , 0 , 0 ) ) ,
637
637
( Date ( timeIntervalSince1970: 2 ) , Reference . tag ( 2 , 1 , 0 ) ) ,
638
638
( Date ( timeIntervalSince1970: 3 ) , Reference . tag ( 2 , 2 , 0 ) ) ,
639
639
( Date ( timeIntervalSince1970: 4 ) , Reference . tag ( 2 , 3 , 0 ) ) ,
640
640
( Date ( timeIntervalSince1970: 5 ) , Reference . tag ( 2 , 4 , 0 ) ) ,
641
641
( Date ( timeIntervalSince1970: 6 ) , Reference . branch ( " main " ) ) ,
642
- ] . map { date, ref in
642
+ ] . mapAsync { date, ref in
643
643
let v = try Version ( id: UUID ( ) ,
644
644
package : pkg,
645
645
commitDate: date,
646
646
reference: ref)
647
- try v. save ( on: app. db) . wait ( )
647
+ try await v. save ( on: app. db)
648
648
return v
649
649
}
650
650
let jpr = try await Package . fetchCandidate ( app. db, id: . id0)
@@ -729,7 +729,7 @@ class AnalyzerTests: AppTestCase {
729
729
}
730
730
return " "
731
731
}
732
- let pkg = try savePackage ( on: app. db, " https://github.com/foo/1 " )
732
+ let pkg = try await savePackage ( on: app. db, " https://github.com/foo/1 " )
733
733
try await Repository ( package : pkg, name: " 1 " , owner: " foo " ) . save ( on: app. db)
734
734
let version = try Version ( id: UUID ( ) , package : pkg, reference: . tag( . init( 0 , 4 , 2 ) ) )
735
735
try await version. save ( on: app. db)
@@ -829,7 +829,7 @@ class AnalyzerTests: AppTestCase {
829
829
830
830
func test_updatePackages( ) async throws {
831
831
// setup
832
- let packages = try savePackages ( on: app. db, [ " 1 " , " 2 " ] . asURLs)
832
+ let packages = try await savePackages ( on: app. db, [ " 1 " , " 2 " ] . asURLs)
833
833
. map ( Joined < Package , Repository > . init ( model: ) )
834
834
let results : [ Result < Joined < Package , Repository > , Error > ] = [
835
835
// feed in one error to see it passed through
@@ -894,9 +894,9 @@ class AnalyzerTests: AppTestCase {
894
894
}
895
895
return " "
896
896
}
897
- let pkgs = try savePackages ( on: app. db, [ " 1 " , " 2 " ] . asGithubUrls. asURLs, processingStage: . ingestion)
898
- try pkgs. forEach {
899
- try Repository ( package : $0 , defaultBranch: " main " ) . save ( on: app. db) . wait ( )
897
+ let pkgs = try await savePackages ( on: app. db, [ " 1 " , " 2 " ] . asGithubUrls. asURLs, processingStage: . ingestion)
898
+ for pkg in pkgs {
899
+ try await Repository ( package : pkg , defaultBranch: " main " ) . save ( on: app. db)
900
900
}
901
901
902
902
// MUT
@@ -907,16 +907,17 @@ class AnalyzerTests: AppTestCase {
907
907
// validation
908
908
// 1 version for the default branch + 2 for the tags each = 6 versions
909
909
// 2 products per version = 12 products
910
- XCTAssertEqual ( try Version . query ( on: app. db) . count ( ) . wait ( ) , 6 )
911
- XCTAssertEqual ( try Product . query ( on: app. db) . count ( ) . wait ( ) , 12 )
910
+ let db = app. db
911
+ try await XCTAssertEqualAsync ( try await Version . query ( on: db) . count ( ) , 6 )
912
+ try await XCTAssertEqualAsync ( try await Product . query ( on: db) . count ( ) , 12 )
912
913
}
913
914
914
915
@MainActor
915
916
func test_issue_70( ) async throws {
916
917
// Certain git commands fail when index.lock exists
917
918
// https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/issues/70
918
919
// setup
919
- try savePackage ( on: app. db, " 1 " . asGithubUrl. url, processingStage: . ingestion)
920
+ try await savePackage ( on: app. db, " 1 " . asGithubUrl. url, processingStage: . ingestion)
920
921
let pkgs = try await Package . fetchCandidates ( app. db, for: . analysis, limit: 10 )
921
922
922
923
let checkoutDir = Current . fileManager. checkoutsDirectory ( )
@@ -950,7 +951,7 @@ class AnalyzerTests: AppTestCase {
950
951
// git checkout can still fail despite git reset --hard + git clean
951
952
// https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/issues/498
952
953
// setup
953
- try savePackage ( on: app. db, " 1 " . asGithubUrl. url, processingStage: . ingestion)
954
+ try await savePackage ( on: app. db, " 1 " . asGithubUrl. url, processingStage: . ingestion)
954
955
let pkgs = try await Package . fetchCandidates ( app. db, for: . analysis, limit: 10 )
955
956
956
957
let checkoutDir = Current . fileManager. checkoutsDirectory ( )
@@ -1106,7 +1107,7 @@ class AnalyzerTests: AppTestCase {
1106
1107
// https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/issues/693
1107
1108
// setup
1108
1109
do {
1109
- let pkg = try savePackage ( on: app. db, id: . id0, " 1 " . asGithubUrl. url)
1110
+ let pkg = try await savePackage ( on: app. db, id: . id0, " 1 " . asGithubUrl. url)
1110
1111
try await Repository ( package : pkg, defaultBranch: " main " ) . save ( on: app. db)
1111
1112
}
1112
1113
let pkg = try await Package . fetchCandidate ( app. db, id: . id0)
@@ -1455,7 +1456,7 @@ class AnalyzerTests: AppTestCase {
1455
1456
// Ensure we preserve dependency counts from previous default branch version
1456
1457
// https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/issues/2873
1457
1458
// setup
1458
- let pkg = try await savePackageAsync ( on: app. db, id: . id0, " https://github.com/foo/1 " . url, processingStage: . ingestion)
1459
+ let pkg = try await savePackage ( on: app. db, id: . id0, " https://github.com/foo/1 " . url, processingStage: . ingestion)
1459
1460
try await Repository ( package : pkg,
1460
1461
defaultBranch: " main " ,
1461
1462
name: " 1 " ,
0 commit comments