public void BothAddedUserResolved() { var resolver = new TestConflictResolver<ConfigitPackageReference>( ConflictItemType.Local ); var merger = new PackagesConfigMerger( CurrentOperation.Merge, resolver ); var result = merger.Merge( "TestFilePath", _packageEmpty, _packageV1, _packageV2Net46 ).ToList(); Assert.That( resolver.Called, Is.EqualTo( true ) ); Assert.That( result, Is.EquivalentTo( _packageV1 ) ); }
public void BothUpdatedAutoResolved() { var resolver = new TestConflictResolver<ConfigitPackageReference>( ConflictItemType.Local ); var merger = new PackagesConfigMerger( CurrentOperation.Merge, resolver ); // CurrentOperation.Merge causes local to be set to mine var result = merger.Merge( "TestFilePath", _packageV0, _packageV1, _packageV2 ).ToList(); Assert.That( resolver.Called, Is.EqualTo( false ) ); Assert.That( result, Is.EquivalentTo( _packageV2 ) ); }
public void UsesDefaultResolverIfOtherDifferencesExist() { var defaultResolver = new TestConflictResolver<ConfigitPackageReference>( ConflictItemType.Base ); PackageConflictResolver resolver = new PackageConflictResolver( defaultResolver ); var conflict = new Conflict<ConfigitPackageReference>( "TestFilePath", PackageKey, _packageV0, _packageV1, _packageV2UserInstalled ); var result = resolver.Resolve( conflict ); Assert.That( defaultResolver.Called, Is.EqualTo( true ) ); Assert.That( result.ResolvedItem, Is.EqualTo( _packageV0 ) ); }
public void WhenIncludeCannotBeResolved() { var userConflictResolver = new TestConflictResolver<Reference>( ConflictItemType.Local ); ReferenceConflictResolver resolver = new ReferenceConflictResolver( userConflictResolver ); var baseReference = new Reference( "NuGet.Frameworks, Version=$(MyVersion), Culture=neutral, PublicKeyToken=2e465378e3b1a8dd, processorArchitecture=MSIL", false, false, @"\bin\$(Configuration)\NuGet.Frameworks.dll" ); var mineReference = new Reference( "NuGet.Frameworks, Version=$(mine), Culture=neutral, PublicKeyToken=2e465378e3b1a8dd, processorArchitecture=MSIL", false, false, @"\bin\$(Configuration)\NuGet.Frameworks.dll" ); var incomingReference = new Reference( "NuGet.Frameworks, Version=$(incoming), Culture=neutral, PublicKeyToken=2e465378e3b1a8dd, processorArchitecture=MSIL", false, false, @"\bin\$(Configuration)\NuGet.Frameworks.dll" ); var resolved = resolver.Resolve( new Conflict<Reference>( "myproject.csproj", "Configit.Dummy.dll", baseReference, mineReference, incomingReference ) ); // We expect fall back to user resolver Assert.That( userConflictResolver.Called ); Assert.That( resolved.ResolvedWith, Is.EqualTo( ConflictItemType.Local ) ); }
public void MineDeletedTheirsUpdated_ResolveMine() { var resolver = new TestConflictResolver<ConfigitPackageReference>( ConflictItemType.Local ); var merger = new PackagesConfigMerger( CurrentOperation.Merge, resolver ); var result = merger.Merge( "TestFilePath", _packageV0, _packageEmpty, _packageV1 ).ToList(); Assert.That( resolver.Called, Is.EqualTo( true ) ); Assert.That( result, Is.Empty ); }