public void SortIsCaseInsensitive()
        {
            var builder = new TestablePluginCredentialProviderBuilder();

            builder._mockExtensionLocator.Setup(x => x.FindCredentialProviders())
            .Returns(new[]
            {
                @"c:\dir1\CredentialProvider.Ad.exe",
                @"c:\dir1\CredentialProvider.aC.exe",
                @"c:\dir1\CredentialProvider.aA.exe",
                @"c:\dir1\CredentialProvider.Ab.exe",
            });

            var result = builder.BuildAll(NormalVerbosity).ToList();

            Assert.Equal(4, result.Count());
            var actual   = result.Select(x => (PluginCredentialProvider)x).Select(x => x.Path);
            var expected = new[]
            {
                @"c:\dir1\CredentialProvider.aA.exe",
                @"c:\dir1\CredentialProvider.Ab.exe",
                @"c:\dir1\CredentialProvider.aC.exe",
                @"c:\dir1\CredentialProvider.Ad.exe",
            };

            Assert.Equal(expected, actual);
        }
        public void SortsProvidersByByNameWithinEachDirectory()
        {
            var builder = new TestablePluginCredentialProviderBuilder();

            builder._mockExtensionLocator.Setup(x => x.FindCredentialProviders())
            .Returns(new[]
            {
                @"c:\dir1\CredentialProvider.b.exe",
                @"c:\dir1\CredentialProvider.e.exe",
                @"c:\dir1\CredentialProvider.a.exe",
                @"c:\dir2\CredentialProvider.d.exe",
                @"c:\dir2\CredentialProvider.f.exe",
                @"c:\dir2\CredentialProvider.c.exe",
            });

            var result = builder.BuildAll(NormalVerbosity).ToList();

            Assert.Equal(6, result.Count());
            var actual   = result.Select(x => (PluginCredentialProvider)x).Select(x => x.Path);
            var expected = new[]
            {
                @"c:\dir1\CredentialProvider.a.exe",
                @"c:\dir1\CredentialProvider.b.exe",
                @"c:\dir1\CredentialProvider.e.exe",
                @"c:\dir2\CredentialProvider.c.exe",
                @"c:\dir2\CredentialProvider.d.exe",
                @"c:\dir2\CredentialProvider.f.exe",
            };

            Assert.Equal(expected, actual);
        }
        public void WhenNoPlugins_ThenEmptyList()
        {
            var builder = new TestablePluginCredentialProviderBuilder();

            var result = builder.BuildAll(NormalVerbosity);

            Assert.Equal(0, result.Count());
        }
        public void SetsDefaultTimeout()
        {
            var builder = new TestablePluginCredentialProviderBuilder();

            builder._mockExtensionLocator.Setup(x => x.FindCredentialProviders())
            .Returns(new[] { @"c:\CredentialProvider.Mine.exe" });

            var result = builder.BuildAll(NormalVerbosity).ToList();

            Assert.Equal(1, result.Count());
            var pluginProvider = result[0] as PluginCredentialProvider;

            Assert.Equal(300, pluginProvider?.TimeoutSeconds);
        }
        public void CanReadTimeoutFromEnvar()
        {
            var builder = new TestablePluginCredentialProviderBuilder();

            builder._mockExtensionLocator.Setup(x => x.FindCredentialProviders())
            .Returns(new[] { @"c:\CredentialProvider.Mine.exe" });
            builder._mockEnvarReader
            .Setup(x => x.GetEnvironmentVariable("NUGET_CREDENTIAL_PROVIDER_TIMEOUT_SECONDS"))
            .Returns("10");

            var result = builder.BuildAll(NormalVerbosity).ToList();

            Assert.Equal(1, result.Count());
            var pluginProvider = result[0] as PluginCredentialProvider;

            Assert.Equal(10, pluginProvider?.TimeoutSeconds);
        }
Exemplo n.º 6
0
        public void PrefersTimeoutSettingToEnvar()
        {
            var builder = new TestablePluginCredentialProviderBuilder();

            builder._mockExtensionLocator.Setup(x => x.FindCredentialProviders())
            .Returns(new[] { @"c:\CredentialProvider.Mine.exe" });
            builder._mockEnvarReader
            .Setup(x => x.GetEnvironmentVariable("NUGET_CREDENTIAL_PROVIDER_TIMEOUT_SECONDS"))
            .Returns("10");
            builder._mockSettings.Setup(x => x.GetValue("config", "CredentialProvider.Timeout", false))
            .Returns("20");

            var result = builder.BuildAll().ToList();

            Assert.Equal(1, result.Count());
            var pluginProvider = result[0] as PluginCredentialProvider;

            Assert.Equal(20, pluginProvider?.TimeoutSeconds);
        }