@@ -238,7 +238,11 @@ final class SwiftDriverTests: XCTestCase {
238238 let plannedJobs = try driver. planBuild ( )
239239
240240 XCTAssertEqual ( 3 , plannedJobs. count)
241+ XCTAssertFalse ( plannedJobs. contains { $0. kind == . autolinkExtract } )
242+
241243 let linkJob = plannedJobs [ 2 ]
244+ XCTAssertEqual ( linkJob. kind, . link)
245+
242246 let cmd = linkJob. commandLine
243247 XCTAssertTrue ( cmd. contains ( . flag( " -dylib " ) ) )
244248 XCTAssertTrue ( cmd. contains ( . flag( " -arch " ) ) )
@@ -257,7 +261,11 @@ final class SwiftDriverTests: XCTestCase {
257261 let plannedJobs = try driver. planBuild ( )
258262
259263 XCTAssertEqual ( 3 , plannedJobs. count)
264+ XCTAssertFalse ( plannedJobs. contains { $0. kind == . autolinkExtract } )
265+
260266 let linkJob = plannedJobs [ 2 ]
267+ XCTAssertEqual ( linkJob. kind, . link)
268+
261269 let cmd = linkJob. commandLine
262270 XCTAssertTrue ( cmd. contains ( . flag( " -dylib " ) ) )
263271 XCTAssertTrue ( cmd. contains ( . flag( " -arch " ) ) )
@@ -276,7 +284,11 @@ final class SwiftDriverTests: XCTestCase {
276284 let plannedJobs = try driver. planBuild ( )
277285
278286 XCTAssertEqual ( 3 , plannedJobs. count)
287+ XCTAssertFalse ( plannedJobs. contains { $0. kind == . autolinkExtract } )
288+
279289 let linkJob = plannedJobs [ 2 ]
290+ XCTAssertEqual ( linkJob. kind, . link)
291+
280292 let cmd = linkJob. commandLine
281293 XCTAssertTrue ( cmd. contains ( . flag( " -dylib " ) ) )
282294 XCTAssertTrue ( cmd. contains ( . flag( " -w " ) ) )
@@ -294,7 +306,11 @@ final class SwiftDriverTests: XCTestCase {
294306 let plannedJobs = try driver. planBuild ( )
295307
296308 XCTAssertEqual ( plannedJobs. count, 3 )
309+ XCTAssertFalse ( plannedJobs. contains { $0. kind == . autolinkExtract } )
310+
297311 let linkJob = plannedJobs [ 2 ]
312+ XCTAssertEqual ( linkJob. kind, . link)
313+
298314 let cmd = linkJob. commandLine
299315 XCTAssertTrue ( cmd. contains ( . flag( " -static " ) ) )
300316 XCTAssertTrue ( cmd. contains ( . flag( " -o " ) ) )
@@ -317,7 +333,11 @@ final class SwiftDriverTests: XCTestCase {
317333 var driver = try Driver ( args: commonArgs + [ " -emit-executable " ] )
318334 let plannedJobs = try driver. planBuild ( )
319335 XCTAssertEqual ( 3 , plannedJobs. count)
336+ XCTAssertFalse ( plannedJobs. contains { $0. kind == . autolinkExtract } )
337+
320338 let linkJob = plannedJobs [ 2 ]
339+ XCTAssertEqual ( linkJob. kind, . link)
340+
321341 let cmd = linkJob. commandLine
322342 XCTAssertTrue ( cmd. contains ( . flag( " -o " ) ) )
323343 XCTAssertTrue ( cmd. contains ( . path( . temporary( " foo.o " ) ) ) )
@@ -334,8 +354,18 @@ final class SwiftDriverTests: XCTestCase {
334354 var driver = try Driver ( args: commonArgs + [ " -emit-library " , " -target " , " x86_64-unknown-linux " ] )
335355 let plannedJobs = try driver. planBuild ( )
336356
337- XCTAssertEqual ( plannedJobs. count, 3 )
338- let linkJob = plannedJobs [ 2 ]
357+ XCTAssertEqual ( plannedJobs. count, 4 )
358+
359+ let autolinkExtractJob = plannedJobs [ 2 ]
360+ XCTAssertEqual ( autolinkExtractJob. kind, . autolinkExtract)
361+
362+ let autolinkCmd = autolinkExtractJob. commandLine
363+ XCTAssertTrue ( autolinkCmd. contains ( . path( . temporary( " foo.o " ) ) ) )
364+ XCTAssertTrue ( autolinkCmd. contains ( . path( . temporary( " bar.o " ) ) ) )
365+ XCTAssertTrue ( autolinkCmd. contains ( . path( . temporary( " Test.autolink " ) ) ) )
366+
367+ let linkJob = plannedJobs [ 3 ]
368+ XCTAssertEqual ( linkJob. kind, . link)
339369 let cmd = linkJob. commandLine
340370 XCTAssertTrue ( cmd. contains ( . flag( " -o " ) ) )
341371 XCTAssertTrue ( cmd. contains ( . flag( " -shared " ) ) )
@@ -352,8 +382,17 @@ final class SwiftDriverTests: XCTestCase {
352382 var driver = try Driver ( args: commonArgs + [ " -emit-library " , " -static " , " -target " , " x86_64-unknown-linux " ] )
353383 let plannedJobs = try driver. planBuild ( )
354384
355- XCTAssertEqual ( plannedJobs. count, 3 )
356- let linkJob = plannedJobs [ 2 ]
385+ XCTAssertEqual ( plannedJobs. count, 4 )
386+
387+ let autolinkExtractJob = plannedJobs [ 2 ]
388+ XCTAssertEqual ( autolinkExtractJob. kind, . autolinkExtract)
389+
390+ let autolinkCmd = autolinkExtractJob. commandLine
391+ XCTAssertTrue ( autolinkCmd. contains ( . path( . temporary( " foo.o " ) ) ) )
392+ XCTAssertTrue ( autolinkCmd. contains ( . path( . temporary( " bar.o " ) ) ) )
393+ XCTAssertTrue ( autolinkCmd. contains ( . path( . temporary( " Test.autolink " ) ) ) )
394+
395+ let linkJob = plannedJobs [ 3 ]
357396 let cmd = linkJob. commandLine
358397 // we'd expect "ar crs libTest.a foo.o bar.o"
359398 XCTAssertTrue ( cmd. contains ( . flag( " crs " ) ) )
0 commit comments