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(); } }