public void ElementNameGetter_ReturnsPackageSource() { var original = new PackageSourceMappingSourceItem("name", new List <PackagePatternItem>() { new PackagePatternItem("stuff"), new PackagePatternItem("stuff2") }); original.ElementName.Should().Be("packageSource"); }
private static bool PackageSourceMappingSourceItem_Equals(PackageSourceMappingSourceItem item1, PackageSourceMappingSourceItem item2) { if (!ItemBase_DeepEquals(item1, item2)) { return(false); } return(item1.Patterns.OrderedEquals(item2.Patterns, e => e.Pattern, StringComparer.OrdinalIgnoreCase)); }
public void Equals_WithDifferentPackagePatterns_ReturnsTrue() { var left = new PackageSourceMappingSourceItem("name", new List <PackagePatternItem>() { new PackagePatternItem("stuff"), new PackagePatternItem("stuff2") }); var right = new PackageSourceMappingSourceItem("name", new List <PackagePatternItem>() { new PackagePatternItem("stuff"), new PackagePatternItem("stuff3") }); left.Equals(right).Should().BeTrue(); }
public void HashCode_WithDifferentNames_ReturnsFalse() { var left = new PackageSourceMappingSourceItem("name2", new List <PackagePatternItem>() { new PackagePatternItem("stuff"), new PackagePatternItem("stuff2") }); var right = new PackageSourceMappingSourceItem("name", new List <PackagePatternItem>() { new PackagePatternItem("stuff"), new PackagePatternItem("stuff2") }); left.GetHashCode().Equals(right.GetHashCode()).Should().BeFalse(); }
public void HashCode_WithDifferentlyCasedName_ReturnsTrue() { var left = new PackageSourceMappingSourceItem("NAME", new List <PackagePatternItem>() { new PackagePatternItem("stuff") }); var right = new PackageSourceMappingSourceItem("name", new List <PackagePatternItem>() { new PackagePatternItem("stuff") }); left.GetHashCode().Equals(right.GetHashCode()).Should().BeTrue(); }
public void Clone_CreatesEquivalentPackagePatterns() { var original = new PackageSourceMappingSourceItem("name", new List <PackagePatternItem>() { new PackagePatternItem("stuff"), new PackagePatternItem("stuff2") }); var clone = original.Clone() as PackageSourceMappingSourceItem; original.Equals(clone).Should().BeTrue(); original.GetHashCode().Equals(clone.GetHashCode()).Should().BeTrue(); SettingsTestUtils.DeepEquals(original, clone).Should().BeTrue(); ReferenceEquals(original, clone).Should().BeFalse(); original.Key.Equals(clone.Key); }
public void AddOrUpdatePackageSourceMapping_WithAClearItem_WithANewPattern_AddInFurthestMatchingConfig() { // Arrange using var mockBaseDirectory = TestDirectory.Create(); var configPath1 = Path.Combine(mockBaseDirectory, "NuGet.Config"); SettingsTestUtils.CreateConfigurationFile(configPath1, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSourceMapping> <clear /> <packageSource key=""nuget.org""> <package pattern=""stuff"" /> </packageSource> </packageSourceMapping> </configuration>"); var configPath2 = Path.Combine(mockBaseDirectory, "NuGet.Config.2"); SettingsTestUtils.CreateConfigurationFile(configPath2, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSourceMapping> <packageSource key=""contoso""> <package pattern=""stuff2"" /> </packageSource> </packageSourceMapping> </configuration>"); var settings = Settings.LoadSettingsGivenConfigPaths(new string[] { configPath1, configPath2 }); // Act & Assert var sourceMappingProvider = new PackageSourceMappingProvider(settings); var patternToAdd = new PackageSourceMappingSourceItem("localSource", new PackagePatternItem[] { new PackagePatternItem("added") }); sourceMappingProvider.AddOrUpdatePackageSourceMappingSourceItem(patternToAdd); var result = @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSourceMapping> <clear /> <packageSource key=""nuget.org""> <package pattern=""stuff"" /> </packageSource> <packageSource key=""localSource""> <package pattern=""added"" /> </packageSource> </packageSourceMapping> </configuration>"; result.Replace("\r\n", "\n") .Should().BeEquivalentTo( File.ReadAllText(configPath1).Replace("\r\n", "\n")); }