@@ -720,6 +720,64 @@ final class PubgrubTests: XCTestCase {
720720 XCTFail ( " Unexpected error: \( error) " )
721721 }
722722 }
723+
724+ func DISABLED_testCycle1( ) {
725+ let root = _MockPackageContainer ( name: rootRef)
726+ let fooRef = PackageReference ( identity: " foo " , path: " " )
727+
728+ root. unversionedDeps = [
729+ _MockPackageConstraint ( container: fooRef, versionRequirement: v1Range) ,
730+ ]
731+ let foo = _MockPackageContainer ( name: fooRef, dependenciesByVersion: [
732+ v1_1: [
733+ ( container: fooRef, versionRequirement: v1Range) ,
734+ ]
735+ ] )
736+
737+ let provider = _MockPackageProvider ( containers: [ root, foo] )
738+ let resolver = PubgrubDependencyResolver ( provider, delegate)
739+
740+ let result = resolver. solve ( root: rootRef, pins: [ ] )
741+
742+ guard case . error = result else {
743+ return XCTFail ( " Expected a cycle " )
744+ }
745+ }
746+
747+ func DISABLED_testCycle2( ) {
748+ let root = _MockPackageContainer ( name: rootRef)
749+ let fooRef = PackageReference ( identity: " foo " , path: " " )
750+ let barRef = PackageReference ( identity: " bar " , path: " " )
751+ let bazRef = PackageReference ( identity: " baz " , path: " " )
752+ let bamRef = PackageReference ( identity: " bam " , path: " " )
753+
754+ root. unversionedDeps = [
755+ _MockPackageConstraint ( container: fooRef, versionRequirement: v1Range) ,
756+ ]
757+ let foo = _MockPackageContainer ( name: fooRef, dependenciesByVersion: [
758+ v1_1: [
759+ ( container: barRef, versionRequirement: v1Range) ,
760+ ]
761+ ] )
762+ let bar = _MockPackageContainer ( name: barRef, dependenciesByVersion: [
763+ v1: [ ( container: bazRef, versionRequirement: v1Range) ]
764+ ] )
765+ let baz = _MockPackageContainer ( name: bazRef, dependenciesByVersion: [
766+ v1: [ ( container: bamRef, versionRequirement: v1Range) ]
767+ ] )
768+ let bam = _MockPackageContainer ( name: bamRef, dependenciesByVersion: [
769+ v1: [ ( container: bazRef, versionRequirement: v1Range) ]
770+ ] )
771+
772+ let provider = _MockPackageProvider ( containers: [ root, foo, bar, baz, bam] )
773+ let resolver = PubgrubDependencyResolver ( provider, delegate)
774+
775+ let result = resolver. solve ( root: rootRef, pins: [ ] )
776+
777+ guard case . error = result else {
778+ return XCTFail ( " Expected a cycle " )
779+ }
780+ }
723781}
724782
725783extension Term : ExpressibleByStringLiteral {
0 commit comments