@@ -432,19 +432,19 @@ private final class TestWorkspace {
432
432
func create( package : TestPackage , basePath: AbsolutePath , isRoot: Bool ) throws {
433
433
let packagePath = basePath. appending ( component: package . name)
434
434
let sourcesDir = packagePath. appending ( component: " Sources " )
435
-
435
+ let url = ( isRoot ? packagePath : packagesDir. appending ( component: package . name) ) . asString
436
+ let specifier = RepositorySpecifier ( url: url)
437
+
436
438
// Create targets on disk.
437
- let repo = InMemoryGitRepository ( path: packagePath, fs: fs as! InMemoryFileSystem )
439
+ let repo = repoProvider . specifierMap [ specifier ] ?? InMemoryGitRepository ( path: packagePath, fs: fs as! InMemoryFileSystem )
438
440
for target in package . targets {
439
441
let targetDir = sourcesDir. appending ( component: target. name)
440
442
try repo. createDirectory ( targetDir, recursive: true )
441
443
try repo. writeFileContents ( targetDir. appending ( component: " file.swift " ) , bytes: " " )
442
444
}
443
445
repo. commit ( )
444
446
445
- let url = ( isRoot ? packagePath : packagesDir. appending ( component: package . name) ) . asString
446
447
let versions : [ String ? ] = isRoot ? [ nil ] : package . versions
447
-
448
448
for version in versions {
449
449
let v = version. flatMap ( Version . init ( string: ) )
450
450
manifests [ . init( url: url, version: v) ] = Manifest (
@@ -463,7 +463,7 @@ private final class TestWorkspace {
463
463
}
464
464
}
465
465
466
- repoProvider. add ( specifier: RepositorySpecifier ( url : url ) , repository: repo)
466
+ repoProvider. add ( specifier: specifier , repository: repo)
467
467
}
468
468
469
469
// Create root packages.
0 commit comments