public void SourcesCommandTest_RemoveSourceWithTrusedSourceAndWithTrust() { // Arrange var nugetexe = Util.GetNuGetExePath(); using (var configFileDirectory = TestDirectory.Create()) { var configFileName = "nuget.config"; var configFilePath = Path.Combine(configFileDirectory, configFileName); Util.CreateFile(configFileDirectory, configFileName, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSources> <add key=""test_source"" value=""http://test_source"" /> </packageSources> <trustedSources> <test_source> <add key=""3f9001ea83c560d712c24cf213c3d312cb3bff51ee89435d3430bd06b5d0eece"" value=""CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"" fingerprintAlgorithm=""SHA256"" /> </test_source> </trustedSources> </configuration>"); var args = new string[] { "sources", "remove", "-Name", "test_source", "-ConfigFile", configFilePath, "-Trust" }; // Act var result = CommandRunner.Run( nugetexe, Directory.GetCurrentDirectory(), string.Join(" ", args), true); // Assert Util.VerifyResultSuccess(result); var settings = Configuration.Settings.LoadDefaultSettings( configFileDirectory, configFileName, null); var packageSourceProvider = new Configuration.PackageSourceProvider(settings); var sources = packageSourceProvider.LoadPackageSources().ToList(); var trustedSources = new Configuration.TrustedSourceProvider(settings).LoadTrustedSources(); var trustedSource = trustedSources.FirstOrDefault(); Assert.Equal(0, sources.Count); Assert.Equal(0, trustedSources.Count()); } }
public void SourcesCommandTest_EnableSource_WarnWhenUsingHttp() { // Arrange string nugetexe = Util.GetNuGetExePath(); using (TestDirectory configFileDirectory = TestDirectory.Create()) { string configFileName = "nuget.config"; string configFilePath = Path.Combine(configFileDirectory, configFileName); Util.CreateFile(configFileDirectory, configFileName, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSources> <add key=""test_source"" value=""http://test_source"" /> </packageSources> <disabledPackageSources> <add key=""test_source"" value=""true"" /> <add key=""Microsoft and .NET"" value=""true"" /> </disabledPackageSources> </configuration>"); var args = new string[] { "sources", "Enable", "-Name", "test_source", "-ConfigFile", configFilePath }; // Act CommandRunnerResult result = CommandRunner.Run( nugetexe, Directory.GetCurrentDirectory(), string.Join(" ", args), true); // Assert Util.VerifyResultSuccess(result); ISettings settings = Configuration.Settings.LoadDefaultSettings( configFileDirectory, configFileName, null); PackageSourceProvider packageSourceProvider = new Configuration.PackageSourceProvider(settings); var sources = packageSourceProvider.LoadPackageSources().ToList(); var testSources = sources.Where(s => s.Name == "test_source"); Assert.Single(testSources); PackageSource source = testSources.Single(); Assert.Equal("test_source", source.Name); Assert.Equal("http://test_source", source.Source); Assert.True(source.IsEnabled, "Source is not enabled"); Assert.True(result.Output.Contains("WARNING: You are running the 'enable source' operation with an 'HTTP' source, 'http://test_source'. Non-HTTPS access will be removed in a future version. Consider migrating to an 'HTTPS' source.")); } }
public void SourcesCommandTest_DisableSource_NoWarnWhenUsingHttp() { // Arrange string nugetexe = Util.GetNuGetExePath(); using (var configFileDirectory = TestDirectory.Create()) { string configFileName = "nuget.config"; string configFilePath = Path.Combine(configFileDirectory, configFileName); Util.CreateFile(configFileDirectory, configFileName, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSources> <add key=""test_source"" value=""http://test_source"" /> </packageSources> </configuration>"); var args = new string[] { "sources", "Disable", "-Name", "test_source", "-ConfigFile", configFilePath }; // Act CommandRunnerResult result = CommandRunner.Run( nugetexe, Directory.GetCurrentDirectory(), string.Join(" ", args), true); // Assert Util.VerifyResultSuccess(result); ISettings settings = Configuration.Settings.LoadDefaultSettings( configFileDirectory, configFileName, null); PackageSourceProvider packageSourceProvider = new Configuration.PackageSourceProvider(settings); var sources = packageSourceProvider.LoadPackageSources().ToList(); var testSources = sources.Where(s => s.Name == "test_source"); Assert.Single(testSources); PackageSource source = testSources.Single(); Assert.Equal("test_source", source.Name); Assert.Equal("http://test_source", source.Source); Assert.False(source.IsEnabled, "Source is not disabled"); Assert.False(result.Output.Contains("WARNING:")); } }
public void SourcesCommandTest_RemoveSource() { // Arrange var nugetexe = Util.GetNuGetExePath(); using (var configFileDirectory = TestDirectory.Create()) { var configFileName = "nuget.config"; var configFilePath = Path.Combine(configFileDirectory, configFileName); Util.CreateFile(configFileDirectory, configFileName, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSources> <add key=""test_source"" value=""http://test_source"" /> </packageSources> </configuration>"); var args = new string[] { "sources", "remove", "-Name", "test_source", "-ConfigFile", configFilePath, }; // Act var result = CommandRunner.Run( nugetexe, Directory.GetCurrentDirectory(), string.Join(" ", args), true); // Assert Util.VerifyResultSuccess(result); var settings = Configuration.Settings.LoadDefaultSettings( configFileDirectory, configFileName, null); var packageSourceProvider = new Configuration.PackageSourceProvider(settings); var sources = packageSourceProvider.LoadPackageSources().ToList(); Assert.Equal(0, sources.Count); } }
public void SourcesCommandTest_EnableSource() { // Arrange var nugetexe = Util.GetNuGetExePath(); using (var configFileDirectory = TestDirectory.Create()) { var configFileName = "nuget.config"; var configFilePath = Path.Combine(configFileDirectory, configFileName); Util.CreateFile(configFileDirectory, configFileName, @"<?xml version=""1.0"" encoding=""utf-8""?> <configuration> <packageSources> <add key=""test_source"" value=""http://test_source"" /> </packageSources> <disabledPackageSources> <add key=""test_source"" value=""true"" /> <add key=""Microsoft and .NET"" value=""true"" /> </disabledPackageSources> </configuration>"); var args = new string[] { "sources", "Enable", "-Name", "test_source", "-ConfigFile", configFilePath }; // Act var settings = Configuration.Settings.LoadDefaultSettings( configFileDirectory, configFileName, null); var packageSourceProvider = new Configuration.PackageSourceProvider(settings); var sources = packageSourceProvider.LoadPackageSources().ToList(); Assert.Single(sources); var source = sources.Single(); Assert.Equal("test_source", source.Name); Assert.Equal("http://test_source", source.Source); Assert.False(source.IsEnabled); // Main Act var result = CommandRunner.Run( nugetexe, Directory.GetCurrentDirectory(), string.Join(" ", args), true); // Assert Util.VerifyResultSuccess(result); settings = Configuration.Settings.LoadDefaultSettings( configFileDirectory, configFileName, null); var disabledSourcesSection = settings.GetSection("disabledPackageSources"); var disabledSources = disabledSourcesSection?.Items.Select(c => c as AddItem).Where(c => c != null).ToList(); Assert.Single(disabledSources); var disabledSource = disabledSources.Single(); Assert.Equal("Microsoft and .NET", disabledSource.Key); packageSourceProvider = new Configuration.PackageSourceProvider(settings); sources = packageSourceProvider.LoadPackageSources().ToList(); var testSources = sources.Where(s => s.Name == "test_source"); Assert.Single(testSources); source = testSources.Single(); Assert.Equal("test_source", source.Name); Assert.Equal("http://test_source", source.Source); Assert.True(source.IsEnabled, "Source is not enabled"); } }