示例#1
0
        public void SettingsFile_ConnectSettingsFilesLinkedList_ConnectsConfigsCorrectly()
        {
            // Arrange
            var configFile = "NuGet.Config";

            using (var mockBaseDirectory = TestDirectory.Create())
                using (var mockSubDirectory = TestDirectory.Create(mockBaseDirectory))
                    using (var mockSubSubDirectory = TestDirectory.Create(mockSubDirectory))
                    {
                        ConfigurationFileTestUtility.CreateConfigurationFile(configFile, mockBaseDirectory, @"<configuration></configuration>");
                        ConfigurationFileTestUtility.CreateConfigurationFile(configFile, mockSubDirectory, @"<configuration></configuration>");
                        ConfigurationFileTestUtility.CreateConfigurationFile(configFile, mockSubSubDirectory, @"<configuration></configuration>");

                        var baseSettingsFile   = new SettingsFile(mockBaseDirectory);
                        var subSettingsFile    = new SettingsFile(mockSubDirectory);
                        var subSubSettingsFile = new SettingsFile(mockSubSubDirectory);

                        // Act & Assert
                        baseSettingsFile.Should().NotBeNull();
                        subSettingsFile.Should().NotBeNull();
                        subSubSettingsFile.Should().NotBeNull();

                        SettingsFile.ConnectSettingsFilesLinkedList(new List <SettingsFile>()
                        {
                            baseSettingsFile, subSettingsFile, subSubSettingsFile
                        });

                        subSubSettingsFile.Next.Should().BeSameAs(subSettingsFile);
                        subSettingsFile.Next.Should().BeSameAs(baseSettingsFile);
                        baseSettingsFile.Next.Should().BeNull();
                    }
        }