@@ -820,7 +820,7 @@ final class SwiftDriverTests: XCTestCase {
820
820
func testEmitModuleEmittingDependencies( ) throws {
821
821
var driver1 = try Driver ( args: [ " swiftc " , " foo.swift " , " bar.swift " , " -module-name " , " Foo " , " -emit-dependencies " , " -emit-module " , " -serialize-diagnostics " , " -driver-filelist-threshold=9999 " , " -experimental-emit-module-separately " ] )
822
822
let plannedJobs = try driver1. planBuild ( ) . removingAutolinkExtractJobs ( )
823
- XCTAssertEqual ( plannedJobs. count, 1 )
823
+ XCTAssertEqual ( plannedJobs. count, 3 )
824
824
XCTAssertTrue ( plannedJobs [ 0 ] . kind == . emitModule)
825
825
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -emit-dependencies-path " ) ) )
826
826
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -serialize-diagnostics-path " ) ) )
@@ -843,7 +843,7 @@ final class SwiftDriverTests: XCTestCase {
843
843
" -output-file-map " , outputFileMap. description] )
844
844
let plannedJobs = try driver. planBuild ( ) . removingAutolinkExtractJobs ( )
845
845
846
- XCTAssertEqual ( plannedJobs. count, 1 )
846
+ XCTAssertEqual ( plannedJobs. count, 3 )
847
847
XCTAssertTrue ( plannedJobs [ 0 ] . kind == . emitModule)
848
848
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( subsequence: [ . flag( " -serialize-diagnostics-path " ) , . path( . absolute( . init( " /build/Foo-test.dia " ) ) ) ] ) )
849
849
}
@@ -2166,7 +2166,7 @@ final class SwiftDriverTests: XCTestCase {
2166
2166
do {
2167
2167
var driver = try Driver ( args: [ " swiftc " , " -module-name=ThisModule " , " main.swift " , " multi-threaded.swift " , " -emit-module " , " -o " , " test.swiftmodule " , " -experimental-emit-module-separately " ] )
2168
2168
let plannedJobs = try driver. planBuild ( ) . removingAutolinkExtractJobs ( )
2169
- XCTAssertEqual ( plannedJobs. count, 1 )
2169
+ XCTAssertEqual ( plannedJobs. count, 3 )
2170
2170
XCTAssertEqual ( plannedJobs [ 0 ] . kind, . emitModule)
2171
2171
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -emit-abi-descriptor-path " ) ) )
2172
2172
}
@@ -2410,8 +2410,8 @@ final class SwiftDriverTests: XCTestCase {
2410
2410
// -experimental-emit-module-separately.
2411
2411
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " bar.swift " , " -module-name " , " Test " , " -emit-module-path " , " /foo/bar/Test.swiftmodule " , " -experimental-emit-module-separately " ] )
2412
2412
let plannedJobs = try driver. planBuild ( )
2413
- XCTAssertEqual ( plannedJobs. count, 1 )
2414
- XCTAssertEqual ( Set ( plannedJobs. map { $0. kind } ) , Set ( [ . emitModule] ) )
2413
+ XCTAssertEqual ( plannedJobs. count, 3 )
2414
+ XCTAssertEqual ( Set ( plannedJobs. map { $0. kind } ) , Set ( [ . emitModule, . compile ] ) )
2415
2415
XCTAssertTrue ( plannedJobs [ 0 ] . tool. name. contains ( " swift " ) )
2416
2416
XCTAssertEqual ( plannedJobs [ 0 ] . outputs. count, 4 )
2417
2417
XCTAssertEqual ( plannedJobs [ 0 ] . outputs [ 0 ] . file, . absolute( AbsolutePath ( " /foo/bar/Test.swiftmodule " ) ) )
@@ -3620,7 +3620,7 @@ final class SwiftDriverTests: XCTestCase {
3620
3620
" swiftc " , " -working-directory " , " /Foo/Bar " , " -emit-module " , " /tmp/main.swift "
3621
3621
] )
3622
3622
let plannedJobs = try driver. planBuild ( ) . removingAutolinkExtractJobs ( )
3623
- XCTAssertEqual ( plannedJobs. count, 1 )
3623
+ XCTAssertEqual ( plannedJobs. count, 2 )
3624
3624
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -o " ) ) )
3625
3625
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . path( try VirtualPath ( path: " /Foo/Bar/main.swiftmodule " ) ) ) )
3626
3626
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -emit-module-doc-path " ) ) )
@@ -3740,7 +3740,7 @@ final class SwiftDriverTests: XCTestCase {
3740
3740
" swiftc " , " -emit-module " , " /tmp/main.swift " , " -emit-module-path " , " test-ios-macabi.swiftmodule "
3741
3741
] )
3742
3742
let plannedJobs = try driver. planBuild ( ) . removingAutolinkExtractJobs ( )
3743
- XCTAssertEqual ( plannedJobs. count, 1 )
3743
+ XCTAssertEqual ( plannedJobs. count, 2 )
3744
3744
XCTAssertTrue ( plannedJobs [ 0 ] . kind == . emitModule)
3745
3745
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . flag( " -o " ) ) )
3746
3746
XCTAssertTrue ( plannedJobs [ 0 ] . commandLine. contains ( . path( try VirtualPath ( path: " test-ios-macabi.swiftmodule " ) ) ) )
@@ -4184,7 +4184,7 @@ final class SwiftDriverTests: XCTestCase {
4184
4184
throw XCTSkip ( " Skipping: compiler does not support '-user-module-version' " )
4185
4185
}
4186
4186
let plannedJobs = try driver. planBuild ( )
4187
- XCTAssertEqual ( plannedJobs. count, 1 )
4187
+ XCTAssertEqual ( plannedJobs. count, 2 )
4188
4188
let emitModuleJob = plannedJobs [ 0 ]
4189
4189
XCTAssertEqual ( emitModuleJob. kind, . emitModule)
4190
4190
XCTAssertTrue ( emitModuleJob. commandLine. contains ( . flag( " -user-module-version " ) ) )
@@ -4202,14 +4202,13 @@ final class SwiftDriverTests: XCTestCase {
4202
4202
" -verify-emitted-module-interface " ,
4203
4203
" -enable-library-evolution " ] )
4204
4204
let plannedJobs = try driver. planBuild ( )
4205
- XCTAssertEqual ( plannedJobs. count, 2 )
4206
- let emitJob = plannedJobs [ 0 ]
4207
- let verifyJob = plannedJobs [ 1 ]
4208
- XCTAssertEqual ( emitJob . kind , . emitModule )
4205
+ XCTAssertEqual ( plannedJobs. count, 3 )
4206
+ let emitJob = plannedJobs. first ( where : { $0 . kind == . emitModule } ) !
4207
+ let verifyJob = plannedJobs. first ( where : { $0 . kind == . verifyModuleInterface } ) !
4208
+
4209
4209
let mergeInterfaceOutputs = emitJob. outputs. filter { $0. type == . swiftInterface }
4210
4210
XCTAssertTrue ( mergeInterfaceOutputs. count == 1 ,
4211
4211
" Merge module job should only have one swiftinterface output " )
4212
- XCTAssertEqual ( verifyJob. kind, . verifyModuleInterface)
4213
4212
XCTAssertTrue ( verifyJob. inputs. count == 1 )
4214
4213
XCTAssertTrue ( verifyJob. inputs [ 0 ] == mergeInterfaceOutputs [ 0 ] )
4215
4214
XCTAssertTrue ( verifyJob. outputs. isEmpty)
@@ -4221,7 +4220,7 @@ final class SwiftDriverTests: XCTestCase {
4221
4220
var driver = try Driver ( args: [ " swiftc " , " foo.swift " , " -emit-module " , " -module-name " ,
4222
4221
" foo " , " -emit-module-interface " , " -verify-emitted-module-interface " ] , env: envVars)
4223
4222
let plannedJobs = try driver. planBuild ( )
4224
- XCTAssertEqual ( plannedJobs. count, 1 )
4223
+ XCTAssertEqual ( plannedJobs. count, 2 )
4225
4224
}
4226
4225
4227
4226
// Explicitly disabled
@@ -4231,7 +4230,7 @@ final class SwiftDriverTests: XCTestCase {
4231
4230
" -enable-library-evolution " ,
4232
4231
" -no-verify-emitted-module-interface " ] , env: envVars)
4233
4232
let plannedJobs = try driver. planBuild ( )
4234
- XCTAssertEqual ( plannedJobs. count, 1 )
4233
+ XCTAssertEqual ( plannedJobs. count, 2 )
4235
4234
}
4236
4235
4237
4236
// Disabled by default in merge-module
@@ -4251,7 +4250,7 @@ final class SwiftDriverTests: XCTestCase {
4251
4250
" -enable-library-evolution " ,
4252
4251
" -experimental-emit-module-separately " ] )
4253
4252
let plannedJobs = try driver. planBuild ( )
4254
- XCTAssertEqual ( plannedJobs. count, 1 )
4253
+ XCTAssertEqual ( plannedJobs. count, 2 )
4255
4254
}
4256
4255
4257
4256
// Emit-module separately
@@ -4261,14 +4260,12 @@ final class SwiftDriverTests: XCTestCase {
4261
4260
" -enable-library-evolution " ,
4262
4261
" -experimental-emit-module-separately " ] , env: envVars)
4263
4262
let plannedJobs = try driver. planBuild ( )
4264
- XCTAssertEqual ( plannedJobs. count, 2 )
4265
- let emitJob = plannedJobs [ 0 ]
4266
- let verifyJob = plannedJobs [ 1 ]
4267
- XCTAssertEqual ( emitJob. kind, . emitModule)
4263
+ XCTAssertEqual ( plannedJobs. count, 3 )
4264
+ let emitJob = plannedJobs. first ( where: { $0. kind == . emitModule } ) !
4265
+ let verifyJob = plannedJobs. first ( where: { $0. kind == . verifyModuleInterface } ) !
4268
4266
let emitInterfaceOutput = emitJob. outputs. filter { $0. type == . swiftInterface }
4269
4267
XCTAssertTrue ( emitInterfaceOutput. count == 1 ,
4270
4268
" Emit module job should only have one swiftinterface output " )
4271
- XCTAssertEqual ( verifyJob. kind, . verifyModuleInterface)
4272
4269
XCTAssertTrue ( verifyJob. inputs. count == 1 )
4273
4270
XCTAssertTrue ( verifyJob. inputs [ 0 ] == emitInterfaceOutput [ 0 ] )
4274
4271
XCTAssertTrue ( verifyJob. commandLine. contains ( . path( emitInterfaceOutput [ 0 ] . file) ) )
@@ -4326,7 +4323,7 @@ final class SwiftDriverTests: XCTestCase {
4326
4323
" -enable-library-evolution " ,
4327
4324
" -check-api-availability-only " ] )
4328
4325
let plannedJobs = try driver. planBuild ( )
4329
- XCTAssertEqual ( plannedJobs. count, 2 )
4326
+ XCTAssertEqual ( plannedJobs. count, 3 )
4330
4327
4331
4328
let emitJob = plannedJobs. first ( where: { $0. kind == . emitModule } ) !
4332
4329
XCTAssertTrue ( emitJob. commandLine. contains ( . flag( " -check-api-availability-only " ) ) )
0 commit comments