Example #1
0
        public void HashCode_WithUnequivalentPatterns_ReturnsFalse(string first, string second)
        {
            var firstPatternItem  = new PackagePatternItem(first);
            var secondPatternItem = new PackagePatternItem(second);

            firstPatternItem.GetHashCode().Equals(secondPatternItem.GetHashCode()).Should().BeFalse();
        }
        public void PackageSourceMappingSourceItemParse_WithUnrecognizedItems_UnknownItemsAreIgnored()
        {
            // Arrange
            // Arrange
            var config          = @"
<configuration>
    <packageSourceMapping>
        <packageSource key=""nuget.org"">
            <package pattern=""sadas"" />
            <notANamespace id=""sadas"" />
        </packageSource>
    </packageSourceMapping>
</configuration>";
            var nugetConfigPath = "NuGet.Config";

            using var mockBaseDirectory = TestDirectory.Create();
            SettingsTestUtils.CreateConfigurationFile(nugetConfigPath, mockBaseDirectory, config);

            // Act and Assert
            var settingsFile = new SettingsFile(mockBaseDirectory);
            var section      = settingsFile.GetSection("packageSourceMapping");

            section.Should().NotBeNull();

            section.Items.Count.Should().Be(1);
            var packageSourceMappingSourceItem = section.Items.First() as PackageSourceMappingSourceItem;
            var item         = packageSourceMappingSourceItem.Patterns.First();
            var expectedItem = new PackagePatternItem("sadas");

            SettingsTestUtils.DeepEquals(item, expectedItem).Should().BeTrue();
        }
Example #3
0
        public void Equals_WithEquivalentPatterns_ReturnsTrue(string first, string second)
        {
            var firstPatternItem  = new PackagePatternItem(first);
            var secondPatternItem = new PackagePatternItem(second);

            firstPatternItem.Equals(secondPatternItem).Should().BeTrue();
        }
Example #4
0
        public void Clone_CreatesEquivalentObjects(string patternName)
        {
            var original = new PackagePatternItem(patternName);
            var clone    = original.Clone() as PackagePatternItem;

            original.Equals(clone).Should().BeTrue();
            original.GetHashCode().Equals(clone.GetHashCode()).Should().BeTrue();
            SettingsTestUtils.DeepEquals(original, clone).Should().BeTrue();
            ReferenceEquals(original, clone).Should().BeFalse();
            original.Pattern.Equals(clone.Pattern);
        }
Example #5
0
        public void Update_UpdatesKeyCorrectly()
        {
            // Arrange
            var config          = @"
<configuration>
    <packageSourceMapping>
        <packageSource key=""nuget.org"">
            <package pattern=""original"" />
        </packageSource>
    </packageSourceMapping>
</configuration>";
            var nugetConfigPath = "NuGet.Config";

            using var mockBaseDirectory = TestDirectory.Create();
            SettingsTestUtils.CreateConfigurationFile(nugetConfigPath, mockBaseDirectory, config);

            // Act and Assert
            var settingsFile = new SettingsFile(mockBaseDirectory);

            settingsFile.TryGetSection("packageSourceMapping", out var section).Should().BeTrue();
            section.Should().NotBeNull();

            section.Items.Count.Should().Be(1);
            var packageSourcePatternsItem = section.Items.First() as PackageSourceMappingSourceItem;
            var updatedItem = new PackagePatternItem("updated");

            packageSourcePatternsItem.Patterns.First().Update(updatedItem);
            SettingsTestUtils.DeepEquals(packageSourcePatternsItem.Patterns.First(), updatedItem).Should().BeTrue();

            settingsFile.SaveToDisk();

            // Assert
            var result = @"<?xml version=""1.0"" encoding=""utf-8""?>
<configuration>
    <packageSourceMapping>
        <packageSource key=""nuget.org"">
            <package pattern=""updated"" />
        </packageSource>
    </packageSourceMapping>
</configuration>";

            result.Replace("\r\n", "\n")
            .Should().BeEquivalentTo(
                File.ReadAllText(Path.Combine(mockBaseDirectory, nugetConfigPath)).Replace("\r\n", "\n"));
        }
Example #6
0
        public void ElementNameGetter_ReturnsPattern()
        {
            var original = new PackagePatternItem("item");

            original.ElementName.Should().Be("package");
        }
Example #7
0
 private static bool PackagePatternItem_DeepEquals(PackagePatternItem item1, PackagePatternItem item2)
 {
     return(ItemBase_DeepEquals(item1, item2));
 }