@@ -1973,6 +1973,23 @@ final class SwiftDriverTests: XCTestCase {
1973
1973
XCTAssertEqual ( plannedJobs [ 1 ] . inputs [ 0 ] . file, . temporary( RelativePath ( " input.swiftmodule " ) ) )
1974
1974
XCTAssertEqual ( plannedJobs [ 1 ] . outputs [ 0 ] . file, . absolute( AbsolutePath ( " /tmp/test.swiftmodule " ) ) )
1975
1975
}
1976
+
1977
+ do {
1978
+ // -g is specified
1979
+ // (partial and final product module are saved to temporary directory so merge-modules is omitted)
1980
+ var driver = try Driver ( args: [ " swiftc " , " -g " , " input.swift " ] )
1981
+ let plannedJobs = try driver. planBuild ( )
1982
+ print ( plannedJobs)
1983
+ XCTAssertEqual ( plannedJobs. count, 3 )
1984
+ // No .mergeModule job
1985
+ #if os(macOS)
1986
+ XCTAssertEqual ( plannedJobs. map { $0. kind } , [ . compile, . link, . generateDSYM] )
1987
+ #endif
1988
+ #if os(Linux)
1989
+ XCTAssertEqual ( plannedJobs. map { $0. kind } , [ . compile, . autolinkExtract, . link] )
1990
+ #endif
1991
+ XCTAssertTrue ( plannedJobs [ 0 ] . outputs. contains ( TypedVirtualPath ( file: VirtualPath . temporary ( RelativePath ( " input.swiftmodule " ) ) . intern ( ) , type: . swiftModule) ) )
1992
+ }
1976
1993
}
1977
1994
1978
1995
func testEmitModuleSeparately( ) throws {
@@ -2046,11 +2063,11 @@ final class SwiftDriverTests: XCTestCase {
2046
2063
// dsymutil won't be found on other platforms
2047
2064
#if os(macOS)
2048
2065
do {
2049
- var driver = try Driver ( args: [ " swiftc " , " -target " , " x86_64-apple-macosx10.15 " , " -g " , " foo.swift " ] )
2066
+ var driver = try Driver ( args: [ " swiftc " , " -target " , " x86_64-apple-macosx10.15 " , " -g " , " foo.swift " , " bar.swift " ] )
2050
2067
let plannedJobs = try driver. planBuild ( )
2051
- XCTAssertEqual ( plannedJobs. count, 4 )
2068
+ XCTAssertEqual ( plannedJobs. count, 5 )
2052
2069
// No module wrapping with Mach-O.
2053
- XCTAssertEqual ( plannedJobs. map { $0. kind } , [ . compile, . mergeModule, . link, . generateDSYM] )
2070
+ XCTAssertEqual ( plannedJobs. map { $0. kind } , [ . compile, . compile , . mergeModule, . link, . generateDSYM] )
2054
2071
}
2055
2072
#endif
2056
2073
}
0 commit comments